我有这个非线性的一阶ODE,可以简化为
y'(t)=(-i + y * conj(y))* y + g(t)
其中i = sqrt(-1),g(t)是t的给定函数。
conj(y)是y(t)的复共轭。
y(t)是我正在寻找的函数,但由于conj(y),我不知道如何处理这个等式,有没有人知道在MATLAB中解决这个问题?
提前感谢!
编辑:t是真实的。
答案 0 :(得分:0)
一种可能的解决方案是将虚部和实部分开。
设y(t)=A(t)*exp(i*f(t))
,其中A(t), f(t)
是实函数,幅度和相位相应,i
是虚构的统一。
然后,替换(并使用y*conj(j)=A^2
):
(A'+A*i*f')*exp(i*f)=(-i+A^2)A*exp(i*f)+g(t)
现在,如果您的g(t)
是实值函数,则会得到2个实函数方程A,f
:
A'*cos(f)=(A^3)*cos(f)+g(t)
A*f'*sin(f)=-A*sin(f)
如果g
是复杂函数,也可以分开实部和虚部。