gslpp Namespace Reference

Complex number, vector and matrix manipulation using GSL. More...

Classes

class  complex
 A class for defining operations on and functions of complex numbers. More...
 
class  matrix
 A base class for defining operations on matrices, both real and complex. More...
 
class  matrix< complex >
 A class for constructing and defining operations on complex matrices. More...
 
class  matrix< double >
 A class for constructing and defining operations on real matrices. More...
 
class  vector
 A base class for defining operations on vectors, both real and complex. More...
 
class  vector< complex >
 A class for constructing and defining operations on complex vectors. More...
 
class  vector< double >
 A class for constructing and defining operations on real vectors. More...
 

Functions

vector< double > operator* (const double &a, vector< double > v)
 
complex operator* (const double &x1, const complex &z2)
 
vector< complexoperator* (const complex &z, vector< double > v)
 
vector< complexoperator* (const complex &z, vector< complex > v)
 
vector< complexoperator* (const double &a, vector< complex > v)
 
matrix< double > operator* (const double &a, matrix< double > m)
 
vector< double > operator* (const vector< double > &v, matrix< double > m)
 
vector< complexoperator* (const vector< complex > &v, matrix< double > m)
 
matrix< complexoperator* (const complex &z, matrix< double > m)
 
matrix< complexoperator* (const complex &z, const matrix< complex > m)
 
vector< complexoperator* (const vector< complex > &v, const matrix< complex > m)
 
vector< complexoperator* (const vector< double > &v, const matrix< complex > m)
 
matrix< complexoperator* (const double &a, const matrix< complex > m)
 
vector< double > operator+ (const double &a, vector< double > v)
 
complex operator+ (const double &x1, const complex &z2)
 
vector< complexoperator+ (const complex &z, vector< double > v)
 
vector< complexoperator+ (const complex &z, vector< complex > v)
 
vector< complexoperator+ (const double &a, vector< complex > v)
 
matrix< double > operator+ (const double &a, matrix< double > m)
 
matrix< complexoperator+ (const complex &z, matrix< double > m)
 
matrix< complexoperator+ (const matrix< double > m1, const matrix< complex > m2)
 
matrix< complexoperator+ (const complex &z, const matrix< complex > m)
 
matrix< complexoperator+ (const double &a, const matrix< complex > m)
 
vector< double > operator- (const double &a, vector< double > v)
 
complex operator- (const double &x1, const complex &z2)
 
vector< complexoperator- (const complex &z, vector< double > v)
 
vector< complexoperator- (const complex &z, vector< complex > v)
 
vector< complexoperator- (const double &a, vector< complex > v)
 
matrix< double > operator- (const double &a, matrix< double > m)
 
matrix< complexoperator- (const complex &z, matrix< double > m)
 
matrix< complexoperator- (const matrix< double > m1, const matrix< complex > m2)
 
matrix< complexoperator- (const complex &z, const matrix< complex > m)
 
matrix< complexoperator- (const double &a, const matrix< complex > m)
 
complex operator/ (const double &x1, const complex &z2)
 
std::ostream & operator<< (std::ostream &output, const complex &z)
 
std::ostream & operator<< (std::ostream &output, const vector< double > &v)
 
std::ostream & operator<< (std::ostream &output, const vector< complex > &v)
 
std::ostream & operator<< (std::ostream &output, const matrix< double > &m)
 
std::ostream & operator<< (std::ostream &output, const matrix< complex > &m)
 
Exponential and logarithms of complex numbers
complex exp (const complex &z)
 
complex log (const complex &z)
 
complex log10 (const complex &z)
 
complex log (const complex &z, const complex &b)
 
complex dilog (const complex &z)
 
Powers of complex numbers
complex sqrt (const complex &z)
 
complex pow (const complex &z1, const complex &z2)
 
complex pow (const complex &z, const double x)
 
trigonometric functions on complex numbers
complex sin (const complex &z)
 
complex cos (const complex &z)
 
complex tan (const complex &z)
 
