simultaneous fitting of two plots with two functions
32 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Arun Kumar Bar
am 16 Sep. 2018
Kommentiert: Arun Kumar Bar
am 25 Sep. 2018
I have two sets of dependent variable column vectors (y1, y2) for a set of independent variable column vectors (x). I want to fit the (x, y1) plot with the function f1(ca. f1 = (a + (b-a)*(1 + c*x^d))) and the (x, y2) plot with the function f2(ca. f2 = (b-a)*c*x^d)) simultaneously. Could anyone please help?
Many thanks, in advance! Arun
2 Kommentare
Kaushik Lakshminarasimhan
am 16 Sep. 2018
What do you mean by simultaneous? Based on your equations, the transformation from x to y_1 is independent of y_2 and likewise x -> y_2 is independent of y_1. So you can just fit the two functions separately.
Akzeptierte Antwort
Weitere Antworten (1)
Torsten
am 17 Sep. 2018
xdata=[x(:,1); x(:,1)];
ydata=[y1(:,1); y2(:,1)];
fun=@(x,xdata) [f1(xdata(1:numel(xdata)/2),x(1),x(2),x(3),x(4)); f2(xdata(1:numel(xdata)/2),x(1),x(2),x(3),x(4))];
x0=[- - - -];
x=lsqcurvefit(fun,x0,xdata,ydata);
where f1(...),f2(...) must be column vectors each of the same size as x.
0 Kommentare
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!