matlab采用不同数值方法求解微分方程

1、内容简介

60-可以交流、咨询、答疑

欧拉方法、改进欧拉、RK4、米尔斯坦方法求解微分方程
2、内容说明

lc;
close all;
clear all;    % =============参数赋值===========
global a
global b
global h
a = 1;
b = 2;
Ni = 1000;      % 总步数
h = 0.001;      % 步长Xt1(1:Ni) = 0;     
Xt2(1:Ni) = 0;    % 初始值
t = 0:h:h*(Ni-1);           % t
Xt1(1) = 5;          % y_0 欧拉方法 x
Xt2(1) = Xt1(1);          % y_0 第二种方法rng default;  % For reproducibility
% 欧拉方法
wt = normrnd(0,sqrt(h),1,Ni);for i = 2:Ni % Xt1(i) = Xt1(i-1)+a*h*Xt1(i-1)+b*Xt1(i-1)*wt(i-1);%原始方法% y(i)=y(i-1)+h/2*( a*h*Xt1(i-1)+b*Xt1(i-1)*wt(i-1)+a*h*Xt1(i-1)+b*Xt1(i-1)*wt(i-1)+h*(f(x(i-1),x(i-1))));  % y1(i) = y1(i-1)+h*f1(x(i-1),y1(i-1));% 改进欧拉方法temp1 = Xt1(i-1)+a*h*Xt1(i-1)+b*Xt1(i-1)*wt(i-1);temp2 = a*Xt1(i-1)+b*Xt1(i-1)*wt(i-1)/h;temp3 = a*temp1+b*temp1*wt(i)/h;Xt1(i) = Xt1(i-1)+h/2*(temp2+temp3);Xt2(i) = Xt2(i-1)+a*h*Xt2(i-1)+b*Xt2(i-1)*wt(i-1)+0.5*b^2*Xt2(i-1)*(wt(i-1)^2-h);%随机微分方程米尔斯坦方法% y1(i) = y1(i-1)+h*equation(wt(i-1)+0.5*h,y1(i-1)+0.5*h*equation(wt(i-1),y1(i-1)));
endXt0 = Xt1(1)*exp((a-b^2/2)*t+b*wt);
figure(1)
plot(t,Xt0,t,Xt1,t,Xt2,'linewidth',2);
legend('解析解','欧拉数值解','米尔斯坦方法')
% plot(t,Xt0,t,Xt2,'linewidth',2);


3、仿真分析

略matlab采用不同数值方法求解微分方程_哔哩哔哩_bilibili

4、参考论文

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/704504.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【前端素材】推荐优质后台管理系统PORTAL平台模板(附源码)

一、需求分析 后台管理系统是一种具有多层次结构的软件系统,用于管理网站、应用程序或系统的后台操作和管理。下面是对后台管理系统的分层次、详细分析: 第一层:用户界面层 登录界面:提供用户登录验证,确保只有经过授…

MySQL 数据优化技巧:提升百万级数据聚合统计速度

MySQL 数据优化技巧:提升百万级数据聚合统计速度 MySQL 数据优化技巧:提升百万级数据聚合统计速度摘要引言索引优化1. 使用合适的索引类型2. 聚簇索引的应用 查询优化3. 减少数据检索范围4. 避免全表扫描 数据库设计优化5. 合理划分数据表6. 使用分区表 …

AI如何与企业应用交互

人工智能(AI)与企业应用的交互可以通过多种方式实现,以下是一些常见的方式: 1、智能助理和聊天机器人:企业可以在其应用程序中集成智能助理或聊天机器人,以帮助用户解决常见问题、获取信息或执行特定任务。…

算法训练营day35, 二叉搜索树的范围和

package main type TreeNode struct { Val int Left *TreeNode Right *TreeNode } //938. 二叉搜索树的范围和 func rangeSumBST(root *TreeNode, low int, high int) int { sum : 0 if root nil { return sum } //中序遍历左中右处理即可 var searchBST func(node *Tr…

零基础学Python入门教程非常详细(从小白到高级),入门必看

目录:基础 第一章-第五章(5.1-5.4):简介、配置与基础知识 第六章:判断语句 第一章:Python的概述 1.1:什么是Python? Python它是一种直译式,面向对象,解释式的脚本语…

NASA Earthdata wget批量下载

1 wegt下载 GNU Wget 1.21.4 for Windows (eternallybored.org) 2 创建your .urs_cookies and .dodsrc文件 只需要创建.urs_cookies文件 其实,通过txt可以直接创建 这个文件你想放到哪里,就放到哪里 Create .urs_cookies file: On Mac/Linux: cd ~ o…