complex sec (const complex &z)
 
complex csc (const complex &z)
 
complex cot (const complex &z)
 
complex arcsin (const complex &z)
 
complex arccos (const complex &z)
 
complex arctan (const complex &z)
 
complex arcsec (const complex &z)
 
complex arccsc (const complex &z)
 
complex arccot (const complex &z)
 
Hyperbolic functions on complex numbers
complex sinh (const complex &z)
 
complex cosh (const complex &z)
 
complex tanh (const complex &z)
 
complex sech (const complex &z)
 
complex csch (const complex &z)
 
complex coth (const complex &z)
 
complex arcsinh (const complex &z)
 
complex arccosh (const complex &z)
 
complex arctanh (const complex &z)
 
complex arcsech (const complex &z)
 
complex arccsch (const complex &z)
 
complex arccoth (const complex &z)
 

Detailed Description

Complex number, vector and matrix manipulation using GSL.

Function Documentation

complex gslpp::arccos ( const complex z)

Inverse cosine

Parameters
[in]zComplex number
Returns
\( \arccos z \)

Definition at line 483 of file gslpp_complex.cpp.

484  {
485  return complex(gsl_complex_arccos(z.as_gsl_type()));
486  }
complex gslpp::arccosh ( const complex z)

Inverse hyperbolic cosine

Parameters
[in]zComplex number
Returns
\( \mathrm{acosh} z \)

Definition at line 596 of file gslpp_complex.cpp.

597  {
598  return complex(gsl_complex_arccosh(z.as_gsl_type()));
599  }
complex gslpp::arccot ( const complex z)

Inverse cotangent

Parameters
[in]zComplex number
Returns
\( \mathrm{acot} z \)

Definition at line 519 of file gslpp_complex.cpp.

520  {
521  return complex(gsl_complex_arccot(z.as_gsl_type()));
522  }
complex gslpp::arccoth ( const complex z)

Inverse hyperbolic cotangent

Parameters
[in]zComplex number
Returns
\( \mathrm{acoth}(z) \)

Definition at line 632 of file gslpp_complex.cpp.

633  {
634  return complex(gsl_complex_arccoth(z.as_gsl_type()));
635  }
complex gslpp::arccsc ( const complex z)

Inverse cosecant

Parameters
[in]zComplex number
Returns
\( \mathrm{acsc} z \)

Definition at line 510 of file gslpp_complex.cpp.

511  {
512  return complex(gsl_complex_arccsc(z.as_gsl_type()));
513  }
complex gslpp::arccsch ( const complex z)

Inverse hyperbolic cosecant

Parameters
[in]zComplex number
Returns
\( \mathrm{acsch} z \)

Definition at line 623 of file gslpp_complex.cpp.

624  {
625  return complex(gsl_complex_arccsch(z.as_gsl_type()));
626  }
complex gslpp::arcsec ( const complex z)

Inverse secant

Parameters
[in]zComplex number
Returns
\( \mathrm{asec} z \)

Definition at line 501 of file gslpp_complex.cpp.

502  {
503  return complex(gsl_complex_arcsec(z.as_gsl_type()));
504  }
complex gslpp::arcsech ( const complex z)

Inverse hyperbolic secant

Parameters
[in]zComplex number
Returns
\( \mathrm{asech} z \)

Definition at line 614 of file gslpp_complex.cpp.

615  {
616  return complex(gsl_complex_arcsech(z.as_gsl_type()));
617  }
complex gslpp::arcsin ( const complex z)

Inverse sine

Parameters
[in]zComplex number
Returns
\( \arcsin z \)

Definition at line 474 of file gslpp_complex.cpp.

475  {
476  return complex(gsl_complex_arcsin(z.as_gsl_type()));
477  }
complex gslpp::arcsinh ( const complex z)

Inverse hyperbolic sine

Parameters
[in]zComplex number
Returns
\( \mathrm{asinh} z \)

Definition at line 587 of file gslpp_complex.cpp.

