testMath2 method

void testMath2()

Implementation

void testMath2(){
  startTest( "[testing function, part 2]" );

  double piby4   = 0.78539816339744830962;
  double rthalf  = 0.70710678118654752440;
  double dblMax = 1.7976931348623158e+308;

  debugPrint( "facos" );
  test( "", ClipMath.approx( MathComplex.facos( -1.0 ), 4.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.facos( -rthalf ), 3.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.facos( 0.0 ), 2.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.facos( rthalf ), piby4 ) );
  test( "", ClipMath.approx( MathComplex.facos( 1.0 ), 0.0 ) );

  debugPrint( "fasin" );
  test( "", ClipMath.approx( MathComplex.fasin( -1.0 ), -2.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.fasin( -rthalf ), -piby4 ) );
  test( "", ClipMath.approx( MathComplex.fasin( 0.0 ), 0.0 ) );
  test( "", ClipMath.approx( MathComplex.fasin( rthalf ), piby4 ) );
  test( "", ClipMath.approx( MathComplex.fasin( 1.0 ), 2.0 * piby4 ) );

  debugPrint( "fatan" );
  test( "", ClipMath.approx( MathComplex.fatan( -dblMax ), -2.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan( -1.0 ), -piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan( 0.0 ), 0.0 ) );
  test( "", ClipMath.approx( MathComplex.fatan( 1.0 ), piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan( dblMax ), 2.0 * piby4 ) );

  debugPrint( "fatan2" );
  test( "", ClipMath.approx( MathComplex.fatan2( -1.0, -1.0 ), -3.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan2( -1.0, 0.0 ), -2.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan2( -1.0, 1.0 ), -piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan2( 0.0, 1.0 ), 0.0 ) );
  test( "", ClipMath.approx( MathComplex.fatan2( 1.0, 1.0 ), piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan2( 1.0, 0.0 ), 2.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan2( 1.0, -1.0 ), 3.0 * piby4 ) );
  test( "", ClipMath.approx( MathComplex.fatan2( 0.0, -1.0 ), 4.0 * piby4 ) || ClipMath.approx( MathComplex.fatan2( 0.0, -1.0 ), -4.0 * piby4 ) );

  debugPrint( "fcos" );
  test( "", ClipMath.approx( MathComplex.fcos( -3.0 * piby4 ), -rthalf ) );
  test( "", ClipMath.approx( MathComplex.fcos( -2.0 * piby4 ), 0.0 ) );
  test( "", ClipMath.approx( MathComplex.fcos( -piby4 ), rthalf ) );
  test( "", ClipMath.approx( MathComplex.fcos( 0.0 ), 1.0 ) );
  test( "", ClipMath.approx( MathComplex.fcos( piby4 ), rthalf ) );
  test( "", ClipMath.approx( MathComplex.fcos( 2.0 * piby4 ), 0.0 ) );
  test( "", ClipMath.approx( MathComplex.fcos( 3.0 * piby4 ), -rthalf ) );
  test( "", ClipMath.approx( MathComplex.fcos( 4.0 * piby4 ), -1.0 ) );

  debugPrint( "fsin" );
  test( "", ClipMath.approx( MathComplex.fsin( -3.0 * piby4 ), -rthalf ) );
  test( "", ClipMath.approx( MathComplex.fsin( -2.0 * piby4 ), -1.0 ) );
  test( "", ClipMath.approx( MathComplex.fsin( -piby4 ), -rthalf ) );
  test( "", ClipMath.approx( MathComplex.fsin( 0.0 ), 0.0 ) );
  test( "", ClipMath.approx( MathComplex.fsin( piby4 ), rthalf ) );
  test( "", ClipMath.approx( MathComplex.fsin( 2.0 * piby4 ), 1.0 ) );
  test( "", ClipMath.approx( MathComplex.fsin( 3.0 * piby4 ), rthalf ) );
  test( "", ClipMath.approx( MathComplex.fsin( 4.0 * piby4 ), 0.0 ) );

  debugPrint( "ftan" );
  test( "", ClipMath.approx( MathComplex.ftan( -3.0 * piby4 ), 1.0 ) );
  test( "", ClipMath.approx( MathComplex.ftan( -piby4 ), -1.0 ) );
  test( "", ClipMath.approx( MathComplex.ftan( 0.0 ), 0.0 ) );
  test( "", ClipMath.approx( MathComplex.ftan( piby4 ), 1.0 ) );
  test( "", ClipMath.approx( MathComplex.ftan( 3.0 * piby4 ), -1.0 ) );

  endTest();
}