package javaapplication5;
import static java.lang.Math.*;
public class JavaApplication5 {
static double Mu(double Bi, int n) { //-------------------------
double a, b, c, fc;
// Поиск корня на интервале ((n - 0.5)*PI, n*PI)
a = (n - 0.5) * PI + 0.0001;
b = n * PI - 0.0001;
do {
c = (a + b) / 2;
fc = tan(c) + c / (Bi - 1);
if (fc < 0) {
a = c;
} else {
b = c;
}
} while (abs(b - a) > 0.000001);
return c;
} //---------------------------------------------------
// Расчет относительной температуры Theta
static double LIK(double Fo, double Bi, double x) { //-------------------
double sum, s, e, m;
int i; // Номер корня
i = 0;
sum = 0;
e = 0.0000001;
do {
i = i + 1;
m = Mu(Bi, i);
// Формула слагаемого ряда s_n
s = (2 * (sin(m) - m * cos(m)) / (m - sin(m) * cos(m)))
* (sin(m * x) / (m * x))
* exp(-m * m * Fo);
sum = sum + s;
//System.out.println("i=" + i + " m=" + m + " sum=" + sum);
} while (abs(s) > e);
return sum;
}
public static void main(String[] args) throws Exception{
double Bi,x,f,q;
Bi=5.25;
for (f=0.01; f<=0.8;f=f+0.02){
System.out.print(f);
for(x=1.0; x<=1;x=x+1.0){
q=LIK(f,Bi,x);
System.out.print("\t"+q);
}
System.out.println();
}
System.out.println("ok !!!");
}
}