Average Error: 0.9 → 0.3
Time: 19.8s
Precision: binary32
\[0 \leq normAngle \land normAngle \leq \frac{\pi}{2} \land -1 \leq n0_i \land n0_i \leq 1 \land -1 \leq n1_i \land n1_i \leq 1 \land 2.328306437 \cdot 10^{-10} \leq u \land u \leq 1\]
\[\left(\sin \left(\left(1 - u\right) \cdot normAngle\right) \cdot \frac{1}{\sin normAngle}\right) \cdot n0_i + \left(\sin \left(u \cdot normAngle\right) \cdot \frac{1}{\sin normAngle}\right) \cdot n1_i \]
\[\begin{array}{l} t_0 := {normAngle}^{4} \cdot \left(0.08333333333333333 \cdot \left(u \cdot u\right)\right)\\ t_1 := u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\\ t_2 := u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\\ t_3 := u \cdot \left(normAngle \cdot normAngle\right)\\ \left(\left(\left(\left(n0_i + \left(\left(\left(0.09166666666666666 \cdot t_1 + n0_i \cdot \left(0.16666666666666666 \cdot \left({u}^{3} \cdot \left(normAngle \cdot normAngle\right)\right) + \left({normAngle}^{6} \cdot {u}^{5}\right) \cdot 0.002777777777777778\right)\right) + t_2 \cdot \left(0.016666666666666666 + u \cdot 0.013888888888888888\right)\right) + n0_i \cdot \left(\left(normAngle \cdot normAngle\right) \cdot \left(u \cdot 0.5\right) + t_0\right)\right)\right) + n0_i \cdot \left(0.0001984126984126984 \cdot \left({normAngle}^{6} \cdot {u}^{7}\right) + 0.041666666666666664 \cdot \left({normAngle}^{4} \cdot {u}^{4}\right)\right)\right) + {u}^{3} \cdot \left({normAngle}^{6} \cdot \left(n0_i \cdot 0.004629629629629629\right) + {normAngle}^{4} \cdot \left(n0_i \cdot 0.027777777777777776\right)\right)\right) - \left(\left(\left(\left(\left(t_1 \cdot 0.06944444444444445 + t_2 \cdot \left(u \cdot 0.013888888888888888 + 0.01455026455026455\right)\right) + u \cdot \left(n0_i + \left(n0_i \cdot 0.5\right) \cdot t_3\right)\right) + n0_i \cdot \left(t_0 + 0.16666666666666666 \cdot t_3\right)\right) + {u}^{3} \cdot \left({normAngle}^{6} \cdot \left(n0_i \cdot 0.008333333333333333\right) + {normAngle}^{4} \cdot \left(n0_i \cdot 0.08333333333333333\right)\right)\right) + n0_i \cdot \left(0.008333333333333333 \cdot \left({normAngle}^{4} \cdot {u}^{5}\right) + 0.001388888888888889 \cdot \left({normAngle}^{6} \cdot {u}^{6}\right)\right)\right)\right) + n1_i \cdot \left(\left(\left(u + {normAngle}^{4} \cdot \left({u}^{5} \cdot 0.008333333333333333 + u \cdot 0.019444444444444445\right)\right) + \left(0.16666666666666666 \cdot \left(normAngle \cdot normAngle\right)\right) \cdot \left(u - {u}^{3}\right)\right) + {normAngle}^{4} \cdot \left({u}^{3} \cdot -0.027777777777777776\right)\right) \end{array} \]
\left(\sin \left(\left(1 - u\right) \cdot normAngle\right) \cdot \frac{1}{\sin normAngle}\right) \cdot n0_i + \left(\sin \left(u \cdot normAngle\right) \cdot \frac{1}{\sin normAngle}\right) \cdot n1_i
\begin{array}{l}
t_0 := {normAngle}^{4} \cdot \left(0.08333333333333333 \cdot \left(u \cdot u\right)\right)\\
t_1 := u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\\
t_2 := u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\\
t_3 := u \cdot \left(normAngle \cdot normAngle\right)\\
\left(\left(\left(\left(n0_i + \left(\left(\left(0.09166666666666666 \cdot t_1 + n0_i \cdot \left(0.16666666666666666 \cdot \left({u}^{3} \cdot \left(normAngle \cdot normAngle\right)\right) + \left({normAngle}^{6} \cdot {u}^{5}\right) \cdot 0.002777777777777778\right)\right) + t_2 \cdot \left(0.016666666666666666 + u \cdot 0.013888888888888888\right)\right) + n0_i \cdot \left(\left(normAngle \cdot normAngle\right) \cdot \left(u \cdot 0.5\right) + t_0\right)\right)\right) + n0_i \cdot \left(0.0001984126984126984 \cdot \left({normAngle}^{6} \cdot {u}^{7}\right) + 0.041666666666666664 \cdot \left({normAngle}^{4} \cdot {u}^{4}\right)\right)\right) + {u}^{3} \cdot \left({normAngle}^{6} \cdot \left(n0_i \cdot 0.004629629629629629\right) + {normAngle}^{4} \cdot \left(n0_i \cdot 0.027777777777777776\right)\right)\right) - \left(\left(\left(\left(\left(t_1 \cdot 0.06944444444444445 + t_2 \cdot \left(u \cdot 0.013888888888888888 + 0.01455026455026455\right)\right) + u \cdot \left(n0_i + \left(n0_i \cdot 0.5\right) \cdot t_3\right)\right) + n0_i \cdot \left(t_0 + 0.16666666666666666 \cdot t_3\right)\right) + {u}^{3} \cdot \left({normAngle}^{6} \cdot \left(n0_i \cdot 0.008333333333333333\right) + {normAngle}^{4} \cdot \left(n0_i \cdot 0.08333333333333333\right)\right)\right) + n0_i \cdot \left(0.008333333333333333 \cdot \left({normAngle}^{4} \cdot {u}^{5}\right) + 0.001388888888888889 \cdot \left({normAngle}^{6} \cdot {u}^{6}\right)\right)\right)\right) + n1_i \cdot \left(\left(\left(u + {normAngle}^{4} \cdot \left({u}^{5} \cdot 0.008333333333333333 + u \cdot 0.019444444444444445\right)\right) + \left(0.16666666666666666 \cdot \left(normAngle \cdot normAngle\right)\right) \cdot \left(u - {u}^{3}\right)\right) + {normAngle}^{4} \cdot \left({u}^{3} \cdot -0.027777777777777776\right)\right)
\end{array}
(FPCore (normAngle u n0_i n1_i)
 :precision binary32
 (+
  (* (* (sin (* (- 1.0 u) normAngle)) (/ 1.0 (sin normAngle))) n0_i)
  (* (* (sin (* u normAngle)) (/ 1.0 (sin normAngle))) n1_i)))