588  {
589  return complex(gsl_complex_arcsinh(z.as_gsl_type()));
590  }
complex gslpp::arctan ( const complex z)

Inverse tangent

Parameters
[in]zComplex number
Returns
\( \arctan z \)

Definition at line 492 of file gslpp_complex.cpp.

493  {
494  return complex(gsl_complex_arctan(z.as_gsl_type()));
495  }
complex gslpp::arctanh ( const complex z)

Inverse hyperbolic tangent

Parameters
[in]zComplex number
Returns
\( \mathrm{atanh} z \)

Definition at line 605 of file gslpp_complex.cpp.

606  {
607  return complex(gsl_complex_arctanh(z.as_gsl_type()));
608  }
complex gslpp::cos ( const complex z)

Cosine

Parameters
[in]zComplex number
Returns
\( \cos z \)

Definition at line 429 of file gslpp_complex.cpp.

430  {
431  return complex(gsl_complex_cos(z.as_gsl_type()));
432  }
complex gslpp::cosh ( const complex z)

Hyperbolic cosine

Parameters
[in]zComplex number
Returns
\( \cosh z \)

Definition at line 542 of file gslpp_complex.cpp.

543  {
544  return complex(gsl_complex_cosh(z.as_gsl_type()));
545  }
complex gslpp::cot ( const complex z)

Cotangent

Parameters
[in]zComplex number
Returns
\( \cot z \)

Definition at line 465 of file gslpp_complex.cpp.

466  {
467  return complex(gsl_complex_cot(z.as_gsl_type()));
468  }
complex gslpp::coth ( const complex z)

Hyperbolic cotangent

Parameters
[in]zComplex number
Returns
\( \coth z \)

Definition at line 578 of file gslpp_complex.cpp.

579  {
580  return complex(gsl_complex_coth(z.as_gsl_type()));
581  }
complex gslpp::csc ( const complex z)

Cosecant

Parameters
[in]zComplex number
Returns
\( \csc z \)

Definition at line 456 of file gslpp_complex.cpp.

457  {
458  return complex(gsl_complex_csc(z.as_gsl_type()));
459  }
complex gslpp::csch ( const complex z)

Hyperbolic cosecant

Parameters
[in]zComplex number
Returns
\( \mathrm{csch} z \)

Definition at line 569 of file gslpp_complex.cpp.

570  {
571  return complex(gsl_complex_csch(z.as_gsl_type()));
572  }
complex gslpp::dilog ( const complex z)

DiLogarithm of a complex number

Parameters
[in]zComplex number
Returns
\( Li_2(z) \)

Definition at line 370 of file gslpp_complex.cpp.

371  {
372  gsl_sf_result re, im;
373  gsl_sf_complex_dilog_xy_e(z.real(), z.imag(), &re, &im);
374  return complex(re.val, im.val, false);
375  }
complex gslpp::exp ( const complex z)

exponentioal of a complex number

Parameters
[in]zComplex number
Returns
\( e^z \)

Definition at line 333 of file gslpp_complex.cpp.

334  {
335  return complex(gsl_complex_exp(z.as_gsl_type()));
336  }
complex gslpp::log ( const complex z)

Logarithm of a complex number (base e)

Parameters
[in]zComplex number
Returns
\( \log z \)

Definition at line 342 of file gslpp_complex.cpp.

343  {
344  return complex(gsl_complex_log(z.as_gsl_type()));
345  }
complex gslpp::log ( const complex z,
const complex b 
)

Logarithm of a complex number (base b)

Parameters
[in]zComplex number
[in]bComplex number
Returns
\( \log_b z \)

Definition at line 361 of file gslpp_complex.cpp.

363  {
364  return complex(gsl_complex_log_b(z.as_gsl_type(),b.as_gsl_type()));
365  }
complex gslpp::log10 ( const complex z)

Logarithm of a complex number (base 10)

Parameters
[in]zComplex number
Returns
\( \log_{10} z \)

