类 FieldUnivariateDerivative2<T extends CalculusFieldElement<T>>
java.lang.Object
org.hipparchus.analysis.differentiation.FieldUnivariateDerivative<T,FieldUnivariateDerivative2<T>>
org.hipparchus.analysis.differentiation.FieldUnivariateDerivative2<T>
- 类型参数:
-
T
- 函数参数和值的类型
- 所有已实现的接口:
-
FieldDerivative<T,
,FieldUnivariateDerivative2<T>> CalculusFieldElement<FieldUnivariateDerivative2<T>>
,FieldElement<FieldUnivariateDerivative2<T>>
public class FieldUnivariateDerivative2<T extends CalculusFieldElement<T>> extends FieldUnivariateDerivative<T,FieldUnivariateDerivative2<T>>
表示函数的值和导数的类。
这个类是 FieldDerivativeStructure
的简化版本,只有一个 自由参数
,导数阶数限制为两。在其定义域中,它的开销应该比 FieldDerivativeStructure
小。
这个类是 Rall 数的实现。Rall 数是实数的扩展,用于数学表达式中;它们将导数与函数的值一起保存。
由于这个类提供了数学函数的算术运算符(+、-、*、/、%、sin、cos ...),因此可以直接使用 FieldUnivariateDerivative2
实例。
手动使用这些类实现复杂表达式是一项繁琐且容易出错的任务,但它的优点是不需要用户自行计算导数,尽管不限制导数阶数。
这个类的实例是不可变的。
- 从以下版本开始:
- 1.7
- 另请参阅:
-
构造器概要
-
方法概要
修饰符和类型方法说明abs()
绝对值。acos()
反余弦操作。acosh()
反双曲余弦操作。add
(double a) '+' 运算符。计算 this + a。'+' 运算符。asin()
反正弦操作。asinh()
反双曲正弦操作。atan()
反正切操作。两个参数的反正切操作。atanh()
反双曲正切操作。cbrt()
立方根。ceil()
获取大于实例的最小整数。通过函数计算实例的组合。copySign
(double sign) 返回带有参数符号的实例。copySign
(FieldUnivariateDerivative2<T> sign) 返回带有参数符号的实例。返回带有参数符号的实例。cos()
余弦操作。cosh()
双曲余弦操作。divide
(double a) '÷' 运算符。计算 this ÷ a。'÷' 运算符。boolean
测试两个一元导数是否相等。exp()
指数。expm1()
指数减 1。floor()
获取小于实例的最大整数。getDerivative
(int n) 从一元导数获取导数。int
返回实例的指数,去除偏差。getField()
获取实例所属的Field
。获取第一导数。int
getOrder()
获取导数阶数。getPi()
获取阿基米德常数 π。double
getReal()
获取数字的实部。获取第二导数。getValue()
获取一元导数的值部分。获取函数值和参数所属的Field
。int
hashCode()
为一元导数获取哈希码。返回三角形的斜边,其两边为this
和y
- sqrt(this2 +y2),避免中间溢出或下溢。linearCombination
(double[] a, FieldUnivariateDerivative2<T>[] b) 计算线性组合。linearCombination
(double a1, FieldUnivariateDerivative2<T> b1, double a2, FieldUnivariateDerivative2<T> b2) 计算线性组合。linearCombination
(double a1, FieldUnivariateDerivative2<T> b1, double a2, FieldUnivariateDerivative2<T> b2, double a3, FieldUnivariateDerivative2<T> b3) 计算线性组合。linearCombination
(double a1, FieldUnivariateDerivative2<T> b1, double a2, FieldUnivariateDerivative2<T> b2, double a3, FieldUnivariateDerivative2<T> b3, double a4, FieldUnivariateDerivative2<T> b4) 计算线性组合。计算线性组合。linearCombination
(FieldUnivariateDerivative2<T> a1, FieldUnivariateDerivative2<T> b1, FieldUnivariateDerivative2<T> a2, FieldUnivariateDerivative2<T> b2) 计算线性组合。linearCombination
(FieldUnivariateDerivative2<T> a1, FieldUnivariateDerivative2<T> b1, FieldUnivariateDerivative2<T> a2, FieldUnivariateDerivative2<T> b2, FieldUnivariateDerivative2<T> a3, FieldUnivariateDerivative2<T> b3) 计算线性组合。linearCombination
(FieldUnivariateDerivative2<T> a1, FieldUnivariateDerivative2<T> b1, FieldUnivariateDerivative2<T> a2, FieldUnivariateDerivative2<T> b2, FieldUnivariateDerivative2<T> a3, FieldUnivariateDerivative2<T> b3, FieldUnivariateDerivative2<T> a4, FieldUnivariateDerivative2<T> b4) 计算线性组合。linearCombination
(T[] a, FieldUnivariateDerivative2<T>[] b) 计算线性组合。linearCombination
(T a1, FieldUnivariateDerivative2<T> b1, T a2, FieldUnivariateDerivative2<T> b2, T a3, FieldUnivariateDerivative2<T> b3) 计算线性组合。log()
自然对数。log10()
以 10 为底的对数。log1p()
移位自然对数。multiply
(double a) '×' 运算符。multiply
(int n) 计算 n × this。计算 this × a。'×' 运算符。negate()
返回this
元素的加法逆元。newInstance
(double value) 创建与常数实值对应的实例。pow
(double p) 幂运算。static <T extends CalculusFieldElement<T>>
FieldUnivariateDerivative2<T> pow
(double a, FieldUnivariateDerivative2<T> x) 计算 ax,其中 a 是一个双精度数,x 是一个FieldUnivariateDerivative2
。pow
(int n) 整数幂运算。幂运算。返回this
元素的乘法逆元。remainder
(double a) IEEE 取余运算。IEEE 取余运算。IEEE 取余运算。rint()
获取最接近实例的整数,如果 x 正好处于两个整数之间,则取偶数。rootN
(int n) Nth 根。scalb
(int n) 将实例乘以 2 的幂。sign()
计算实例的符号。sin()
正弦操作。sinCos()
组合正弦和余弦操作。sinh()
双曲正弦操作。sinhCosh()
组合双曲正弦和余弦操作。sqrt()
平方根。subtract
(double a) '-' 运算符。计算 this - a。'-' 运算符。tan()
正切操作。tanh()
双曲正切操作。taylor
(double delta) 计算一元导数的泰勒展开。计算一元导数的泰勒展开。将弧度转换为度,误差小于 0.5 ULP将实例转换为FieldDerivativeStructure
。将度转换为弧度,误差小于 0.5 ULPulp()
计算数字的最低有效位(最后一位单位)。从类继承的方法 org.hipparchus.analysis.differentiation.FieldUnivariateDerivative
getFreeParameters, getPartialDerivative
从接口继承的方法 org.hipparchus.CalculusFieldElement
isFinite, isInfinite, isNaN, norm, round
从接口继承的方法 org.hipparchus.FieldElement
isZero
-
构造器详细资料
-
FieldUnivariateDerivative2
使用值和导数构建一个实例。- 参数:
-
f0
- 函数的值 -
f1
- 函数的一阶导数 -
f2
- 函数的二阶导数
-
FieldUnivariateDerivative2
public FieldUnivariateDerivative2(FieldDerivativeStructure<T> ds) throws MathIllegalArgumentException 从DerivativeStructure
构建一个实例。- 参数:
-
ds
- 导数结构 - 抛出:
-
MathIllegalArgumentException
- 如果ds
参数不是1或ds
阶数不是2
-
-
方法详细资料
-
newInstance
创建与常数实值对应的实例。- 参数:
-
value
- 常数实值 - 返回:
- 与常数实值对应的实例
-
getReal
public double getReal()获取数字的实值。- 返回:
- 实值
-
getValue
获取一元导数的值部分。- 返回:
- 一元导数的值部分
-
getDerivative
从一元导数获取导数。- 指定者:
-
getDerivative
在类中FieldUnivariateDerivative<T extends CalculusFieldElement<T>,
FieldUnivariateDerivative2<T extends CalculusFieldElement<T>>> - 参数:
-
n
- 导数阶数(必须介于0和getOrder()
之间,包括两者) - 返回:
-
第n个导数,如果n为负数或严格大于
getOrder()
,则返回NaN
-
getOrder
public int getOrder()获取导数阶数。- 返回:
- 导数阶数
-
getFirstDerivative
获取一阶导数。- 返回:
- 一阶导数
- 另请参阅:
-
getSecondDerivative
获取二阶导数。- 返回:
- 二阶导数
- 另请参阅:
-
getValueField
获取函数值和参数所属的Field
。- 返回:
-
函数值和参数所属的
Field
-
toDerivativeStructure
将实例转换为FieldDerivativeStructure
。- 指定者:
-
toDerivativeStructure
在类中FieldUnivariateDerivative<T extends CalculusFieldElement<T>,
FieldUnivariateDerivative2<T extends CalculusFieldElement<T>>> - 返回:
- 具有与实例相同值和导数的导数结构
-
add
'+' 运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this+a
-
add
'+' 运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this+a
-
add
计算 this + a。- 参数:
-
a
- 要添加的元素 - 返回:
- 代表 this + a 的新元素
-
subtract
'-' 运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this-a
-
subtract
'-' 运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this-a
-
subtract
计算 this - a。- 参数:
-
a
- 要减去的元素 - 返回:
- 代表 this - a 的新元素
-
multiply
'×' 运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this×a
-
multiply
计算 n × this。将整数乘以一个整数定义为以下求和 \[ n \times \mathrm{this} = \sum_{i=1}^n \mathrm{this} \]- 参数:
-
n
- 必须将this
加到自身的次数 - 返回:
- 代表 n × this 的新元素
-
multiply
'×' 运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this×a
-
multiply
计算 this × a。- 参数:
-
a
- 要相乘的元素 - 返回:
- 代表 this × a 的新元素
-
divide
'÷' 运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this÷a
-
divide
'÷' 运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this÷a
-
divide
计算 this ÷ a。- 参数:
-
a
- 要除以的元素 - 返回:
- 代表 this ÷ a 的新元素
-
remainder
IEEE 取余运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this - n × a,其中 n 是最接近 this/a 的整数(如果 this/a 正好处于两个整数之间,则选择偶数整数作为 n)
-
remainder
IEEE 取余运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this - n × a,其中 n 是最接近 this/a 的整数
-
remainder
IEEE 取余运算符。- 参数:
-
a
- 运算符的右侧参数 - 返回:
- this - n × a,其中 n 是最接近 this/a 的整数
-
negate
返回this
元素的相反数。- 返回:
-
this
的相反数。
-
abs
绝对值。只是
CalculusFieldElement.norm()
的另一个名称- 返回:
- abs(this)
-
ceil
获取大于实例的最小整数。- 返回:
- ceil(this)
-
floor
获取小于实例的最大整数。- 返回:
- floor(this)
-
rint
获取最接近实例的整数,如果 x 正好处于两个整数之间,则取偶数。- 返回:
- 一个双精度数 r,使得 r 是整数 r - 0.5 ≤ this ≤ r + 0.5
-
sign
计算实例的符号。负数为-1,正数为+1,否则为0,对于复数,它在单位圆上延伸(等同于z/|z|,对于0和NaN有特殊处理)- 返回:
- -1.0、-0.0、+0.0、+1.0或NaN,取决于a的符号
-
copySign
返回具有参数符号的实例。NaNsign
参数被视为正数。- 参数:
-
sign
- 返回值的符号 - 返回:
-
具有与
sign
参数相同符号的实例
-
copySign
返回具有参数符号的实例。NaNsign
参数被视为正数。- 参数:
-
sign
- 返回值的符号 - 返回:
-
具有与
sign
参数相同符号的实例
-
copySign
返回具有参数符号的实例。NaNsign
参数被视为正数。- 参数:
-
sign
- 返回值的符号 - 返回:
-
具有与
sign
参数相同符号的实例
-
getExponent
public int getExponent()返回实例的指数,去除偏差。对于形式为2x的双精度数,无偏指数正好是 x。
- 返回:
- 实例的指数,无偏
-
scalb
Multiply the instance by a power of 2.- 参数:
-
n
- 2的幂 - 返回:
- this × 2n
-
ulp
计算数字的最低有效位(最后一位单位)。ulp
函数是一个阶跃函数,因此其所有导数均为0。- 返回:
- ulp(this)
- 从以下版本开始:
- 2.0
-
hypot
返回三角形的斜边,其两边分别为this
和y
- sqrt(this2 +y2),避免中间溢出或下溢。- 如果任一参数为无穷大,则结果为正无穷大。
- 否则,如果任一参数为NaN,则结果为NaN。
- 参数:
-
y
- 一个值 - 返回:
- sqrt(this2 +y2)
-
reciprocal
返回this
元素的乘法逆元。- 返回:
-
this
的逆元。
-
compose
计算实例通过函数的组合。- 参数:
-
g0
- 在当前点处函数的值(即在g(getValue())
处) -
g1
- 在当前点处函数的一阶导数(即在g'(getValue())
处) -
g2
- 在当前点处函数的二阶导数(即在g''(getValue())
处) - 返回:
- g(this)
-
sqrt
平方根。- 返回:
- 实例的平方根
-
cbrt
立方根。- 返回:
- 实例的立方根
-
rootN
Nth根。- 参数:
-
n
- 根的阶数 - 返回:
- 实例的nth根
-
getField
获取实例所属的Field
。- 返回:
-
实例所属的
Field
-
pow
public static <T extends CalculusFieldElement<T>> FieldUnivariateDerivative2<T> pow(double a, FieldUnivariateDerivative2<T> x) 计算ax,其中a是一个双精度数,x是一个FieldUnivariateDerivative2
- 类型参数:
-
T
- 函数参数和值的类型 - 参数:
-
a
- 要求幂的数字 -
x
- 要应用的幂 - 返回:
- ax
-
pow
幂运算。- 参数:
-
p
- 要应用的幂 - 返回:
- thisp
-
pow
整数幂运算。- 参数:
-
n
- 要应用的幂 - 返回:
- thisn
-
pow
幂运算。- 参数:
-
e
- 指数 - 返回:
- thise
-
exp
指数。- 返回:
- 实例的指数
-
expm1
指数减1。- 返回:
- 实例的指数减1
-
log
自然对数。- 返回:
- 实例的对数
-
log1p
移位自然对数。- 返回:
- 1加上实例的对数
-
log10
10为底的对数。- 返回:
- 实例的以10为底的对数
-
cos
余弦运算。- 返回:
- cos(this)
-
sin
正弦运算。- 返回:
- sin(this)
-
sinCos
组合正弦和余弦运算。- 返回:
- [sin(this), cos(this)]
-
tan
正切运算。- 返回:
- tan(this)
-
acos
反余弦运算。- 返回:
- acos(this)
-
asin
反正弦运算。- 返回:
- asin(this)
-
atan
反正切运算。- 返回:
- atan(this)
-
atan2
两参数反正切运算。注意参数的顺序!由于这是基于两个参数的函数,为了与参数顺序保持一致,实例是第一个参数,而提供的单个参数是第二个参数。为了与编程语言
atan2
保持一致,此方法计算atan2(this, x)
,即实例表示y
参数,而传递的x
参数是作为单个参数传递的。这可能会令人困惑,特别是对于Wolfram alpha的用户,因为该网站与编程语言atan2
的两参数反正切不一致,并将x
作为其第一个参数。- 参数:
-
x
- 反正切的第二个参数 - 返回:
- atan2(this, x)
-
cosh
双曲余弦运算。- 返回:
- cosh(this)
-
sinh
双曲正弦运算。- 返回:
- sinh(this)
-
sinhCosh
组合双曲正弦和余弦运算。- 返回:
- [sinh(this), cosh(this)]
-
tanh
双曲正切运算。- 返回:
- tanh(this)
-
acosh
反双曲余弦运算。- 返回:
- acosh(this)
-
asinh
反双曲正弦运算。- 返回:
- asin(this)
-
atanh
反双曲正切运算。- 返回:
- atanh(this)
-
toDegrees
将弧度转换为度,误差小于0.5 ULP- 返回:
- 实例转换为度
-
toRadians
将度转换为弧度,误差小于0.5 ULP- 返回:
- 实例转换为弧度
-
taylor
评估一元导数的泰勒展开。- 参数:
-
delta
- 参数偏移Δx - 返回:
- 在x + Δx处泰勒展开的值
-
taylor
评估一元导数的泰勒展开。- 参数:
-
delta
- 参数偏移Δx - 返回:
- 在x + Δx处泰勒展开的值
-
linearCombination
计算线性组合。- 参数:
-
a
- 因子 -
b
- 因子 - 返回:
-
Σi ai bi
- 抛出:
-
MathIllegalArgumentException
- 如果数组维度不匹配
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(FieldUnivariateDerivative2<T>[] a, FieldUnivariateDerivative2<T>[] b) 计算线性组合。- 参数:
-
a
- 因子 -
b
- 因子 - 返回:
-
Σi ai bi
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(double[] a, FieldUnivariateDerivative2<T>[] b) 计算线性组合。- 参数:
-
a
- 因子 -
b
- 因子 - 返回:
-
Σi ai bi
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(FieldUnivariateDerivative2<T> a1, FieldUnivariateDerivative2<T> b1, FieldUnivariateDerivative2<T> a2, FieldUnivariateDerivative2<T> b2) 计算线性组合。- 参数:
-
a1
- 第一项的第一个因子 -
b1
- 第一项的第二个因子 -
a2
- 第二项的第一个因子 -
b2
- 第二项的第二个因子 - 返回:
- a1×b1 + a2×b2
- 另请参阅:
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(double a1, FieldUnivariateDerivative2<T> b1, double a2, FieldUnivariateDerivative2<T> b2) 计算线性组合。- 参数:
-
a1
- 第一项的第一个因子 -
b1
- 第一项的第二个因子 -
a2
- 第二项的第一个因子 -
b2
- 第二项的第二个因子 - 返回:
- a1×b1 + a2×b2
- 另请参阅:
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(FieldUnivariateDerivative2<T> a1, FieldUnivariateDerivative2<T> b1, FieldUnivariateDerivative2<T> a2, FieldUnivariateDerivative2<T> b2, FieldUnivariateDerivative2<T> a3, FieldUnivariateDerivative2<T> b3) 计算线性组合。- 参数:
-
a1
- 第一项的第一个因子 -
b1
- 第一项的第二个因子 -
a2
- 第二项的第一个因子 -
b2
- 第二项的第二个因子 -
a3
- 第三项的第一个因子 -
b3
- 第三项的第二个因子 - 返回:
- a1×b1 + a2×b2 + a3×b3
- 另请参阅:
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(T a1, FieldUnivariateDerivative2<T> b1, T a2, FieldUnivariateDerivative2<T> b2, T a3, FieldUnivariateDerivative2<T> b3) 计算线性组合。- 参数:
-
a1
- 第一项的第一个因子 -
b1
- 第一项的第二个因子 -
a2
- 第二项的第一个因子 -
b2
- 第二项的第二个因子 -
a3
- 第三项的第一个因子 -
b3
- 第三项的第二个因子 - 返回:
- a1×b1 + a2×b2 + a3×b3
- 抛出:
-
MathIllegalArgumentException
- 如果自由参数或阶数不一致 - 另请参阅:
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(double a1, FieldUnivariateDerivative2<T> b1, double a2, FieldUnivariateDerivative2<T> b2, double a3, FieldUnivariateDerivative2<T> b3) 计算线性组合。- 参数:
-
a1
- 第一项的第一个因子 -
b1
- 第一项的第二个因子 -
a2
- 第二项的第一个因子 -
b2
- 第二项的第二个因子 -
a3
- 第三项的第一个因子 -
b3
- 第三项的第二个因子 - 返回:
- a1×b1 + a2×b2 + a3×b3
- 另请参阅:
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(FieldUnivariateDerivative2<T> a1, FieldUnivariateDerivative2<T> b1, FieldUnivariateDerivative2<T> a2, FieldUnivariateDerivative2<T> b2, FieldUnivariateDerivative2<T> a3, FieldUnivariateDerivative2<T> b3, FieldUnivariateDerivative2<T> a4, FieldUnivariateDerivative2<T> b4) 计算线性组合。- 参数:
-
a1
- 第一项的第一个因子 -
b1
- 第一项的第二个因子 -
a2
- 第二项的第一个因子 -
b2
- 第二项的第二个因子 -
a3
- 第三项的第一个因子 -
b3
- 第三项的第二个因子 -
a4
- 第四项的第一个因子 -
b4
- 第四项的第二个因子 - 返回:
- a1×b1 + a2×b2 + a3×b3 + a4×b4
- 另请参阅:
-
linearCombination
public FieldUnivariateDerivative2<T> linearCombination(double a1, FieldUnivariateDerivative2<T> b1, double a2, FieldUnivariateDerivative2<T> b2, double a3, FieldUnivariateDerivative2<T> b3, double a4, FieldUnivariateDerivative2<T> b4) 计算线性组合。- 参数:
-
a1
- 第一项的第一个因子 -
b1
- 第一项的第二个因子 -
a2
- 第二项的第一个因子 -
b2
- 第二项的第二个因子 -
a3
- 第三项的第一个因子 -
b3
- 第三项的第二个因子 -
a4
- 第四项的第一个因子 -
b4
- 第四项的第二个因子 - 返回:
- a1×b1 + a2×b2 + a3×b3 + a4×b4
- 另请参阅:
-
getPi
获取阿基米德常数 π。阿基米德常数是圆周长与直径的比值。
- 返回:
- 阿基米德常数 π
-
equals
测试两个一元导数是否相等。如果它们具有相同的导数,则认为一元导数相等。
-
hashCode
public int hashCode()获取一元导数的哈希码。
-