\[\frac{1 - \cos x}{x \cdot x}
\]
↓
\[\begin{array}{l}
t_0 := \cos x + -1\\
t_1 := 1 - \cos x\\
t_2 := \frac{1}{t_1} \cdot \left(t_0 \cdot t_0\right)\\
\mathbf{if}\;x \leq -0.098:\\
\;\;\;\;\frac{t_1}{x \cdot x}\\
\mathbf{elif}\;x \leq 0.1:\\
\;\;\;\;\left(0.001388888888888889 \cdot {x}^{4} + -2.48015873015873 \cdot 10^{-5} \cdot {x}^{6}\right) + \left(0.5 + -0.041666666666666664 \cdot {x}^{2}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{t_2 \cdot \left(t_1 \cdot \frac{1}{t_2}\right)}{x \cdot x}\\
\end{array}
\]
(FPCore (x) :precision binary64 (/ (- 1.0 (cos x)) (* x x)))
↓
(FPCore (x)
:precision binary64
(let* ((t_0 (+ (cos x) -1.0))
(t_1 (- 1.0 (cos x)))
(t_2 (* (/ 1.0 t_1) (* t_0 t_0))))
(if (<= x -0.098)
(/ t_1 (* x x))
(if (<= x 0.1)
(+
(+
(* 0.001388888888888889 (pow x 4.0))
(* -2.48015873015873e-5 (pow x 6.0)))
(+ 0.5 (* -0.041666666666666664 (pow x 2.0))))
(/ (* t_2 (* t_1 (/ 1.0 t_2))) (* x x))))))double code(double x) {
return (1.0 - cos(x)) / (x * x);
}
↓
double code(double x) {
double t_0 = cos(x) + -1.0;
double t_1 = 1.0 - cos(x);
double t_2 = (1.0 / t_1) * (t_0 * t_0);
double tmp;
if (x <= -0.098) {
tmp = t_1 / (x * x);
} else if (x <= 0.1) {
tmp = ((0.001388888888888889 * pow(x, 4.0)) + (-2.48015873015873e-5 * pow(x, 6.0))) + (0.5 + (-0.041666666666666664 * pow(x, 2.0)));
} else {
tmp = (t_2 * (t_1 * (1.0 / t_2))) / (x * x);
}
return tmp;
}
real(8) function code(x)
real(8), intent (in) :: x
code = (1.0d0 - cos(x)) / (x * x)
end function
↓
real(8) function code(x)
real(8), intent (in) :: x
real(8) :: t_0
real(8) :: t_1
real(8) :: t_2
real(8) :: tmp
t_0 = cos(x) + (-1.0d0)
t_1 = 1.0d0 - cos(x)
t_2 = (1.0d0 / t_1) * (t_0 * t_0)
if (x <= (-0.098d0)) then
tmp = t_1 / (x * x)
else if (x <= 0.1d0) then
tmp = ((0.001388888888888889d0 * (x ** 4.0d0)) + ((-2.48015873015873d-5) * (x ** 6.0d0))) + (0.5d0 + ((-0.041666666666666664d0) * (x ** 2.0d0)))
else
tmp = (t_2 * (t_1 * (1.0d0 / t_2))) / (x * x)
end if
code = tmp
end function
public static double code(double x) {
return (1.0 - Math.cos(x)) / (x * x);
}
↓
public static double code(double x) {
double t_0 = Math.cos(x) + -1.0;
double t_1 = 1.0 - Math.cos(x);
double t_2 = (1.0 / t_1) * (t_0 * t_0);
double tmp;
if (x <= -0.098) {
tmp = t_1 / (x * x);
} else if (x <= 0.1) {
tmp = ((0.001388888888888889 * Math.pow(x, 4.0)) + (-2.48015873015873e-5 * Math.pow(x, 6.0))) + (0.5 + (-0.041666666666666664 * Math.pow(x, 2.0)));
} else {
tmp = (t_2 * (t_1 * (1.0 / t_2))) / (x * x);
}
return tmp;
}
def code(x):
return (1.0 - math.cos(x)) / (x * x)
↓
def code(x):
t_0 = math.cos(x) + -1.0
t_1 = 1.0 - math.cos(x)
t_2 = (1.0 / t_1) * (t_0 * t_0)
tmp = 0
if x <= -0.098:
tmp = t_1 / (x * x)
elif x <= 0.1:
tmp = ((0.001388888888888889 * math.pow(x, 4.0)) + (-2.48015873015873e-5 * math.pow(x, 6.0))) + (0.5 + (-0.041666666666666664 * math.pow(x, 2.0)))
else:
tmp = (t_2 * (t_1 * (1.0 / t_2))) / (x * x)
return tmp
function code(x)
return Float64(Float64(1.0 - cos(x)) / Float64(x * x))
end
↓
function code(x)
t_0 = Float64(cos(x) + -1.0)
t_1 = Float64(1.0 - cos(x))
t_2 = Float64(Float64(1.0 / t_1) * Float64(t_0 * t_0))
tmp = 0.0
if (x <= -0.098)
tmp = Float64(t_1 / Float64(x * x));
elseif (x <= 0.1)
tmp = Float64(Float64(Float64(0.001388888888888889 * (x ^ 4.0)) + Float64(-2.48015873015873e-5 * (x ^ 6.0))) + Float64(0.5 + Float64(-0.041666666666666664 * (x ^ 2.0))));
else
tmp = Float64(Float64(t_2 * Float64(t_1 * Float64(1.0 / t_2))) / Float64(x * x));
end
return tmp
end
function tmp = code(x)
tmp = (1.0 - cos(x)) / (x * x);
end
↓
function tmp_2 = code(x)
t_0 = cos(x) + -1.0;
t_1 = 1.0 - cos(x);
t_2 = (1.0 / t_1) * (t_0 * t_0);
tmp = 0.0;
if (x <= -0.098)
tmp = t_1 / (x * x);
elseif (x <= 0.1)
tmp = ((0.001388888888888889 * (x ^ 4.0)) + (-2.48015873015873e-5 * (x ^ 6.0))) + (0.5 + (-0.041666666666666664 * (x ^ 2.0)));
else
tmp = (t_2 * (t_1 * (1.0 / t_2))) / (x * x);
end
tmp_2 = tmp;
end
code[x_] := N[(N[(1.0 - N[Cos[x], $MachinePrecision]), $MachinePrecision] / N[(x * x), $MachinePrecision]), $MachinePrecision]
↓
code[x_] := Block[{t$95$0 = N[(N[Cos[x], $MachinePrecision] + -1.0), $MachinePrecision]}, Block[{t$95$1 = N[(1.0 - N[Cos[x], $MachinePrecision]), $MachinePrecision]}, Block[{t$95$2 = N[(N[(1.0 / t$95$1), $MachinePrecision] * N[(t$95$0 * t$95$0), $MachinePrecision]), $MachinePrecision]}, If[LessEqual[x, -0.098], N[(t$95$1 / N[(x * x), $MachinePrecision]), $MachinePrecision], If[LessEqual[x, 0.1], N[(N[(N[(0.001388888888888889 * N[Power[x, 4.0], $MachinePrecision]), $MachinePrecision] + N[(-2.48015873015873e-5 * N[Power[x, 6.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(0.5 + N[(-0.041666666666666664 * N[Power[x, 2.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision], N[(N[(t$95$2 * N[(t$95$1 * N[(1.0 / t$95$2), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] / N[(x * x), $MachinePrecision]), $MachinePrecision]]]]]]
\frac{1 - \cos x}{x \cdot x}
↓
\begin{array}{l}
t_0 := \cos x + -1\\
t_1 := 1 - \cos x\\
t_2 := \frac{1}{t_1} \cdot \left(t_0 \cdot t_0\right)\\
\mathbf{if}\;x \leq -0.098:\\
\;\;\;\;\frac{t_1}{x \cdot x}\\
\mathbf{elif}\;x \leq 0.1:\\
\;\;\;\;\left(0.001388888888888889 \cdot {x}^{4} + -2.48015873015873 \cdot 10^{-5} \cdot {x}^{6}\right) + \left(0.5 + -0.041666666666666664 \cdot {x}^{2}\right)\\
\mathbf{else}:\\
\;\;\;\;\frac{t_2 \cdot \left(t_1 \cdot \frac{1}{t_2}\right)}{x \cdot x}\\
\end{array}