num_dual.Dual2_64
- class num_dual.Dual2_64(eps, v1, v2)
Second order dual number using 64-bit-floats as fields.
A second order dual number consists of f_0 + f_1 ε_1 + f_2 ε_1^2 where f_0 is the function value, f_1 the first derivative and f_2 the second derivative.
Examples
>>> from num_dual import Dual2_64 as D264 >>> x = D264(1.0, 0.0, 0.0) >>> y = D264.from_re(2.0) >>> x + y 3 + [0]ε1 + [0]ε1²
First and second derivative of a function.
>>> from num_dual import second_derivative >>> import numpy as np >>> f, df, d2f = second_derivative(lambda x: x * x + np.sqrt(x), 4.0) >>> f 18.0 >>> df 8.25 >>> d2f 1.96875
- __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.