lsqcurvefit

7 ビュー (過去 30 日間)
Matthew
Matthew 2011 年 3 月 3 日
Would LSQCURVEFIT work with comparing two complex functions? It looks like the metric for success is min sum {(FUN(X,XDATA)-YDATA).^2}, where it should be min sum {abs(FUN(X,XDATA)-YDATA).^2)} for complex-valued functions, or maybe sum {(FUN(X,XDATA)-YDATA).conj((FUN(X,XDATA)-YDATA))} Thanks Matt

採用された回答

Andrew Newell
Andrew Newell 2011 年 3 月 3 日
Since the distance between two complex numbers a+i*b and c+i*d is (a-c)^2 + (b-d)^2, you could treat each complex number as a pair of independent real numbers. Wrap fun in a function rfun that returns the real and complex parts of the output. For example, assuming rfun returns a column vector,
function y = rfun(x)
y = rfun(x);
y = [real(y); imag(y)];
end
Similarly, you could replace ydata by
rdata = [real(ydata); imag(ydata)].
Then you have the first two inputs for lsqcurvefit.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeEncryption / Cryptography についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by