double code(double t, double l, double k) {
return 2.0 / ((((pow(t, 3.0) / (l * l)) * sin(k)) * tan(k)) * ((1.0 + pow((k / t), 2.0)) + 1.0));
}
↓
double code(double t, double l, double k) {
double t_1 = 2.0 / ((pow((log1p(expm1(cbrt(sin(k)))) * (t * pow(cbrt((1.0 / l)), 2.0))), 3.0) * tan(k)) * (1.0 + (1.0 + pow((k / t), 2.0))));
double t_2 = k * sqrt(t);
double tmp;
if (t <= -10000000000.0) {
tmp = t_1;
} else if (t <= 1e-296) {
tmp = ((2.0 * l) / k) * (l / (k * (t * (sin(k) * tan(k)))));
} else if (t <= 1e-40) {
tmp = (2.0 * ((1.0 / t_2) * (l / t_2))) * ((l / sin(k)) / tan(k));
} else {
tmp = t_1;
}
return tmp;
}
public static double code(double t, double l, double k) {
return 2.0 / ((((Math.pow(t, 3.0) / (l * l)) * Math.sin(k)) * Math.tan(k)) * ((1.0 + Math.pow((k / t), 2.0)) + 1.0));
}
↓
public static double code(double t, double l, double k) {
double t_1 = 2.0 / ((Math.pow((Math.log1p(Math.expm1(Math.cbrt(Math.sin(k)))) * (t * Math.pow(Math.cbrt((1.0 / l)), 2.0))), 3.0) * Math.tan(k)) * (1.0 + (1.0 + Math.pow((k / t), 2.0))));
double t_2 = k * Math.sqrt(t);
double tmp;
if (t <= -10000000000.0) {
tmp = t_1;
} else if (t <= 1e-296) {
tmp = ((2.0 * l) / k) * (l / (k * (t * (Math.sin(k) * Math.tan(k)))));
} else if (t <= 1e-40) {
tmp = (2.0 * ((1.0 / t_2) * (l / t_2))) * ((l / Math.sin(k)) / Math.tan(k));
} else {
tmp = t_1;
}
return tmp;
}
function code(t, l, k)
return Float64(2.0 / Float64(Float64(Float64(Float64((t ^ 3.0) / Float64(l * l)) * sin(k)) * tan(k)) * Float64(Float64(1.0 + (Float64(k / t) ^ 2.0)) + 1.0)))
end
↓
function code(t, l, k)
t_1 = Float64(2.0 / Float64(Float64((Float64(log1p(expm1(cbrt(sin(k)))) * Float64(t * (cbrt(Float64(1.0 / l)) ^ 2.0))) ^ 3.0) * tan(k)) * Float64(1.0 + Float64(1.0 + (Float64(k / t) ^ 2.0)))))
t_2 = Float64(k * sqrt(t))
tmp = 0.0
if (t <= -10000000000.0)
tmp = t_1;
elseif (t <= 1e-296)
tmp = Float64(Float64(Float64(2.0 * l) / k) * Float64(l / Float64(k * Float64(t * Float64(sin(k) * tan(k))))));
elseif (t <= 1e-40)
tmp = Float64(Float64(2.0 * Float64(Float64(1.0 / t_2) * Float64(l / t_2))) * Float64(Float64(l / sin(k)) / tan(k)));
else
tmp = t_1;
end
return tmp
end
code[t_, l_, k_] := N[(2.0 / N[(N[(N[(N[(N[Power[t, 3.0], $MachinePrecision] / N[(l * l), $MachinePrecision]), $MachinePrecision] * N[Sin[k], $MachinePrecision]), $MachinePrecision] * N[Tan[k], $MachinePrecision]), $MachinePrecision] * N[(N[(1.0 + N[Power[N[(k / t), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] + 1.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
↓
code[t_, l_, k_] := Block[{t$95$1 = N[(2.0 / N[(N[(N[Power[N[(N[Log[1 + N[(Exp[N[Power[N[Sin[k], $MachinePrecision], 1/3], $MachinePrecision]] - 1), $MachinePrecision]], $MachinePrecision] * N[(t * N[Power[N[Power[N[(1.0 / l), $MachinePrecision], 1/3], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], 3.0], $MachinePrecision] * N[Tan[k], $MachinePrecision]), $MachinePrecision] * N[(1.0 + N[(1.0 + N[Power[N[(k / t), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(k * N[Sqrt[t], $MachinePrecision]), $MachinePrecision]}, If[LessEqual[t, -10000000000.0], t$95$1, If[LessEqual[t, 1e-296], N[(N[(N[(2.0 * l), $MachinePrecision] / k), $MachinePrecision] * N[(l / N[(k * N[(t * N[(N[Sin[k], $MachinePrecision] * N[Tan[k], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[t, 1e-40], N[(N[(2.0 * N[(N[(1.0 / t$95$2), $MachinePrecision] * N[(l / t$95$2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(N[(l / N[Sin[k], $MachinePrecision]), $MachinePrecision] / N[Tan[k], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], t$95$1]]]]]