%书籍:常用数值算法及其matlab实现
%第10章 常微分方程初值问题的数值解法,例10.14使用
%四阶龙格库塔方法
function [t,z] = rk4symeq(fun, t0, tf, Za, h)
%fun:微分方程的右表达式
%t0, tn为区间
%Za为初值,是列向量
M = floor(tf-t0)/h ;      %离散点的个数M+1
if t0 >= tfprintf('左端点必须小于右端点');return;
end
N = length(Za);           %获得变量个数,N
z = zeros(M+1, N);
t = zeros(M +1, 1);
t =[t0 : h :tf]';
z(1,:) = Za';            %假设Za为列向量,与微分方程中的变量方向统一,变成行向量for i = 1:MK1 =  feval(fun, t(i) , z(i,:));                    %K是行向量K2 =  feval(fun, t(i)+1/2*h ,z(i,:)+1/2* h*K1);K3 =  feval(fun, t(i)+1/2*h ,z(i,:)+1/2* h*K2);K4 =  feval(fun, t(i)+ h ,z(i,:)+ h*K3);   z(i+1,:) = z(i,:) +h/6 *(K1 + 2*K2 + 2*K3 + K4);
end以下为求解的方程组
%书籍:常用数值算法及其matlab实现
%第10章 常微分方程初值问题的数值解法
%四阶龙格库塔,例10.16
function s = exa10_16(t,z)
%z是个向量,1*3
%输出s也是向量,1*3
s = zeros(1,2);
dy1 =    z(2) ;
dy2 = -z(1) +(1-z(1)^2)*z(2);s = [dy1 dy2 ];          %输出s为行向量主函数
clear all;clc;close all;
%书籍:常用数值算法及其matlab实现
%第10章 常微分方程组初值问题的数值解法
%四阶龙格库塔,例10.16
%函数原型 function [t,z] = rk4symeq(fun, t0, tn, Za, h)
format long
t0 = 0; tf = 15;
Za = [-3 ; -0.1];     %x初值
h1 = 0.01; [t1,z1] = rk4symeq(@exa10_16, t0, tf , Za, h1);
figure(1)
plot(t1,z1(:,1),'b',t1,z1(:,2), 'r*')
legend('y1','y2')
figure(2)
plot(z1(:,1),z1(:,2));
xlabel('x');ylabel('y');

运行结果:

matlab:使用龙格库塔法求解微分方程组相关推荐

  1. 龙格库塔法解微分方程组的matlab程序,MATLAB实例源码教程:龙格库塔法求解微分方程组源代码实例.doc...

    MATLAB实例源码教程:龙格库塔法求解微分方程组源代码实例.doc MATLAB实例源码教程龙格库塔法求解微分方程组源代码实例题目用经典 Runge-Kutta方法求下列一阶微分方程组的近似解y1 ...

  2. matlab解二阶微分方程组,[微分方程组]急急急!用MATLAB按二阶龙格库塔法求解微分方程组,急用于毕业设计!...

    急急急!用MATLAB按二阶龙格库塔法求解微分方程组,急用于毕业设计! 问题补充:今天才发现自己之前做的一点都不对,17号就交论文了,我傻了,急死了!求各位大侠帮帮忙.谢谢!要求解的微分方程如图所示. ...

  3. ode45 matlab 出错,Matlab中ode45求解微分方程组出错。

    ode45解微分方程组,结果数量级居然为10e304,请各位帮忙看看啊. 问题为求解一个7自由度系统(两个移动5个转动)在初始位移激励下个自由度的的位移和加速度. 目标函数 function dq=E ...

  4. Matlab求解微分方程组

    我们采用ode方法: (1)求解普通微分方程组:使用ode45方法 1. 创建一个函数文件eq2.m,在函数文件中描述这个解的微分方程组: %eq2.m文件 %描述微分方程组function dy=e ...

  5. 数学建模学习(29):matlab求解微分方程组详细讲解,代码+案例讲解,学不会找我!

    文章目录 前言 求解微分方程组 求解矩阵微分方程组 总结 前言 上一篇我已经详细讲过求微分方程,这一篇是对上一篇的补充,也就是变得稍微复杂一点,就是要求方程组了,如果你学会了上一篇,那么求解方程组其实 ...

  6. matlab龙格库塔法求通解,基于matlab及龙格库塔法求解布拉修斯方程.doc

    基于matlab及龙格库塔法求解布拉修斯方程 Runge-Kutta法求解布拉修斯解 摘要 薄剪切层方程主要有三种解法,即相似解,非相似条件下对偏微分方程组的数值解和近似解.布拉修斯解是布拉修斯于19 ...

  7. adams求微分方程c语言,ADAMS在求解微分方程组中的应用

    ADAMS 在求解微分方程组中的应用在求解微分方程组中的应用 众所周知 ADAMS 具有强大的结算功能,在求解动力学问题方面可谓得心应手.在此 我想介绍一下它在求解非线性微分方程组方面的应用. 在工程 ...

  8. Matlab之代数方程求解:方程组求根

    Matlab之代数方程求解:方程组求根 目录 方程组求根 1.solve( )求方程组的解 2.求解指数方程和对数函数方程 方程组求根 1.solve( )求方程组的解 (1)如求 eq1 = 'w ...

  9. 龙格库塔法matlab求解微分方程组,微分方程组的龙格库塔公式求解matlab版.pdf

    微分方程组的龙格库塔公式求解matlab版 微分方程组的龙格-库塔公式求解matlab版 南京大学 王寻 1. 一阶常微分方程组 考虑方程组     y'f x,y,z , y x y ...

最新文章

  1. javaweb 后台知识点
  2. golang逃逸分析
  3. Apache Storm 实时流处理系统通信机制源码分析
  4. Rsync+sersync同步配置
  5. Linux 文件基本属性
  6. python中的open函数
  7. 专栏 | 基于 Jupyter 的特征工程手册:数据预处理(一)
  8. 年龄与疾病(信息学奥赛一本通-T1106)
  9. 项目合作 | 室内场景三维重建
  10. 使用projectx / os和Raspberry Pi托管您自己的电子邮件
  11. android 录像 源代码,android安卓视频录制摄像拍摄源码(测试可用)
  12. 昇腾 AI 成就了一群玩船模的大学生——创新,有“模”有 Young
  13. mysql基础之忘掉密码解决办法及恢复root最高权限办法
  14. member selection 运算符是什么
  15. mysql安装包下载
  16. python+sklearn实现随机森林模型
  17. 仿时钟表盘自定义view
  18. 如何阅读一本书-【未排版!】
  19. linux连接多个显示器,如何在Linux Ubuntu中使用多个和外部显示器 | MOS86
  20. Oracle的授权方式

热门文章

  1. 生成式摘要的四篇经典论文
  2. 关于pppd移植和3g功能
  3. 985学计算机的博士生好找工作吗,985博士去“专科”当老师,月薪6000挤破门槛,本科生该何去何从...
  4. JSPssh物流便利店管理系统SSH 框架 MVC 模式 mysql数据库
  5. 国家标准:电子计算机机房设计规范
  6. 2003 - Can‘t connect to MySQL server on ‘‘ ‘‘ (10060 “Unknown error“)
  7. 易信电脑版 v2.1.0 PC版
  8. 尚学堂JAVA第六章作业答案参考
  9. 数据可视化 工具_卓越中心和数据可视化工具2020中的组织中的数据聚合
  10. 开源神器:可快速在 iOS 设备上安装 Windows、Linux 等操作系统!