(FPCore (normAngle u n0_i n1_i)
 :precision binary32
 (let* ((t_0 (* (pow normAngle 4.0) (* 0.08333333333333333 (* u u))))
        (t_1 (* u (* n0_i (pow normAngle 4.0))))
        (t_2 (* u (* n0_i (pow normAngle 6.0))))
        (t_3 (* u (* normAngle normAngle))))
   (+
    (-
     (+
      (+
       (+
        n0_i
        (+
         (+
          (+
           (* 0.09166666666666666 t_1)
           (*
            n0_i
            (+
             (* 0.16666666666666666 (* (pow u 3.0) (* normAngle normAngle)))
             (* (* (pow normAngle 6.0) (pow u 5.0)) 0.002777777777777778))))
          (* t_2 (+ 0.016666666666666666 (* u 0.013888888888888888))))
         (* n0_i (+ (* (* normAngle normAngle) (* u 0.5)) t_0))))
       (*
        n0_i
        (+
         (* 0.0001984126984126984 (* (pow normAngle 6.0) (pow u 7.0)))
         (* 0.041666666666666664 (* (pow normAngle 4.0) (pow u 4.0))))))
      (*
       (pow u 3.0)
       (+
        (* (pow normAngle 6.0) (* n0_i 0.004629629629629629))
        (* (pow normAngle 4.0) (* n0_i 0.027777777777777776)))))
     (+
      (+
       (+
        (+
         (+
          (* t_1 0.06944444444444445)
          (* t_2 (+ (* u 0.013888888888888888) 0.01455026455026455)))
         (* u (+ n0_i (* (* n0_i 0.5) t_3))))
        (* n0_i (+ t_0 (* 0.16666666666666666 t_3))))
       (*
        (pow u 3.0)
        (+
         (* (pow normAngle 6.0) (* n0_i 0.008333333333333333))
         (* (pow normAngle 4.0) (* n0_i 0.08333333333333333)))))
      (*
       n0_i
       (+
        (* 0.008333333333333333 (* (pow normAngle 4.0) (pow u 5.0)))
        (* 0.001388888888888889 (* (pow normAngle 6.0) (pow u 6.0)))))))
    (*
     n1_i
     (+
      (+
       (+
        u
        (*
         (pow normAngle 4.0)
         (+ (* (pow u 5.0) 0.008333333333333333) (* u 0.019444444444444445))))
       (* (* 0.16666666666666666 (* normAngle normAngle)) (- u (pow u 3.0))))
      (* (pow normAngle 4.0) (* (pow u 3.0) -0.027777777777777776)))))))
