(FPCore (x y z) :precision binary64 (/ (+ x (* y (- z x))) z))
↓
(FPCore (x y z)
:precision binary64
(let* ((t_0 (* y (- 1.0 (/ x z)))))
(if (<= y -4.0069046279066546e+45)
t_0
(if (<= y 6.430956139408038e+23) (+ (/ x z) (/ (* y (- z x)) z)) t_0))))
double code(double x, double y, double z) {
return (x + (y * (z - x))) / z;
}
real(8) function code(x, y, z)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
code = (x + (y * (z - x))) / z
end function
↓
real(8) function code(x, y, z)
real(8), intent (in) :: x
real(8), intent (in) :: y
real(8), intent (in) :: z
real(8) :: t_0
real(8) :: tmp
t_0 = y * (1.0d0 - (x / z))
if (y <= (-4.0069046279066546d+45)) then
tmp = t_0
else if (y <= 6.430956139408038d+23) then
tmp = (x / z) + ((y * (z - x)) / z)
else
tmp = t_0
end if
code = tmp
end function
public static double code(double x, double y, double z) {
return (x + (y * (z - x))) / z;
}
↓
public static double code(double x, double y, double z) {
double t_0 = y * (1.0 - (x / z));
double tmp;
if (y <= -4.0069046279066546e+45) {
tmp = t_0;
} else if (y <= 6.430956139408038e+23) {
tmp = (x / z) + ((y * (z - x)) / z);
} else {
tmp = t_0;
}
return tmp;
}
def code(x, y, z):
return (x + (y * (z - x))) / z
↓
def code(x, y, z):
t_0 = y * (1.0 - (x / z))
tmp = 0
if y <= -4.0069046279066546e+45:
tmp = t_0
elif y <= 6.430956139408038e+23:
tmp = (x / z) + ((y * (z - x)) / z)
else:
tmp = t_0
return tmp
function code(x, y, z)
return Float64(Float64(x + Float64(y * Float64(z - x))) / z)
end
↓
function code(x, y, z)
t_0 = Float64(y * Float64(1.0 - Float64(x / z)))
tmp = 0.0
if (y <= -4.0069046279066546e+45)
tmp = t_0;
elseif (y <= 6.430956139408038e+23)
tmp = Float64(Float64(x / z) + Float64(Float64(y * Float64(z - x)) / z));
else
tmp = t_0;
end
return tmp
end
function tmp = code(x, y, z)
tmp = (x + (y * (z - x))) / z;
end
↓
function tmp_2 = code(x, y, z)
t_0 = y * (1.0 - (x / z));
tmp = 0.0;
if (y <= -4.0069046279066546e+45)
tmp = t_0;
elseif (y <= 6.430956139408038e+23)
tmp = (x / z) + ((y * (z - x)) / z);
else
tmp = t_0;
end
tmp_2 = tmp;
end
herbie shell --seed 2022300
(FPCore (x y z)
:name "Diagrams.Backend.Rasterific:rasterificRadialGradient from diagrams-rasterific-1.3.1.3"
:precision binary64
:herbie-target
(- (+ y (/ x z)) (/ y (/ z x)))
(/ (+ x (* y (- z x))) z))