如何在Matlab中运用余弦函数

时间:2023-09-22 22:11:18 职场 我要投稿

  如何在Matlab中运用余弦函数,Matlab是一款常用的数据处理科学软件,它在日常工作中,教学科研,图像处理,金融数据分析等等领域均有广泛的应用,那么如何在Matlab中运用余弦函数?

  如何在Matlab中运用余弦函数1

  首先我们需要打开Matlab软件(可通过桌面快捷方式或者开始菜单软件启动按钮,或者软件安装文件夹的软件启动按钮打开Matlab软件)

image.png

  Matlab软件打开后的界面如下图所示,软件界面包括导航栏,命令栏,变量显示栏等,软件上部的菜单中包含丰富的命令,我们将在接下来的步骤中用到其中的`部分命令。

image.png

  在Matlab软件的导航栏右击鼠标,选择“new file”,“script”,从而新建的一个新的Matlab脚本文件,具体操作如图所示。

image.png

  通过双击新建的Matlab脚本文件,从而打开“script”,进而可以编辑Matlab脚本文件进而将相关代码写入脚本文件。

image.png

  打开脚本文件后,我们可以往脚本文件中写入如下命令:

  x=1:0.01:10;

  y=cos(x);

  如图所示,我们可以通过点击Matlab软件的菜单栏上的“run”按钮从而实现运行刚才所写入脚本文件的代码。

image.png

  我们也可以在command窗口展示运行结果,注意,用以显示结果的那行代码尾部不能有分号。

image.png

  如何在Matlab中运用余弦函数2

  如何用matlab产生正弦表数据

  这里说明两种方式:

  (一)这个方法只在matlab中生成数据表,需要自己手动的

  往mif文件中添加数据

  1.假设用到的DA芯片为14为,则2^14=16384

  2.一个完整的正弦波为0-2pi

  3.正弦波ROM的深度为4096(地址总数)

  4.由于FPGA中不识别负数,加入一个直流分量,加8192

  则用matlab产生正弦表的'函数为:

  Y=ceil((16384/2-1)*sin(0:pi*2/4096:2*pi)+8192)

  其中ceil函数描述如下:

  ceil(x) : 大于x 的最小整数

  >> ceil( [3.12 -3.12])ans =4 -3

image.png

  (二)可以直接生成mif文件

  直接生成mif文件

  depth = 4096;width =14;x=ceil(16384/2*sin(0:pi*2/4096:2*pi)+8192)

  fid = fopen('d: omdata1.mif','w');

  fprintf(fid,'depth= %d ;

  ',depth);

  fprintf(fid,'width= %d ;

  ',width);

  fprintf(fid,'address_radix=uns;

  ');

  fprintf(fid,'data_radix = uns;

  ');

  fprintf(fid,'Content Begin

  ');

  for(k=1:depth)

  fprintf(fid,'%d: %d ;

  ',k-1,x(k));endfprintf(fid,'end;');

  用上面这段程序最大值会出现16384,在Quartus II中会认为是超出数据

  范围,所以需要手动的改写为16383.------

  ----把x=ceil(16384/2*sin(0:pi*2/4096:2*pi)+8192) 改写为下面语句

  x=ceil((16384/2-1)*sin(0:pi*2/4096:2*pi)+8192) 就不存在上述问题了

  数据量小的话,可以用第一种方法,要是数据量大的话,介意用第二种方法。

  如何在Matlab中运用余弦函数3

  方法/步骤

  打开matlab在app中找到curve fitting拟合工具箱,打开它

image.png

  在命令窗口输入你的原始数据,例如x=1:1:100;y=x;

  我们需要通过拟合工具箱来拟合出y=x这个方程得两个参数a,b

  在拟合工具箱的页面左边栏把原始数据放进去,查看拟合结果,在如图所示箭头区域,可以选择拟合的'函数,最基本的一阶函数,正弦函数

image.png

  运用拟合函数拟合最基本的是polyfit,

  程序如此:

  x=1:1:100;

  y=x;

  m=polyfit(x,y,1);

image.png

  结果输出两个值,用polyfit函数时用法为

  [a,b]=polyfit(x,y,n)其中a,b是直线方程y=a*x+b中的a,b两个参数

  x,y是原始数据,n为拟合的阶数,

  在matlab拟合函数中还有lsqcurvefit等,需要在matlab官网上寻找并看他的用法,我推荐是有matlab的固有拟合工具箱,在拟合一些比较复杂的函数时,用拟合函数时,参数必须有初始向量,只有禁言丰富的人才可以确定,所以一般建议使用拟合工具箱,简单函数可以使用拟合函数

【如何在Matlab中运用余弦函数】相关文章:

如何在吵闹的环境中背书03-04

如何在吵闹的环境中写作业03-03

女性如何在睡眠中做到美容04-07

如何在火灾中逃生和疏散07-10

如何在恋爱细节中读懂女人05-06

如何在职场中展现自己04-30

家居装修中色彩运用风水禁忌09-02

有关于厨房中运用的颜色研究08-25

如何在有噪音的环境中写作业03-01