Exemple #1
0
def cosh(obj: AADVariable) -> AADVariable:
    """
    SINH OPERATOR:
    INPUT: REAL NUMBER OR AAD-VARIABLE
    RETURNS: AAD-VARIABLE TYPE
    """
    name = obj.name
    val = obj.val
    der = obj.der
    n_val = np.cosh(val)
    n_der = der * np.sinh(val)
    return AADVariable(n_val, n_der, name=name)
Exemple #2
0
def tan(obj: AADVariable) -> AADVariable:
    """
    TAN OPERATOR:
    INPUT: REAL NUMBER OR AAD-VARIABLE
    RETURNS: AAD-VARIABLE TYPE
    """
    name = obj.name
    val = obj.val
    der = obj.der
    n_val = np.tan(val)
    n_der = der * 1 / (np.cos(val)**2)
    return AADVariable(n_val, n_der, name=name)
Exemple #3
0
def log(obj: AADVariable) -> AADVariable:
    """
    LOG BASE E OPERATOR:
    INPUT: REAL NUMBER OR AAD-VARIABLE
    RETURNS: AAD-VARIABLE TYPE
    """
    name = obj.name
    val = obj.val
    der = obj.der
    n_val = np.log(val)
    n_der = der * 1 / (val)
    return AADVariable(n_val, n_der, name=name)
Exemple #4
0
def abs(obj: AADVariable) -> AADVariable:
    """
    ABSOLUTE VALUE OPERATOR:
    INPUT: REAL NUMBER OR AAD-VARIABLE
    RETURNS: AAD-VARIABLE TYPE
    """
    name = obj.name
    val = obj.val
    der = obj.der
    n_val = np.abs(val)
    n_der = der * val / np.abs(val)
    return AADVariable(n_val, n_der, name=name)
Exemple #5
0
def sqrt(obj: AADVariable) -> AADVariable:
    """
    ARCTAN OPERATOR:
    INPUT: REAL NUMBER OR AAD-VARIABLE
    RETURNS: AAD-VARIABLE TYPE
    """
    name = obj.name
    val = obj.val
    der = obj.der
    n_val = np.sqrt(val)
    n_der = der * 0.5 * 1 / (np.sqrt(val))
    return AADVariable(n_val, n_der, name=name)
Exemple #6
0
def arctan(obj: AADVariable) -> AADVariable:
    """
    ARCTAN OPERATOR:
    INPUT: REAL NUMBER OR AAD-VARIABLE
    RETURNS: AAD-VARIABLE TYPE
    """
    name = obj.name
    val = obj.val
    der = obj.der
    n_val = np.arctan(val)
    n_der = der * 1 / (val**2 + 1)  #
    return AADVariable(n_val, n_der, name=name)
Exemple #7
0
def arccos(obj: AADVariable) -> AADVariable:
    """
    ARCCOS OPERATOR:
    INPUT: REAL NUMBER OR AAD-VARIABLE
    RETURNS: AAD-VARIABLE TYPE
    """
    name = obj.name
    val = obj.val
    der = obj.der
    n_val = np.arccos(val)
    n_der = der * -1 / (np.sqrt(1 - (val**2)))  #
    return AADVariable(n_val, n_der, name=name)