如何用matlab做正弦曲线拟合我只知道能用polyfit做二项式拟合比如有一组数据,数据大概是正弦曲线,但每个周期都不一样,应该怎么样做请不要发这种象一楼一样的不相干的垃圾信息,
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/05 17:21:07
如何用matlab做正弦曲线拟合我只知道能用polyfit做二项式拟合比如有一组数据,数据大概是正弦曲线,但每个周期都不一样,应该怎么样做请不要发这种象一楼一样的不相干的垃圾信息,
如何用matlab做正弦曲线拟合
我只知道能用polyfit做二项式拟合
比如有一组数据,数据大概是正弦曲线,但每个周期都不一样,应该怎么样做
请不要发这种象一楼一样的不相干的垃圾信息,
如何用matlab做正弦曲线拟合我只知道能用polyfit做二项式拟合比如有一组数据,数据大概是正弦曲线,但每个周期都不一样,应该怎么样做请不要发这种象一楼一样的不相干的垃圾信息,
【1】第一步
>>cftool
【2】出现对话框,点击data选x和y
【3】creat data set,然后close
【4】点击fitting,在type of type,选Fourier
选择一个合适的即可.
例如:
>> x=0:0.1:pi
>> y=sin(x+x.^2)
>> plot(x,y,'o-')
用非线性回归,得到
得到
General model Sin8:
f(x) =
a1*sin(b1*x+c1) + a2*sin(b2*x+c2) + a3*sin(b3*x+c3) +
a4*sin(b4*x+c4) + a5*sin(b5*x+c5) + a6*sin(b6*x+c6) +
a7*sin(b7*x+c7) + a8*sin(b8*x+c8)
Coefficients (with 95% confidence bounds):
a1 = 4.36 (-2.007e+010,2.007e+010)
b1 = 1.643 (-1.371e+009,1.371e+009)
c1 = 0.4803 (-2.517e+009,2.517e+009)
a2 = 4.282 (-3.806e+006,3.806e+006)
b2 = 5.715 (-8.181e+004,8.182e+004)
c2 = -4.306 (-7.305e+004,7.305e+004)
a3 = 3.823 (-3.826e+006,3.826e+006)
b3 = 5.867 (-6.623e+004,6.624e+004)
c3 = -7.586 (-6.24e+004,6.238e+004)
a4 = 2.67 (-1.363e+014,1.363e+014)
b4 = 7.29e-006 (-5.336e+011,5.336e+011)
c4 = -0.8273 (-5.575e+013,5.575e+013)
a5 = 2.006 (-2.405e+014,2.405e+014)
b5 = 0.5948 (-1.429e+013,1.429e+013)
c5 = -0.5683 (-8.375e+013,8.375e+013)
a6 = 1.729 (-2.606e+014,2.606e+014)
b6 = 0.5869 (-1.455e+013,1.455e+013)
c6 = -0.5213 (-8.638e+013,8.638e+013)
a7 = -2.189 (-1.781e+009,1.781e+009)
b7 = 2.225 (-1.048e+008,1.048e+008)
c7 = -0.8675 (-2.948e+008,2.948e+008)
a8 = 1.225 (-1.956e+014,1.956e+014)
b8 = 0.616 (-4.375e+012,4.375e+012)
c8 = -0.03419 (-1.33e+014,1.33e+014)
Goodness of fit:
SSE:0.01188
R-square:0.9992
Adjusted R-square:0.9968
RMSE:0.03854
MATLAB (Matrix Laboratory)为美国Mathworks公司1983年首次推出的一套高性能的数值分析和计算软件,其功能不断扩充,版本不断升级,1992年推出划时代的4.0版,1993年推出了可以配合Microsoft Windous使用的微机版,95年4.2版,97年5.0版,99年5.3版,5.X版无论是界面还是内容都有长足的进展,其帮助信息采用超文本格式和PDF格式,可以方...
全部展开
MATLAB (Matrix Laboratory)为美国Mathworks公司1983年首次推出的一套高性能的数值分析和计算软件,其功能不断扩充,版本不断升级,1992年推出划时代的4.0版,1993年推出了可以配合Microsoft Windous使用的微机版,95年4.2版,97年5.0版,99年5.3版,5.X版无论是界面还是内容都有长足的进展,其帮助信息采用超文本格式和PDF格式,可以方便的浏览。至2001年6月推出6.1版,2002年6月推出6.5版,继而推出6.5.1版, 2004年7月MATLAB7和Simulink6.0被推出,目前的最新版本为7.1版。
MATLAB将矩阵运算、数值分析、图形处理、编程技术结合在一起,为用户提供了一个强有力的科学及工程问题的分析计算和程序设计工具,它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能,是具有全部语言功能和特征的新一代软件开发平台。
MATLAB 已发展成为适合众多学科,多种工作平台、功能强大的大型软件。在欧美等国家的高校,MATLAB已成为线性代数、自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等高级课程的基本教学工具。成为攻读学位的本科、硕士、博士生必须掌握的基本技能。在设计研究单位和工业开发部门,MATLAB被广泛的应用于研究和解决各种具体问题。在中国,MATLAB也已日益受到重视,短时间内就将盛行起来,因为无论哪个学科或工程领域都可以从MATLAB中找到合适的功能。
1. MATLAB6.1 的新功能
(1) 全新的开发环境GUIDE(GUI Development Environment):由早期的单一命令窗口发展为将一些常用的交互式工作界面高度的集中于操作桌面;
(2) 在命令窗口增加了错误跟踪功能(error display message and abort function);
(3) 提供了许多新的数值处理功能(numerical Treatment Techniques),更新了部分函数的功能和算法,增加了许多新函数;
(4) 在图形窗口增加了曲线拟合、数据统计等交互工具;(Curve Fitting, Data Analyzing )
(5) 引入了类与对象及函数句柄等概念;(Object,Handle) 用户可以创建自己定义的类函数和函数句柄;
(6) 改进了编辑/调试器的界面及功能; (Editor/Debugger)增加了行号和书签等功能;
(7) 属性编辑器功能更强(Property Debugger),使用更方便;
(8) 建立了一个与以前完全不同的图形用户界面(GUI)图形窗口,(Graphical Window)使用更加方便灵活;
(9) 增加了虚拟现实工具箱,(Virtual Reality Toolbox)使用标准的虚拟现实建模语言(VRML)技术,可以创建由MATLAB和simulink环境驱动的三维动画场景;
(10) 在应用程序接口方面增加了与Java的接口(Interface for Java),并为二者的数据交换提供了相应的程序库。
MATLAB 7的升级内容:MATLAB 7针对编程环境,代码效率、数据可视化、数学计算、文件I/O等方面进行了升级,包括:
一)、开发环境
1、重新设计了桌面环境,针对多文档界面应用提供了简便的管理和访问方法,允许用户自定义桌面外观,创建常用命令的快捷方式;
2、 增强数组编辑器(Array Editor)和工作空间浏览器(Workspace Browser)功能,用于数据的显示、编辑和处理;
3、在当前目录浏览器(Current Directory Browser)工具中,增加代码效率分析、覆盖度分析等功能。;
4、M-Lint编码分析,辅助用户完成程序性能分析,提高程序执行效率;
5,增强M文件编辑器(M Editor), 支持多种格式源代码文件可视化编辑,例如C/C++, HTML,Java 等。
二)、编程
1、支持创建嵌套函数(Nested Function),提供更灵活的代码模块化转化;
2、匿名函数(Anonymous Function)功能,支持在命令行或者脚本文件中创建单行函数(Single Line Function);
3、支持条件分支断点,可以在条件分支语句中进行程序中断调试;
4、模块化注释,支持为代码段注释。
三)、数学
1、支持整数算术运算;
2、支持单精度数据类型运算,包括基本算术运算、线性代数、FFT等;
3、使用更强大的计算算法包Qhull 2002.1,提供更丰富的算法支持;
4、Linsove函数用于处理线性代数方程求解;
5、ODE求解器能够处理隐性微分方程组以及多点边界问题;
四)、图形和3D可视化
1、新图形窗口界面;
2、直接从图形窗体生成M代码,可以完成用户自定义绘图;
3、增强图形窗体注释;
4、数据侦测工具(Data Exploration Tools),提供丰富的数据观测手段;
5、自定义图形对象,提供丰富的图形显示功能;
6、GUIDE新增对用户界面和ActiveX控件支持;
7、增强句柄图形对象支持完整地TeX和LaTeX字符集;
五)、文件I/O和外部接口
1、新增文件I/O函数,支持读取任意格式文本数据文件,并且支持写入Excel和HDF5格式数据文件;
2、具有压缩功能的 MAT文件格式,支持快速数据文件I/O能力;
3、javaaddpath函数,无需重新启动MATLAB就可完成Java类的加载、删除等功能;
4、支持COM、服务器事件以及VBS;
5、支持SOAP,使用网络服务;
6、FTP对象,直接访问FTP服务器;
7、支持Unicode编码格式,增强MAT文件字符集;
六)、性能与系统平台支持
1、JIT加速器支持所有数值数据类型;
2、Windows XP系统下支持3GB内存访问。
2. MATLAB的主要组成部分:
(1)开发环境(development Environment):一组图形化用户接口工具和组件的集成:MATLAB桌面、命令窗口、命令历史窗口、编辑调试窗口及帮助信息、工作空间、文件和搜索路径等浏览器;
(2) MATLAB数学函数库:(Math Function Library)基本函数:求和、正弦、余弦和复数运算等; 特殊函数:矩阵求逆、矩阵特征值、贝塞尔函数和快速付里叶变换等;
(3) MATLAB 语言:(MATLAB Language)一种高级编程语言,包括控制流的描述、函数、数据结构、输入输出及面对对象编程;
(4) 句柄图形:(Handle Graphics) 可以对各种图形对象进行更为细腻的修饰和控制,建立完整的图形界面的应用程序。
(5) 应用程序接口:(Applied Function Interface) MATLAB的应用程序接口允许用户使用C或FORTRAN语言编写程序与MATLAB连接。
MATLAB工具箱(Toolbox);(表 1—2)
二.MATLAB 的安装:与一般光盘软件的安装相同, 略
三.MATLAB 的系统开发环境(System Developing Environment)
1. 操作桌面(Operating Desktop)
(1)桌面布局:5个窗口 (图示、操作演示)
*命令窗口 (Command Window)
*工作空间窗口(Workspace)
*当前目录浏览器(Current Directory )
*命令历史窗口 ( Command History )
*启动平台 (Launch Pad)
窗口的切换、放大与关闭。(switching, Amplification, tun-off)
6.6.1版的View菜单中的desktop layout菜单中提供的6种可选布局,7.1改为4种:
6.1 7.1
*Default *Default
*Command Window *Command Window only
*Simple *History and Command Window
*Short History *All Tabbed
*Tall History
*Five Panel
(2).菜单和工具栏;(Menu and toolbar) 操作桌面上有6(7.1可增至9个)个菜单(表1—3)和带有9(7.1版为11个)个快捷按钮的工具栏组,(图示、操作演示)
(3).改变桌面设置:(Setting) File 菜单中Preference对话框中设置(图示、操作演示)
2. 命令窗口:(Command window)MATLAB的主要交互窗口。用于输入MATLAB 命令、函数、数组、表达式等信息,并显示图形以外的所有计算结果。
例如从键盘输入矩阵
A=[1 2 3; 4 5 6; 7 8 9] 按Enter 键后屏幕立即显示结果
A=
1 2 3
4 5 6
7 8 9
命令窗口可作为一个多功能高级计算器,如要计算18+(5sinπ/6)/2+cosπ/6 只须按MATLAB格式要求键入;
18+5*sin(pi/6)/(2+cos(pi/6)),然后按Enter键既可在窗口内显示出计算结果:
ans=
18.8723
公式中的数据可任意改动并重新计算。(例)
还可在命令窗口输入最后一次输入命令的开头字符或字符串,然后用↑键调出该命令行。
其他的命令行功能键和快捷键。与Windows word 相似,(表 1—4)(自学)
3.工作空间窗口:(Workspace Window)
用于储存各种变量和结果的空间,显示变量的名称、大小、字节数及数据类型,对变量进行观察、编辑、保存和删除。(图示、操作演示)。临时变量不占空间,
为了对变量的内容进行观察、编辑与修改,可以用三种方法打开内存数组编辑器。*双击变量名;*选择该窗口工具栏上的打开图标;*鼠标指向变量名,点击鼠标右键,弹出选择菜单,然后选项操作。(示例)
欲查看工作空间的情况,可以在命令窗口键入命令whos(显示存在工作空间全部变量的名称、大小、数据类型等信息)或命令who(只显示变量名)
4.当前目录浏览器:(Current Directory)
用于显示及设置当前工作目录,同时显示当前工作目录下的文件名、文件类型及目录的修改时间等信息。只有在当前目录或搜索路径下的文件及函数可以被运行或调用。(图示、操作演示)
设置当前目录可以在浏览器窗口左上角的输入栏中直接输入,或点击浏览器下拉按钮进行选择。还可用cd命令在命令窗口设置当前目录,如:
cd c:\mydir 可将c盘上的mydir目录设为当前工作目录。
(5).命令历史窗口:(Command History)
记录已运行过的MATLAB命令历史,包括已运行过的命令、函数、表达式等信息,可进行命令历史的查找、检查等工作,也可以在该窗口中进行命令复制与重运行。(图示、操作演示)
6.启动平台:(Launch Pad)
帮助用户方便地打开和调用MATLAB 的各种程序、函数和帮助文件。
平台列出了系统中安装的所有的MATLAB产品的目录,可以通过双击来启动相应的选项。7.0版取消了这个窗口,事实上Help工具完全具备它的功能。(图示、操作演示)
收起
我的方法和化学工程 - 江湖豪侠 十级 5一样
最近在看这方面的书,所以也看到了这个工具,cftool真的很不错
可以剔除不奇异点