Average Error: 9.9 → 9.9
Time: 10.0s
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 r72163 = 1.0;
        double r72164 = Om;
        double r72165 = Omc;
        double r72166 = r72164 / r72165;
        double r72167 = 2.0;
        double r72168 = pow(r72166, r72167);
        double r72169 = r72163 - r72168;
        double r72170 = t;
        double r72171 = l;
        double r72172 = r72170 / r72171;
        double r72173 = pow(r72172, r72167);
        double r72174 = r72167 * r72173;
        double r72175 = r72163 + r72174;
        double r72176 = r72169 / r72175;
        double r72177 = sqrt(r72176);
        double r72178 = asin(r72177);
        return r72178;
}

double f(double t, double l, double Om, double Omc) {
        double r72179 = 1.0;
        double r72180 = Om;
        double r72181 = Omc;
        double r72182 = r72180 / r72181;
        double r72183 = 2.0;
        double r72184 = pow(r72182, r72183);
        double r72185 = r72179 - r72184;
        double r72186 = t;
        double r72187 = l;
        double r72188 = r72186 / r72187;
        double r72189 = pow(r72188, r72183);
        double r72190 = r72183 * r72189;
        double r72191 = r72179 + r72190;
        double r72192 = r72185 / r72191;
        double r72193 = sqrt(r72192);
        double r72194 = asin(r72193);
        return r72194;
}

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 9.9

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

    \[\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 2020024 +o rules:numerics
(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)))))))