LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

how do you optimize non-linear fit with lev-mar fit (levenberg-marquardt)

I want to improve control of the lev-mar non-linear fit vi.  how do i do this?  there is an option for standard deviation, and it looks like you have this for each data point??

1) can I wait certain data points for better fit? this would be great, though there is not enough documentation? i am not sure what the s.d. of just one experimental point means?

2) also, can I force tight fit?  it does not explain this either.

thanks 

0 Kudos
Message 1 of 4
(2,991 Views)

You must have a pretty old LabVIEW version, because this input has been changed to "weight" since about LabVIEW 8.0.

 

Just give a larger SD to give parts of the function less weight.

 

To convert between the two you could try e.g.:

 

weight=1/variance = 1/(SD²)

 

 

 

Message 2 of 4
(2,989 Views)

is this weighting for the experimental data points, or for the parameters?

 

what are typical weight values, and is it entirely relative, i.e. comparing ratios of the weights to each data point, rather than absolute? 

 

lastly, there seems to be no obvious way to control the tolerance of the solution?  e.g. in excel, you have a tolerance?  this seems buried in the subvis

 

labview 6 btw. 

0 Kudos
Message 3 of 4
(2,985 Views)

ennis wrote:

is this weighting for the experimental data points, or for the parameters?


The array of SD is the same size as the array of Y, so it's the weighting of experimental data points.

 

The default is 1.

 

I am not familiar with the excel tools. Are you looking for a termination condition? I don't remember the details of the ancient lev-mar fit, but I'm sure it's there. All fitting VIs received a significant makeover in LabVIEW 8.0 and many things changed.

Message 4 of 4
(2,977 Views)