I would like to estimate the amplitude and phase of a set of noisy data that should follow the model A sin(wt+phase) .
I can do this with NonLinearModel.fit, but it's not obvious how I can provide bounds on my parameters (phase should be between 0 and 2pi and the amplitude should be positive).
I have read that these nonlinear fitting functions cannot apply constraints to the model. Is this true that there's no way to use these nonlinear fitting methods with bounds on the parameters?

 채택된 답변

Torsten
Torsten 2018년 6월 26일
편집: Torsten 2018년 6월 26일

1 개 추천

It's not necessary to include bound options for your problem.
"phase" can be easily adjusted to lie between 0 and 2*pi, and "w" can be replaced by "w^2" in your model:
A*sin(w^2*t+mod(phase,2*pi))
Best wishes
Torsten.

댓글 수: 1

This works for what I asked for. Thank you. Any ideas what I can do if I want to give my frequency a range? (So for example, I want it to be between 40 & 50)?

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

추가 답변 (0개)

카테고리

제품

태그

질문:

2018년 6월 26일

댓글:

2018년 7월 13일

Community Treasure Hunt

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

Start Hunting!

Translated by