Scroll to navigation

Math::GSL::Complex(3pm) User Contributed Perl Documentation Math::GSL::Complex(3pm)

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;

NAME

Math::GSL::Complex - Complex Numbers

SYNOPSIS

    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

DESCRIPTION

Here is a list of all the functions included in this module :

Return the argument of the complex number $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)
Return |$z|^2, the squared magnitude of the complex number $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
Return the conjugate of the of the complex number $c (x - i*y)
Return the inverse, or reciprocal of the complex number $c (1/$c)
Return the negative of the complex number $c (-x -i*y)
Return the square root of the complex number $c
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
Return the complex exponential of the complex number $c
Return the complex natural logarithm (base e) of the complex number $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
Return the complex sine of the complex number $c
Return the complex cosine of the complex number $c
Return the complex secant of the complex number $c
Return the complex cosecant of the complex number $c
Return the complex tangent of the complex number $c
Return the complex cotangent of the complex number $c
Return the complex arcsine of the complex number $c
Return the complex arcsine of the real number $x
Return the complex arccosine of the complex number $c
Return the complex arccosine of the real number $x
Return the complex arcsecant of the complex number $c
Return the complex arcsecant of the real number $x
Return the complex arccosecant of the complex number $c
Return the complex arccosecant of the real number $x
Return the complex arctangent of the complex number $c
Return the complex arccotangent of the complex number $c
Return the complex hyperbolic sine of the complex number $c
Return the complex hyperbolic cosine of the complex number $cy
Return the complex hyperbolic secant of the complex number $c
Return the complex hyperbolic cosecant of the complex number $c
Return the complex hyperbolic tangent of the complex number $c
Return the complex hyperbolic cotangent of the complex number $c
Return the complex hyperbolic arcsine of the complex number $c
Return the complex hyperbolic arccosine of the complex number $c
Return the complex hyperbolic arccosine of the real number $x
Return the complex hyperbolic arcsecant of the complex number $c
Return the complex hyperbolic arccosecant of the complex number $c
Return the complex hyperbolic arctangent of the complex number $c
Return the complex hyperbolic arctangent of the real number $x
Return the complex hyperbolic arccotangent of the complex number $c
Return the real part of $z
Return the imaginary part of $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

EXAMPLES

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";

AUTHORS

Jonathan "Duke" Leto <jonathan@leto.net> and Thierry Moisan <thierry.moisan@gmail.com>

COPYRIGHT AND LICENSE

Copyright (C) 2008-2024 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.

2024-07-26 perl v5.38.2