MATLAB如何使用ODE求解器?

时间:2013-04-10 09:49:50

标签: matlab ode

我有一个ODE,我想要消除x。 有人可以在MATLAB中帮我解决这个问题吗?

等式

   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

1 个答案:

答案 0 :(得分:0)

  

我希望在y和omega方面有dy / dx,我想从这个等式中消除x

在上面的代码中,omega是一个常量,所以我假设它只是一个参数。

您目前向我们展示的只是表格中的ODE,

dy/dx = f(x,y)

你不能从这个DE中消除“x”,并且没有必要这样做,因为方程已经恰好以正确的形式用于任何ode求解器,例如ode45。

如果你想使用许多不同的参数omega值运行一个求解器,那么使用“匿名函数”可以很容易地完成。但是,在任何人可以帮助你之前,你可能需要稍微改进一下你的问题。