Average Error: 10.0 → 10.0
Time: 15.4s
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 r72977 = 1.0;
        double r72978 = Om;
        double r72979 = Omc;
        double r72980 = r72978 / r72979;
        double r72981 = 2.0;
        double r72982 = pow(r72980, r72981);
        double r72983 = r72977 - r72982;
        double r72984 = t;
        double r72985 = l;
        double r72986 = r72984 / r72985;
        double r72987 = pow(r72986, r72981);
        double r72988 = r72981 * r72987;
        double r72989 = r72977 + r72988;
        double r72990 = r72983 / r72989;
        double r72991 = sqrt(r72990);
        double r72992 = asin(r72991);
        return r72992;
}

double f(double t, double l, double Om, double Omc) {
        double r72993 = 1.0;
        double r72994 = Om;
        double r72995 = Omc;
        double r72996 = r72994 / r72995;
        double r72997 = 2.0;
        double r72998 = pow(r72996, r72997);
        double r72999 = r72993 - r72998;
        double r73000 = t;
        double r73001 = l;
        double r73002 = r73000 / r73001;
        double r73003 = pow(r73002, r72997);
        double r73004 = r72997 * r73003;
        double r73005 = r72993 + r73004;
        double r73006 = r72999 / r73005;
        double r73007 = sqrt(r73006);
        double r73008 = asin(r73007);
        return r73008;
}

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

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

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