2013-04-10 76 views
0

我有一個ODE,我想消除x。 有人能在MATLAB中幫助我嗎?常量MATLAB如何使用ODE求解器?

dy/dx=(-((y^2)/(j*omega*eox)) + ((j*omega*(q^2)*nbt)/(1+(j*omega*tau0*e^(2*k*x))))) 

值:

eox = 8.85*10.^-12; 
omega = 1; 
j=-1.^(1/2); 
q=1.6*(10.^(-19)); 
nbt=(10.^(-10)); 
tau0=10.^(-4); 
k=1; 
e=2.71828182846; 
y = 0 to 80 
+0

如果你只是想要一次性解決方案,總是有wolfram alpha網站 – learnvst 2013-04-10 10:26:24

+0

我試圖用符號來解決,但我想在這裏x被淘汰。 – 2013-04-10 10:35:39

+3

請說明你的意思是「消除」。另外,請寫* full *方程;你寫的只是一個參數和數學運算符的叢林:) – 2013-04-10 10:36:58

回答

0

我想在y和歐米茄方面DY/DX,我想從這個等式消除X

在你上面的代碼中,歐米茄是ac因此我假定它只是一個參數。

目前你已經證明什麼我們簡直是在形式的ODE,

dy/dx = f(x,y) 

你不能從這個DE消除「X」,而且也沒有必要做這樣的等式已經在精確正確的形式可用於任何的ode求解器,例如ode45。

如果你想在這個上運行一個求解器,其中有許多不同的參數omega值,這可以使用「匿名函數」很容易地完成。但在任何人都可以幫助你之前,你可能需要稍微改進一下你的問題。