Average Error: 10.3 → 10.3
Time: 9.9s
Precision: 64
\[\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]
\[\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]
\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)
\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)
double f(double t, double l, double Om, double Omc) {
        double r70399 = 1.0;
        double r70400 = Om;
        double r70401 = Omc;
        double r70402 = r70400 / r70401;
        double r70403 = 2.0;
        double r70404 = pow(r70402, r70403);
        double r70405 = r70399 - r70404;
        double r70406 = t;
        double r70407 = l;
        double r70408 = r70406 / r70407;
        double r70409 = pow(r70408, r70403);
        double r70410 = r70403 * r70409;
        double r70411 = r70399 + r70410;
        double r70412 = r70405 / r70411;
        double r70413 = sqrt(r70412);
        double r70414 = asin(r70413);
        return r70414;
}

double f(double t, double l, double Om, double Omc) {
        double r70415 = 1.0;
        double r70416 = Om;
        double r70417 = Omc;
        double r70418 = r70416 / r70417;
        double r70419 = 2.0;
        double r70420 = pow(r70418, r70419);
        double r70421 = r70415 - r70420;
        double r70422 = t;
        double r70423 = l;
        double r70424 = r70422 / r70423;
        double r70425 = pow(r70424, r70419);
        double r70426 = r70419 * r70425;
        double r70427 = r70415 + r70426;
        double r70428 = r70421 / r70427;
        double r70429 = sqrt(r70428);
        double r70430 = asin(r70429);
        return r70430;
}

Error

Bits error versus t

Bits error versus l

Bits error versus Om

Bits error versus Omc

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 10.3

    \[\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]
  2. Final simplification10.3

    \[\leadsto \sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]

Reproduce

herbie shell --seed 2019353 
(FPCore (t l Om Omc)
  :name "Toniolo and Linder, Equation (2)"
  :precision binary64
  (asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))))