初学者 一个关于matlab问题 fplot用法,请高手指教

来源:百度知道 编辑:UC知道 时间:2024/05/26 20:42:35
这个是微分方程组m文件
%%%%%%%%%%%%%%%%%%%%%
function dy=edfa(z,y);

ovl=0.6;
semi=2.7*10^(-25);
sabs=3.1*10^(-25);
pabs=3.8*10^(-25);
n0=0.2*10^25;
Aeff=1.26*10^(-6);
hvp=6.63*10^(-34)*3.061*10^14;%单位w
hvs=6.63*10^(-34)*3.10*10^14;
tau=1.14;%单位s
wsa=ovl*sabs/(hvs*Aeff)*y(2);
wse=ovl*semi/(hvs*Aeff)*y(2);
wp=ovl*pabs/(hvp*Aeff)*y(1);
n1=(wse+1/tau)/(wse+1/tau+wsa+wp)*n0;
n2=(wsa+wp)/(wse+1/tau+wsa+wp)*n0;
dy(1)=-ovl*pabs*n1*y(1);
dy(2)=ovl*(semi*n2-sabs*n1)*y(2);
dy=[dy(1);dy(2)];

下面是运行指令
%%%%%%%%%%%%%%%%%%%%%
%解微分方程
sym z;
y=sym('y(1),y(2)');

ovl=0.6;
semi=2.7*10^(-25);
sabs=3.1*10^(-25);
pabs=3.8*10^(-25);
n0=0.2*10^25;
Aeff=1.26*10^(-6);
hvp=6.63*10^(-34)*3.061*10^14;%单位w
hvs=6.63*10^(-34)*3.10*10^14;
tau=1.14;%单位s
wsa=ovl*sabs/(hvs*Aeff)*y(2);
wse=ovl*semi/(hvs*Aeff)*y(2);
wp=ovl*pabs/(hv

feval 是个评估函数 不需要你做什么修改 是matlab自带的 问题是你要fplot的东西 是一个全部是0的 1001×1001的矩阵 也就是你那个一长串位于fplot函数括号里面第一部分的东西 粗略的帮你看了一下你函数运算的答案没有保存下来 由于大学毕业太久了 微分方程看着头大 还是建议你重新写一个可以@的函数保存结果再画图