Пример #1
0
    def run(self, context):
        if isinstance(self.body, SinOperation):
            return math.asin(self.body.body.run(context))
        if isinstance(self.body, CosOperation):
            return math.acos(self.body.body.run(context))
        if isinstance(self.body, TanOperation):
            return math.atan(self.body.body.run(context))
        if isinstance(self.body, SecOperation):
            return mpmath.asec(self.body.body.run(context))
        if isinstance(self.body, CscOperation):
            return mpmath.acsc(self.body.body.run(context))
        if isinstance(self.body, CotOperation):
            return mpmath.acot(self.body.body.run(context))

        raise Exception("Unsupported inversion operation.")
Пример #2
0
def F(x, k):
    'cdf'
    x = np.asarray(x)
    F = np.zeros(x.shape)
    F += (x >= 2 * (k + 1)**2) * 1
    F += ((x >= (k + 1)**2 + 1) &
          (x < 2 *
           (k + 1)**2)) * (1 / (4 * k**2)) * (-4 - 8 * k + 4 * (k + 1) *
                                              (-(k + 1)**2 + x)**0.5 -
                                              np.pi * x + 4 * x * np.arctan(
                                                  (k + 1) /
                                                  (-(k + 1)**2 + x)**0.5))
    F += ((x >= 2) & (x < (k + 1)**2 + 1)) * (1 / (2 * k**2)) * (
        2 - 2 * (-1 + x)**0.5 - x * float(mpmath.acsc(x**0.5)) + x * np.arctan(
            (-1 + x)**0.5))
    return F
Пример #3
0
def cdf(x, k):

    if x >= 2 * (k + 1)**2:
        return 1
    if x >= (k + 1)**2 + 1 and x < 2 * (k + 1)**2:
        return (1 / (4 * k**2)) * (-4 - 8 * k + 4 * (k + 1) *
                                   (-(k + 1)**2 + x)**0.5 - np.pi * x +
                                   4 * x * np.arctan(
                                       (k + 1) / (-(k + 1)**2 + x)**0.5))
    if x >= 2 and x < (k + 1)**2 + 1:
        return (1 /
                (2 * k**2)) * (2 - 2 * (-1 + x)**0.5 -
                               x * float(mpmath.acsc(x**0.5)) + x * np.arctan(
                                   (-1 + x)**0.5))
    else:
        return 0
Пример #4
0
# -*- coding: utf-8 -*-
"""

Created by libsedmlscript v0.0.1
"""

from sed_roadrunner import model, task, plot

from mpmath import acsc
#----------------------------------------------

acsc(0.5)
Пример #5
0
 def eval(self, z):
     return mpmath.acsc(z)
Пример #6
0
 def eval(self, z):
     return mpmath.acsc(z)
Пример #7
0
                         None]],  # sqrt(x**2+y**2) 
 #
 'sin': ['primitive', [lambda x, y: mp.sin(x), None]],
 'cos': ['primitive', [lambda x, y: mp.cos(x), None]],
 'tan': ['primitive', [lambda x, y: mp.tan(x), None]],
 'sinpi': ['primitive', [lambda x, y: mp.sinpi(x), None]],  #sin(x * pi) 
 'cospi': ['primitive', [lambda x, y: mp.cospi(x), None]],
 'sec': ['primitive', [lambda x, y: mp.sec(x), None]],
 'csc': ['primitive', [lambda x, y: mp.csc(x), None]],
 'cot': ['primitive', [lambda x, y: mp.cot(x), None]],
 'asin': ['primitive', [lambda x, y: mp.asin(x), None]],
 'acos': ['primitive', [lambda x, y: mp.acos(x), None]],
 'atan': ['primitive', [lambda x, y: mp.atan(x), None]],
 'atan2': ['primitive', [lambda x, y: mp.atan2(y[0], x), None]],
 'asec': ['primitive', [lambda x, y: mp.asec(x), None]],
 'acsc': ['primitive', [lambda x, y: mp.acsc(x), None]],
 'acot': ['primitive', [lambda x, y: mp.acot(x), None]],
 'sinc': ['primitive', [lambda x, y: mp.sinc(x), None]],
 'sincpi': ['primitive', [lambda x, y: mp.sincpi(x), None]],
 'degrees': ['primitive', [lambda x, y: mp.degrees(x),
                           None]],  #radian - >degree 
 'radians': ['primitive', [lambda x, y: mp.radians(x),
                           None]],  #degree - >radian 
 #
 'exp': ['primitive', [lambda x, y: mp.exp(x), None]],
 'expj': ['primitive', [lambda x, y: mp.expj(x), None]],  #exp(x*i) 
 'expjpi': ['primitive', [lambda x, y: mp.expjpi(x), None]],  #exp(x*i*pi)
 'expm1': ['primitive', [lambda x, y: mp.expm1(x), None]],  #exp(x)-1
 'power': ['primitive', [lambda x, y: mp.power(x, y[0]), None]],
 'powm1': ['primitive', [lambda x, y: mp.powm1(x, y[0]),
                         None]],  #pow(x, y) - 1