微分方程数值解 matlab,本学期微分方程数值解课程总结(matlab代码)
最簡單求解一個微分方程數值解得方法:Euler法
function [x,y]=Euler_method(dufun,span,h,x0,y0)
%EuLer格式,
%求解方程y'=dufun(x,y);其中x \in[a,b];y0為初始值;n為自變量的離散個數;y為求解結果
x=span(1):h:span(2);
n=length(x);
y=zeros(1,n);%存放數值的解
x(1)=x0;
y(1)=y0;
for i=1:n-1
y(i+1)=y(i)+h.*feval(dufun,x(i),y(i));%Euler格式
end
2.改進的Euler格式
function[x,y]=Gaijin_Euler(func,span,h,x0,y0)
%改進的Euler格式;
%span為區間
%y(x0)=y0;
%n表示區間等份;
x=span(1):h:span(2);
n=length(x);
y=zeros(1,n);
x(1)=x0;
y(1)=y0;
for i=1:n
y1=y(i)+h*feval(func,x(i),y(i));
y2=y(i)+h*feval(func,x(i+1),y1);
y(i)=(y1+y2)/2;
end
方法二:常見的Rungerkutta3與Rungerkutta4格式
1.Rungerkutta3
function [x,y]=Rungekutta3(f1,span,h,x0,y0)
x=span(1):h:span(2);
n=length(x);
y=zeros(1,n);
x(1)=x0;
y(1)=y0;
for j=1:n-1
K1=feval(f1,x(j),y(j));
K2=feval(f1,x(j)+h/2,y(j)+h/2*K1);
K3=feval(f1,x(j)+h,y(j)-h*K1+h*2*K2);
y(j+1)=y(j)+(h/6)*(K1+4*K2+K3);
end
1.Rungerkutta4
function [x,y]=Rungekutta4(f1,span,h,x0,y0)
x=span(1):h:span(2);
n=length(x);
y=zeros(1,n);
x(1)=x0;
y(1)=y0;
for j=1:n-1
K1=feval(f1,x(j),y(j));
K2=feval(f1,x(j)+h/2,y(j)+h/2*K1);
K3=feval(f1,x(j)+h/2,y(j)+h/2*K2);
K4=feval(f1,x(j)+h,y(j)+h*K3);
y(j+1)=y(j)+(h/6)*(K1+2*K2+2*K3+K4);
end
調試和運行matlab代碼(源程序)的技巧和教程
轉載請標明出處:專注matlab代碼下載的網站http://www.downma.com/ 本文主要給大家分享使用matlab編寫代碼,完成課程設計.畢業設計或者研究項目時,matlab調試程序的技巧 ...
如何加速MATLAB代碼運行
學習筆記 V1.0 2015/4/17 如何加速MATLAB代碼運行 概述 本文源于LDPCC的MATLAB代碼,即.由于代碼的問題,在信息位長度很長 ...
多分類問題中,實現不同分類區域顏色填充的MATLAB代碼(demo:Random Forest)
之前建立了一個SVM-based Ordinal regression模型,一種特殊的多分類模型,就想通過可視化的方式展示模型分類的效果,對各個分類區域用不同顏色表示.可是,也看了很多代碼,但基本都是 ...
卷積相關公式的matlab代碼
取半徑=3 用matlab代碼實現上式公式: length=3;for Ki = 1:length for Kj = 1:length for Kk = 1:length Ksigma(Ki,Kj,K ...
JAVA調用matlab代碼
做實驗一直用的matlab代碼,需要嵌入到java項目中,matlab代碼拼拼湊湊不是很了解,投機取巧采用java調用matlab的方式解決. 1. ? ?matlab版本:matlabR2014a ...
直方圖均衡化與Matlab代碼實現
昨天說了,今天要好好的來解釋說明一下直方圖均衡化.并且通過不調用histeq函數來實現直方圖的均衡化. 一.直方圖均衡化概述 直方圖均衡化(Histogram Equalization)?又稱直方圖平 ...
將labelme 生成的.json文件進行可視化的代碼+label.png 對比度處理的matlab代碼
labelme_to_dataset 指令的代碼實現: show.py文件 #!E:\Anaconda3\python.exe import argparse import json import o ...
關于本科畢業論文《Laguerre小波在數值積分與微分方程數值解中的應用》存在的問題與小結
本科的畢業設計是通過Laguerre小波函數來近似表達某個需要求積分或解微分方程的函數,將原函數很難求得函數用小波函數表達出來,這 ...
SVM實例及Matlab代碼
******************************************************** ***數據集下載地址 :http://pan.baidu.com/s/1geb8CQf ...
隨機推薦
Enterprise Solution 企業資源計劃管理軟件 C/S架構,支持64位系統,企業全面應用集成,制造業信息化
Enterprise Solution是一套完整的企業資源計劃系統,功能符合眾多制造業客戶要求.系統以.NET Framework技術作為開發架構,完善的功能可有效地幫助企業進行運營策劃,減低成本,如 ...
關于xml的使用。
使用的常用類: XmlSerializer ParaMapping StreamReader DirectionaryInfo FileInfo using as object 例子: public ...
radio被選中,但是重復點擊后事件不觸發
網上找了好多帖子,都沒用,在百度知道發現以下答案 知識點:使用 jq的prop才能設置 html $('.ss').click(function(){ $(this).find("input ...
Codeforces Round #249 (Div. 2)
A.水題. #include #include #include #include
分享一些Comet開發經驗
前言 本comet技術主要用于數據庫持久層的 穿越防火墻 遠程訪問.只要有一臺中繼網站,任意地點的數據庫都能被訪問. Comet概念介紹 WebIM.網頁的客服.meebo等大家聽說過了.最近還有個兄 ...
字體圖標 icon font
Icon font icon font 指的是用字體文件代替圖片文件,來展示圖標.特殊字體等元素的方法. 應用場景: iconfont的優缺點 大小能夠自由地變化 顏色能夠自由地改動 加入陰影效果 * ...
Mysql的Error 1364
在安裝mysql 5.5.8的最后一步,應用安全配置時, 彈出錯誤對話框,?Error Nr.1364 authentication_string 解決辦法: 1.暫時不要關閉該窗口,cmd命令,執行 ...
杭電ACM水仙花數
水仙花數 Time Limit: 2000/1000 MS (Java/Others)????Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
Java后臺實現方法
Java后臺實現方法 首先后臺結構分為四個部分(以表schedule為例) entity>mapper>service>controller 1. 在entity里面寫好實體,新建目 ...
Python學習第四天
一.數字 int 二.字符串 str #以下均為補充內容 #對于空字符串是假 #數字0是假 #數字和字符串可以相互轉換 # a="123" # b=int(a) # a=123 # ...
總結
以上是生活随笔為你收集整理的微分方程数值解 matlab,本学期微分方程数值解课程总结(matlab代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 自学Python 57 多线程开发(七)
- 下一篇: 一次ibm服务器故障处理