From 1388f6c44c8330843d55810a4bea8066d8b6f24d Mon Sep 17 00:00:00 2001 From: Jonathan Leto Date: Sat, 31 May 2008 23:41:13 -0400 Subject: [PATCH] Adding tests for complex hyperbolic functions. --- lib/Math/GSL/Complex/Test.pm | 52 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/lib/Math/GSL/Complex/Test.pm b/lib/Math/GSL/Complex/Test.pm index 76dfe22..41a124b 100644 --- a/lib/Math/GSL/Complex/Test.pm +++ b/lib/Math/GSL/Complex/Test.pm @@ -217,6 +217,15 @@ sub GSL_COMPLEX_SIN : Tests { ); } +sub GSL_COMPLEX_SINH : Tests { + my $x = gsl_complex_rect(0,0); + my $z = gsl_complex_sinh($x); + + ok_similar( [ gsl_parts($z) ], + [ 0.0, 0.0 ], + 'gsl_complex_sinh' + ); +} sub GSL_COMPLEX_COS : Tests { my $x = gsl_complex_rect(3,2); my $z = gsl_complex_cos($x); @@ -226,6 +235,14 @@ sub GSL_COMPLEX_COS : Tests { ); } +sub GSL_COMPLEX_COSH : Tests { + my $x = gsl_complex_rect(0,0); + my $z = gsl_complex_cosh($x); + ok_similar( [ gsl_parts($z) ], + [ 1, 0.0 ], + 'gsl_complex_cosh' + ); +} sub GSL_COMPLEX_TAN : Tests { my $x = gsl_complex_rect(3,2); my $z = gsl_complex_tan($x); @@ -235,6 +252,14 @@ sub GSL_COMPLEX_TAN : Tests { ); } +sub GSL_COMPLEX_TANH : Tests { + my $x = gsl_complex_rect(0,0); + my $z = gsl_complex_tan($x); + ok_similar( [ gsl_parts($z) ], + [ 0.0, 0.0 ], + 'gsl_complex_tanh' + ); +} sub GSL_COMPLEX_SEC : Tests { my $x = gsl_complex_rect(3,2); my $z = gsl_complex_sec($x); @@ -244,6 +269,15 @@ sub GSL_COMPLEX_SEC : Tests { ); } +sub GSL_COMPLEX_SECH : Tests { + my $x = gsl_complex_rect(1,0); + my $z = gsl_complex_sech($x); + ok_similar( [ gsl_parts($z) ], + [ 2/(exp(1)+exp(-1)), 0.0 ], + 'gsl_complex_sech' + ); +} + sub GSL_COMPLEX_CSC : Tests { my $x = gsl_complex_rect(3,2); my $z = gsl_complex_csc($x); @@ -253,6 +287,15 @@ sub GSL_COMPLEX_CSC : Tests { ); } +sub GSL_COMPLEX_CSCH : Tests { + my $x = gsl_complex_rect(0,1); + my $z = gsl_complex_csch($x); + ok_similar( [ gsl_parts($z) ], + [ 0.0 , -1/sin(1)], + 'gsl_complex_csch' + ); +} + sub GSL_COMPLEX_COT : Tests { my $x = gsl_complex_rect(3,2); my $z = gsl_complex_cot($x); @@ -262,4 +305,13 @@ sub GSL_COMPLEX_COT : Tests { ); } +sub GSL_COMPLEX_COTH : Tests { + my $x = gsl_complex_rect(0,1); + my $z = gsl_complex_coth($x); + ok_similar( [ gsl_parts($z) ], + [ 0.0, -cos(1)/sin(1) ], + 'gsl_complex_coth' + ); +} + 42; -- 2.11.4.GIT