Re: Fitting a inverse function from complicated integral
- To: mathgroup at smc.vnet.net
- Subject: [mg87232] Re: [mg87210] Fitting a inverse function from complicated integral
- From: Darren Glosemeyer <darreng at wolfram.com>
- Date: Sat, 5 Apr 2008 04:21:08 -0500 (EST)
- References: <200804040757.CAA03920@smc.vnet.net>
tibor dubaj wrote: > Dear Group, > > I need to Fit this experimental data {x, OOT}: > > data = { > {1, 444.6}, > {3, 455.15}, > {5, 464.81}, > {7, 467.79}, > {10, 469.01}, > {15, 480.28}} > > But there is a big problem with model equation: > > x = Integrate[A*Exp[-B/T], {T, 0, OOT}, Assumptions -> A > 0 && B > 0 > && OOT > 0] > > So, after integration: > > x = A (Exp[-B/OOT] OOT - B Gamma[0, B/OOT]) > > I need to obtain a INVERSE function, i.e. OOT = f(x) and then find > (e.g. via FindFit) best fitting parameters A, B. > > I have tried Series expansion, PadeApproximant etc., but every > approximation of mentioned > model contain A*Exp[-B/T], so I cannot find inverse function. > > Can Somebody help me with this problem? > > > ***************** > $Version > 6.0 for Microsoft Windows (32-bit) (February 7, 2008) > > Assuming you are really just after the parameter estimates and attempting to symbolically invert the function is just a means to an end, one possibility is to define the model as a black box function that solves the equation numerically. This can be done using FindRoot. In[1]:= data = {{1, 444.6}, {3, 455.15}, {5, 464.81}, {7, 467.79}, {10, 469.01}, {15, 480.28}}; In[2]:= model[A_?NumericQ, B_?NumericQ, x_?NumericQ] := Module[{OOT}, (OOT /. FindRoot[ x == A (Exp[-B/OOT] OOT - B Gamma[0, B/OOT]), {OOT, 450, 500}])] In[3]:= FindFit[data, model[A, B, x], {{A, 7*10^13}, {B, 15000}}, x] 14 Out[3]= {A -> 3.23774 10 , B -> 15914.5} For the starting values for A and B, I took values close to those obtained by plugging the first and last data points into the equation and solving for A and B. Darren Glosemeyer Wolfram Research
- References:
- Fitting a inverse function from complicated integral
- From: tibor dubaj <t.dubaj@gmail.com>
- Fitting a inverse function from complicated integral