Average Error: 10.0 → 10.0
Time: 15.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 r77936 = 1.0;
        double r77937 = Om;
        double r77938 = Omc;
        double r77939 = r77937 / r77938;
        double r77940 = 2.0;
        double r77941 = pow(r77939, r77940);
        double r77942 = r77936 - r77941;
        double r77943 = t;
        double r77944 = l;
        double r77945 = r77943 / r77944;
        double r77946 = pow(r77945, r77940);
        double r77947 = r77940 * r77946;
        double r77948 = r77936 + r77947;
        double r77949 = r77942 / r77948;
        double r77950 = sqrt(r77949);
        double r77951 = asin(r77950);
        return r77951;
}

double f(double t, double l, double Om, double Omc) {
        double r77952 = 1.0;
        double r77953 = Om;
        double r77954 = Omc;
        double r77955 = r77953 / r77954;
        double r77956 = 2.0;
        double r77957 = pow(r77955, r77956);
        double r77958 = r77952 - r77957;
        double r77959 = t;
        double r77960 = l;
        double r77961 = r77959 / r77960;
        double r77962 = pow(r77961, r77956);
        double r77963 = r77956 * r77962;
        double r77964 = r77952 + r77963;
        double r77965 = r77958 / r77964;
        double r77966 = sqrt(r77965);
        double r77967 = asin(r77966);
        return r77967;
}

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