I Best way to fit three functions

  • I
  • Thread starter Thread starter LCSphysicist
  • Start date Start date
  • Tags Tags
    Fit Functions
Click For Summary
The discussion focuses on finding the optimal values for variables x, y, z, and t in three highly non-linear functions defined by f, g, and h, given limited data points. The proposed approach involves minimizing the residues for each function simultaneously, potentially using the Lagrangian method to manage the constraints. However, the complexity of the non-linear functions raises concerns about the feasibility and efficiency of coding such a solution. An alternative suggestion is to combine the requirements of all data points into a single equation and apply Newton's approximation method for root finding. Ultimately, defining a clear mathematical criterion for "best fit" is essential for effective minimization.
LCSphysicist
Messages
644
Reaction score
162
TL;DR
I have basically three set of data, each set corresponding to a function, so that the data should fit the function, and each function is dependent of 4 parameters. How to find the best 4 parameters that fit it?
So I have $$f(x,y,z,t,n) = 0,g(x,y,z,t,n) = 0,h(x,y,z,t,n) = 0 $$ and i need to find the best ##[x,y,z,t]## that fit the data, where n is the variable. Now, the amount of data for each function is pretty low (2 pair for f (that is, two (n,f)), 3 pair for g and another 3 pair for h)

The main problem here is: the functions are highly non-linear. So i have no idea how can i write a program to find the best x,y,z,t!

I have thought of try to simultaneously minimize the residues, for example, for f:
$$R(f) = \sqrt{(f(x,y,z,t,n_1) - y_1)^2+(f(x,y,z,t,n_2) - y_2)^2}$$
(where y is the f obtained on thee data at n_1 (the pair i have cited above))

But this minimization subject to the condition that ##R(g), R(h)## (here, three terms) also be minimum. So maybe i could use Lagrangian method:
$$dR(h) = \lambda dR(g) + \mu dR(h)$$
But this is going to be extremelly massive and tedius to write a code, and the code will take days to run. As i said, the functions are non-linear.

Any method suggestion? or program suggestion?
 
Mathematics news on Phys.org
Extremely massive and tedious is probably the best you can get. If it was one occurrence, I'd advise WolframAlpha or plot the 3 functions and visually pick the best fit (further improved with Newton's approximation method).

For now I'd advise to combine the requirements for all the data points on f, g and h and rewrite them as ##function - data = 0## and then the square of the left hand side must be minimal for all data points simultaneously: so take the derivative with respect to ##n## of these squares all added up and approximate where this formula in ##n## equals 0 using Newton's approximation method or some better root finding algorithm.

Wiki on Newtons method
 
Last edited:
You'll need to decide what you consider "best fit". Write that down mathematically as fitquality(x,y,z,t), then feed it in a program for minimization.

The sum of squared residues for all data points (data point minus the applicable function) sounds like a good start.
 
  • Like
Likes Maarten Havinga
Seemingly by some mathematical coincidence, a hexagon of sides 2,2,7,7, 11, and 11 can be inscribed in a circle of radius 7. The other day I saw a math problem on line, which they said came from a Polish Olympiad, where you compute the length x of the 3rd side which is the same as the radius, so that the sides of length 2,x, and 11 are inscribed on the arc of a semi-circle. The law of cosines applied twice gives the answer for x of exactly 7, but the arithmetic is so complex that the...