T - the type of the function parameters and valuepublic class FieldGradient<T extends CalculusFieldElement<T>> extends Object implements FieldDerivative<T,FieldGradient<T>>
This class is a stripped-down version of FieldDerivativeStructure
with derivation order limited to one.
It should have less overhead than FieldDerivativeStructure in its domain.
This class is an implementation of Rall's numbers. Rall's numbers are an extension to the real numbers used throughout mathematical expressions; they hold the derivative together with the value of a function.
FieldGradient instances can be used directly thanks to
the arithmetic operators to the mathematical functions provided as
methods by this class (+, -, *, /, %, sin, cos ...).
Implementing complex expressions by hand using these classes is a tedious and error-prone task but has the advantage of having no limitation on the derivation order despite not requiring users to compute the derivatives by themselves.
Instances of this class are guaranteed to be immutable.
| Constructor and Description |
|---|
FieldGradient(FieldDerivativeStructure<T> ds)
Build an instance from a
DerivativeStructure. |
FieldGradient(T value,
T... gradient)
Build an instance with values and derivative.
|
| Modifier and Type | Method and Description |
|---|---|
FieldGradient<T> |
abs()
absolute value.
|
FieldGradient<T> |
acos()
Arc cosine operation.
|
FieldGradient<T> |
acosh()
Inverse hyperbolic cosine operation.
|
FieldGradient<T> |
add(double a)
'+' operator.
|
FieldGradient<T> |
add(FieldGradient<T> a)
Compute this + a.
|
FieldGradient<T> |
add(T a)
'+' operator.
|
FieldGradient<T> |
asin()
Arc sine operation.
|
FieldGradient<T> |
asinh()
Inverse hyperbolic sine operation.
|
FieldGradient<T> |
atan()
Arc tangent operation.
|
FieldGradient<T> |
atan2(FieldGradient<T> x)
Two arguments arc tangent operation.
|
FieldGradient<T> |
atanh()
Inverse hyperbolic tangent operation.
|
FieldGradient<T> |
cbrt()
Cubic root.
|
FieldGradient<T> |
ceil()
Get the smallest whole number larger than instance.
|
FieldGradient<T> |
compose(T g0,
T g1)
Compute composition of the instance by a function.
|
static <T extends CalculusFieldElement<T>> |
constant(int freeParameters,
T value)
Build an instance corresponding to a constant value.
|
FieldGradient<T> |
copySign(double sign)
Returns the instance with the sign of the argument.
|
FieldGradient<T> |
copySign(FieldGradient<T> sign)
Returns the instance with the sign of the argument.
|
FieldGradient<T> |
copySign(T sign)
Returns the instance with the sign of the argument.
|
FieldGradient<T> |
cos()
Cosine operation.
|
FieldGradient<T> |
cosh()
Hyperbolic cosine operation.
|
FieldGradient<T> |
divide(double a)
'÷' operator.
|
FieldGradient<T> |
divide(FieldGradient<T> a)
Compute this ÷ a.
|
FieldGradient<T> |
divide(T a)
'÷' operator.
|
boolean |
equals(Object other)
Test for the equality of two univariate derivatives.
|
FieldGradient<T> |
exp()
Exponential.
|
FieldGradient<T> |
expm1()
Exponential minus 1.
|
FieldGradient<T> |
floor()
Get the largest whole number smaller than instance.
|
int |
getExponent()
Return the exponent of the instance, removing the bias.
|
FieldGradientField<T> |
getField()
Get the
Field to which the instance belongs. |
int |
getFreeParameters()
Get the number of free parameters.
|
T[] |
getGradient()
Get the gradient part of the function.
|
int |
getOrder()
Get the derivation order.
|
T |
getPartialDerivative(int... orders)
Get a partial derivative.
|
T |
getPartialDerivative(int n)
Get the partial derivative with respect to one parameter.
|
FieldGradient<T> |
getPi()
Get the Archimedes constant π.
|
double |
getReal()
Get the real value of the number.
|
T |
getValue()
Get the value part of the function.
|
Field<T> |
getValueField()
Get the
Field the value and parameters of the function belongs to. |
int |
hashCode()
Get a hashCode for the univariate derivative.
|
FieldGradient<T> |
hypot(FieldGradient<T> y)
Returns the hypotenuse of a triangle with sides
this and y
- sqrt(this2 +y2)
avoiding intermediate overflow or underflow. |
FieldGradient<T> |
linearCombination(double[] a,
FieldGradient<T>[] b)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(double a1,
FieldGradient<T> b1,
double a2,
FieldGradient<T> b2)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(double a1,
FieldGradient<T> b1,
double a2,
FieldGradient<T> b2,
double a3,
FieldGradient<T> b3)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(double a1,
FieldGradient<T> b1,
double a2,
FieldGradient<T> b2,
double a3,
FieldGradient<T> b3,
double a4,
FieldGradient<T> b4)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(FieldGradient<T>[] a,
FieldGradient<T>[] b)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(FieldGradient<T> a1,
FieldGradient<T> b1,
FieldGradient<T> a2,
FieldGradient<T> b2)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(FieldGradient<T> a1,
FieldGradient<T> b1,
FieldGradient<T> a2,
FieldGradient<T> b2,
FieldGradient<T> a3,
FieldGradient<T> b3)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(FieldGradient<T> a1,
FieldGradient<T> b1,
FieldGradient<T> a2,
FieldGradient<T> b2,
FieldGradient<T> a3,
FieldGradient<T> b3,
FieldGradient<T> a4,
FieldGradient<T> b4)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(T[] a,
FieldGradient<T>[] b)
Compute a linear combination.
|
FieldGradient<T> |
linearCombination(T a1,
FieldGradient<T> b1,
T a2,
FieldGradient<T> b2,
T a3,
FieldGradient<T> b3)
Compute a linear combination.
|
FieldGradient<T> |
log()
Natural logarithm.
|
FieldGradient<T> |
log10()
Base 10 logarithm.
|
FieldGradient<T> |
log1p()
Shifted natural logarithm.
|
FieldGradient<T> |
multiply(double a)
'×' operator.
|
FieldGradient<T> |
multiply(FieldGradient<T> a)
Compute this × a.
|
FieldGradient<T> |
multiply(int n)
Compute n × this.
|
FieldGradient<T> |
multiply(T n)
'×' operator.
|
FieldGradient<T> |
negate()
Returns the additive inverse of
this element. |
FieldGradient<T> |
newInstance(double c)
Create an instance corresponding to a constant real value.
|
FieldGradient<T> |
newInstance(T c)
Create an instance corresponding to a constant real value.
|
FieldGradient<T> |
pow(double p)
Power operation.
|
static <T extends CalculusFieldElement<T>> |
pow(double a,
FieldGradient<T> x)
Compute ax where a is a double and x a
FieldGradient |
FieldGradient<T> |
pow(FieldGradient<T> e)
Power operation.
|
FieldGradient<T> |
pow(int n)
Integer power operation.
|
FieldGradient<T> |
reciprocal()
Returns the multiplicative inverse of
this element. |
FieldGradient<T> |
remainder(double a)
IEEE remainder operator.
|
FieldGradient<T> |
remainder(FieldGradient<T> a)
IEEE remainder operator.
|
FieldGradient<T> |
remainder(T a)
IEEE remainder operator.
|
FieldGradient<T> |
rint()
Get the whole number that is the nearest to the instance, or the even one if x is exactly half way between two integers.
|
FieldGradient<T> |
rootN(int n)
Nth root.
|
FieldGradient<T> |
scalb(int n)
Multiply the instance by a power of 2.
|
FieldGradient<T> |
sign()
Compute the sign of the instance.
|
FieldGradient<T> |
sin()
Sine operation.
|
FieldSinCos<FieldGradient<T>> |
sinCos()
Combined Sine and Cosine operation.
|
FieldGradient<T> |
sinh()
Hyperbolic sine operation.
|
FieldSinhCosh<FieldGradient<T>> |
sinhCosh()
Combined hyperbolic sine and sosine operation.
|
FieldGradient<T> |
sqrt()
Square root.
|
FieldGradient<T> |
subtract(double a)
'-' operator.
|
FieldGradient<T> |
subtract(FieldGradient<T> a)
Compute this - a.
|
FieldGradient<T> |
subtract(T a)
'-' operator.
|
FieldGradient<T> |
tan()
Tangent operation.
|
FieldGradient<T> |
tanh()
Hyperbolic tangent operation.
|
T |
taylor(double... delta)
Evaluate Taylor expansion of a gradient.
|
T |
taylor(T... delta)
Evaluate Taylor expansion of a gradient.
|
FieldGradient<T> |
toDegrees()
Convert radians to degrees, with error of less than 0.5 ULP
|
FieldDerivativeStructure<T> |
toDerivativeStructure()
Convert the instance to a
FieldDerivativeStructure. |
FieldGradient<T> |
toRadians()
Convert degrees to radians, with error of less than 0.5 ULP
|
FieldGradient<T> |
ulp()
Compute least significant bit (Unit in Last Position) for a number.
|
static <T extends CalculusFieldElement<T>> |
variable(int freeParameters,
int index,
T value)
Build a
Gradient representing a variable. |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitisFinite, isInfinite, isNaN, norm, roundisZero@SafeVarargs public FieldGradient(T value, T... gradient)
value - value of the functiongradient - gradient of the functionpublic FieldGradient(FieldDerivativeStructure<T> ds) throws MathIllegalArgumentException
DerivativeStructure.ds - derivative structureMathIllegalArgumentException - if ds order
is not 1public static <T extends CalculusFieldElement<T>> FieldGradient<T> constant(int freeParameters, T value)
T - the type of the function parameters and valuefreeParameters - number of free parameters (i.e. dimension of the gradient)value - constant value of the functionFieldGradient with a constant value and all derivatives set to 0.0public static <T extends CalculusFieldElement<T>> FieldGradient<T> variable(int freeParameters, int index, T value)
Gradient representing a variable.
Instances built using this method are considered to be the free variables with respect to which differentials are computed. As such, their differential with respect to themselves is +1.
T - the type of the function parameters and valuefreeParameters - number of free parameters (i.e. dimension of the gradient)index - index of the variable (from 0 to getFreeParameters() - 1)value - value of the variableFieldGradient with a constant value and all derivatives set to 0.0 except the
one at index which will be set to 1.0public Field<T> getValueField()
Field the value and parameters of the function belongs to.Field the value and parameters of the function belongs topublic FieldGradient<T> newInstance(double c)
newInstance in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>c - constant real valuepublic FieldGradient<T> newInstance(T c)
The default implementation creates the instance by adding
the value to getField().getZero(). This is not optimal
and does not work when called with a negative zero as the
sign of zero is lost with the addition. The default implementation
should therefore be overridden in concrete classes. The default
implementation will be removed at the next major version.
c - constant real valuepublic double getReal()
getReal in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public T getValue()
getValue in interface FieldDerivative<T extends CalculusFieldElement<T>,FieldGradient<T extends CalculusFieldElement<T>>>public T[] getGradient()
public int getFreeParameters()
getFreeParameters in interface FieldDerivative<T extends CalculusFieldElement<T>,FieldGradient<T extends CalculusFieldElement<T>>>public int getOrder()
getOrder in interface FieldDerivative<T extends CalculusFieldElement<T>,FieldGradient<T extends CalculusFieldElement<T>>>public T getPartialDerivative(int... orders) throws MathIllegalArgumentException
getPartialDerivative in interface FieldDerivative<T extends CalculusFieldElement<T>,FieldGradient<T extends CalculusFieldElement<T>>>orders - derivation orders with respect to each variable (if all orders are 0,
the value is returned)MathIllegalArgumentException - if the numbers of variables does not
match the instanceFieldDerivative.getValue()public T getPartialDerivative(int n) throws MathIllegalArgumentException
n - index of the parameter (counting from 0)MathIllegalArgumentException - if n is either negative or larger
or equal to getFreeParameters()public FieldDerivativeStructure<T> toDerivativeStructure()
FieldDerivativeStructure.public FieldGradient<T> add(T a)
a - right hand side parameter of the operatorpublic FieldGradient<T> add(double a)
add in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - right hand side parameter of the operatorpublic FieldGradient<T> add(FieldGradient<T> a)
add in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - element to addpublic FieldGradient<T> subtract(T a)
a - right hand side parameter of the operatorpublic FieldGradient<T> subtract(double a)
subtract in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - right hand side parameter of the operatorpublic FieldGradient<T> subtract(FieldGradient<T> a)
subtract in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - element to subtractpublic FieldGradient<T> multiply(T n)
n - right hand side parameter of the operatorpublic FieldGradient<T> multiply(int n)
multiply in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>n - Number of times this must be added to itself.public FieldGradient<T> multiply(double a)
multiply in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - right hand side parameter of the operatorpublic FieldGradient<T> multiply(FieldGradient<T> a)
multiply in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - element to multiplypublic FieldGradient<T> divide(T a)
a - right hand side parameter of the operatorpublic FieldGradient<T> divide(double a)
divide in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - right hand side parameter of the operatorpublic FieldGradient<T> divide(FieldGradient<T> a)
divide in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - element to divide bypublic FieldGradient<T> remainder(T a)
a - right hand side parameter of the operatorpublic FieldGradient<T> remainder(double a)
remainder in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - right hand side parameter of the operatorpublic FieldGradient<T> remainder(FieldGradient<T> a)
remainder in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - right hand side parameter of the operatorpublic FieldGradient<T> negate()
this element.negate in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>this.public FieldGradient<T> abs()
Just another name for CalculusFieldElement.norm()
abs in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> ceil()
ceil in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> floor()
floor in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> rint()
rint in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> sign()
sign in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> copySign(T sign)
sign argument is treated as positive.sign - the sign for the returned valuesign argumentpublic FieldGradient<T> copySign(FieldGradient<T> sign)
sign argument is treated as positive.copySign in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>sign - the sign for the returned valuesign argumentpublic FieldGradient<T> copySign(double sign)
sign argument is treated as positive.copySign in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>sign - the sign for the returned valuesign argumentpublic int getExponent()
For double numbers of the form 2x, the unbiased exponent is exactly x.
getExponent in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> scalb(int n)
scalb in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>n - power of 2public FieldGradient<T> ulp()
The ulp function is a step function, hence all its derivatives are 0.
ulp in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> hypot(FieldGradient<T> y)
this and y
- sqrt(this2 +y2)
avoiding intermediate overflow or underflow.
hypot in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>y - a valuepublic FieldGradient<T> reciprocal()
this element.reciprocal in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>reciprocal in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>this.public FieldGradient<T> compose(T g0, T g1)
g0 - value of the function at the current point (i.e. at g(getValue()))g1 - first derivative of the function at the current point (i.e. at g'(getValue()))public FieldGradient<T> sqrt()
sqrt in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> cbrt()
cbrt in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> rootN(int n)
rootN in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>n - order of the rootpublic FieldGradientField<T> getField()
Field to which the instance belongs.getField in interface FieldElement<FieldGradient<T extends CalculusFieldElement<T>>>Field to which the instance belongspublic static <T extends CalculusFieldElement<T>> FieldGradient<T> pow(double a, FieldGradient<T> x)
FieldGradientT - the type of the function parameters and valuea - number to exponentiatex - power to applypublic FieldGradient<T> pow(double p)
pow in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>p - power to applypublic FieldGradient<T> pow(int n)
pow in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>n - power to applypublic FieldGradient<T> pow(FieldGradient<T> e)
pow in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>e - exponentpublic FieldGradient<T> exp()
exp in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> expm1()
expm1 in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> log()
log in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> log1p()
log1p in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> log10()
log10 in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> cos()
cos in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> sin()
sin in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldSinCos<FieldGradient<T>> sinCos()
sinCos in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> tan()
tan in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> acos()
acos in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> asin()
asin in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> atan()
atan in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> atan2(FieldGradient<T> x)
Beware of the order or arguments! As this is based on a
two-arguments functions, in order to be consistent with
arguments order, the instance is the first argument
and the single provided argument is the second argument.
In order to be consistent with programming languages atan2,
this method computes atan2(this, x), i.e. the instance
represents the y argument and the x argument is
the one passed as a single argument. This may seem confusing especially
for users of Wolfram alpha, as this site is not consistent
with programming languages atan2 two-arguments arc tangent
and puts x as its first argument.
atan2 in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>x - second argument of the arc tangentpublic FieldGradient<T> cosh()
cosh in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> sinh()
sinh in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldSinhCosh<FieldGradient<T>> sinhCosh()
sinhCosh in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> tanh()
tanh in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> acosh()
acosh in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> asinh()
asinh in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> atanh()
atanh in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> toDegrees()
toDegrees in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public FieldGradient<T> toRadians()
toRadians in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public T taylor(double... delta)
delta - parameters offsets (Δx, Δy, ...)public T taylor(T... delta)
delta - parameters offsets (Δx, Δy, ...)public FieldGradient<T> linearCombination(FieldGradient<T>[] a, FieldGradient<T>[] b)
linearCombination in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - Factors.b - Factors.Σi ai bi.public FieldGradient<T> linearCombination(T[] a, FieldGradient<T>[] b)
a - Factors.b - Factors.Σi ai bi.MathIllegalArgumentException - if arrays dimensions don't matchpublic FieldGradient<T> linearCombination(double[] a, FieldGradient<T>[] b)
linearCombination in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a - Factors.b - Factors.Σi ai bi.public FieldGradient<T> linearCombination(FieldGradient<T> a1, FieldGradient<T> b1, FieldGradient<T> a2, FieldGradient<T> b2)
linearCombination in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a1 - first factor of the first termb1 - second factor of the first terma2 - first factor of the second termb2 - second factor of the second termCalculusFieldElement.linearCombination(FieldElement, FieldElement, FieldElement, FieldElement, FieldElement, FieldElement),
CalculusFieldElement.linearCombination(FieldElement, FieldElement, FieldElement, FieldElement, FieldElement, FieldElement, FieldElement, FieldElement)public FieldGradient<T> linearCombination(double a1, FieldGradient<T> b1, double a2, FieldGradient<T> b2)
linearCombination in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a1 - first factor of the first termb1 - second factor of the first terma2 - first factor of the second termb2 - second factor of the second termCalculusFieldElement.linearCombination(double, FieldElement, double, FieldElement, double, FieldElement),
CalculusFieldElement.linearCombination(double, FieldElement, double, FieldElement, double, FieldElement, double, FieldElement)public FieldGradient<T> linearCombination(FieldGradient<T> a1, FieldGradient<T> b1, FieldGradient<T> a2, FieldGradient<T> b2, FieldGradient<T> a3, FieldGradient<T> b3)
linearCombination in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a1 - first factor of the first termb1 - second factor of the first terma2 - first factor of the second termb2 - second factor of the second terma3 - first factor of the third termb3 - second factor of the third termCalculusFieldElement.linearCombination(FieldElement, FieldElement, FieldElement, FieldElement),
CalculusFieldElement.linearCombination(FieldElement, FieldElement, FieldElement, FieldElement, FieldElement, FieldElement, FieldElement, FieldElement)public FieldGradient<T> linearCombination(T a1, FieldGradient<T> b1, T a2, FieldGradient<T> b2, T a3, FieldGradient<T> b3)
a1 - first factor of the first termb1 - second factor of the first terma2 - first factor of the second termb2 - second factor of the second terma3 - first factor of the third termb3 - second factor of the third termMathIllegalArgumentException - if number of free parameters or orders are inconsistentlinearCombination(double, FieldGradient, double, FieldGradient),
linearCombination(double, FieldGradient, double, FieldGradient, double, FieldGradient, double, FieldGradient)public FieldGradient<T> linearCombination(double a1, FieldGradient<T> b1, double a2, FieldGradient<T> b2, double a3, FieldGradient<T> b3)
linearCombination in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a1 - first factor of the first termb1 - second factor of the first terma2 - first factor of the second termb2 - second factor of the second terma3 - first factor of the third termb3 - second factor of the third termCalculusFieldElement.linearCombination(double, FieldElement, double, FieldElement),
CalculusFieldElement.linearCombination(double, FieldElement, double, FieldElement, double, FieldElement, double, FieldElement)public FieldGradient<T> linearCombination(FieldGradient<T> a1, FieldGradient<T> b1, FieldGradient<T> a2, FieldGradient<T> b2, FieldGradient<T> a3, FieldGradient<T> b3, FieldGradient<T> a4, FieldGradient<T> b4)
linearCombination in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a1 - first factor of the first termb1 - second factor of the first terma2 - first factor of the second termb2 - second factor of the second terma3 - first factor of the third termb3 - second factor of the third terma4 - first factor of the fourth termb4 - second factor of the fourth termCalculusFieldElement.linearCombination(FieldElement, FieldElement, FieldElement, FieldElement),
CalculusFieldElement.linearCombination(FieldElement, FieldElement, FieldElement, FieldElement, FieldElement, FieldElement)public FieldGradient<T> linearCombination(double a1, FieldGradient<T> b1, double a2, FieldGradient<T> b2, double a3, FieldGradient<T> b3, double a4, FieldGradient<T> b4)
linearCombination in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>a1 - first factor of the first termb1 - second factor of the first terma2 - first factor of the second termb2 - second factor of the second terma3 - first factor of the third termb3 - second factor of the third terma4 - first factor of the fourth termb4 - second factor of the fourth termCalculusFieldElement.linearCombination(double, FieldElement, double, FieldElement),
CalculusFieldElement.linearCombination(double, FieldElement, double, FieldElement, double, FieldElement)public FieldGradient<T> getPi()
Archimedes constant is the ratio of a circle's circumference to its diameter.
getPi in interface CalculusFieldElement<FieldGradient<T extends CalculusFieldElement<T>>>public boolean equals(Object other)
univariate derivatives are considered equal if they have the same derivatives.
Copyright © 2016-2022 CS GROUP. All rights reserved.