In spite of being real, I get the error: Warning: Imaginary parts of complex X and/or Y arguments ignored.

1 次查看(过去 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
Warning: Imaginary parts of complex X and/or Y arguments ignored.
Warning: Imaginary parts of complex X and/or Y arguments ignored.
Warning: Imaginary parts of complex X and/or Y arguments ignored.

回答(1 个)

Walter Roberson
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 个评论
raha ahmadi
raha ahmadi 2022-5-7
编辑:raha ahmadi 2022-5-7
I know from the steady state solution and physics of the problem that phi must be limited on the set:
. It seems I must impose this constraint on the solution
raha ahmadi
raha ahmadi 2022-5-7
The problem is solved. these lasers after injection experience non stable situations. I tried to impose constraints on phi, but I couldnt. In steady state solution after calculation we choose between the answers and choose those satisfy the physical conditions. I try to repeat this strategy hear but nothing happens. I changed one key parameter (rInj) and reach the answer.
again very thanks for your help
with the best wishes

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Programming 的更多信息

产品


版本

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by