Definition at line 351 of file gslpp_complex.cpp.

352  {
353  return complex(gsl_complex_log10(z.as_gsl_type()));
354  }
vector<double> gslpp::operator* ( const double &  a,
vector< double >  v 
)

Multiply a real number by real vector

Parameters
aReal number
vReal vector
Returns
\( a*v \)

Definition at line 300 of file gslpp_vector_double.cpp.

301  {
302  return v*a;
303  }
complex gslpp::operator* ( const double &  x1,
const complex z2 
)

Multiply a real and complex numbers

Parameters
[in]x1Real number
[in]z2Complex number
Returns
\( x_1 z_2 \)

Definition at line 314 of file gslpp_complex.cpp.

315  {
316  complex z1(x1, 0.);
317  return z1 * z2;
318  }
vector<complex> gslpp::operator* ( const complex z,
vector< double >  v 
)

Multiply a complex number by a real vector

Parameters
zComplex number
vReal vector
Returns
\( z*v \)

Definition at line 315 of file gslpp_vector_double.cpp.

316  {
317  return v*z;
318  }
vector<complex> gslpp::operator* ( const complex z,
vector< complex v 
)

Multiply a complex number by complex vector

Parameters
zComplex number
vComplex vector
Returns
\( z*v \)

Definition at line 394 of file gslpp_vector_complex.cpp.

395  {
396  return v*z;
397  }
vector<complex> gslpp::operator* ( const double &  a,
vector< complex v 
)

Multiply a real number by a complex vector

Parameters
aReal number
vComplex vector
Returns
\( z*v \)

Definition at line 409 of file gslpp_vector_complex.cpp.

410  {
411  return v*a;
412  }
matrix<double> gslpp::operator* ( const double &  a,
matrix< double >  m 
)

Multiply a real number by real matrix

Parameters
aReal number
mReal matrix
Returns
\( a*m \)

Definition at line 485 of file gslpp_matrix_double.cpp.

486  {
487  return m*a;
488  }
vector<double> gslpp::operator* ( const vector< double > &  v,
matrix< double >  m 
)

Multiply a real vector by a real matrix

Parameters
vReal vector
mReal matrix
Returns
\( v*m \)

Definition at line 490 of file gslpp_matrix_double.cpp.

491  {
492  return m.transpose() * v;
493  }
vector<complex> gslpp::operator* ( const vector< complex > &  v,
matrix< double >  m 
)

Multiply a complex vector by a real matrix

Parameters
vComplex vector
mReal matrix
Returns
\( v*m \)

Definition at line 495 of file gslpp_matrix_double.cpp.

496  {
497  return m.transpose() * v;
498  }
matrix<complex> gslpp::operator* ( const complex z,
matrix< double >  m 
)

Multiply a complex number by a real matrix

Parameters
zComplex number
mReal matrix
Returns
\( a*m \)

Definition at line 510 of file gslpp_matrix_double.cpp.

511  {
512  return m*z;
513  }
matrix<complex> gslpp::operator* ( const complex z,
const matrix< complex m 
)

Multiply a complex number by complex matrix

Parameters
zComplex number
mComplex matrix
Returns
\( z*m \)

Definition at line 656 of file gslpp_matrix_complex.cpp.

657  {
658  return m * z;
659  }
vector<complex> gslpp::operator* ( const vector< complex > &  v,
const matrix< complex m 
)

Multiply a complex vector by a complex matrix

Parameters
vComplex vector
mComplex matrix
Returns
\( v*m \)

Definition at line 661 of file gslpp_matrix_complex.cpp.

662  {
663  return m.transpose() * v;
664  }
vector<complex> gslpp::operator* ( const vector< double > &  v,
const matrix< complex m 
)

Multiply a real vector by a complex matrix

Parameters
vReal vector
mComplex matrix
Returns
\( v*m \)

Definition at line 666 of file gslpp_matrix_complex.cpp.

667  {
668  return m.transpose() * v;
669  }
matrix<complex> gslpp::operator* ( const double &  a,
const matrix< complex m 
)

