copy()
Returns a copy of the Complex number, which resides at a different
location in memory.
my $z = Math::GSL::Complex->new([10,5]);
my $copy = $z->copy;
Math::GSL::Complex - Complex Numbers
use Math::GSL::Complex qw/:all/;
my $complex = Math::GSL::Complex->new([3,2]); # creates a complex number 3+2*i
my $real = $complex->real; # returns the real part
my $imag = $complex->imag; # returns the imaginary part
$complex->gsl_set_real(5); # changes the real part to 5
$complex->gsl_set_imag(4); # changes the imaginary part to 4
$complex->gsl_set_complex(7,6); # changes it to 7 + 6*i
($real, $imag) = $complex->parts; # get both at once
Here is a list of all the functions included in this module :
- "gsl_complex_arg($z)"
- Return the argument of the complex number $z
- "gsl_complex_abs($z)"
- Return |$z|, the magnitude of the complex number
$z
- "gsl_complex_rect($x,$y)"
- Create a complex number in cartesian form $x +
$y*i
- "gsl_complex_polar($r,$theta)"
- Create a complex number in polar form
$r*exp(i*$theta)
- "gsl_complex_abs2($z)"
- Return |$z|^2, the squared magnitude of the complex number
$z
- "gsl_complex_logabs($z)"
- Return log(|$z|), the natural logarithm of the magnitude of the complex
number $z
- "gsl_complex_add($c1, $c2)"
- Return a complex number which is the sum of the complex numbers
$c1 and $c2
- "gsl_complex_sub($c1, $c2)"
- Return a complex number which is the difference between
$c1 and $c2 ($c1 -
$c2)
- "gsl_complex_mul($c1, $c2)"
- Return a complex number which is the product of the complex numbers
$c1 and $c2
- "gsl_complex_div($c1, $c2)"
- Return a complex number which is the quotient of the complex numbers
$c1 and $c2 ($c1 /
$c2)
- "gsl_complex_add_real($c, $x)"
- Return the sum of the complex number $c and the
real number $x
- "gsl_complex_sub_real($c, $x)"
- Return the difference of the complex number $c and
the real number $x
- "gsl_complex_mul_real($c, $x)"
- Return the product of the complex number $c and
the real number $x
- "gsl_complex_div_real($c, $x)"
- Return the quotient of the complex number $c and
the real number $x
- "gsl_complex_add_imag($c, $y)"
- Return sum of the complex number $c and the
imaginary number i*$x
- "gsl_complex_sub_imag($c, $y)"
- Return the diffrence of the complex number $c and
the imaginary number i*$x
- "gsl_complex_mul_imag($c, $y)"
- Return the product of the complex number $c and
the imaginary number i*$x
- "gsl_complex_div_imag($c, $y)"
- Return the quotient of the complex number $c and
the imaginary number i*$x
- "gsl_complex_conjugate($c)"
- Return the conjugate of the of the complex number
$c (x - i*y)
- "gsl_complex_inverse($c)"
- Return the inverse, or reciprocal of the complex number
$c (1/$c)
- "gsl_complex_negative($c)"
- Return the negative of the complex number $c (-x
-i*y)
- "gsl_complex_sqrt($c)"
- Return the square root of the complex number
$c
- "gsl_complex_sqrt_real($x)"
- Return the complex square root of the real number
$x, where $x may be
negative
- "gsl_complex_pow($c1, $c2)"
- Return the complex number $c1 raised to the
complex power $c2
- "gsl_complex_pow_real($c, $x)"
- Return the complex number raised to the real power
$x
- "gsl_complex_exp($c)"
- Return the complex exponential of the complex number
$c
- "gsl_complex_log($c)"
- Return the complex natural logarithm (base e) of the complex number
$c
- "gsl_complex_log10($c)"
- Return the complex base-10 logarithm of the complex number
$c
- "gsl_complex_log_b($c, $b)"
- Return the complex base-$b of the complex number
$c
- "gsl_complex_sin($c)"
- Return the complex sine of the complex number
$c
- "gsl_complex_cos($c)"
- Return the complex cosine of the complex number
$c
- "gsl_complex_sec($c)"
- Return the complex secant of the complex number
$c
- "gsl_complex_csc($c)"
- Return the complex cosecant of the complex number
$c
- "gsl_complex_tan($c)"
- Return the complex tangent of the complex number
$c
- "gsl_complex_cot($c)"
- Return the complex cotangent of the complex number
$c
- "gsl_complex_arcsin($c)"
- Return the complex arcsine of the complex number
$c
- "gsl_complex_arcsin_real($x)"
- Return the complex arcsine of the real number
$x
- "gsl_complex_arccos($c)"
- Return the complex arccosine of the complex number
$c
- "gsl_complex_arccos_real($x)"
- Return the complex arccosine of the real number
$x
- "gsl_complex_arcsec($c)"
- Return the complex arcsecant of the complex number
$c
- "gsl_complex_arcsec_real($x)"
- Return the complex arcsecant of the real number
$x
- "gsl_complex_arccsc($c)"
- Return the complex arccosecant of the complex number
$c
- "gsl_complex_arccsc_real($x)"
- Return the complex arccosecant of the real number
$x
- "gsl_complex_arctan($c)"
- Return the complex arctangent of the complex number
$c
- "gsl_complex_arccot($c)"
- Return the complex arccotangent of the complex number
$c
- "gsl_complex_sinh($c)"
- Return the complex hyperbolic sine of the complex number
$c
- "gsl_complex_cosh($c)"
- Return the complex hyperbolic cosine of the complex number
$cy
- "gsl_complex_sech($c)"
- Return the complex hyperbolic secant of the complex number
$c
- "gsl_complex_csch($c)"
- Return the complex hyperbolic cosecant of the complex number
$c
- "gsl_complex_tanh($c)"
- Return the complex hyperbolic tangent of the complex number
$c
- "gsl_complex_coth($c)"
- Return the complex hyperbolic cotangent of the complex number
$c
- "gsl_complex_arcsinh($c)"
- Return the complex hyperbolic arcsine of the complex number
$c
- "gsl_complex_arccosh($c)"
- Return the complex hyperbolic arccosine of the complex number
$c
- "gsl_complex_arccosh_real($x)"
- Return the complex hyperbolic arccosine of the real number
$x
- "gsl_complex_arcsech($c)"
- Return the complex hyperbolic arcsecant of the complex number
$c
- "gsl_complex_arccsch($c)"
- Return the complex hyperbolic arccosecant of the complex number
$c
- "gsl_complex_arctanh($c)"
- Return the complex hyperbolic arctangent of the complex number
$c
- "gsl_complex_arctanh_real($x)"
- Return the complex hyperbolic arctangent of the real number
$x
- "gsl_complex_arccoth($c)"
- Return the complex hyperbolic arccotangent of the complex number
$c
- "gsl_real($z)"
- Return the real part of $z
- "gsl_imag($z)"
- Return the imaginary part of $z
- "gsl_parts($z)"
- Return a list of the real and imaginary parts of
$z
- "gsl_set_real($z, $x)"
- Sets the real part of $z to
$x
- "gsl_set_imag($z, $y)"
- Sets the imaginary part of $z to
$y
- "gsl_set_complex($z, $x, $h)"
- Sets the real part of $z to
$x and the imaginary part to
$y
This code defines $z as 6 + 4*i, takes the
complex conjugate of that number, then prints it out.
my $z = gsl_complex_rect(6,4);
my $y = gsl_complex_conjugate($z);
my ($real, $imag) = gsl_parts($y);
print "z = $real + $imag*i\n";
This code defines $z as 5 + 3*i,
multiplies it by 2 and then prints it out.
my $x = gsl_complex_rect(5,3);
my $z = gsl_complex_mul_real($x, 2);
my $real = gsl_real($z);
my $imag = gsl_imag($z);
print "Re(\$z) = $real\n";
Jonathan "Duke" Leto <jonathan@leto.net> and
Thierry Moisan <thierry.moisan@gmail.com>
Copyright (C) 2008-2021 Jonathan "Duke" Leto and Thierry
Moisan
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.