QT TCP通讯客户端与服务端

服务端 // 自定义如下 private:QTcpServer *tcpserver; //TCP服务器QTcpSocket *tcpsocket;// TCP通讯socketQString GetLocalIpAddress(); // 获取本机的IP地址private slots:void clientconnect();void clientdisconnect();void socketreaddata();void newconnection();void …

[C++]C++计算时间

在C中,有几种方法可以用来统计代码的运算时间: 使用std::chrono库: C11引入了chrono库,用于处理时间相关的操作。通过使用std::chrono::system_clock和std::chrono::duration_cast,可以很容易地测量代码段的执行时间。…

图片上叠加文字

在一个原有图片上叠加上指定的文字 编写一个工具类实现文字叠加的功能,叫ImageUttils import cn.hutool.core.img.Img; import cn.hutool.core.io.resource.Resource;import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Val…

绝对路径拼接漏洞 [NISACTF 2022]babyupload

打开题目 最开始以为是文件上传的漏洞 结果发现无论我们上传什么文件都会显示bad filename 去网上看了大佬的wp知道 我们直接去看源代码得到提示 /source 那我们去访问一下这个路径看看 得到一个下载文件 用记事本打开得到 源代码如下 from flask import Flask, request, r…

软考46-上午题-【数据库】-数据查询语言DQL1

一、SQL数据查询功能 SELECT语句的语法如下: 【注意】: 使用DISTINCT选项可以去重; form子句中出现多个基本表或视图时,系统首先执行笛卡尔积操作。 下面的查询示例均以这些表为基础 1-1、投影查询-SELECT 【回顾】:…

设计模式(七)装饰模式

相关文章设计模式系列 1.装饰模式简介 装饰模式介绍 装饰模式是结构型设计模式之一,不必改变类文件和使用继承的情况下,动态地扩展一个对象的功能,是继承的替代方案之一。它是通过创建一个包装对象,也就是装饰来包裹真实的对象…

【日常聊聊】Sora- 探索AI视频模型的无限可能

🍎个人博客:个人主页 🏆个人专栏:日常聊聊 ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 方向一:技术解析 方向二:应用场景 方向三:未来展望 方向四:伦理与创意 方向…

[linux][异常检测] hung task, soft lockup, hard lockup, workqueue stall

hung task,soft lockup,hard lockup,workqueue stall 是 linux 内核中的异常检测机制,这 4 个检测均是通过时间维度上的检测来判断异常。 在时间维度上的检测机制,有两个核心的点: (1&#xff…

web组态插件

插件演示地址:http://www.byzt.net 关于组态软件,首先要从组态的概念开始说起。 什么是组态 组态(Configure)的概念来自于20世纪70年代中期出现的第一代集散控制系统(Distributed Control System)&#xf…

紫外-可见吸收光谱法(UV-Vis)是最常用吸收光谱技术 市场持续扩大

紫外-可见吸收光谱法(UV-Vis)是最常用吸收光谱技术 市场持续扩大 紫外-可见吸收光谱法,也称为紫外-可见分光光度法,简称UV-Vis,利用样品分子在紫外和可见光激发下产生电子能级跃迁形成的吸收光谱,对元素进行…

[C++]set用法

一、set是什么 set是STL中的常见容器&#xff0c;set中不允许有重复元素&#xff0c;并且set中的元素是排好序的 二、set简单使用 1、使用set需要添加头文件#include<set> 2、set的声明 set<int> a;//set中存放的是int类型的数据3、与set相关的函数 set<i…

基于Java SSM框架实现高校网课管理系统项目【项目源码+论文说明】

基于java的SSM框架实现高校网课管理系统演示 摘要 随着移动应用技术的发展&#xff0c;越来越多的学生借助于移动手机、电脑完成生活中的事务&#xff0c;许多的行业也更加重视与互联网的结合&#xff0c;以提高教学的教育水平和寻求更高的经济利益。针对高校网课管理系统&…

猫头虎分享已解决Bug || 解决SyntaxError: Unexpected token o in JSON at position 1

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …

HashMap的put()方法执行流程

HashMap的数据结构在jdk1.8之前是数组链表&#xff0c;为了解决数据量过大、链表过长是查询效率会降低的问题变成了数组链表红黑树的结构&#xff0c;利用的是红黑树自平衡的特点。 链表的平均查找时间复杂度是O(n)&#xff0c;红黑树是O(log(n))。 HashMap中的put方法执行过…