类 FieldCloseEventsTest

java.lang.Object
org.hipparchus.ode.events.FieldCloseEventsTest

public class FieldCloseEventsTest extends Object
当事件时间接近时,正确检测事件。
  • 构造器详细资料

    • FieldCloseEventsTest

      public FieldCloseEventsTest()
  • 方法详细资料

    • testCloseEventsFirstOneIsReset

      public void testCloseEventsFirstOneIsReset()
    • testCloseEvents

      public void testCloseEvents()
    • testSimultaneousEvents

      public void testSimultaneousEvents()
    • testSimultaneousEventsResetReverse

      public void testSimultaneousEventsResetReverse()
      先前当 tryAdvance() 返回 false 时存在一些分支,但未设置 t0 = t。这导致事件顺序不是按时间顺序排列,并检测到不应发生的事件,这两者都是问题。
    • testSimultaneousDiscontinuousEventsAfterReset

      public void testSimultaneousDiscontinuousEventsAfterReset()
      当两个事件探测器由于 Action.RESET_STATEAction.RESET_DERIVATIVES 导致不连续事件时。两个事件探测器各自表示它们有一个事件必须在另一个事件之前处理,但实际上两者都不会回退。适用于 Hipparchus GitHub #91。
    • testFastSwitching

      public void testFastSwitching()
      测试 g 函数在比容差短的周期内切换。我们不需要找到任何事件,但我们需要避免崩溃。并且我们需要保持交替的增加/减少序列。
    • testTrickyCaseLower

      public void testTrickyCaseLower()
      来自 bug #239 的“一个棘手的问题”。
    • testRootFindingTolerance

      public void testRootFindingTolerance()
      两个事件探测器的测试案例。DetectorA 在 t2 时有事件,DetectorB 在 t3 时有事件,但由于根查找容差,DetectorB 的事件发生在 t1 时。其中 t1 无效输入:'<' t2 无效输入:'<' t3。
    • testRootPlusToleranceHasWrongSign

      public void testRootPlusToleranceHasWrongSign()
      检查当 g(t 无效输入:'<' 根) 无效输入:'<' 0, g(根 + 收敛) 无效输入:'<' 0。
    • testRootPlusToleranceHasWrongSignAndLessThanTb

      public void testRootPlusToleranceHasWrongSignAndLessThanTb()
      检查当 g(t 无效输入:'<' 根) 无效输入:'<' 0, g(根 + 收敛) 无效输入:'<' 0。
    • testDoubleRoot

      public void testDoubleRoot()
      检查当 g(t) 有多个根时。例如 g(t 无效输入:'<' 根) 无效输入:'<' 0, g(根) = 0, g(t > 根) 无效输入:'<' 0。
    • testDoubleRootOppositeSign

      public void testDoubleRootOppositeSign()
      检查当 g(t) 有多个根时。例如 g(t 无效输入:'<' 根) > 0, g(根) = 0, g(t > 根) > 0。
    • testZeroAtBeginningAndEndOfInterval

      public void testZeroAtBeginningAndEndOfInterval()
      检查当两端为零时的根查找。
    • testZeroAtBeginningAndEndOfIntervalOppositeSign

      public void testZeroAtBeginningAndEndOfIntervalOppositeSign()
      检查当两端为零时的根查找。
    • testMultipleBackups

      public void testMultipleBackups()
      测试事件探测器需要多次回退的情况。
    • testEventCausedByStateReset

      public void testEventCausedByStateReset()
      测试重置事件在同一时间触发另一个事件。
    • testConvergenceTooTight

      public void testConvergenceTooTight()
      检查当 t + 容差 == t 时。
    • testToleranceMismatch

      public void testToleranceMismatch()
      检查当根查找容差 > 事件查找容差时。
    • testEventChangesGFunctionDefinition

      public void testEventChangesGFunctionDefinition()
      测试当一个事件探测器在步长结束前因为继续操作改变另一个的 g 函数定义时。不确定是否应该得到官方支持,但在 Orekit 的 DateDetector 中使用,这很有用,而且实现起来也不太困难。
    • testEventChangesGFunctionDefinitionCancel

      public void testEventChangesGFunctionDefinitionCancel()
      当一个事件探测器在步长结束之前改变另一个事件探测器的g函数定义,这是由于事件发生导致的。在这种情况下,更改会取消事件的发生。
    • testEventChangesGFunctionDefinitionDelay

      public void testEventChangesGFunctionDefinitionDelay()
      当一个事件探测器在步长结束之前改变另一个事件探测器的g函数定义,这是由于事件发生导致的。在这种情况下,更改会延迟事件的发生。
    • testEventChangesGFunctionDefinitionAccelerate

      public void testEventChangesGFunctionDefinitionAccelerate()
      当一个事件探测器在步长结束之前改变另一个事件探测器的g函数定义,这是由于事件发生导致的。在这种情况下,更改会导致事件比原先预期的更早发生。
    • testToleranceStop

      public void testToleranceStop()
      检查根查找容差 > 事件查找容差。
    • testLongInitialZero

      public void testLongInitialZero()
      当g函数最初为零的时间超过容差时进行测试。可能发生在重新启动后,g函数中发生取消时。
    • testShortBracketingInterval

      public void testShortBracketingInterval()
      根查找器要求起始点在区间(a, b)内,当a和b之间的数字不多时会很困难。这个测试使用第二个事件探测器来为第一个事件探测器强制一个非常小的窗口。
    • testEventStepHandler

      public void testEventStepHandler()
      检查使用继续事件正确限制步长。
    • testEventCausedByDerivativesReset

      public void testEventCausedByDerivativesReset()
      测试resetState(...)返回null
    • testResetChangesSign

      public void testResetChangesSign()
    • testCloseEventsFirstOneIsResetReverse

      public void testCloseEventsFirstOneIsResetReverse()
    • testCloseEventsReverse

      public void testCloseEventsReverse()
    • testSimultaneousEventsReverse

      public void testSimultaneousEventsReverse()
    • testSimultaneousEventsReset

      public void testSimultaneousEventsReset()
      以前在tryAdvance()返回false时没有设置t0 = t时会有一些分支。这允许事件的顺序不是按时间顺序排列,并且检测到本不应发生的事件,这两者都是问题。
    • testSimultaneousDiscontinuousEventsAfterResetReverse

      public void testSimultaneousDiscontinuousEventsAfterResetReverse()
      当两个事件探测器由于 引起的不连续事件。这两个事件探测器都会说它们有一个事件需要在另一个事件之前处理,但实际上两者都不会有任何回退。用于Hipparchus GitHub #91。
    • testFastSwitchingReverse

      public void testFastSwitchingReverse()
      测试g函数切换周期短于容差的情况。我们不需要找到任何事件,但我们需要避免崩溃。并且我们需要保持交替的增加/减少序列。
    • testTrickyCaseLowerReverse

      public void testTrickyCaseLowerReverse()
      来自bug #239的“一个棘手的问题”。
    • testRootFindingToleranceReverse

      public void testRootFindingToleranceReverse()
      两个事件探测器的测试用例。DetectorA在t2时有事件,DetectorB在t3时有事件,但由于根查找容差,DetectorB的事件发生在t1时。其中t1 < t2 < t3。
    • testRootPlusToleranceHasWrongSignReverse

      public void testRootPlusToleranceHasWrongSignReverse()
      当g(t < root) < 0, g(root + convergence) < 0时进行检查。
    • testRootPlusToleranceHasWrongSignAndLessThanTbReverse

      public void testRootPlusToleranceHasWrongSignAndLessThanTbReverse()
      当g(t < root) < 0, g(root + convergence) < 0时进行检查。
    • testDoubleRootReverse

      public void testDoubleRootReverse()
      当g(t)具有多重根时进行检查。例如,g(t < root) < 0, g(root) = 0, g(t > root) < 0。
    • testDoubleRootOppositeSignReverse

      public void testDoubleRootOppositeSignReverse()
      当g(t)具有多重根时进行检查。例如,g(t < root) > 0, g(root) = 0, g(t > root) > 0。
    • testZeroAtBeginningAndEndOfIntervalReverse

      public void testZeroAtBeginningAndEndOfIntervalReverse()
      在两端都为零时进行根查找检查。
    • testZeroAtBeginningAndEndOfIntervalOppositeSignReverse

      public void testZeroAtBeginningAndEndOfIntervalOppositeSignReverse()
      在两端都为零时进行根查找检查。
    • testMultipleBackupsReverse

      public void testMultipleBackupsReverse()
      测试一个事件探测器需要多次回退的情况。
    • testEventCausedByStateResetReverse

      public void testEventCausedByStateResetReverse()
      测试重置事件在同一时间触发另一个事件。
    • testConvergenceTooTightReverse

      public void testConvergenceTooTightReverse()
      当t + tolerance == t时进行检查。
    • testToleranceMismatchReverse

      public void testToleranceMismatchReverse()
      检查根查找容差 > 事件查找容差。
    • testEventChangesGFunctionDefinitionReverse

      public void testEventChangesGFunctionDefinitionReverse()
      当一个事件探测器在步长结束之前由于继续动作改变另一个事件探测器的g函数定义时进行测试。不确定是否应该正式支持,但在Orekit的DateDetector中使用,这是有用的,而且实现起来也不太困难。
    • testEventChangesGFunctionDefinitionCancelReverse

      public void testEventChangesGFunctionDefinitionCancelReverse()
      当一个事件探测器在步长结束之前由于事件发生改变另一个事件探测器的g函数定义时进行测试。在这种情况下,更改会取消事件的发生。
    • testEventChangesGFunctionDefinitionDelayReverse

      public void testEventChangesGFunctionDefinitionDelayReverse()
      当一个事件探测器在步长结束之前由于事件发生改变另一个事件探测器的g函数定义时进行测试。在这种情况下,更改会延迟事件的发生。
    • testEventChangesGFunctionDefinitionAccelerateReverse

      public void testEventChangesGFunctionDefinitionAccelerateReverse()
      当一个事件探测器在步长结束之前由于事件发生改变另一个事件探测器的g函数定义时进行测试。在这种情况下,更改会导致事件比原先预期的更早发生。
    • testToleranceStopReverse

      public void testToleranceStopReverse()
      检查根查找容差 > 事件查找容差。
    • testLongInitialZeroReverse

      public void testLongInitialZeroReverse()
      当g函数最初为零的时间超过容差时进行测试。可能发生在重新启动后,g函数中发生取消时。
    • testShortBracketingIntervalReverse

      public void testShortBracketingIntervalReverse()
      根查找器要求起始点在区间(a, b)内,当a和b之间的数字不多时会很困难。这个测试使用第二个事件探测器来为第一个事件探测器强制一个非常小的窗口。
    • testEventStepHandlerReverse

      public void testEventStepHandlerReverse()
      检查使用继续事件正确限制步长。
    • testEventCausedByDerivativesResetReverse

      public void testEventCausedByDerivativesResetReverse()
      测试resetState(...)返回null
    • testResetChangesSignReverse

      public void testResetChangesSignReverse()