Multiply a real number by a complex matrix

Parameters
aReal number
mComplex matrix
Returns
\( z*m \)

Definition at line 681 of file gslpp_matrix_complex.cpp.

682  {
683  return m * a;
684  }
vector<double> gslpp::operator+ ( const double &  a,
vector< double >  v 
)

Add a real number to a real vector

Parameters
aReal number
vReal vector
Returns
\( a + v \)

Definition at line 290 of file gslpp_vector_double.cpp.

291  {
292  return v+a;
293  }
complex gslpp::operator+ ( const double &  x1,
const complex z2 
)

Add a real and complex numbers

Parameters
[in]x1Real number
[in]z2Complex number
Returns
\( x_1 + z_2 \)

Definition at line 302 of file gslpp_complex.cpp.

303  {
304  complex z1(x1, 0.);
305  return z1 + z2;
306  }
vector<complex> gslpp::operator+ ( const complex z,
vector< double >  v 
)

Add a complex number to a real vector

Parameters
zComplex number
vReal vector
Returns
\( z + v \)

Definition at line 305 of file gslpp_vector_double.cpp.

306  {
307  return v+z;
308  }
vector<complex> gslpp::operator+ ( const complex z,
vector< complex v 
)

Add a complex number to a complex vector

Parameters
zComplex number
vComplex vector
Returns
\( z + v \)

Definition at line 384 of file gslpp_vector_complex.cpp.

385  {
386  return v + z;
387  }
vector<complex> gslpp::operator+ ( const double &  a,
vector< complex v 
)

Add a real number to a complex vector

Parameters
aReal number
vComplex vector
Returns
\( a + v \)

Definition at line 399 of file gslpp_vector_complex.cpp.

400  {
401  return v + a;
402  }
matrix<double> gslpp::operator+ ( const double &  a,
matrix< double >  m 
)

Add a real number to a real vector

Parameters
aReal number
mReal vector
Returns
\( a + m \)

Definition at line 475 of file gslpp_matrix_double.cpp.

476  {
477  return m+a;
478  }
matrix<complex> gslpp::operator+ ( const complex z,
matrix< double >  m 
)

Add a complex number to a real matrix

Parameters
zComplex number
mReal matrix
Returns
\( z + m \)

Definition at line 500 of file gslpp_matrix_double.cpp.

501  {
502  return m+z;
503  }
matrix<complex> gslpp::operator+ ( const matrix< double >  m1,
const matrix< complex m2 
)

Add a double matrix to a complex matrix

Parameters
m1Double matrix
m2Complex matrix
Returns
\( m2 + m1 \)

Definition at line 638 of file gslpp_matrix_complex.cpp.

638  {
639  return m2 + m1;
640  }
matrix<complex> gslpp::operator+ ( const complex z,
const matrix< complex m 
)

Add a complex number to a complex matrix

Parameters
zComplex number
mComplex matrix
Returns
\( z + m \)

Definition at line 646 of file gslpp_matrix_complex.cpp.

647  {
648  return m + z;
649  }
matrix<complex> gslpp::operator+ ( const double &  a,
const matrix< complex m 
)

Add a real number to a complex matrix

Parameters
aReal number
mComplex matrix
Returns
\( a + m \)

Definition at line 671 of file gslpp_matrix_complex.cpp.

672  {
673  return m + a;
674  }
vector<double> gslpp::operator- ( const double &  a,
vector< double >  v 
)

Subtract a real number from a real vector

Parameters
aReal number
vReal vector
Returns
\( a - v \)

Definition at line 295 of file gslpp_vector_double.cpp.

296  {
297  return -v+a;
298  }
complex gslpp::operator- ( const double &  x1,
const complex z2 
)

Subtract a real and complex numbers

Parameters
[in]x1Real number
[in]z2Complex number
Returns
\( x_1 - z_2 \)

Definition at line 308 of file gslpp_complex.cpp.

