How to sum two gaussian curve fits (cfit) ?

21 views (last 30 days)
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?

Accepted Answer

Chris on 21 Jun 2022
Edited: Chris on 21 Jun 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;
hold on
or more succinctly:
x = linspace(20,35);
plot(x, F1(x) + F2(x))
  1 Comment
Naif Alsalem
Naif Alsalem on 21 Jun 2022
Thank you very much, @Chris. Absolutely what I needed. The keyword was with the: feval.
Much obliged

Sign in to comment.

More Answers (0)




Community Treasure Hunt

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

Start Hunting!