float code(float normAngle, float u, float n0_i, float n1_i) {
	return ((sinf((1.0f - u) * normAngle) * (1.0f / sinf(normAngle))) * n0_i) + ((sinf(u * normAngle) * (1.0f / sinf(normAngle))) * n1_i);
}
float code(float normAngle, float u, float n0_i, float n1_i) {
	float t_0 = powf(normAngle, 4.0f) * (0.08333333333333333f * (u * u));
	float t_1 = u * (n0_i * powf(normAngle, 4.0f));
	float t_2 = u * (n0_i * powf(normAngle, 6.0f));
	float t_3 = u * (normAngle * normAngle);
	return ((((n0_i + ((((0.09166666666666666f * t_1) + (n0_i * ((0.16666666666666666f * (powf(u, 3.0f) * (normAngle * normAngle))) + ((powf(normAngle, 6.0f) * powf(u, 5.0f)) * 0.002777777777777778f)))) + (t_2 * (0.016666666666666666f + (u * 0.013888888888888888f)))) + (n0_i * (((normAngle * normAngle) * (u * 0.5f)) + t_0)))) + (n0_i * ((0.0001984126984126984f * (powf(normAngle, 6.0f) * powf(u, 7.0f))) + (0.041666666666666664f * (powf(normAngle, 4.0f) * powf(u, 4.0f)))))) + (powf(u, 3.0f) * ((powf(normAngle, 6.0f) * (n0_i * 0.004629629629629629f)) + (powf(normAngle, 4.0f) * (n0_i * 0.027777777777777776f))))) - ((((((t_1 * 0.06944444444444445f) + (t_2 * ((u * 0.013888888888888888f) + 0.01455026455026455f))) + (u * (n0_i + ((n0_i * 0.5f) * t_3)))) + (n0_i * (t_0 + (0.16666666666666666f * t_3)))) + (powf(u, 3.0f) * ((powf(normAngle, 6.0f) * (n0_i * 0.008333333333333333f)) + (powf(normAngle, 4.0f) * (n0_i * 0.08333333333333333f))))) + (n0_i * ((0.008333333333333333f * (powf(normAngle, 4.0f) * powf(u, 5.0f))) + (0.001388888888888889f * (powf(normAngle, 6.0f) * powf(u, 6.0f))))))) + (n1_i * (((u + (powf(normAngle, 4.0f) * ((powf(u, 5.0f) * 0.008333333333333333f) + (u * 0.019444444444444445f)))) + ((0.16666666666666666f * (normAngle * normAngle)) * (u - powf(u, 3.0f)))) + (powf(normAngle, 4.0f) * (powf(u, 3.0f) * -0.027777777777777776f))));
}

