类 Quaternion

java.lang.Object
org.hipparchus.complex.Quaternion
所有已实现的接口:
Serializable

public final class Quaternion extends Object implements Serializable
This class implements 四元数 (哈密顿的超复数)。

此类的实例保证是不可变的。

另请参阅:
  • 字段详细资料

  • 构造器详细资料

    • Quaternion

      public Quaternion(double a, double b, double c, double d)
      从其组件构建四元数。
      参数:
      a - 标量分量。
      b - 第一个向量分量。
      c - 第二个向量分量。
      d - 第三个向量分量。
    • Quaternion

      public Quaternion(double scalar, double[] v) throws MathIllegalArgumentException
      从标量和向量部分构建四元数。
      参数:
      scalar - 四元数的标量部分。
      v - 四元数的向量部分的分量。
      抛出:
      MathIllegalArgumentException - 如果数组长度不为3。
    • Quaternion

      public Quaternion(double[] v)
      从向量构建一个纯四元数(假设标量部分为零)。
      参数:
      v - 纯四元数的向量部分的分量。
  • 方法详细资料

    • getConjugate

      public Quaternion getConjugate()
      返回此实例的共轭四元数。
      返回:
      共轭四元数
    • multiply

      public static Quaternion multiply(Quaternion q1, Quaternion q2)
      返回两个四元数的哈密顿乘积。
      参数:
      q1 - 第一个四元数。
      q2 - 第二个四元数。
      返回:
      q1q2的顺序返回乘积。
    • multiply

      public Quaternion multiply(Quaternion q)
      返回实例与四元数的哈密顿乘积。
      参数:
      q - 四元数。
      返回:
      以此实例与q的顺序返回乘积。
    • add

      public static Quaternion add(Quaternion q1, Quaternion q2)
      计算两个四元数的和。
      参数:
      q1 - 四元数。
      q2 - 四元数。
      返回:
      q1q2的和。
    • add

      public Quaternion add(Quaternion q)
      计算实例和另一个四元数的和。
      参数:
      q - 四元数。
      返回:
      此实例和q的和
    • subtract

      public static Quaternion subtract(Quaternion q1, Quaternion q2)
      减去两个四元数。
      参数:
      q1 - 第一个四元数。
      q2 - 第二个四元数。
      返回:
      q1q2之间的差异。
    • subtract

      public Quaternion subtract(Quaternion q)
      从实例中减去一个四元数。
      参数:
      q - 四元数。
      返回:
      此实例与q之间的差异。
    • dotProduct

      public static double dotProduct(Quaternion q1, Quaternion q2)
      计算两个四元数的点积。
      参数:
      q1 - 四元数。
      q2 - 四元数。
      返回:
      q1q2的点积。
    • dotProduct

      public double dotProduct(Quaternion q)
      计算实例与四元数的点积。
      参数:
      q - 四元数。
      返回:
      此实例与q的点积。
    • getNorm

      public double getNorm()
      计算四元数的范数。
      返回:
      范数。
    • normalize

      public Quaternion normalize()
      计算规范化的四元数(实例的单位向量)。四元数的范数不能为零。
      返回:
      一个规范化的四元数。
      抛出:
      MathIllegalArgumentException - 如果四元数的范数为零。
    • equals

      public boolean equals(Object other)
      覆盖:
      equals 在类中 Object
    • hashCode

      public int hashCode()
      覆盖:
      hashCode 在类中 Object
    • equals

      public boolean equals(Quaternion q, double eps)
      检查此实例是否在给定容差内等于另一个四元数。
      参数:
      q - 用于比较当前四元数的四元数。
      eps - 容差。
      返回:
      如果每个分量在允许的绝对误差内相等,则返回true
    • isUnitQuaternion

      public boolean isUnitQuaternion(double eps)
      检查实例是否在给定容差内为单位四元数。
      参数:
      eps - 容差(绝对误差)。
      返回:
      如果范数在给定容差内为1,则返回true,否则返回false
    • isPureQuaternion

      public boolean isPureQuaternion(double eps)
      检查实例是否在给定容差内为纯四元数。
      参数:
      eps - 容差(绝对误差)。
      返回:
      如果四元数的标量部分为零,则返回true
    • getPositivePolarForm

      public Quaternion getPositivePolarForm()
      返回四元数的极坐标形式。
      返回:
      具有正标量部分的单位四元数。
    • getInverse

      public Quaternion getInverse()
      返回此实例
      返回:
      逆。
      抛出:
      MathIllegalArgumentException - 如果四元数的范数(平方)为零。
    • getQ0

      public double getQ0()
      获取四元数的第一个分量(标量部分)。
      返回:
      标量部分。
    • getQ1

      public double getQ1()
      获取四元数的第二个分量(向量部分的第一个分量)。
      返回:
      向量部分的第一个分量。
    • getQ2

      public double getQ2()
      获取四元数的第三个分量(向量部分的第二个分量)。
      返回:
      向量部分的第二个分量。
    • getQ3

      public double getQ3()
      获取四元数的第四个分量(向量部分的第三个分量)。
      返回:
      向量部分的第三个分量。
    • getScalarPart

      public double getScalarPart()
      获取四元数的标量部分。
      返回:
      标量部分。
      另请参阅:
    • getVectorPart

      public double[] getVectorPart()
      获取四元数的向量部分的三个分量。
      返回:
      向量部分。
      另请参阅:
    • multiply

      public Quaternion multiply(double alpha)
      将实例乘以标量。
      参数:
      alpha - 标量因子。
      返回:
      缩放后的四元数。
    • toString

      public String toString()
      覆盖:
      toString 在类中 Object