程序包 org.hipparchus.ode

类 TestFieldProblem7<T extends CalculusFieldElement<T>>

java.lang.Object
org.hipparchus.ode.TestFieldProblemAbstract<T>
org.hipparchus.ode.TestFieldProblem7<T>
类型参数:
T - 字段元素的类型
所有已实现的接口:
FieldOrdinaryDifferentialEquation<T>

public class TestFieldProblem7<T extends CalculusFieldElement<T>> extends TestFieldProblemAbstract<T>
该类用于ODE积分器的junit测试中。

这个特定问题对应于固体物体在固体坐标系x、y和z轴上的无扭矩运动,其惯性矩I₁、I₂和I₃。我们在这里使用Landau和Lifchitz的《理论物理课程,力学第1卷》中的符号。

无扭矩运动的方程在固体坐标系中由方程36.5给出:

    I₁ dΩ₁/dt + (I₃ - I₂) Ω₂ Ω₃ = 0
    I₂ dΩ₂/dt + (I₁ - I₃) Ω₃ Ω₁ = 0
    I₃ dΩ₃/dt + (I₂ - I₁) Ω₁ Ω₂ = 0
 

惯性矩和初始条件为:I₁ = 3/8,I₂ = 1/2,I₃ = 5/8,Ω₁ = 5,Ω₂ = 0,Ω₃ = 4。这对应于固体坐标系中描述绕Z轴的大polhode的角速度运动。该运动几乎是不稳定的,因为M²仅略大于2EI₂。将Ω₁增加到√(80/3) ≈ 5.16398将意味着M²=2EI₂,polhode将退化为两个相交的椭圆。

无扭矩运动可以在Jacobi椭圆函数中解析求解(在旋转体坐标系中)

   τ      = t √([I₃-I₂][M²-2EI₁]/[I₁I₂I₃])
   Ω₁ (τ) = √([2EI₃-M²]/[I₁(I₃-I₁)]) cn(τ)
   Ω₂ (τ) = √([2EI₃-M²]/[I₂(I₃-I₂)]) sn(τ)
   Ω₃ (τ) = √([M²-2EI₁]/[I₃(I₃-I₁)]) dn(τ)
 

这个问题仅解决了旋转速率部分,而FieldTestProblem8解决了完整的运动(旋转速率和旋转)。