数学建模问题,实验题,跪求急等!!!

eulerw
2012-12-31 · TA获得超过9192个赞
知道大有可为答主
回答量:1366
采纳率:37%
帮助的人:868万
展开全部

第一题代码:


clear all;

close all;

clc;

x=-5:0.01:5;

y=1./(1+x.^2);

x1=linspace(-5,5,5);

p=polyfit(x1,1./(1+x1.^2),4);

y1=polyval(p,x);

x2=linspace(-5,5,11);

p=polyfit(x2,1./(1+x2.^2),10);

y2=polyval(p,x);

figure; hold on; xlabel('x'); ylabel('y');

plot(x,y,'k','LineWidth',4);

plot(x,y1,'r','LineWidth',2);

plot(x,y2,'b','LineWidth',2);

legend({'Q1' 'Q2' 'Q3'});


运行结果

黑色线是原来的函数1/(1+x*x),红色线是4次拉格朗日插值的结果,蓝色线是10次拉格朗日插值的结果。我的插值点,都是均匀分布在[-5,5]上的。可以看出,都是有点过度拟合(Overfit)了,尤其是边界地区,拟合的很差,毕竟1/(1+x*x)本来就不是多项式,靠多项式来插值拟合,基本都会是这个结果(边界部分拟合严重失真)。正确的插值方法,是用泰勒级数展开,而不是拉格朗日插值法。


第二题我帮不了忙了,自己都快把龙格库塔插值法给忘了。

追问
大神帮帮忙再把第二题做一下好吗,可以提高悬赏亲 帮帮忙吧
追答

不懂“预估校正格式”的意思,好像没学过,其他的帮你算了,你就厚道点,加分吧。


第二题解析解是y=sqrt(2x+1)。

y'=y-2x,得y'y=y*y-2x,令z=y*y,则z'=2y'y,所以化为

0.5z'=z-2x,即z'=2z-4x,

z的特解为z=2x+1,而z的一般解为2x+1+A*e^(2x)(A为常数),所以y的一般形式为y=sqrt(2x+1+A*e^(2x))代入初始条件y(0)=1,得A=0,所以y=sqrt(2x+1)。


下面y是解析解,y1是显式迭代,y2是预估矫正(不会,没写代码),y3是2阶RK,y4是4阶RK。y4和y一样,其他的都有差别,4阶RK比2阶RK好,2阶RK比显式好。y2的算法,得你自己写,我不记得学过。


close all;

clear all;

clc;

h = 0.2;

x = 0:h:1;

y = sqrt(2*x+1);

y1 = ones(size(x));

for i = 2:length(y)

    dydx = y1(i-1)-2*x(i-1)/y1(i-1);

    y1(i) = y1(i-1) + dydx * h;

end

y2 = ones(size(x));

for i = 2:length(y)

   

end

y3 = ones(size(x));

for i = 2:length(y)

    k1 =  y3(i-1)        -2* x(i-1)     / y3(i-1)        ;

    k2 = (y3(i-1)+h  *k1)-2*(x(i-1)+h  )/(y3(i-1)+h  *k1);

    y3(i) = y3(i-1)+h*(1/2*k1+1/2*k2);

end

y4 = ones(size(x));

for i = 2:length(y)

    k1 =  y4(i-1)        -2* x(i-1)     / y4(i-1)        ;

    k2 = (y4(i-1)+h/2*k1)-2*(x(i-1)+h/2)/(y4(i-1)+h/2*k1);

    k3 = (y4(i-1)+h/2*k2)-2*(x(i-1)+h/2)/(y4(i-1)+h/2*k2);

    k4 = (y4(i-1)+h  *k3)-2*(x(i-1)+h  )/(y4(i-1)+h  *k3);

    y4(i) = y4(i-1)+h*(1/6*k1+2/6*k2+2/6*k3+1/6*k4);

end

plot(x,y1,x,y2,x,y3,x,y4,x,y,'LineWidth',2);

xlabel('x'); ylabel('y');

legend({'Method 1' 'Method 2' 'Method 3' 'Method 4' 'Analytical'},'Location','SouthEastOutside');



紫线(解析解)和绿线重合(RK4阶最好),RK2阶是红线,有偏差,蓝线是显式迭代,误差很大。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式