num_dual.HyperDual64
- class num_dual.HyperDual64(re, eps1, eps2, eps1eps2)
Hyper-dual number using 64-bit-floats as fields.
A hyper-dual number consists of a + b ε1 + c ε2 + d ε1ε2
Examples
>>> from num_dual import HyperDual64 as HD64 >>> x = HD64(1.0, 0.0, 0.0, 0.0) # constructor >>> y = HD64.from_re(2.0) # from real value >>> x + y 3 + [0]ε1 + [0]ε2 + [0]ε1ε2
Compute partial derivatives of a function.
>>> from num_dual import second_partial_derivative >>> f, f_x, f_y, f_xy = second_partial_derivative(lambda x,y: x**2 * y - y**3, 3.0, 4.0) >>> f -28.0 >>> f_x 24.0 >>> f_y -39.0 >>> f_xy 6.0
- __init__()
Methods
__init__()arccos()Computes the arccosine of a (hyper) dual number.
arccosh()Computes the inverse hyperbolic cosine of a (hyper) dual number.
arcsin()Computes the arcsine of a (hyper) dual number.
arcsinh()Computes the inverse hyperbolic sine of a (hyper) dual number.
arctan()Computes the arctangent of a (hyper) dual number.
arctanh()Computes the inverse hyperbolic tangent of a (hyper) dual number.
cbrt()Cubic root.
cos()Hyperbolic cosine function.
cosh()Computes the hyperbolic cosine of a (hyper) dual number.
exp()Calculate the exponential of (hyper) dual number.
exp2()Calculate 2**x of (hyper) dual number x.
expm1()Calculate exp(x) - 1.
from_re(re)(Hyper) dual number from real part, setting all other parts to zero.
log()Calculate natural logarithm.
log10()Calculate logarithm with base 10.
log1p()Returns ln(1+n) (natural logarithm) more accurately than if the operations were performed separately.
log2()Calculate logarithm with base 2.
log_base(base)Calculate logarithm with given base.
mul_add(a, b)Fused multiply-add.
powd(n)Power using self (hyper) dual number as exponent.
powf(n)Power using 64-bin float as exponent.
powi(n)Power using 32-bit integer as exponent.
recip()Reciprocal value of self.
sin()Hyperbolic sine function.
sin_cos()Simultaneously computes the sine and cosine of the (hyper) dual number, x.
sinh()Computes the hyperbolic sine of a (hyper) dual number.
sph_j0()Computes the first spherical bessel function.
sph_j1()Computes the second spherical bessel function.
sph_j2()Computes the third spherical bessel function.
sqrt()Sqaure root.
tan()Computes the tangent of a (hyper) dual number (in radians).
tanh()Computes the hyperbolic tangent of a (hyper) dual number.
Attributes
first_derivativesecond_derivativevalueReal part.