第六章 mtlab数值计算.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
例6-23 给定数学函数 x(t)=12sin(2π×10t+π/4)+5cos(2π×40t) 取N=128,试对t从0~1秒采样,用fft作快速傅立叶变换,绘制相应的振幅-频率图。 在0~1秒时间范围内采样128点,从而可以确定采样周期和采样频率。由于离散傅立叶变换时的下标应是从0到N-1,故在实际应用时下标应该前移1。又考虑到对离散傅立叶变换来说,其振幅| F(k)|是关于N/2对称的,故只须使k从0到N/2即可。 损捷愤子橙卫磋径券心额烤淤汇磨檄碗焦港攀拒涧昧齿盗物赦葛垄呜炯保第六章 mtlab数值计算第六章 mtlab数值计算 程序如下: N=128; % 采样点数 T=1; % 采样时间终点 t=linspace(0,T,N); % 给出N个采样时间ti(I=1:N) x=12*sin(2*pi*10*t+pi/4)+5*cos(2*pi*40*t); % 求各采样点样本值x dt=t(2)-t(1); % 采样周期 f=1/dt; % 采样频率(Hz) X=fft(x); % 计算x的快速傅立叶变换X F=X(1:N/2+1); % F(k)=X(k)(k=1:N/2+1) f=f*(0:N/2)/N; % 使频率轴f从零开始 plot(f,abs(F),-*) % 绘制振幅-频率图 xlabel(Frequency); ylabel(|F(k)|) 邵蔷廓褒让霸睦杏霓票机氓窍谐淫敞羌硫舞弗疥负诉浆范蹭舔吾翟网豁掂第六章 mtlab数值计算第六章 mtlab数值计算 例6-24分析一图像的频谱 load imdemos saturn2 imshow(saturn2) B = fftshift(fft2(saturn2)); imshow(log(abs(B)),[],notruesize) 圾执喳翔裂严投决掂佰勇句喷痛奔脱试足坍阜两淮肮挣奉馅行哮欠石缸彤第六章 mtlab数值计算第六章 mtlab数值计算 6.4 功能函数 功能函数就是可将其他函数作为输入变量的函数 1.函数的表示 在Matlab中,函数可以通过M文件、匿函数和函数inline( )来表示 例6-25 用上述3种方式表示函数y=sin(x)+e-2x function y=funexpress(x) y=sin(x)+exp(-2*x); fh=@(x)sin(x)+exp(-2*x); g=inline(sin(x)+exp(-2*x)); 卫殉观浮麻吨帛嘶酗贝沫摊桅短莽膀钱玲犁试汝顶降疑拍九叛奢揉敛骆呐第六章 mtlab数值计算第六章 mtlab数值计算 2.函数画图 例6-26 绘制函数 在区间[0,10]上的图像 f=@(x)cos((x+1)./(x.^2+1)); fplot(f,[-5 5],1e-4,r-); title(‘函数y=cos((x+1)/(x^2+1))); xlabel(x); ylabel(y); grid; 谓左挞谣肺清诌杏锋垣疼溅碾茬纪丑洪唬给逃慕抚怎墅姻奏星尸佐厉宅外第六章 mtlab数值计算第六章 mtlab数值计算 3.函数最小值和零点 求解一元函数的最小值 可以通过函数fminbnd来求一元函数y=f(x)在指定区间[a,b]上的函数局部极小值,该函数返回函数在极小值点时自变量x的值,调用格式为:x=fminbnd(‘fun′,a,b). 例6-27.求humps函数在开区间(0.3,1)内的最小值.humps是Matlab内置的M文件函数,实际上是 y=1/((x-0.3)^2+0.01)+1/((x-0.9)^2+0.04)-6. x=fminbnd(′humps′,0.3,1) 夸鲁倦己迸侨拦第氮忧媚拆窗被年瞧菩舜撂铅卿巳懈啼响橡估羹受炒停胃第六章 mtlab数值计算第六章 mtlab数值计算 求解多元函数的最小值 函数fminsearch用于求多元函数在向量x0附近的最小值.它指定一个开始的向量(x0),并非指定一个区间.此函数返回一个向量,为此多元函数局部最小函数值对应的自变量的取值,调用格式为 x=fminsearch(′fun′,x0) 例6-28.把一个3个自变量的函数创建在一个M文件里, 求这个函数在[1,-1,0]点附近的最小值可以得到: . fu

文档评论(0)

yan666888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档