In spite of being real, I get the error: Warning: Imaginary parts of complex X and/or Y arguments ignored.
3 次查看(过去 30 天)
显示 更早的评论
Hi every one. I have a system of ODE. My solution is real (isreal (A_ODE)=1), but I get this error: Warning: Imaginary parts of complex X and/or Y arguments ignored. Actually I expected the steady- state soIution but I got unstable system. I dont know, is this error massage affected on the answer or not I attached the code and really appreciate any help.
thanks in advance
LaserODE
0 个评论
回答(1 个)
Walter Roberson
2022-5-6
dNis = Nis - Nth;
Ais = sqrt((AInj^2 - gammaN/gammaP*dNis)/(1 + g*dNis/gammaP));
dNis is negative.
That makes the numerator for the next line a value minus a negative value, which is positive, so the numerator is okay.
But with dNis being sufficiently negative, the denominator is negative, so overall you are taking square root of a negative value.
phi_Tr = zeros(size(A_Tr));
You do not assign any other value to phi_Tr, so phi_Tr is all zero at the time you semilogy(), which means you are trying to plot the log of 0.
3 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Ordinary Differential Equations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!