Average Error: 10.2 → 10.2
Time: 23.7s
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 r59581 = 1.0;
        double r59582 = Om;
        double r59583 = Omc;
        double r59584 = r59582 / r59583;
        double r59585 = 2.0;
        double r59586 = pow(r59584, r59585);
        double r59587 = r59581 - r59586;
        double r59588 = t;
        double r59589 = l;
        double r59590 = r59588 / r59589;
        double r59591 = pow(r59590, r59585);
        double r59592 = r59585 * r59591;
        double r59593 = r59581 + r59592;
        double r59594 = r59587 / r59593;
        double r59595 = sqrt(r59594);
        double r59596 = asin(r59595);
        return r59596;
}

double f(double t, double l, double Om, double Omc) {
        double r59597 = 1.0;
        double r59598 = Om;
        double r59599 = Omc;
        double r59600 = r59598 / r59599;
        double r59601 = 2.0;
        double r59602 = pow(r59600, r59601);
        double r59603 = r59597 - r59602;
        double r59604 = t;
        double r59605 = l;
        double r59606 = r59604 / r59605;
        double r59607 = pow(r59606, r59601);
        double r59608 = r59601 * r59607;
        double r59609 = r59597 + r59608;
        double r59610 = r59603 / r59609;
        double r59611 = sqrt(r59610);
        double r59612 = asin(r59611);
        return r59612;
}

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.2

    \[\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.2

    \[\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 2019298 
(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)))))))