⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 微分方程组的n=4龙格库塔解法.m

📁 拉格朗日插值多项式拟合,牛顿插值多项式,欧拉方程解偏微分方程,使用极限微分求解导数(微分),微分方程组的N=4龙格库塔解法,雅可比爹迭代法解方程AX=B,最小二乘多项式拟合,组合辛普生公式求解积分,用
💻 M
字号:
 %偏微分方程组N=4的龙格-库塔方法求解
 %形式:求t在区间[a,b]内微分方程组:
 %     x'1(t)=f1(t,x1(t),...xn(t))
 %     x'2(t)=f2(t,x1(t),...xn(t))
 %     ...
 %     x'n(t)=fn(t,x1(t),...xn(t))
 % 初值条件:x1(a)=a1,x2(a)=a2...xn(a)=an,的近似解
 %_______________________________________________________
 %调用格式:先定义F函数,既定义方法如下(以三个方程组成的方程组为列:
 %function  Z=F(X)
 %          x=X(1);
 %          y=X(2);
 %          z=X(3);
 %          Z=zeros(1,2);  
 %          Z(1)=3*x+2*y+z; //Z(1)相当于表达式f1(t,x1(t)...)
 %          Z(2)=x+2*y-z;   //Z(2)相当于表达式f2(t,x1(t)...)
 %          Z(3)=x-3*z;     //Z(3)相当于表达式f3(t,x1(t)...)
 %然后直接调用[T,Z]=rks4(’F‘,a,b,Za,M),其中F上面的函数
 %                  a合b是t的范围,Za为初值向量【X1(a) X2(a)...】
 %                  M为需要把区间分为多少次进行代换即(b-a)/M
 %                  Z的一列为x1(t),第二列为x2(t)........
 %_______________________________________________________
 
 function [T,Z]=rks4(F,a,b,Za,M)
 h=(b-a)/M;
 T=zeros(1,M+2);
 Z=zeros(M+1,length(Za));
 T=a:h:b;
 Z(1,:)=Za;
 
 for j=1:M
     k1=h*feval(F,[T(j),Z(j,:)]);
     k2=h*feval(F,[T(j)+h/2,Z(j,:)+k1/2]);
     k3=h*feval(F,[T(j)+h/2,Z(j,:)+k2/2]);
     k4=h*feval(F,[T(j)+h,Z(j,:)+k3]);
     Z(j+1,:)=Z(j,:)+(k1+2*k2+2*k3+k4)/6;
 end
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -