Calculate exponential decay

565 Views Asked by At

I know this has been asked a few times before, but I'm struggling to apply it to my scenario...

I have some known values in a table: $$ \begin{array}{|c|c|} \hline \text{Degrees} & \text{Percent} \\ \hline 5 & 9.0949720917 \\ 10 & 9.788059925 \\ 15 & 10.4054090336 \\ 20 & 10.9435666945 \\ 25 & 11.3984372031 \\ 30 & 11.7665587215 \\ 35 & 12.045129627 \\ 40 & 12.2320298195 \\ 45 & 12.325836884 \\ \hline \end{array} $$

I'd like to be able to calculate any percentage between 0 and 45 degrees. So I used the following formula:

$$ y(t)= a X e^{kt} $$

$$ 12.325836884 = 9.0949720917 X e ^{45k} $$

Solve k:

$$ 1.355236361 = e ^ {45k} $$

Take natural log:

$$ ln(1.355236361) = 45k $$

Rearrang:

$$ k = ln(1.355236361)/45 $$

So, to check to see if the calculation holds at 20 degrees:

$$ y(20) = 9.0949720917 e ^ {(ln(1.355236361)/45) 20} = 10.4106 $$

Which is incorrect...

I'd be very grateful if someone could point out the failure in my feeble attempt at mathematics.

3

There are 3 best solutions below

0
On

I'm not sure what you want to know, but here's a guess.

enter image description here

The dots in the image are your data and the solid line is a curve fit to the data using the function $$ \theta = a\log(kt) $$ where $\theta$ is the angle and $t$ is the percentage. The fit parameters are $a$ = 1.58 and $k$ = 55.3. Once you have a fit you can find values within the range of interest (excluding $t = 0$).

Another option is to fit a sigmoidal curve as shown in the figure below. enter image description here

The equation in this case is $$ \theta = \frac{a}{b + \exp(-kt)} $$ with fitted parameters $a$=22.9, $b$=1.78, $k$=0.06.

Alternatively you can interpolate using linear (or higher order/NURB/spline) interpolation between points.

0
On

You're pretty close!! The way you seem to be doing it is to make your approximation go through the two endpoints. Say we let $$y(t)=a\,e^{k(t-5)}$$ Then $$y(5)=a\,e^{k\cdot 0}=a\cdot1=a$$

Let me write $c_d$ for the data point at $d$ degrees (so I don't have to write out those long decimals, if you don't mind). $y(5)$ should be $c_5$ (9.094...) so we let $$a=c_5,\hspace{3mm}y(t)=c_5\,e^{k(t-5)}$$ Now we also want $$y(45)=c_5\,e^{40k}=c_{45}$$ and I get for k $$k=\frac{1}{40}\ln\left(\frac{c_{45}}{c_5}\right)$$

That's one way to get a formula. A better way, which incorporates all the data points, is to use the so-called "least-squares regression." Let's write again (not using the t-5 trick this time) $$y(t)=ae^{kt}$$ Then $$\ln\big(y(t)\big)=\ln(a)+kt$$ Let $$Y(t)=\ln\big(y(t)\big),\hspace{3mm}C=\ln(a)$$ We want to find a linear function $$Y=C+kt$$ that goes through the points $\bigg(\text{degrees},\ln\big(\text{Percent}\big)\bigg)$. Our new table is $$\begin{array}{|c|c|} \hline \text{Degrees} & \text{Percent} \\ \hline 5 & \ln9.0949720917 \\ 10 & \ln9.788059925 \\ 15 & \ln10.4054090336 \\ 20 & \ln10.9435666945 \\ 25 & \ln11.3984372031 \\ 30 & \ln11.7665587215 \\ 35 & \ln12.045129627 \\ 40 & \ln12.2320298195 \\ 45 & \ln12.325836884 \\ \hline \end{array}$$

You can use a complicated formula or a calculator to find the regression equation... I got (careful here, I used Excel and I'm not very familiar with it so this may be wrong) $$Y=2.215532381+0.007499221\,t$$ so $$y(t)=e^{2.215532381+0.007499221\,t}$$ and that is your equation.

3
On

I do not know why you selected an exponential model but let us admit it for a time.

You want to model your data according to $$y=a \text { } e^{k t}$$ This model is intrinsically nonlinear with respect to its parameters and the problem with non linear square fit is a need of "reasonable" starting values for the parameters. As already said in other comments and answers, you can first transform the problem to a linear form taking the logarithms of both sides; this leads to $$\log(y)=c+kt$$ So, a first linear regression leads to $$\log(y)=2.21553+0.00749922 t$$ So the parameter estimates for the nonlinear model are $a=e^c=9.16627$ and $k=0.00749922$. Starting from here the nonlinear fit, the obtained model is $$y=9.25301 e^{0.00715341 t}$$ You should notice that the parameters changed when going from the linearized model to the nonlinear model (and this is normal).

However, if you plot on the same graph the curve and the data points, you should notice that the fit is not good. You could have noticed this before any calculation using a scatter plot of your data $\log(y)$ vs $t$.

As suggested by Biswajit Banerjee, a sigmoidal model $$y = \frac{a}{b + \exp(kt)}$$ should probably be much better (a scatter plot of $y$ vs $t$ reveals such a trend). Just as Biswajit Banerjee did and wrote, the best model is $$y=\frac{22.8793}{1.77611 +e^{-0.058405 t}}$$ which almost perfectly reproduces all your data (see the second graph Biswajit Banerjee provided in his answer). For $t=20$, this model predicts a value of $10.9624$.

For the first model, the coefficient of determination is $R^2=0.999306$ (corresponding to a sum of squares equal to $0.77803$) while for the second model $R^2=0.999993$ (corresponding to a sum of squares equal to $0.00765$) which is incredibly better.