Average Error: 10.7 → 10.7
Time: 8.1s
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 r66016 = 1.0;
        double r66017 = Om;
        double r66018 = Omc;
        double r66019 = r66017 / r66018;
        double r66020 = 2.0;
        double r66021 = pow(r66019, r66020);
        double r66022 = r66016 - r66021;
        double r66023 = t;
        double r66024 = l;
        double r66025 = r66023 / r66024;
        double r66026 = pow(r66025, r66020);
        double r66027 = r66020 * r66026;
        double r66028 = r66016 + r66027;
        double r66029 = r66022 / r66028;
        double r66030 = sqrt(r66029);
        double r66031 = asin(r66030);
        return r66031;
}

double f(double t, double l, double Om, double Omc) {
        double r66032 = 1.0;
        double r66033 = Om;
        double r66034 = Omc;
        double r66035 = r66033 / r66034;
        double r66036 = 2.0;
        double r66037 = pow(r66035, r66036);
        double r66038 = r66032 - r66037;
        double r66039 = t;
        double r66040 = l;
        double r66041 = r66039 / r66040;
        double r66042 = pow(r66041, r66036);
        double r66043 = r66036 * r66042;
        double r66044 = r66032 + r66043;
        double r66045 = r66038 / r66044;
        double r66046 = sqrt(r66045);
        double r66047 = asin(r66046);
        return r66047;
}

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

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

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