# Solve complex heat transfer equation

I am trying to solve a heat transfer problem related to calculating the cooling rate after quenching a sample.

The equations (and explanations) are taken from this paper: https://sci-hub.se/10.1029/jb091ib04p0d509. The equations to solve are:

where Rn is defined as:

The major problem I am having right now is that I have no idea how to implement in Mathematica an "nth root".

Question:

1. How to implement in Mathematica an "nth root" to calculate Rn?.
2. How can I calculate the cooling rate equation (equation 8) to get any of the cooling rates from Table 2 below:

Here's my (no working) code with the parameters to obtain the first cooling rate value of the table (260):

density = 2; (*g/cm3*)
Cp = 0.25; (*cal/g*C*)
k = 0.05; (*cal/cm*s*C*)
h = 0.072;(*Heat transfer coefficient for waterin cal/cm2*s*C*)
L = 0.144; (*cm*)
x = 0;
mass = 25(*mg*)
Tsample = 620;(*C*)
Tmedium = 23; (*C*)

alfa = k/(density*Cp);
Fo = alfa*t/L^2

Bi = h*L/k;

Rn = Bi*Cot[Rn]

n = 10000
Do[

rate = (-4 \!$$\*SubsuperscriptBox[\(\[Sum]$$, $$i = 1$$, $$k$$]$$\((Rn*Sin[Rn]*Cos[Rn*x])$$/$$(Rn + Sin[Rn]*Cos[Rn])$$\)\))*Exp[-Rn*Fo]; (*equation 7*)

, {k, 1, n} ]

crate(*equation 8*)= (Tsample - Tmedium )(*equation 9*)*
rate(*equation 7*)*alfa/L^2(*equation 10*)


## 1 Answer

The nth root can be estimated from the common reasons - roots of Cot[x] exist in between (0,Pi) with period equal to Pi. Thus, one can use:

 n=6; (*Root number*)
Rn = Rn/.FindRoot[Rn==Bi Cot[Rn], {Rn, (n-1+0.00001) Pi, (n-1) Pi, n Pi}];
Plot[{t, Bi Cot[t]}, {t, 0, n Pi},
Epilog -> {Red, PointSize[Large], Point@{Rn, Rn}},
PlotPoints -> 200]


You can play with precision of FindRoot but this will change the result not a lot..

The answer for second question is simply making the List of required values and applying the solver for each entry of this list..

• Rom38 thank you very much. I have no idea how to make the List you mentioned but I will give it a try to see if I can do it. Thanks – John Dec 19 '20 at 16:54
• @John, The list means something like cr={cr1,cr2,cr3,....}. This is an array of values from your table of parameters. – Rom38 Dec 19 '20 at 16:58