309  {
310  complex z1(x1, 0.);
311  return z1 - z2;
312  }
vector<complex> gslpp::operator- ( const complex z,
vector< double >  v 
)

Subtract a complex number from a real vector

Parameters
zComplex number
vReal vector
Returns
\( z - v \)

Definition at line 310 of file gslpp_vector_double.cpp.

311  {
312  return -v+z;
313  }
vector<complex> gslpp::operator- ( const complex z,
vector< complex v 
)

Subtract a complex number from a complex vector

Parameters
zComplex number
vComplex vector
Returns
\( z - v \)

Definition at line 389 of file gslpp_vector_complex.cpp.

390  {
391  return -v + z;
392  }
vector<complex> gslpp::operator- ( const double &  a,
vector< complex v 
)

Subtract a complex vector from a real number

Parameters
aReal number
vComplex vector
Returns
\( a - v \)

Definition at line 404 of file gslpp_vector_complex.cpp.

405  {
406  return -v + a;
407  }
matrix<double> gslpp::operator- ( const double &  a,
matrix< double >  m 
)

Subtract a real number from a real matrix

Parameters
aReal number
mReal matrix
Returns
\( a - m \)

Definition at line 480 of file gslpp_matrix_double.cpp.

481  {
482  return -m+a;
483  }
matrix<complex> gslpp::operator- ( const complex z,
matrix< double >  m 
)

Subtract a complex number from a real matrix

Parameters
zComplex number
mReal matrix
Returns
\( z - m \)

Definition at line 505 of file gslpp_matrix_double.cpp.

506  {
507  return -m+z;
508  }
matrix<complex> gslpp::operator- ( const matrix< double >  m1,
const matrix< complex m2 
)

Subtract a double matrix to a complex matrix

Parameters
m1Double matrix
m2Complex matrix
Returns
\( -m2 + m1 \)

Definition at line 642 of file gslpp_matrix_complex.cpp.

642  {
643  return -m2 + m1;
644  }
matrix<complex> gslpp::operator- ( const complex z,
const matrix< complex m 
)

Subtract a complex number from a complex matrix

Parameters
zComplex number
mComplex matrix
Returns
\( z - m \)

Definition at line 651 of file gslpp_matrix_complex.cpp.

652  {
653  return -m + z;
654  }
matrix<complex> gslpp::operator- ( const double &  a,
const matrix< complex m 
)

Subtract a complex matrix from a real number

Parameters
aReal number
mComplex matrix
Returns
\( a - m \)

Definition at line 676 of file gslpp_matrix_complex.cpp.

677  {
678  return -m + a;
679  }
complex gslpp::operator/ ( const double &  x1,
const complex z2 
)

Divide a real and complex numbers

Parameters
[in]x1Real number
[in]z2Complex number
Returns
\( x_1 / z_2 \)

Definition at line 320 of file gslpp_complex.cpp.

321  {
322  complex z1(x1, 0);
323  return z1 / z2;
324  }
std::ostream& gslpp::operator<< ( std::ostream &  output,
const complex z 
)

Friend functions

Parameters
[in]outputoutput stream
[in]zComplex number
Returns
formatted output for complex

Definition at line 143 of file gslpp_complex.cpp.

144  {
145  double absim = ::fabs(z.imag());
146  output << "(" << z.real() << (z.imag() < 0.? "-" : "+");
147  if (absim != 1.)
148  output << fabs(z.imag()) << "*";
149  output << "i)";
150  return output;
151  }
std::ostream& gslpp::operator<< ( std::ostream &  output,
const vector< double > &  v 
)

friend functions

Definition at line 280 of file gslpp_vector_double.cpp.

281  {
282  size_t i;
283  output << "(";
284  for (i=0; i<v.size()-1; i++)
285  output << v(i) << ",";
286  output << v(i) << ")";
287  return output;
288  }
std::ostream& gslpp::operator<< ( std::ostream &  output,
const vector< complex > &  v 
)

friend functions

