一阶微分使用四阶龙格库塔方法求解

 参考公式:

解释:

1. f(x,y)为一阶微分方程式;

2. h为x求解时的步长大小,即x_{n+1} = x_{n} + h

MALTAB代码展示:

%一阶微分的四阶龙格库塔方程:
clc 
clear
f = @(x,y)(-sin(x));    % 定义函数,此处定义为dy/dx,初始方程为y = cos(x)
step = 0.01;
loops = 1000;
x0 = 0;
y0 = 1;
[x, y] = RK4(f,x0,y0,step,loops);

figure(1)
plot(x,y,'r')
title("一阶微分龙格库塔解法:y = cos(x)")


%% Runge-Kutta funtion
function [x, y] = RK4(f, x0, y0, step, loops)

x = zeros(1, loops);
y = zeros(1, loops);
x(1) = x0;
y(1) = y0;

for i = 1 : loops - 1
    K1 = f(x(i),y(i));
    K2 = f(x(i) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值