How to solve non-linear equations having modulus expression?

조회 수: 1 (최근 30일)
Anuj Kumar Sahoo
Anuj Kumar Sahoo 2020년 12월 4일
댓글: Anuj Kumar Sahoo 2020년 12월 8일
Hi
I am trying to solve a set of non-linear equations with the final expression in the form of:
power=(abs(non-linear equation))^2;
My system is such that I only have access to the value after modulus of the expression. Therefore, I can not solve the expression by comparing the real and imaginary part.
Is there any way to solve this problem in matlab?
Thanks!

답변 (2개)

Ameer Hamza
Ameer Hamza 2020년 12월 4일
  댓글 수: 1
Anuj Kumar Sahoo
Anuj Kumar Sahoo 2020년 12월 4일
Hi Ameer
lsqnonlin() and fmincon() are working perfectly as long as I am comparing the real and imaginary part of the expression, before taking the modulus. Unfortunately, in practice I only have access to the power term i.e. (mod(expression))^2. For which I am facing problem.
FYI: I have also tried expressing
abs(a)^2 == a.*conj(a)
But it didn't work as well.:(

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


Alan Weiss
Alan Weiss 2020년 12월 4일
As long as you have no bounds, you can use lsqnonlin directly. See Fit a Model to Complex-Valued Data.
Alan Weiss
MATLAB mathematical toolbox documentation
  댓글 수: 1
Anuj Kumar Sahoo
Anuj Kumar Sahoo 2020년 12월 8일
Hi Alan
Thanks a lot for your suggestion. But I think my problem still is the unavoidable "modulus" expression in my equation which is stopping me from getting correct answer. The link you shared was definitely useful, but didn't serve my purpose in this case. May be this technique will be helpful to me in some other problem.
Regards

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

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by