Improve least squares solution

2 ビュー (過去 30 日間)
carlos g
carlos g 2018 年 7 月 17 日
コメント済み: dpb 2018 年 7 月 17 日
I have to solve a least squares problem in which y=Ax, where y is a vector whose entries are experimental data, A is my model and x is the solution I need to find so as to weight properly my model to fit the experiments. The following figure shows in blue the experimental data (y) and in red Ax.
How could I obtain a better fit for my data in MATLAB? Is there any specific function for this? (I am not sure how to use the nonlinear least squares method, I simply solved the normal equations with the backslash \ )
  3 件のコメント
carlos g
carlos g 2018 年 7 月 17 日
The condition number is cond(A)=9.52911699912484e+18. Basically Ax has to fix y (the blue curve), so my question is basically if MATLAB has more powerful regression methods than the usual backslash (least squares) or if there is any trick I can use to overcome this bad result.
dpb
dpb 2018 年 7 月 17 日
You're apparently trying to use an extremely high-order polynomial to fit a very difficult problem.
The solution is undoubtedly to find a more suitable model.
The backslash operator is quite sophisticated despite its deceptively simple syntax; internally it does quite sophisticated stuff and generally outperforms any other technique for badly condition systems.

サインインしてコメントする。

回答 (0 件)

カテゴリ

Help Center および File ExchangeSystems of Nonlinear Equations についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by