Definition at line 374 of file gslpp_vector_complex.cpp.

375  {
376  size_t i;
377  output << "(";
378  for (i = 0; i < v.size() - 1; i++)
379  output << v(i) << ",";
380  output << v(i) << ")";
381  return output;
382  }
std::ostream& gslpp::operator<< ( std::ostream &  output,
const matrix< double > &  m 
)

friend functions

Definition at line 461 of file gslpp_matrix_double.cpp.

462  {
463  size_t i,j;
464  for (i=0; i<m.size_i(); i++)
465  {
466  output << std::endl;
467  output << "\t(";
468  for (j=0; j<m.size_j()-1; j++)
469  output << m(i,j) << ",";
470  output << m(i,j) << ")";
471  }
472  return output;
473  }
std::ostream& gslpp::operator<< ( std::ostream &  output,
const matrix< complex > &  m 
)

friend functions

Definition at line 624 of file gslpp_matrix_complex.cpp.

625  {
626  size_t i,j;
627  for (i=0; i<m.size_i(); i++)
628  {
629  output << std::endl;
630  output << "\t(";
631  for (j=0; j<m.size_j()-1; j++)
632  output << m(i,j) << ",";
633  output << m(i,j) << ")";
634  }
635  return output;
636  }
complex gslpp::pow ( const complex z1,
const complex z2 
)

Complex number to the z2 complex order

Parameters
[in]z1Complex number
[in]z2Complex number
Returns
\( z_1^{z_2} \)

Definition at line 395 of file gslpp_complex.cpp.

397  {
398  return complex(gsl_complex_pow(z1.as_gsl_type(),
399  z2.as_gsl_type()));
400  }
complex gslpp::pow ( const complex z,
const double  x 
)

Complex number to the x real order

Parameters
[in]zComplex number
[in]xReal number
Returns
\( z^x \)

Definition at line 407 of file gslpp_complex.cpp.

408  {
409  return complex(gsl_complex_pow_real(z.as_gsl_type(), x));
410  }
complex gslpp::sec ( const complex z)

Secant

Parameters
[in]zComplex number
Returns
\( \sec z \)

Definition at line 447 of file gslpp_complex.cpp.

448  {
449  return complex(gsl_complex_sec(z.as_gsl_type()));
450  }
complex gslpp::sech ( const complex z)

Hyperbolic secant

Parameters
[in]zComplex number
Returns
\( \mathrm{sech} z \)

Definition at line 560 of file gslpp_complex.cpp.

561  {
562  return complex(gsl_complex_sech(z.as_gsl_type()));
563  }
complex gslpp::sin ( const complex z)

Sine

Parameters
[in]zComplex number
Returns
\( \sin z \)

Definition at line 420 of file gslpp_complex.cpp.

421  {
422  return complex(gsl_complex_sin(z.as_gsl_type()));
423  }
complex gslpp::sinh ( const complex z)

Hyperbolic sine

Parameters
[in]zComplex number
Returns
\( \sinh z \)

Definition at line 533 of file gslpp_complex.cpp.

534  {
535  return complex(gsl_complex_sinh(z.as_gsl_type()));
536  }
complex gslpp::sqrt ( const complex z)

Square root of a complex number

Parameters
[in]zComplex number
Returns
\( \sqrt z \)

Definition at line 385 of file gslpp_complex.cpp.

386  {
387  return complex(gsl_complex_sqrt(z.as_gsl_type()));
388  }
complex gslpp::tan ( const complex z)

Tangent

Parameters
[in]zComplex number
Returns
\( \tan z \)

Definition at line 438 of file gslpp_complex.cpp.

439  {
440  return complex(gsl_complex_tan(z.as_gsl_type()));
441  }
complex gslpp::tanh ( const complex z)

Hyperbolic tangent

Parameters
[in]zComplex number
Returns
\( \tanh z \)

Definition at line 551 of file gslpp_complex.cpp.

552  {
553  return complex(gsl_complex_tanh(z.as_gsl_type()));
554  }