Error

Bits error versus normAngle

Bits error versus u

Bits error versus n0_i

Bits error versus n1_i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.9

    \[\left(\sin \left(\left(1 - u\right) \cdot normAngle\right) \cdot \frac{1}{\sin normAngle}\right) \cdot n0_i + \left(\sin \left(u \cdot normAngle\right) \cdot \frac{1}{\sin normAngle}\right) \cdot n1_i \]
  2. Taylor expanded in normAngle around 0 0.7

    \[\leadsto \color{blue}{\left(\left(0.004629629629629629 \cdot \left({u}^{3} \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) + \left(0.027777777777777776 \cdot \left(n0_i \cdot \left({u}^{3} \cdot {normAngle}^{4}\right)\right) + \left(0.0001984126984126984 \cdot \left(n0_i \cdot \left({u}^{7} \cdot {normAngle}^{6}\right)\right) + \left(0.041666666666666664 \cdot \left({u}^{4} \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(n0_i + \left(0.5 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{2}\right)\right) + \left(0.08333333333333333 \cdot \left({u}^{2} \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(0.016666666666666666 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) + \left(0.013888888888888888 \cdot \left(n0_i \cdot \left({u}^{2} \cdot {normAngle}^{6}\right)\right) + \left(0.09166666666666666 \cdot \left(n0_i \cdot \left(u \cdot {normAngle}^{4}\right)\right) + \left(0.16666666666666666 \cdot \left({u}^{3} \cdot \left(n0_i \cdot {normAngle}^{2}\right)\right) + 0.002777777777777778 \cdot \left(n0_i \cdot \left({u}^{5} \cdot {normAngle}^{6}\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right) - \left(0.008333333333333333 \cdot \left({u}^{5} \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(0.001388888888888889 \cdot \left(n0_i \cdot \left({u}^{6} \cdot {normAngle}^{6}\right)\right) + \left(0.008333333333333333 \cdot \left(n0_i \cdot \left({u}^{3} \cdot {normAngle}^{6}\right)\right) + \left(0.08333333333333333 \cdot \left({u}^{3} \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(0.16666666666666666 \cdot \left(n0_i \cdot \left(u \cdot {normAngle}^{2}\right)\right) + \left(0.08333333333333333 \cdot \left(n0_i \cdot \left({u}^{2} \cdot {normAngle}^{4}\right)\right) + \left(n0_i \cdot u + \left(0.5 \cdot \left({u}^{2} \cdot \left(n0_i \cdot {normAngle}^{2}\right)\right) + \left(0.01455026455026455 \cdot \left(n0_i \cdot \left(u \cdot {normAngle}^{6}\right)\right) + \left(0.06944444444444445 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + 0.013888888888888888 \cdot \left({u}^{2} \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)} + \left(\sin \left(u \cdot normAngle\right) \cdot \frac{1}{\sin normAngle}\right) \cdot n1_i \]
  3. Simplified0.6

    \[\leadsto \color{blue}{n1_i \cdot \frac{\sin \left(u \cdot normAngle\right)}{\sin normAngle} + \left(\left(0.004629629629629629 \cdot \left(n0_i \cdot \left({u}^{3} \cdot {normAngle}^{6}\right)\right) + \left(n0_i \cdot \left(0.027777777777777776 \cdot \left({u}^{3} \cdot {normAngle}^{4}\right)\right) + \left(n0_i \cdot \left(0.0001984126984126984 \cdot \left({u}^{7} \cdot {normAngle}^{6}\right)\right) + \left(0.041666666666666664 \cdot \left(n0_i \cdot \left({normAngle}^{4} \cdot {u}^{4}\right)\right) + \left(n0_i + \left(0.5 \cdot \left(u \cdot \left(normAngle \cdot \left(normAngle \cdot n0_i\right)\right)\right) + \left(0.08333333333333333 \cdot \left(\left(u \cdot u\right) \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(0.016666666666666666 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) + \left(0.013888888888888888 \cdot \left(u \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right)\right) + \left(0.09166666666666666 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(0.16666666666666666 \cdot \left(n0_i \cdot \left({u}^{3} \cdot \left(normAngle \cdot normAngle\right)\right)\right) + n0_i \cdot \left(\left({u}^{5} \cdot {normAngle}^{6}\right) \cdot 0.002777777777777778\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right) - \left(0.008333333333333333 \cdot \left(n0_i \cdot \left({u}^{5} \cdot {normAngle}^{4}\right)\right) + \left(n0_i \cdot \left(0.001388888888888889 \cdot \left({normAngle}^{6} \cdot {u}^{6}\right)\right) + \left(0.008333333333333333 \cdot \left(n0_i \cdot \left({u}^{3} \cdot {normAngle}^{6}\right)\right) + \left(0.08333333333333333 \cdot \left(n0_i \cdot \left({u}^{3} \cdot {normAngle}^{4}\right)\right) + \left(n0_i \cdot \left(0.16666666666666666 \cdot \left(u \cdot \left(normAngle \cdot normAngle\right)\right)\right) + \left(0.08333333333333333 \cdot \left(\left(u \cdot u\right) \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(u \cdot n0_i + \left(0.5 \cdot \left(n0_i \cdot \left(u \cdot \left(u \cdot \left(normAngle \cdot normAngle\right)\right)\right)\right) + \left(\left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) \cdot 0.01455026455026455 + \left(\left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) \cdot 0.06944444444444445 + 0.013888888888888888 \cdot \left(u \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)} \]
  4. Taylor expanded in normAngle around 0 0.3

    \[\leadsto n1_i \cdot \color{blue}{\left(\left(0.16666666666666666 \cdot \left(u \cdot {normAngle}^{2}\right) + \left(0.008333333333333333 \cdot \left({u}^{5} \cdot {normAngle}^{4}\right) + \left(0.019444444444444445 \cdot \left(u \cdot {normAngle}^{4}\right) + u\right)\right)\right) - \left(0.16666666666666666 \cdot \left({u}^{3} \cdot {normAngle}^{2}\right) + 0.027777777777777776 \cdot \left({u}^{3} \cdot {normAngle}^{4}\right)\right)\right)} + \left(\left(0.004629629629629629 \cdot \left(n0_i \cdot \left({u}^{3} \cdot {normAngle}^{6}\right)\right) + \left(n0_i \cdot \left(0.027777777777777776 \cdot \left({u}^{3} \cdot {normAngle}^{4}\right)\right) + \left(n0_i \cdot \left(0.0001984126984126984 \cdot \left({u}^{7} \cdot {normAngle}^{6}\right)\right) + \left(0.041666666666666664 \cdot \left(n0_i \cdot \left({normAngle}^{4} \cdot {u}^{4}\right)\right) + \left(n0_i + \left(0.5 \cdot \left(u \cdot \left(normAngle \cdot \left(normAngle \cdot n0_i\right)\right)\right) + \left(0.08333333333333333 \cdot \left(\left(u \cdot u\right) \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(0.016666666666666666 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) + \left(0.013888888888888888 \cdot \left(u \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right)\right) + \left(0.09166666666666666 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(0.16666666666666666 \cdot \left(n0_i \cdot \left({u}^{3} \cdot \left(normAngle \cdot normAngle\right)\right)\right) + n0_i \cdot \left(\left({u}^{5} \cdot {normAngle}^{6}\right) \cdot 0.002777777777777778\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right) - \left(0.008333333333333333 \cdot \left(n0_i \cdot \left({u}^{5} \cdot {normAngle}^{4}\right)\right) + \left(n0_i \cdot \left(0.001388888888888889 \cdot \left({normAngle}^{6} \cdot {u}^{6}\right)\right) + \left(0.008333333333333333 \cdot \left(n0_i \cdot \left({u}^{3} \cdot {normAngle}^{6}\right)\right) + \left(0.08333333333333333 \cdot \left(n0_i \cdot \left({u}^{3} \cdot {normAngle}^{4}\right)\right) + \left(n0_i \cdot \left(0.16666666666666666 \cdot \left(u \cdot \left(normAngle \cdot normAngle\right)\right)\right) + \left(0.08333333333333333 \cdot \left(\left(u \cdot u\right) \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + \left(u \cdot n0_i + \left(0.5 \cdot \left(n0_i \cdot \left(u \cdot \left(u \cdot \left(normAngle \cdot normAngle\right)\right)\right)\right) + \left(\left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) \cdot 0.01455026455026455 + \left(\left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) \cdot 0.06944444444444445 + 0.013888888888888888 \cdot \left(u \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right)\right) \]
  5. Simplified0.3

    \[\leadsto \color{blue}{\left(\left(\left(\left(n0_i + \left(\left(\left(0.09166666666666666 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + n0_i \cdot \left(0.16666666666666666 \cdot \left({u}^{3} \cdot \left(normAngle \cdot normAngle\right)\right) + \left({normAngle}^{6} \cdot {u}^{5}\right) \cdot 0.002777777777777778\right)\right) + \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) \cdot \left(0.016666666666666666 + u \cdot 0.013888888888888888\right)\right) + n0_i \cdot \left(\left(u \cdot 0.5\right) \cdot \left(normAngle \cdot normAngle\right) + \left(0.08333333333333333 \cdot \left(u \cdot u\right)\right) \cdot {normAngle}^{4}\right)\right)\right) + n0_i \cdot \left(0.0001984126984126984 \cdot \left({normAngle}^{6} \cdot {u}^{7}\right) + 0.041666666666666664 \cdot \left({normAngle}^{4} \cdot {u}^{4}\right)\right)\right) + {u}^{3} \cdot \left(\left(0.004629629629629629 \cdot n0_i\right) \cdot {normAngle}^{6} + \left(n0_i \cdot 0.027777777777777776\right) \cdot {normAngle}^{4}\right)\right) - \left(\left(\left(\left(\left(\left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) \cdot 0.06944444444444445 + \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) \cdot \left(u \cdot 0.013888888888888888 + 0.01455026455026455\right)\right) + u \cdot \left(n0_i + \left(n0_i \cdot 0.5\right) \cdot \left(u \cdot \left(normAngle \cdot normAngle\right)\right)\right)\right) + n0_i \cdot \left(\left(0.08333333333333333 \cdot \left(u \cdot u\right)\right) \cdot {normAngle}^{4} + 0.16666666666666666 \cdot \left(u \cdot \left(normAngle \cdot normAngle\right)\right)\right)\right) + {u}^{3} \cdot \left(\left(n0_i \cdot 0.008333333333333333\right) \cdot {normAngle}^{6} + \left(n0_i \cdot 0.08333333333333333\right) \cdot {normAngle}^{4}\right)\right) + n0_i \cdot \left(0.008333333333333333 \cdot \left({normAngle}^{4} \cdot {u}^{5}\right) + 0.001388888888888889 \cdot \left({normAngle}^{6} \cdot {u}^{6}\right)\right)\right)\right) + n1_i \cdot \left(\left(\left(u + {normAngle}^{4} \cdot \left({u}^{5} \cdot 0.008333333333333333 + u \cdot 0.019444444444444445\right)\right) + \left(\left(normAngle \cdot normAngle\right) \cdot 0.16666666666666666\right) \cdot \left(u - {u}^{3}\right)\right) + {normAngle}^{4} \cdot \left({u}^{3} \cdot -0.027777777777777776\right)\right)} \]
  6. Final simplification0.3

    \[\leadsto \left(\left(\left(\left(n0_i + \left(\left(\left(0.09166666666666666 \cdot \left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) + n0_i \cdot \left(0.16666666666666666 \cdot \left({u}^{3} \cdot \left(normAngle \cdot normAngle\right)\right) + \left({normAngle}^{6} \cdot {u}^{5}\right) \cdot 0.002777777777777778\right)\right) + \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) \cdot \left(0.016666666666666666 + u \cdot 0.013888888888888888\right)\right) + n0_i \cdot \left(\left(normAngle \cdot normAngle\right) \cdot \left(u \cdot 0.5\right) + {normAngle}^{4} \cdot \left(0.08333333333333333 \cdot \left(u \cdot u\right)\right)\right)\right)\right) + n0_i \cdot \left(0.0001984126984126984 \cdot \left({normAngle}^{6} \cdot {u}^{7}\right) + 0.041666666666666664 \cdot \left({normAngle}^{4} \cdot {u}^{4}\right)\right)\right) + {u}^{3} \cdot \left({normAngle}^{6} \cdot \left(n0_i \cdot 0.004629629629629629\right) + {normAngle}^{4} \cdot \left(n0_i \cdot 0.027777777777777776\right)\right)\right) - \left(\left(\left(\left(\left(\left(u \cdot \left(n0_i \cdot {normAngle}^{4}\right)\right) \cdot 0.06944444444444445 + \left(u \cdot \left(n0_i \cdot {normAngle}^{6}\right)\right) \cdot \left(u \cdot 0.013888888888888888 + 0.01455026455026455\right)\right) + u \cdot \left(n0_i + \left(n0_i \cdot 0.5\right) \cdot \left(u \cdot \left(normAngle \cdot normAngle\right)\right)\right)\right) + n0_i \cdot \left({normAngle}^{4} \cdot \left(0.08333333333333333 \cdot \left(u \cdot u\right)\right) + 0.16666666666666666 \cdot \left(u \cdot \left(normAngle \cdot normAngle\right)\right)\right)\right) + {u}^{3} \cdot \left({normAngle}^{6} \cdot \left(n0_i \cdot 0.008333333333333333\right) + {normAngle}^{4} \cdot \left(n0_i \cdot 0.08333333333333333\right)\right)\right) + n0_i \cdot \left(0.008333333333333333 \cdot \left({normAngle}^{4} \cdot {u}^{5}\right) + 0.001388888888888889 \cdot \left({normAngle}^{6} \cdot {u}^{6}\right)\right)\right)\right) + n1_i \cdot \left(\left(\left(u + {normAngle}^{4} \cdot \left({u}^{5} \cdot 0.008333333333333333 + u \cdot 0.019444444444444445\right)\right) + \left(0.16666666666666666 \cdot \left(normAngle \cdot normAngle\right)\right) \cdot \left(u - {u}^{3}\right)\right) + {normAngle}^{4} \cdot \left({u}^{3} \cdot -0.027777777777777776\right)\right) \]

Reproduce

herbie shell --seed 2021206 
(FPCore (normAngle u n0_i n1_i)
  :name "Curve intersection, scale width based on ribbon orientation"
  :precision binary32
  :pre (and (<= 0.0 normAngle (/ PI 2.0)) (<= -1.0 n0_i 1.0) (<= -1.0 n1_i 1.0) (<= 2.328306437e-10 u 1.0))
  (+ (* (* (sin (* (- 1.0 u) normAngle)) (/ 1.0 (sin normAngle))) n0_i) (* (* (sin (* u normAngle)) (/ 1.0 (sin normAngle))) n1_i)))