关于matlab中复共轭的问题!

前面已经有syms Dx Jx Jy Jz real 为什么还有这一项 conj((4*Dx^2 + Jy^2 + Jz^2 + 2*Jy*Jz)^(1/2)) 求大神啊!!

这个题目昨天就看到了,怎么会没人回答呢?
原则上,定义了实数范围的4个变量,并不能保证后面的运算结果不产生复数
但是本题中:sqrt(4*Dx^2+Jy^2+Jz^2+2*Jy*Jz)=sqrt(4*Dx^2+(Jy+Jz)^2)
可以看出:根号下的表达式的结果是恒≥0的,应该是不会产生虚数的
所以这里的conj-----求共轭复数,是没有意义的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-26
这个问题头几天问过了吧?
估计是4*Dx^2 + Jy^2 + Jz^2 + 2*Jy*Jz这一项的正负造成的,最好贴出上下语句追问

syms Jx Jy Jz Dx B real;H=[Jz i*Dx -i*Dx Jx-Jy;-i*Dx -Jz Jx+Jy i*Dx;i*Dx Jx+Jy -Jz -i*Dx;Jx-Jy -i*Dx i*Dx Jz];[V,D]=eig(H);D1=diag(exp(diag(-B*D)));Pt=V*D1*inv(V),S=[0 0 0 -1;0 0 1 0;0 1 0 0;-1 0 0 0];L=Pt*S*conj(Pt)*S,Q=eig(L)
这是整个程序,哪里出错了啊!谢谢啊

相似回答