complex conjugate problem, already assumed real

조회 수: 4 (최근 30일)
Dan Zhu
Dan Zhu 2020년 11월 6일
댓글: Raunak Gupta 2020년 12월 15일
I'm using the latest 2020b build of MATLAB. Here's part of my code:
syms nu theta H(r,theta)
assume([nu theta H(r,theta)], 'real')
simplify(sin(theta)'-sin(theta)) %This is 0.
simplify(diff(H(r,theta),theta)'-diff(H(r,theta),theta)) %This is not.
simplify(kroneckerDelta(nu)'-kroneckerDelta(nu)) %This is also not.
How to solve this?

답변 (1개)

Raunak Gupta
Raunak Gupta 2020년 11월 9일
Hi,
From the documentation of MATLAB Operators and Special Characters you can see that is used for complex conjugate transpose whereas . is used for transpose of a matrix. Since the first expression which gave zero is always real so both operators will behave same. In the other two expressions it may give complex number as output (based on the definition of nu and H(r , theta)). So, both operators are different in that case and thus you are not getting zero. If you replace the bottom two expression with the following it will give 0 as answer.
simplify(diff(H(r,theta),theta).'-diff(H(r,theta),theta))
simplify(kroneckerDelta(nu).'-kroneckerDelta(nu))
  댓글 수: 2
Dan Zhu
Dan Zhu 2020년 12월 14일
That doesn't solve the problem, in my original code, there are other parts that are still complex in nature. I need to use complex conjugate, but I need those elements I've already assumed real to perform normally under the ' complex conjugate operator.
Raunak Gupta
Raunak Gupta 2020년 12월 15일
Hi,
For the real numbers, complex conjugate will return the same output as simple transpose. Since here you have both real and complex numbers in H(r,theta) the difference between both terms will not be an all zero matrix. For real numbers, matrix entries will be zero and for complex number it will be purely imaginary. Also make sure if diff(H(r,theta)) is a 2-D matrix it is symmetric or conjugate symmetric for the output to be zero.
Hope this clarifies!

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by