BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / matlab / #4400同步于 2008/11/17
Matlab机器人发帖

请教怎么对拟合后的曲线求二次倒数

Elim
2008/11/17镜像同步0 回复
拟合这些执行之后都没问题,但是执行到%%色散曲线这部分的时候就出问题了 感觉是D1=diff(n_eff2,2);这句有问题 但不知道怎么改:( 麻烦大家帮我看看错在哪里,应该怎么改,谢谢 %%输入数据组; w=[3.3837733611e+13 6.7502980771e+13 1.0089907768e+14 1.3401767560e+14 1.6691875733e+14 1.9970949832e+14 2.3247212435e+14 2.6524059400e+14 2.9802480901e+14 3.3082613186e+14 3.6364321368e+14 3.9647402890e+14 4.2931656938e+14 4.6216905771e+14 4.9502998747e+14 5.2789810376e+14 5.6077236729e+14 5.9365191733e+14 6.2653603898e+14 6.5942413586e+14]; n_eff=[1.4110425798 1.4146481350 1.4196309032 1.4250801683 1.4302312002 1.4344780793 1.4377008918 1.4400957925 1.4418878340 1.4432500437 1.4443039013 1.4451332328 1.4457962314 1.4463338682 1.4467754723 1.44714239620 1.4474504400 1.44771147470 1.4479345467 1.4481266405]; %%拟合有效折射率关于频率w的函数; a=polyfit(w,n_eff,3) w1=[0:0.1e14:7e14]; n_eff1=a(4)+a(3)*w1+a(2)*w1.^2+a(1)*w1.^3; plot(w,n_eff,'*') hold on plot(w1,n_eff1,'-r') xlabel('frequency/Hz'); ylabel('Effective Index'); figure(2) plot(1./w1,n_eff1,'-g') %%色散曲线 x=1./w; b=polyfit(x,n_eff,3); x1=[0:0.1e-13:1.0e-13]; n_eff2=a(4)+a(3)*x1+a(2)*x1.^2+a(1)*x1.^3; D1=diff(n_eff2,2); D=-x1/3e8.*D1; figure(3) plot(x1,D)
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。