Re: Help with Nonlinear Fitting?
- To: mathgroup at smc.vnet.net
- Subject: [mg43861] Re: Help with Nonlinear Fitting?
- From: Tom Burton <tburton at brahea.com>
- Date: Thu, 9 Oct 2003 01:54:34 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Hello, As I read the on-line help, you can specify ranges to NonlinearRegress that control the set-up of a factorial search scheme. But that does not limit where the search wanders. If NonlinearRegress wanders into territory you know is fruitless, perhaps the numerical analysis is failing. But before you crank up the precision, consider the well-known difficulty of certain common inverse thermal problems (solving for physical parameters from a time trace of temperature), which may include the problem at hand. One should take care to limit the interval of time so as not to wash out important information by exponential decay. But that's not always possible. In your case, there may be an elegant work-around. I see that you have cp and lambda. Can you reformulate your model to use them directly instead of working through T? It could be that important model data is permanently lost during the numerical computation of T. Just a thought based on incomplete data. Tom Burton On 10/6/03 8:44 PM, in article bltncd$ein$1 at smc.vnet.net, "Lisa M. Downward" <lmd at physics.ucsc.edu> wrote: > Hello, > I am trying to fit some experimental data with a model that is > represented by an integral, the problem is the integral cannot be solved > analytically and needs to be evaluated numerically. I have used the > following approach: > > (define model) > > model[T_]:== N[Integrate[(v/3) * Cp[x,T] * lambda[x,T], {x, 0.0001, 340/T }] > ... > According to the help files this should constrain the parameters to the > range 0 to 10 (negative values are non-physical). When I run the fit > without the constraints, at least one of the parameters always goes > negative, and when I run the fit WITH the constraints, Mathematica seems > to ignore the constraints and still makes at least one negative, but > changes the starting values...