1樓:不好好改就革
請給初始值,o(∩_∩)o謝謝!!
比如我給初始值:初始值:
θ(0)=0.5; θ'(0)=0;
下面用y代表θ,然後,函式程式:
function yprime=verderpol(t,y)global g;
global l;
g=9.8;
l=10;
yprime=[y(2);-g/l*sin(y(1))];
end主程式:
clc; clear all
global g;
global l;
g=9.8;
l=10;
y0=[0.5;0];%初始值:y(0)=0.5;y'(0)=0;
hold on
[t,y]=ode23('verderpol',[0,3*pi],y0);
plot(t,y(:,1),'r','linewidth',2);
plot(t,y(:,2),'g','linewidth',2);
legend('θ-t圖','θ''-t圖')grid on
hold on
畫出的影象:
希望我的回答對你有所幫助,滿意敬請採納喲,o(∩_∩)o謝謝!
2樓:匿名使用者
給的條件不夠,只好自己假設了
l = 1m, g=9.8 θ0=π/12%存為fun.m
function xdot=fun(t,theta)g=9.8; l=1;
xdot=[theta(2);-g*sin(theta(1))/l];
%存為main.m
theta0=[pi/12,0];
[t, theta]=ode23('fun',[0,10],theta0);
plot(t,theta(:,1));
3樓:匿名使用者
g=10;
l=1;
fun=@(t,x) [x(2),;-g/l*sin(x(1))];
ts=[0,20];
x0=[pi/20,0];
[t,x]=ode23(fun,ts,x0);
t=t';
theta=x(:,1)';
plot(t,theta);
xlabel('t');
ylabel('\theta');
matlab ode45和ode23有什麼區別
4樓:
引用一下matlab論壇裡大神的回答:
總得來說:二者演算法相似,只不過ode45比ode23精度要高一點,其它沒什麼差別。
具體ode是matlab專門用於解微分方程的功能函式;solver有變步長(variable-step)和定步長(fixed-step)兩種型別,不同型別有著不同的求解器。ode45求解器屬於變步長的一種,採用runge-kutta演算法;和他採用相同演算法的變步長求解器還有ode23。ode45表示採用四階,五階runge-kutta單步演算法,截斷誤差為(δx)3。
解決的是nonstiff(非剛性)的常微分方程.是解決數值解問題的首選方法,若長時間沒結果,應該就是剛性的,換用ode23來解。
5樓:匿名使用者
ode23 是 bogacki 和 shampine 的顯式 runge-kutta (2,3) 對的實現。在容
差較寬鬆且剛度適中的情況下,它可能比 ode45 更加有效。ode23 是單步求解器,是求解非剛性微分方程的低階方法。(在數學中,剛性方程是指乙個微分方程,其數值分析的解只有在時間間隔很小時才會穩定,只要時間間隔略大,其解就會不穩定。
目前很難去精確地去定義哪些微分方程是剛性方程,但是大體的想法是:這個方程的解包含有快速變化的部分。)
參考其中ode23和ode45的對比網頁鏈結
matlab 用ode23 解方程舉例
6樓:匿名使用者
算微分方程的
有ode23、ode45等等好多種
都是 龍格-庫塔 方法但是ode45個精確一些用法例如
[t,y] = ode23(@f,[0 2*pi],2)第一引數是迭代函式
第二個引數是t的取值範圍
第三個引數是y的初值
請用euler和matlab函式ode23求解下列微分方程
7樓:宇宙無敵小陽
1--尤拉法
t=0;
h=0.02;
y(1)=10;
for i=2:100000000
y(i)=y(i-1)+0.02*h*(1-0.001*y(i-1))*y(i-1);
if i*h>=20
break;
endend
2-----ode23
先建立function dy=dfun(t,y)dy=0.02*(1-0.001*y)*y;
再編寫[t,y]=ode23(@dfun,[0 120],10);
plot(t,y)
matlab中ode23是什麼意思?
8樓:唯我最逍遙
算微分方程的
有ode23、ode45等等好多種
都是 龍格-庫塔 方法但是ode45個精確一些用法例如
[t,y] = ode23(@f,[0 2*pi],2)第一引數是迭代函式
第二個引數是t的取值範圍
第三個引數是y的初值
9樓:匿名使用者
ode23 解非剛性微分方程,低精度,使用runge-kutta法的二三階演算法。
ode45 解非剛性微分方程,中等精度,使用runge-kutta法的四五階演算法。
ode113 解非剛性微分方程,變精度變階次adams-bashforth-moulton pece演算法。
ode23t 解中等剛性微分方程,使用自由內插法的梯形法則。
ode15s 解剛性微分方程,使用可變階次的數值微分(ndfs)演算法。
ode23s 解剛性微分方程,低階方法,使用修正的rosenbrock公式。
ode23tb 解剛性微分方程,低階方法,使用tr-bdf2方法,即runger-kutta公式的第一級採用梯形法則,第二級採用gear法。
10樓:飲水蒹葭
一種定步長的微分方程解法
11樓:百度使用者
微分方程解法器的一種,使用runge-kutta演算法
matlab中ode23函式輸出的是什麼
12樓:匿名使用者
ode系列函式的輸出引數bai都是du一致的:
[t,y] = solver(odefun,tspan,y0)其中solver代表求解zhi器(ode45, ode23, ode113, ode15s, ode23s, ode23t, ode23tb),第乙個輸出daot是**時間,y是微分方程內
(組)在容t時刻的解,每列代表乙個變數。
如何使用matlab求解複雜的微分方程組
13樓:二中混過
這說明此微分方程沒有顯示解,應用數值方法求解,例如ode45等函式就乙個例子(選自matlab幫助文件)
解入下微分方程組
1,建立方程組函式
function dy = rigid(t,y)dy = zeros(3,1); % a column vector
dy(1) = y(2) * y(3);
dy(2) = -y(1) * y(3);
dy(3) = -0.51 * y(1) * y(2);
2,求解並繪圖
[t,y] = ode45(@rigid,[0 12],[0 1 1]);
plot(t,y(:,1),'-',t,y(:,2),'-.',t,y(:,3),'.')結果
求解微分方程,求解微分方程的方法
上面答的是都是什麼呀。y 明顯的是對x求導。這是乙個高等數學問題,絕對的本科內容。dy dx a y b a by y dx dy y a by dx y a by dy 1 b a b b y a dy 兩邊同時積分,得 x y b a ln b b y a b b c得到了x關於y的函式。可以反...
如何用matlab求解微分方程並畫圖
1 找到關於求解常微分方程的習題。2 這裡用matlab求解,主要用到的就是 dsolve 具體的格式如下,但是不僅僅侷限下面兩種,其中eq就是代表方程式,而con為初始條件。3 這裡的 x 關於x的函式。知道語法就可以進行計算了。4 在matlab中輸入如下,dsolve d2y 2 dy exp...
matlab怎麼解偏微分方程,matlab怎麼求解二元二次偏微分方程
看到這個問題 本來想略過的,但還是留下來說了句。經常看到網上有版人這樣問 問題,你這麼權問我猜沒有人會回答的,想回答也沒辦直接回答。問的太大了,太模糊了。首先,偏微方程是乙個很大的概念,什麼偏微分方程,拋物的,橢圓的還是雙曲的?也沒有方程具體表達,其次解方程的條件是什麼,第一類邊界,第二類還是第三類...