24小时热门版块排行榜    

CyRhmU.jpeg
查看: 3736  |  回复: 14

望月任

新虫 (小有名气)

引用回帖:
3楼: Originally posted by dingd at 2016-05-30 16:29:03
1:先把
x=800:100:2500;
y=;
拟合成一条曲线:y = p1+p2*x+p3*x^2+p4*x^3;

y = 118.438596460576+0.636096491290097*x+(-0.000325683694569401)*x^2+4.55366357146146e-8*x^3
见图1

2:解方程组:
y =  ...

老师您好,我上次在您的指点下用matlab编了下面这个程序,求交点时又发现了一点问题。当我采用5次多项式拟合p1=polyfit(xx,yy,5)时,得到的交点与图上交点很符合,而我采用4次或6次多项式时,得到的交点与实际图的交点却有很大出入,老师您能帮忙看下哪里有问题吗?怎么改进才好呢?打扰老师了。

xx=800:100:2500;
yy=[445.7823 462.6885 466.5998 486.2869  494.6164  494.1792  493.4424  492.4400 491.1972  489.7337  477.7725  461.8259  451.7348  437.8226  424.8029 412.5424 400.9299 386.1670];
c=[2.81        2.639 2.422 2.195 1.94 1.696 1.466 1.2477 1.1386 1.0284        0.8485 0.7823 0.656 0.5538 ];
p1=polyfit(xx,yy,5);
y_val=polyval(p1,xx);
plot(xx,yy,'k*',xx,y_val,'r-')
syms x y
h1=[];
h2=[];
for i=1:14
p2=c(i)*xx.^2/(10^4);
[Sx,Sy]=solve(p1(1)*x^5+p1(2)*x^4+p1(3)*x^3+p1(4)*x^2+p1(5)*x+p1(6)==y,c(i)*x^2/(10^4)==y);
hold on
plot(xx,p2)
t1=eval(Sx)
t2=eval(Sy)
h1=[h1 t1(1, :]
h2=[h2 t2(1, :]
end
11楼2016-06-02 09:46:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

望月任

新虫 (小有名气)

送红花一朵
引用回帖:
7楼: Originally posted by 月只蓝 at 2016-05-31 12:26:28
3楼 dingd 的应助回答,给出了具体方法和步骤。...

老师您好,我上次在您的指点下用matlab编了下面这个程序,求交点时又发现了一点问题。当我采用5次多项式拟合p1=polyfit(xx,yy,5)时,得到的交点与图上交点很符合,而我采用4次或6次多项式时,得到的交点与实际图的交点却有很大出入,老师您能帮忙看下哪里有问题吗?怎么改进才好呢?打扰老师了。

xx=800:100:2500;
yy=[445.7823 462.6885 466.5998 486.2869  494.6164  494.1792  493.4424  492.4400 491.1972  489.7337  477.7725  461.8259  451.7348  437.8226  424.8029 412.5424 400.9299 386.1670];
c=[2.81        2.639 2.422 2.195 1.94 1.696 1.466 1.2477 1.1386 1.0284        0.8485 0.7823 0.656 0.5538 ];
p1=polyfit(xx,yy,5);
y_val=polyval(p1,xx);
plot(xx,yy,'k*',xx,y_val,'r-')
syms x y
h1=[];
h2=[];
for i=1:14
p2=c(i)*xx.^2/(10^4);
[Sx,Sy]=solve(p1(1)*x^5+p1(2)*x^4+p1(3)*x^3+p1(4)*x^2+p1(5)*x+p1(6)==y,c(i)*x^2/(10^4)==y);
hold on
plot(xx,p2)
t1=eval(Sx)
t2=eval(Sy)
h1=[h1 t1(1, :]
h2=[h2 t2(1, :]
end
12楼2016-06-02 09:46:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

望月任

新虫 (小有名气)

引用回帖:
3楼: Originally posted by dingd at 2016-05-30 16:29:03
1:先把
x=800:100:2500;
y=;
拟合成一条曲线:y = p1+p2*x+p3*x^2+p4*x^3;

y = 118.438596460576+0.636096491290097*x+(-0.000325683694569401)*x^2+4.55366357146146e-8*x^3
见图1

2:解方程组:
y =  ...

你好,我想问问您是用什么方法求得交点的?能不能控制交点在一定的范围内选取?
13楼2016-06-06 21:45:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

望月任

新虫 (小有名气)

引用回帖:
5楼: Originally posted by 月只蓝 at 2016-05-30 21:02:02
补充一下,还有个交点:
x: 10141.5052758472
y: 20570.0258526081

附图1.png

你好,我想问问您是用什么方法求得交点的,我用fsolve求初值不同,得到点差别有点大,能不能控制交点的横坐标在某个范围
14楼2016-06-06 21:47:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

望月任

新虫 (小有名气)

引用回帖:
4楼: Originally posted by dingd at 2016-05-30 16:32:32
还有一个交点:
x: 1566.41535773631
y: 490.731414608278

c3.jpg

能把程序给我看看吗?
15楼2016-06-06 21:48:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 望月任 的主题更新
信息提示
请填处理意见