double code(double A, double B, double C, double F) {
return -sqrt(((2.0 * ((pow(B, 2.0) - ((4.0 * A) * C)) * F)) * ((A + C) + sqrt((pow((A - C), 2.0) + pow(B, 2.0)))))) / (pow(B, 2.0) - ((4.0 * A) * C));
}
↓
double code(double A, double B, double C, double F) {
double t_0 = sqrt(2.0) / B;
double t_1 = hypot(B, (A - C));
double t_2 = fma(B, B, (C * (A * -4.0)));
double t_3 = F * t_2;
double t_4 = sqrt((t_1 + (C + A)));
double t_5 = -sqrt((2.0 * (t_3 * (C + (C + (-0.5 * ((B * B) / A))))))) / t_2;
double t_6 = fma(B, B, (A * (C * -4.0)));
double tmp;
if (B <= -2.4e+18) {
tmp = t_4 * (t_0 * sqrt(F));
} else if (B <= -4.5e-176) {
tmp = t_5;
} else if (B <= 4.1e-248) {
tmp = sqrt(fma(2.0, C, ((B / A) * (B * -0.5)))) * (-sqrt((F * (-8.0 * (C * A)))) / t_6);
} else if (B <= 1.02e-153) {
tmp = -(sqrt((2.0 * (t_3 * (C + C)))) / t_2);
} else if (B <= 5500.0) {
tmp = (sqrt((A + (C + t_1))) * (sqrt(F) * -sqrt((2.0 * t_6)))) / ((B * B) - ((C * A) * 4.0));
} else if (B <= 3.3e+39) {
tmp = t_5;
} else {
tmp = t_4 * (t_0 * -sqrt(F));
}
return tmp;
}
function code(A, B, C, F)
return Float64(Float64(-sqrt(Float64(Float64(2.0 * Float64(Float64((B ^ 2.0) - Float64(Float64(4.0 * A) * C)) * F)) * Float64(Float64(A + C) + sqrt(Float64((Float64(A - C) ^ 2.0) + (B ^ 2.0))))))) / Float64((B ^ 2.0) - Float64(Float64(4.0 * A) * C)))
end
↓
function code(A, B, C, F)
t_0 = Float64(sqrt(2.0) / B)
t_1 = hypot(B, Float64(A - C))
t_2 = fma(B, B, Float64(C * Float64(A * -4.0)))
t_3 = Float64(F * t_2)
t_4 = sqrt(Float64(t_1 + Float64(C + A)))
t_5 = Float64(Float64(-sqrt(Float64(2.0 * Float64(t_3 * Float64(C + Float64(C + Float64(-0.5 * Float64(Float64(B * B) / A)))))))) / t_2)
t_6 = fma(B, B, Float64(A * Float64(C * -4.0)))
tmp = 0.0
if (B <= -2.4e+18)
tmp = Float64(t_4 * Float64(t_0 * sqrt(F)));
elseif (B <= -4.5e-176)
tmp = t_5;
elseif (B <= 4.1e-248)
tmp = Float64(sqrt(fma(2.0, C, Float64(Float64(B / A) * Float64(B * -0.5)))) * Float64(Float64(-sqrt(Float64(F * Float64(-8.0 * Float64(C * A))))) / t_6));
elseif (B <= 1.02e-153)
tmp = Float64(-Float64(sqrt(Float64(2.0 * Float64(t_3 * Float64(C + C)))) / t_2));
elseif (B <= 5500.0)
tmp = Float64(Float64(sqrt(Float64(A + Float64(C + t_1))) * Float64(sqrt(F) * Float64(-sqrt(Float64(2.0 * t_6))))) / Float64(Float64(B * B) - Float64(Float64(C * A) * 4.0)));
elseif (B <= 3.3e+39)
tmp = t_5;
else
tmp = Float64(t_4 * Float64(t_0 * Float64(-sqrt(F))));
end
return tmp
end
code[A_, B_, C_, F_] := N[((-N[Sqrt[N[(N[(2.0 * N[(N[(N[Power[B, 2.0], $MachinePrecision] - N[(N[(4.0 * A), $MachinePrecision] * C), $MachinePrecision]), $MachinePrecision] * F), $MachinePrecision]), $MachinePrecision] * N[(N[(A + C), $MachinePrecision] + N[Sqrt[N[(N[Power[N[(A - C), $MachinePrecision], 2.0], $MachinePrecision] + N[Power[B, 2.0], $MachinePrecision]), $MachinePrecision]], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / N[(N[Power[B, 2.0], $MachinePrecision] - N[(N[(4.0 * A), $MachinePrecision] * C), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
↓
code[A_, B_, C_, F_] := Block[{t$95$0 = N[(N[Sqrt[2.0], $MachinePrecision] / B), $MachinePrecision]}, Block[{t$95$1 = N[Sqrt[B ^ 2 + N[(A - C), $MachinePrecision] ^ 2], $MachinePrecision]}, Block[{t$95$2 = N[(B * B + N[(C * N[(A * -4.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, Block[{t$95$3 = N[(F * t$95$2), $MachinePrecision]}, Block[{t$95$4 = N[Sqrt[N[(t$95$1 + N[(C + A), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]}, Block[{t$95$5 = N[((-N[Sqrt[N[(2.0 * N[(t$95$3 * N[(C + N[(C + N[(-0.5 * N[(N[(B * B), $MachinePrecision] / A), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$2), $MachinePrecision]}, Block[{t$95$6 = N[(B * B + N[(A * N[(C * -4.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[B, -2.4e+18], N[(t$95$4 * N[(t$95$0 * N[Sqrt[F], $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[B, -4.5e-176], t$95$5, If[LessEqual[B, 4.1e-248], N[(N[Sqrt[N[(2.0 * C + N[(N[(B / A), $MachinePrecision] * N[(B * -0.5), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] * N[((-N[Sqrt[N[(F * N[(-8.0 * N[(C * A), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision]) / t$95$6), $MachinePrecision]), $MachinePrecision], If[LessEqual[B, 1.02e-153], (-N[(N[Sqrt[N[(2.0 * N[(t$95$3 * N[(C + C), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] / t$95$2), $MachinePrecision]), If[LessEqual[B, 5500.0], N[(N[(N[Sqrt[N[(A + N[(C + t$95$1), $MachinePrecision]), $MachinePrecision]], $MachinePrecision] * N[(N[Sqrt[F], $MachinePrecision] * (-N[Sqrt[N[(2.0 * t$95$6), $MachinePrecision]], $MachinePrecision])), $MachinePrecision]), $MachinePrecision] / N[(N[(B * B), $MachinePrecision] - N[(N[(C * A), $MachinePrecision] * 4.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], If[LessEqual[B, 3.3e+39], t$95$5, N[(t$95$4 * N[(t$95$0 * (-N[Sqrt[F], $MachinePrecision])), $MachinePrecision]), $MachinePrecision]]]]]]]]]]]]]]