四阶Runge-Kutta求一阶常微分方程

四阶Runge-Kutta求一阶常微分方程:y'(x)=1/2*(-y+x*x+4*x-1),x[0,0.5],y(0=0)编程实现用的数值解(h=0.01)。... 四阶Runge-Kutta求一阶常微分方程:y'(x)=1/2*(-y+x*x+4*x-1),x[0,0.5],y(0=0)编程实现用的数值解(h=0.01)。 展开
 我来答
lhmhz
高粉答主

2019-06-26 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7264 获赞数:17014

向TA提问 私信TA
展开全部

用matlab编程,四阶Runge-Kutta求一阶常微分方程,其方法:

1、建立一阶常微分方程自定义函数,f=func(x,y)。

function f = func(x,y)

f=1/2*(-y+x*x+4*x-1);

2、利用四阶Runge-Kutta算法,定义 runge_kutta(func,y0,h,a,b) 函数。

3、用plot函数,绘制常微分方程解的图形。

实现主代码:

y0=[0]; %初值

a=0;b=0.5;h=0.01;

[x,y] = runge_kutta(@(x,y)func(x,y),y0,h,a,b);

disp('数值解')

disp('        x        y')

y=y(1,:);

A=[x' y'];

disp(A)

plot(x1,y1,'*',x,y,'.-','LineWidth',1.5),grid on

legend('精确解y','数值解y') %'Location','NorthEastOutside'

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

title('RK4数值解与精确解的对比');

声夜素01
2019-06-25 · TA获得超过276个赞
知道小有建树答主
回答量:435
采纳率:0%
帮助的人:67万
展开全部
方程及初始值,还有你所说的节点
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
十全小秀才

2019-06-25 · 三人行必有我师焉!!
十全小秀才
采纳数:2251 获赞数:9387

向TA提问 私信TA
展开全部

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2019-06-27
展开全部
这作业老师上课没讲吗,很难吗,想要高成绩把你学号发来,我给你满分
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式