matlab 非线性拟合问题,采用语句nlinfitA1=[0.48755108 0;0 0.41344023];A2=[0.39875031 0;0 0.50497499];A3=[2.3120353 0;0 2.4904862];t1=[0.04338408 0;0 0.03684262]; t2=[0.09461442 0;0 0.09076162];t3=[23.793604 0;0 23.771995];weixiang=zeros(1,16

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/13 10:12:35
matlab 非线性拟合问题,采用语句nlinfitA1=[0.48755108 0;0 0.41344023];A2=[0.39875031 0;0 0.50497499];A3=[2.3120353 0;0 2.4904862];t1=[0.04338408 0;0 0.03684262]; t2=[0.09461442 0;0 0.09076162];t3=[23.793604 0;0 23.771995];weixiang=zeros(1,16

matlab 非线性拟合问题,采用语句nlinfitA1=[0.48755108 0;0 0.41344023];A2=[0.39875031 0;0 0.50497499];A3=[2.3120353 0;0 2.4904862];t1=[0.04338408 0;0 0.03684262]; t2=[0.09461442 0;0 0.09076162];t3=[23.793604 0;0 23.771995];weixiang=zeros(1,16
matlab 非线性拟合问题,采用语句nlinfit
A1=[0.48755108 0;0 0.41344023];
A2=[0.39875031 0;0 0.50497499];
A3=[2.3120353 0;0 2.4904862];
t1=[0.04338408 0;0 0.03684262];
t2=[0.09461442 0;0 0.09076162];
t3=[23.793604 0;0 23.771995];
weixiang=zeros(1,163);
count = 0;
for t=0.19:0.005:1.00
count = count + 1;
n = 1+(A1.*t^2)./(t^2-t1^2)+(A2.*t^2)./(t^2-t2^2)+(A3.*t^2)./(t^2-t3^2)
n0 = sqrt(n)
Ncha=n0(2,2)-n0(1,1)
w=2*pi*110.9*Ncha/t
weixiang(1,count)= w
end
y1=cos(weixiang/2).*cos(weixiang/2)
t=0.19:0.005:1.00
plot(t,y1,'+')
grid on
hold on
xlabel('bochang/um');ylabel('[cos(w/2)]^2')%做散点的过程
%非线性拟合.
A1=[0.50345678 0;0 0.41344023];
A2=[0.39875031 0;0 0.50497499];
A3=[2.3120353 0;0 2.4904862];
t1=[0.04338408 0;0 0.03684262];
t2=[0.09461442 0;0 0.09076162];
t3=[23.793604 0;0 23.771995];
t=0.19:0.005:1.00;
b=zeros(1,13)
b(1)=A1(1,1);b(2)=A1(2,2);b(3)=A2(1,1);b(4)=A2(2,2);b(5)=A3(1,1);b(6)=A3(2,2);
b(7)=t1(1,1);b(8)=t1(2,2);b(9)=t2(1,1);b(10)=t2(2,2);b(11)=t3(1,1);b(12)=t3(2,2);b(13)=0.1109
b0=[0.50345678 0.41344023 0.39875031 0.50497499 2.3120353 2.4904862 0.04338408 0.03684262 0.09461442 0.09076162 23.793604 23.771995 0.1109]
fun=inline('cos([sqrt(1+b(1)*t^2./(t^2-b(7)^2)+b(3)*t^2./(t^2-b(9)^2)+b(5)*t^2./(t^2-b(11)^2))-sqrt(1+b(2)*t^2./(t^2-b(8)^2)+b(4)*t^2./(t^2-b(10)^2)+b(6)*t^2./(t^2-b(12)^2))]*pi*b(13)./t).^2','b','t')
[b,r,j,covb,mse]=nlinfit(t,y1,fun,b0);
b
希望返回最佳参数b,但中途出错.? Error using ==> nlinfit at 114
The inline model function generated the following error:
Error using ==> inlineeval at 15
Error in inline expression ==>
cos([sqrt(1+b(1)*t^2./(t^2-b(7)^2)+b(3)*t^2./(t^2-b(9)^2)+b(5)*t^2./(t^2-b(11)^2))-sqrt(1+b(2)*t^2./(t^2-b(8)^2)+b(4)*t^2./(t^2-b(10)^2)+b(6)*t^2./(t^2-b(12)^2))]*pi*b(13)./t).^2
? Error using ==> mpower
Matrix must be square.
Error in ==> mgfzuosandianUntitled at 37
[b,r,j,covb,mse]=nlinfit(t,y1,fun,b0);哪位高手指点一下!感激不尽!

matlab 非线性拟合问题,采用语句nlinfitA1=[0.48755108 0;0 0.41344023];A2=[0.39875031 0;0 0.50497499];A3=[2.3120353 0;0 2.4904862];t1=[0.04338408 0;0 0.03684262]; t2=[0.09461442 0;0 0.09076162];t3=[23.793604 0;0 23.771995];weixiang=zeros(1,16

补充回答:数据不好
建立函数文件:
function y = myfun(beta,x)
y = 2.350176*beta(1)*(1-1/beta(2))*(1-(1-x(:,1).^(1/beta(2))).^beta(2)).^2.*(x(:,1).^(-1/beta(2))-1).^(-beta(2)).*x(:,1).^(-1/beta(2)-0.5).*x(:,2);
运行代码:
x=[0.4292 0.4269 0.381 0.4015 0.4117 0.3017; 0.00014 0.00059 0.0126 0.0061 0.00425 0.0443];
x = x';
y=[0.517 0.509 0.44 0.466 0.479 0.309];
y = y';
beta=nlinfit(x,y,@myfun,[8 0.5])
运行结果:
beta =
-55262931764.9336 0.0517

matlab 非线性拟合问题,采用语句nlinfitA1=[0.48755108 0;0 0.41344023];A2=[0.39875031 0;0 0.50497499];A3=[2.3120353 0;0 2.4904862];t1=[0.04338408 0;0 0.03684262]; t2=[0.09461442 0;0 0.09076162];t3=[23.793604 0;0 23.771995];weixiang=zeros(1,16 matlab 非线性拟合拟合参数 Nm 和 k ,见图 matlab 拟合一元非线性拟合 用什么函数? matlab 非线性规划问题 求matlab应用公式 采用最小二乘迭代法拟合成一般非线性函数回归分析需要公示谢谢 matlab非线性拟合问题,急用,待拟合函数形式为:ln[(230-a)/(y-a)]=[(x-1/4)/b]^c,需要拟合a,b,c,其中40 matlab 非线性曲线拟合表达式书写与初值选取本人先研究采用matlab进行非线性数据拟合,编写的函数如下[filename,filepath]=uigetfile('*.txt','选择拟合的数据文件');%弹出对话框,然后选择你要处理的文 matlab解非线性方程问题 matlab中如何做非线性最小二乘拟合 matlab的非线性拟合MATLAB如何进行非线性拟合呢?比如说y=1/((c*x)^2+1)^0.5如何拟合出参数c呢? matlab中在非线性回归问题matlab中,在非线性回归检验中sse是什么意思啊?有什么用处?代表了什么?越小越好?一般数值多少算方程拟合的好? matlab求助--非线性拟合问题我这里有一组数据,还是一个要拟合的方程样式,求助高手给我求出方程系数出来,并求出相关系数,模版见图片 已知方程如何用MATLAB进行非线性拟合求模型参数 matlab怎样编写命令对函数进行非线性拟合求出参数,已知数据x, 关于matlab语句解析问题/> matlab二元含三个参数的函数拟合求参数问题我急需要拟合出一个非线性函数,0.3058*(x-a)=b*(y^c),其中x=[1937,2623,3338],y=[0.000133,0.000379,0.00081],用sqcurvefit 怎么拟合 ,请问,y=[0.000133,0.000379,0.00081]时,0.3058 matlab非线性拟合问题已知x和t的一组数据,t=0:17;x=[26.41 26.94 27.46 27.99 28.51 29.04 30.48 31.91 33.35 34.78 36.22 37.66 39.09 40.53 41.76 42.99 43.90 44.94];如何通过matlab拟合方程x=(k/(d+b*exp(-a*t)))^(1/c)根据这组数据 在matlab中进行非线性拟合,不知道那出错了,如果用指数增长模型模拟美国人口1790年至2000年的变化过程,请用Matlab统计工具箱的函数nlinfit计算指数增长模型的以下三个数据拟合问题:(1)取定