matlab拟合正弦曲线的问题

我有一系列的随时间轴变化的测量数据,这些数据有噪声,但基本是正弦曲线,我使用下列程序进行拟合,对于单组数据效果倒是不错。但是这样的问题是sin函数中的四个参数都要先根据测量点的大致位置,人工进行初步计算得出
%对timep拟合
timepd=double(timep);
plength=1:length(timepd);
f=inline('fitp(1)*sin(fitp(2)*x+fitp(3))+fitp(4)','fitp','x');
fitp=nlinfit(plength,timepd,f,[4 2*pi/19.625 -12.5*19.625/2/pi 61]);
f_sinp=fitp(1)*sin(fitp(2)*plength+fitp(3))+fitp(4);
如何使程序完全自动化呢,不用人工介入的。因为我同时要进行多组这样的数据要处理,所以必须自动化才行,也没法使用cftool,因为这样也没法进行n组数据处理。
请高手解答。答案中请不要给出使用cftool的方法,我这边使用过cftool,拟合效果就很不好,振幅和周期都对不上。谢谢了。

conn.asp的部分字段如下:
dim conn,connstr,db,rs,rs_s,rs_s1
db="data/$database$169852.mdb"
set conn = server.createobject("adodb.connection")
connstr="provider=microsoft.jet.oledb.4.0;data source=" & server.mappath(""&db&"")
conn.open connstr
if error then
response.write "connect database error!"
response.end
end if
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-01-02
不好意思,可能是我说的不是很清楚,我用的是MDI框架,我想在主窗体(MainFrm)上做一个刷新的按钮(RefreshButton),在我点RefreshButton的时候,自动抓取当前活动Tabsheet上的DBGrid.DataSource.DataSet。

如何用matlab做正弦曲线拟合
【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*...

如何在matlab中拟合正弦曲线
50 我是在curve fitting工具箱里进行模拟,然后在拟合时候,选择自定义函数,然后输入y=a*sin(b*x)+c,却不行呀,我新手,不懂为什么。。而我输入y=a*sin(x)+c,这就可以。。fengzhipimi0 | 浏览8090 次 |举报 我有更好的答案推荐于2017-12-16 09:53:00 最佳答案 用lsqcurvefit函数吧,给你段程序,自己...

你好,我想请教您一个MATLAB拟合曲线的问题?
你的问题应该这样来解决。1、拟合函数可以用多项式近似表示,即 f(x,y) = a0 + a1*x + a2*y + a3*x^2 + a4*x*y + a5*y^2 2、使用regress函数,求解a0 、 a1、 a2、 a3、 a4、 a5的系数,即 [a,bint,r,rint,stats] = regress(Y,X);3、计算决定系数、F统计量、概率值等...

求助matlab大神,曲线拟合问题
对于matlab的拟合问题,可以使用cftool工具箱。拟合结果是多种多样的。按你的要求,我试了一个,如下图:这个拟合函数是一个幂函数,拟合结果为:f(x) = a*x^ba = 2.102e-015b = 27.35也就是:y=2.102e-015*x^27.35对于这个问题,对于cftool的使用,简单流程如下:第一,在matlab命令...

用matlab中lsqnonlin函数拟合的曲线为什么差距这么大,跪求大神指点...
为什么用matlab中lsqnonlin函数拟合的曲线的差距有这么大?可能的原因是:1、拟合数学模型不合理 2、从散点图中可以看到,由于有极小点存在,造成拟合迭代初值没有靠近拟合曲线

MATLAB拟合曲线,为什么结果不对?
MATLAB拟合曲线,为什么结果不对?不对的原因是选择的数学模型不符,所以应调整数学函数表达式。拟合好坏可以通过数理分析计算,R²是否接近于1.

matlab 类正弦函数拟合:一组离散数据如图,想通过拟合得到它的周期,想知...
拟合之后求导,周期会提出来,然后再除以原函数。

matlab中如何进行曲线拟合
Sum of Sin Functions:正弦曲线逼近,有8种类型,基础型是 a1*sin(b1*x + c1)Weibull:只有一种,a*b*x^(b-1)*exp(-a*x^b)选择好所需的拟合曲线类型及其子类型,并进行相关设置:——如果是非自定义的类型,根据实际需要点击“Fit options”按钮,设置拟合算法、修改 待估计参数的上下限等...

MATLAB曲线拟合 有个小错误
6)错误二:初值选定不太合适,数值偏小。对于本列,可取 a0=[4.9047 75.5339 89.4813 28.6150 25.1201 93.2736]错误三:最小二乘法拟合函数使用不恰当,应使用 nlinfit()函数 错误四:plot(x,y)的x,y不对应,应改为 x=-100:1:100;y=myfun1(a,x);plot(x,y);...

怎么用matlab拟合曲线?
3、新建的X数据如下图,此时变量默认为unnamed(未命名)。4、接着对所需要的变量进行命名,下面以X为说明,右击选择重命名,输入X。5、然后在命令窗口输入cftool,点击电脑Enter键,如下图所示。6、最后从列表中选择Smoothing Spline(平滑逼近),如下图所示,这样Smoothing Splinel拟合曲线就做好了。

相似回答