The SDL Component Suite is an industry leading collection of components supporting scientific and engineering computing. Please visit the SDL Web site for more information....



CalcPowerFit


Unit:SDL_math2
Class:TCurveFit
Declaration:procedure CalcPowerFit (var k0, k1, FitQual: double);

The procedure CalcPowerFit calculates the best fitting power curve for a given set of data. The curve is determined by the equation

The values of x and y are given by the data samples, the parameters k0 and k1 are estimated by CalcPowerFit using a least squares approximation. An exception is raised if the fit cannot be calculated (i.e. if the x-values are too large). The following diagram shows the various types of curves which can be generated by the power function:

The data points [x,y] have to be entered using the routine EnterStatValue. A minimum number of 3 values is required in order to apply CalcPowerFit. Do not forget to reset the statistics calculation before entering any new data sets (use the method Init).

In addition to the parameters k0 and k1, CalcPowerFit calculates the quality of fit FitQual. This parameter may vary between 0.0 and 1.0, indicating the best possible fit if FitQual equals 1.0.

Hint 1: The quality of fit calculated by CalcPowerFit is not adjusted for the degree of freedoms in the regression parameters.

Hint 2: The regression routine requires both the x- and the y-values to be greater than zero. The curve fitting algorithm raises an exception in the case of negative or zero values. In the case you have exclusively negative y-values you can apply the regression algorithm by changing the sign of all y-values before performing the regression. As a consequence you have to change the sign of the estimated parameter k0 as well.

Example: This method is used in the following example program (see http://www.lohninger.com/examples.html for downloading the code): curvefit



Last Update: 2023-Feb-06