cz.cuni.jagrlib
Class Complex

java.lang.Object
  extended by cz.cuni.jagrlib.Complex

public class Complex
extends java.lang.Object

Complex number represented as [double,double] tuple.

Since:
0.25
See Also:
Complex.java

Field Summary
protected  double im
          Imaginary part.
protected  double re
          Real part.
 
Constructor Summary
Complex()
           
Complex(Complex c)
           
Complex(double r)
           
Complex(double re, double im)
           
 
Method Summary
 double abs()
          Absolute value.
 void add(Complex c)
          In-place addition.
static Complex add(Complex a, Complex b)
          External addition.
 double arg()
          Argument (polar angle in counterclockwise direction).
 Complex conjugate()
          Returns conjugate complex number.
 void div(Complex c)
          In-place division.
static Complex div(Complex a, Complex b)
          External division.
 Complex exp()
          External exponentiation (returns e ^ this).
 double imag()
           
 Complex inverse()
          Returns inverse number.
 void invert()
          Inverts the complex number.
 boolean isEqual(Complex c)
           
 boolean isEqualEps(Complex c)
           
 boolean isInfinite()
           
 boolean isNaN()
           
 Complex log()
          External natural logarithm.
 void mul(Complex c)
          In-place multiplication.
static Complex mul(Complex a, Complex b)
          External multiplication.
 double norm()
          Norm (absolute value squared).
static Complex polar(double r, double theta)
           
 Complex power(Complex exponent)
          External power with complex exponent.
 Complex power(double exponent)
          External power with real exponent.
 Complex power(int exponent)
          External power with integer exponent.
 double real()
           
 Complex scale(double k)
          Returns scaled complex number.
 void set(Complex c)
           
 void set(double re, double im)
           
 void setConjugate()
          Conjugates the complex number.
 void setExp()
          In-place exponentiation (e ^ this).
 void setLog()
          In-place natural logarithm.
 void setPolar(double r, double theta)
           
 void setPower(Complex exponent)
          In-place power with complex exponent.
 void setPower(double exponent)
          In-place power with real exponent.
 void setPower(int exponent)
          In-place power with integer exponent.
 void setScale(double k)
          Scales the complex number.
 void setSqrt()
          In-place square root.
 Complex sqrt()
          External square root.
 void sub(Complex c)
          In-place subtraction.
static Complex sub(Complex a, Complex b)
          External subtraction.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

re

protected double re
Real part.


im

protected double im
Imaginary part.

Constructor Detail

Complex

public Complex()

Complex

public Complex(double r)

Complex

public Complex(double re,
               double im)

Complex

public Complex(Complex c)
Method Detail

set

public final void set(double re,
                      double im)

set

public final void set(Complex c)

setPolar

public final void setPolar(double r,
                           double theta)

polar

public static final Complex polar(double r,
                                  double theta)

isInfinite

public final boolean isInfinite()

isNaN

public final boolean isNaN()

isEqual

public final boolean isEqual(Complex c)

isEqualEps

public final boolean isEqualEps(Complex c)

real

public final double real()

imag

public final double imag()

arg

public final double arg()
Argument (polar angle in counterclockwise direction).


abs

public final double abs()
Absolute value.


norm

public final double norm()
Norm (absolute value squared).


add

public final void add(Complex c)
In-place addition.


add

public static final Complex add(Complex a,
                                Complex b)
External addition.


sub

public final void sub(Complex c)
In-place subtraction.


sub

public static final Complex sub(Complex a,
                                Complex b)
External subtraction.


setConjugate

public final void setConjugate()
Conjugates the complex number.


conjugate

public final Complex conjugate()
Returns conjugate complex number.


mul

public final void mul(Complex c)
In-place multiplication.


mul

public static final Complex mul(Complex a,
                                Complex b)
External multiplication.


invert

public final void invert()
Inverts the complex number.


inverse

public final Complex inverse()
Returns inverse number.


setScale

public final void setScale(double k)
Scales the complex number.


scale

public final Complex scale(double k)
Returns scaled complex number.


div

public final void div(Complex c)
In-place division.


div

public static final Complex div(Complex a,
                                Complex b)
External division.


setSqrt

public final void setSqrt()
In-place square root.


sqrt

public final Complex sqrt()
External square root.


setExp

public final void setExp()
In-place exponentiation (e ^ this).


exp

public final Complex exp()
External exponentiation (returns e ^ this).


setLog

public final void setLog()
In-place natural logarithm.


log

public final Complex log()
External natural logarithm.


setPower

public final void setPower(int exponent)
In-place power with integer exponent.


power

public final Complex power(int exponent)
External power with integer exponent.


setPower

public final void setPower(double exponent)
In-place power with real exponent.


power

public final Complex power(double exponent)
External power with real exponent.


setPower

public final void setPower(Complex exponent)
In-place power with complex exponent.


power

public final Complex power(Complex exponent)
External power with complex exponent.