fitting using fitnlm with bounded parameters

3 visualizzazioni (ultimi 30 giorni)
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?

Risposta accettata

Torsten
Torsten il 26 Giu 2018
Modificato: Torsten il 26 Giu 2018
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 Commento
Steven Sagona
Steven Sagona il 13 Lug 2018
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)?

Accedi per commentare.

Più risposte (0)

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by