傅里叶逼近

《MATLAB程序设计实践》

科学计算的算法及其举例应用:

(1)、傅里叶逼近:

1.用法说明:对于连续周期函数,只要计算出其傅里叶展开级数即可,在Matlab中编程实现的连续函数的傅里叶逼近法函数为:FZZ。

功能:用傅里叶级数逼近已知的连续周期函数。

调用格式:[A0,A,B]=FZZ(func,T,n).

其中,func为已知函数;

T为已知函数的周期;

N为展开级数的项数;

A0为展开后的常数项;

A为展开后的余弦项系数;

B为展开后的正弦项系数。

2.源程序代码:

function [A0,A,B]=FZZ(func,T,n)

syms t;

func=subs(sym(func),sym('x'),sym('t'));

A0=int(sym(func),t,-T/2,T/2)/T;

for(k=1:n)

A(k)=int(func*cos(2*pi*k*t/T),t,-T/2,T/2)*2/T;

A(k)=vpa(A(k),4);

B(k)= int(func*sin(2*pi*k*t/T),t,-T/2,T/2)*2/T;

B(k)= vpa(B(k),4);

end

3.举例说明:傅里叶逼近应用实例。用傅里叶级数(取5项)逼近函数x,输出系数值。

>> [A0,A,B]=FZZ('x',2*pi,5)

A0 =

0

A =

[ 0., 0., 0., 0., 0.]

B =

[ 2., -1., .6667, -.5000, .4000]

3.流程图(1)

二、科学计算和工程实际问题:

(1)设单自由度阻尼系统的质量M=1kg,弹簧刚度系数K=100N/m,速度阻尼系数c=4N*s/m,求它在如下外力下的强迫振动,得出t≦1.2s的波形。

f=t/0.015(0≦t≦0.15),

f=10(0.15≦t≦1.2)

系统的受力平衡表达式:

f-c*v-K*x=M*a; (1)

其中x为位移,v为速度,a为加速度

用dx/dt代替v,得:

f-4*dx/dt-100*x=1*d2x/dt2; (2)

运用函数分段求解位移的表达式,然后用plot画图

1.源程序:

>> dsolve('D2x=t/0.015-4*Dx-100*x','x(0)=0','Dx(0)=0')

ans =

-23/900*exp(-2*t)*sin(4*6^(1/2)*t)*6^(1/2)+2/75*exp(-2*t)*cos(4*6^(1/2)*t)-2/75+2/3*t

>> t1=0:0.01:0.15;

>> x1=-23/900*exp(-2.*t1).*sin(4*6^(1/2).*t1).*6^(1/2)+2/75*exp(-2.*t1).*cos(4*6^(1/2).*t1)-2/75+2/3.*t1;

>> subs(x1,t1,0.15)

ans =

Columns 1 through 11

0 0.0000 0.0001 0.0003 0.0007 0.0013 0.0022 0.0035 0.0051 0.0071 0.0096

Columns 12 through 16

0.0125 0.0160 0.0199 0.0243 0.0292

>> subs(diff(x1),t1,0.15)

ans =

Columns 1 through 11

0.0000 0.0001 0.0002 0.0004 0.0006 0.0009 0.0013 0.0016 0.0020 0.0025 0.0029

Columns 12 through 15

0.0034 0.0039 0.0044 0.0049

>> dsolve('D2x=10-4*Dx-100*x','x(0.15)=0.0292','Dx(0.15)=0.0049')

ans =

