Esempio n. 1
0
 def test_testUfuncs1(self):
     # Test various functions such as sin, cos.
     (x, y, a10, m1, m2, xm, ym, z, zm, xf, s) = self.d
     assert_(eq(np.cos(x), cos(xm)))
     assert_(eq(np.cosh(x), cosh(xm)))
     assert_(eq(np.sin(x), sin(xm)))
     assert_(eq(np.sinh(x), sinh(xm)))
     assert_(eq(np.tan(x), tan(xm)))
     assert_(eq(np.tanh(x), tanh(xm)))
     with np.errstate(divide='ignore', invalid='ignore'):
         assert_(eq(np.sqrt(abs(x)), sqrt(xm)))
         assert_(eq(np.log(abs(x)), log(xm)))
         assert_(eq(np.log10(abs(x)), log10(xm)))
     assert_(eq(np.exp(x), exp(xm)))
     assert_(eq(np.arcsin(z), arcsin(zm)))
     assert_(eq(np.arccos(z), arccos(zm)))
     assert_(eq(np.arctan(z), arctan(zm)))
     assert_(eq(np.arctan2(x, y), arctan2(xm, ym)))
     assert_(eq(np.absolute(x), absolute(xm)))
     assert_(eq(np.equal(x, y), equal(xm, ym)))
     assert_(eq(np.not_equal(x, y), not_equal(xm, ym)))
     assert_(eq(np.less(x, y), less(xm, ym)))
     assert_(eq(np.greater(x, y), greater(xm, ym)))
     assert_(eq(np.less_equal(x, y), less_equal(xm, ym)))
     assert_(eq(np.greater_equal(x, y), greater_equal(xm, ym)))
     assert_(eq(np.conjugate(x), conjugate(xm)))
     assert_(eq(np.concatenate((x, y)), concatenate((xm, ym))))
     assert_(eq(np.concatenate((x, y)), concatenate((x, y))))
     assert_(eq(np.concatenate((x, y)), concatenate((xm, y))))
     assert_(eq(np.concatenate((x, y, x)), concatenate((x, ym, x))))
Esempio n. 2
0
 def test_testUfuncs1(self):
     # Test various functions such as sin, cos.
     (x, y, a10, m1, m2, xm, ym, z, zm, xf, s) = self.d
     assert_(eq(np.cos(x), cos(xm)))
     assert_(eq(np.cosh(x), cosh(xm)))
     assert_(eq(np.sin(x), sin(xm)))
     assert_(eq(np.sinh(x), sinh(xm)))
     assert_(eq(np.tan(x), tan(xm)))
     assert_(eq(np.tanh(x), tanh(xm)))
     with np.errstate(divide='ignore', invalid='ignore'):
         assert_(eq(np.sqrt(abs(x)), sqrt(xm)))
         assert_(eq(np.log(abs(x)), log(xm)))
         assert_(eq(np.log10(abs(x)), log10(xm)))
     assert_(eq(np.exp(x), exp(xm)))
     assert_(eq(np.arcsin(z), arcsin(zm)))
     assert_(eq(np.arccos(z), arccos(zm)))
     assert_(eq(np.arctan(z), arctan(zm)))
     assert_(eq(np.arctan2(x, y), arctan2(xm, ym)))
     assert_(eq(np.absolute(x), absolute(xm)))
     assert_(eq(np.equal(x, y), equal(xm, ym)))
     assert_(eq(np.not_equal(x, y), not_equal(xm, ym)))
     assert_(eq(np.less(x, y), less(xm, ym)))
     assert_(eq(np.greater(x, y), greater(xm, ym)))
     assert_(eq(np.less_equal(x, y), less_equal(xm, ym)))
     assert_(eq(np.greater_equal(x, y), greater_equal(xm, ym)))
     assert_(eq(np.conjugate(x), conjugate(xm)))
     assert_(eq(np.concatenate((x, y)), concatenate((xm, ym))))
     assert_(eq(np.concatenate((x, y)), concatenate((x, y))))
     assert_(eq(np.concatenate((x, y)), concatenate((xm, y))))
     assert_(eq(np.concatenate((x, y, x)), concatenate((x, ym, x))))
Esempio n. 3
0
def critical_friction(sig1, sig3, pp):
    """
    A function that computes the critical friction coefficient
    that would induce slip for the given combination of minimum
    and maximum principal stress and pore pressure

    Parameters
    ----------
    sig1 : float or array_like
        The maximum (most compressive) principal stress. If `sig1` is
        array_like then `sig3` must be a scalar of type float
    sig3 : float or array_like
        The minimum (least compressive) principal stress.  If `sig3` is
        array_like then `sig1` must be a scalar of type float
    pp : float
        The pore pressure

    Returns
    -------
    mu_c : float or array_like
        The critical friction coefficient. If either sig1 or sig3 are
        array_like then the result will be an array containing the
        critical friction coefficient for each entry in the array.
    """

    arg = (sig1 - sig3) / (sig1 + sig3 - 2.0 * pp)
    phic = ma.arcsin(arg)
    muc = ma.tan(phic)
    return muc
Esempio n. 4
0
 def moon_radius(self, t: Time) -> float:
     jd, fr = t.whole, t.tdb_fraction
     e = self.earth.compute(jd, fr)
     m = self.moon.compute(jd, fr)
     moon_to_earth = e - m
     moon_radius_km = 1737.1
     moon_radius = arcsin(moon_radius_km / length_of(moon_to_earth))
     return moon_radius
Esempio n. 5
0
def get_choice(observation) -> int:
    car_x = observation[0]
    car_v = observation[1]
    pole_alpha_sin = observation[2]
    pole_top_v = observation[3]
    arcsin_alpha = arcsin(pole_alpha_sin) * 180 / 3.14
    # log_info(car_x, car_v, pole_alpha_sin, pole_top_v, arcsin_alpha)
    if car_x - Cart_Position_MIN < 0.1:
        return 1
    elif Cart_Position_MAX - car_x < 0.1:
        return 0
    if arcsin_alpha < -2:
        return 0
    elif arcsin_alpha > 2:
        return 1
    if pole_top_v < 0.0:
        return 0
    else:
        return 1