How to sum two gaussian curve fits (cfit) ?

8 visualizzazioni (ultimi 30 giorni)
Naif Alsalem
Naif Alsalem il 21 Giu 2022
Modificato: Chris il 21 Giu 2022
Dear All,
I have two peaks fitted with gaussian profiles (cfit) as shwon in the image below. I need to sum these two gaussian curves together but arthimetic operations are not allowed on cfit types in MATLAB. The peaks with the black and blue asterisks represent Row1 & Row2. The red curves are the gaussian fits performed as:
F1=fit (x1', y1','gauss2');
F2=fit (x2', y2','gauss2');
The summation of the F1 and F1 is just not allowed as:
D = F1+F2;
Undefined operator '+' for input arguments of type 'cfit'.
and I am looking for a way to add them together. Any thoughts?

Risposta accettata

Chris
Chris il 21 Giu 2022
Modificato: Chris il 21 Giu 2022
You could evaluate the fits and add them, though they would no longer be cfits.
x = linspace(20,35);
F1pts = feval(F1,x);
F2pts = feval(F2,x);
Fsum = F1pts+F2pts;
figure
plot(F1)
hold on
plot(F2)
plot(X,Fsum)
or more succinctly:
x = linspace(20,35);
plot(x, F1(x) + F2(x))
  1 Commento
Naif Alsalem
Naif Alsalem il 21 Giu 2022
Thank you very much, @Chris. Absolutely what I needed. The keyword was with the: feval.
Much obliged

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Fit Postprocessing in Help Center e File Exchange

Prodotti


Release

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by