Lsqnonlin - Use levenberg-marquardt with real parameters and complex function

1 次查看(过去 30 天)
I want to minimize the term f(x)-v (where v is a constant complex vector number). The Function f(x) take an complex input vector and returns an complex vector. For my computations, i want that x has a certain curve (Equation 2 in the picture, x is sigma). So, each element in the x-vector should have 3 parameters x_infinity, x_zero and tau that are real (!) numbers. The problem is: if i use a complex function in lsqnonlin (levenberg-marquardt), the all the parameters are directly complex. How can i command to the solver to just consider real parameters?

采纳的回答

Matt J
Matt J 2017-8-5
编辑:Matt J 2017-8-5
Break the function into real and imaginary parts. In other words, modify your objective function from an N x 1 vector to 2N x 1 consisting of the real and imaginary parts,
f_new(x) = [real(f(x)); imag(f(x))]

更多回答(0 个)

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by