-1/240000*exp(-2*t

傅立叶逼近 matlab,傅里叶逼近.doc相关推荐

  1. matlab 求obb,实验六MATLAB神经网络工具箱DOC

    实验六MATLAB神经网络工具箱DOC 实验七MATLAB神经网络工具箱一.实验目的1.掌握 Matlab 对感知器网络的构建与训练方法.2.掌握 Matlab 对线性神经网络的构建与训练方法.3.掌 ...

  2. 信号与系统实验感想 matlab,信号与系统MATLAB实验报告.doc

    信号与系统MATLAB实验报告.doc 成绩 信号与系统实验报告 课 程 名 信号与系统 学 部 机械与电子信息学部 专 业 电子信息工程 学 号 姓 名 曹 禹 指导教师 吴国平 日 期 2013/ ...

  3. 合成孔径雷达成像matlab,合成孔径雷达成像Matlab仿真研究.doc

    合成孔径雷达成像Matlab仿真研究.doc 合成孔径雷达成像Matlab仿真研究 摘 要: 计算机仿真是现代雷达研究中的重要技术之一,针对合成孔径雷达(SAR)成像中影响仿真结果的因素,从分析SAR ...

  4. matlab进行光纤耦合,光纤耦合器中光孤子传输的matlab仿真研究.doc

    光纤耦合器中光孤子传输的matlab仿真研究.doc 1计算物理实习(彭加福,0640502112,江苏科技大学,数理学院,应用物理)(李文凯,0640502109,江苏科技大学,数理学院,应用物理) ...

  5. matlab doc函数,matlab常用函数.doc

    matlab常用函数.doc MatLab 常用函数 1. 特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 name ...

  6. matlab arr3(5 end),matlab复习笔记.doc

    matlab复习笔记.doc 如果一个语句在一行内书写太长了,可能要另起一行接着写,在这种情况下我们需要在第一行末打上半个省略号(),再开始第二行的书写.历史命令窗口(THEHISTORYCOMMAN ...

  7. matlab傅里叶变换矩阵

    matlab傅里叶变换矩阵 a=(0:15)'*(0:15); W=exp(-2*pi*1i*a/16)/sqrt(16);

  8. 【组合数学】组合数学简介 ( 组合思想 3 : 上下界逼近 | 上下界逼近示例 Remsey 数 )

    文章目录 一.组合思想 3 : 上下界逼近 二.上下界逼近示例 ( Remsey 数 ) 一.组合思想 3 : 上下界逼近 上下界逼近 的思想 , 通常用于 确定某个值 , 或 确定某个函数的阶 ( ...

  9. matlab组织的培训讲义,matlab培训讲义.doc

    matlab培训讲义.doc x-0.6*sin(x)-0.3*cos(y) );f{2}=inline( y-0.6*cos(x)+0.3*sin(y) );holdonh=arrayfun(@(i ...

最新文章

  1. ATOM中MARKDOWN的使用小结
  2. unity3d--为组件添加声音
  3. MATLAB实战系列(二十四)-大规模邻域搜索(LNS)求解带时间窗的车辆路径问题(VRPTW)(附matlab源代码)
  4. 做了个专为“数据分析师”打造的刷题平台!
  5. PrimeFaces Mobile入门
  6. 数据结构:(5)算法分析基础
  7. react native多语言_前端福音:为什么使用 React 和 SVG 开发图形 UI 是天作之合?
  8. python连接数据库步骤_Python连接mysql数据库
  9. Python:通过执行100万次打印来比较C和python的性能,以及用C和python结合来解决性能问题的方法 .
  10. 十七、K8s+gitlab+Jenkins建立CI/CD解决方案
  11. 基于Java的外卖订餐系统
  12. Apache双机热备
  13. echarts 地图 给每个区域设置定位点图标及散点
  14. 模拟登陆qq空间实现(3)
  15. 读书:依然在地铁上 | 自嗨有度
  16. 计算机显示用户不存在,电脑出现未知设备提示驱动安装类无效或不存在如何解决...
  17. 如何在大学里成为IT技术大神?
  18. aws没有免费套餐服务数据可用
  19. SEO关键词排名优化做到百度首页的核心操作
  20. 关于javascript的调试

热门文章

  1. 华为防火墙NAT策略
  2. php下雨效果源码,ps下雨效果制作步骤
  3. STM32用SWD口烧录程序导致锁死
  4. EasyRecovery免费激活软件秘钥下载恢复教程及注意事项
  5. 这些车企在企业微信里,装上高速的“组织引擎”
  6. 传智播客对大学的期许
  7. description是什么意思
  8. CentOS 7 系统部署之四:磁盘扩容与调整
  9. SQL语句如何精准查找某一时间段的数据
  10. “空天地海”一体化的海上应急通信网络技术综述