double code(double x, double eps) {
return tan((x + eps)) - tan(x);
}
↓
double code(double x, double eps) {
double t_0 = sin(x) / cos(x);
double t_1 = tan(x) + tan(eps);
double t_2 = sin(eps) / cos(eps);
double tmp;
if (eps <= -0.11399096168961476) {
tmp = fma((t_1 / (1.0 - pow((tan(x) * tan(eps)), 2.0))), fma(tan(x), tan(eps), 1.0), -tan(x));
} else if (eps <= 2.0687464007627642e-7) {
tmp = (t_2 / (1.0 - (t_2 * t_0))) + (((eps * pow(sin(x), 2.0)) / pow(cos(x), 2.0)) + (((pow(eps, 2.0) * pow(sin(x), 3.0)) / pow(cos(x), 3.0)) - (pow(eps, 3.0) * (((sin(x) * ((t_0 * 0.16666666666666666) - (t_0 * 0.5))) / cos(x)) - (pow(sin(x), 4.0) / pow(cos(x), 4.0))))));
} else {
tmp = (t_1 / fma(tan(x), -tan(eps), 1.0)) - tan(x);
}
return tmp;
}
function code(x, eps)
return Float64(tan(Float64(x + eps)) - tan(x))
end
↓
function code(x, eps)
t_0 = Float64(sin(x) / cos(x))
t_1 = Float64(tan(x) + tan(eps))
t_2 = Float64(sin(eps) / cos(eps))
tmp = 0.0
if (eps <= -0.11399096168961476)
tmp = fma(Float64(t_1 / Float64(1.0 - (Float64(tan(x) * tan(eps)) ^ 2.0))), fma(tan(x), tan(eps), 1.0), Float64(-tan(x)));
elseif (eps <= 2.0687464007627642e-7)
tmp = Float64(Float64(t_2 / Float64(1.0 - Float64(t_2 * t_0))) + Float64(Float64(Float64(eps * (sin(x) ^ 2.0)) / (cos(x) ^ 2.0)) + Float64(Float64(Float64((eps ^ 2.0) * (sin(x) ^ 3.0)) / (cos(x) ^ 3.0)) - Float64((eps ^ 3.0) * Float64(Float64(Float64(sin(x) * Float64(Float64(t_0 * 0.16666666666666666) - Float64(t_0 * 0.5))) / cos(x)) - Float64((sin(x) ^ 4.0) / (cos(x) ^ 4.0)))))));
else
tmp = Float64(Float64(t_1 / fma(tan(x), Float64(-tan(eps)), 1.0)) - tan(x));
end
return tmp
end
code[x_, eps_] := N[(N[Tan[N[(x + eps), $MachinePrecision]], $MachinePrecision] - N[Tan[x], $MachinePrecision]), $MachinePrecision]
↓
code[x_, eps_] := Block[{t$95$0 = N[(N[Sin[x], $MachinePrecision] / N[Cos[x], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$1 = N[(N[Tan[x], $MachinePrecision] + N[Tan[eps], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[Sin[eps], $MachinePrecision] / N[Cos[eps], $MachinePrecision]), $MachinePrecision]}, If[LessEqual[eps, -0.11399096168961476], N[(N[(t$95$1 / N[(1.0 - N[Power[N[(N[Tan[x], $MachinePrecision] * N[Tan[eps], $MachinePrecision]), $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] * N[(N[Tan[x], $MachinePrecision] * N[Tan[eps], $MachinePrecision] + 1.0), $MachinePrecision] + (-N[Tan[x], $MachinePrecision])), $MachinePrecision], If[LessEqual[eps, 2.0687464007627642e-7], N[(N[(t$95$2 / N[(1.0 - N[(t$95$2 * t$95$0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(N[(N[(eps * N[Power[N[Sin[x], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] / N[Power[N[Cos[x], $MachinePrecision], 2.0], $MachinePrecision]), $MachinePrecision] + N[(N[(N[(N[Power[eps, 2.0], $MachinePrecision] * N[Power[N[Sin[x], $MachinePrecision], 3.0], $MachinePrecision]), $MachinePrecision] / N[Power[N[Cos[x], $MachinePrecision], 3.0], $MachinePrecision]), $MachinePrecision] - N[(N[Power[eps, 3.0], $MachinePrecision] * N[(N[(N[(N[Sin[x], $MachinePrecision] * N[(N[(t$95$0 * 0.16666666666666666), $MachinePrecision] - N[(t$95$0 * 0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[Cos[x], $MachinePrecision]), $MachinePrecision] - N[(N[Power[N[Sin[x], $MachinePrecision], 4.0], $MachinePrecision] / N[Power[N[Cos[x], $MachinePrecision], 4.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(t$95$1 / N[(N[Tan[x], $MachinePrecision] * (-N[Tan[eps], $MachinePrecision]) + 1.0), $MachinePrecision]), $MachinePrecision] - N[Tan[x], $MachinePrecision]), $MachinePrecision]]]]]]