Package org.geotools.metadata.math
Class Complex
- Object
-
- Complex
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Cloneable
public final class Complex extends Object implements Cloneable, Serializable
A simple class for the handling of complex numbers. This is not the purpose of this class to provides a full-fledged library for complex number handling. This class exists mostly for the limited needs of some transformation methods.For performance reasons, the methods in this class never create new objects. They always operate on an object specified in argument, and store the result in the object on which the method was invoked.
This class is final for performance reason.
- Since:
- 2.2
- Author:
- Justin Deoliveira, Martin Desruisseaux
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description Complex()
Creates a complex number initialized to (0,0).Complex(double real, double imag)
Creates a complex number initialized to the specified real and imaginary parts.Complex(Complex c)
Creates a complex number initialized to the same value than the specified one.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(Complex c1, Complex c2)
Adds to complex numbers.void
addMultiply(Complex c0, Complex c1, Complex c2)
Multplies two complex numbers, and add the result to a third one.Complex
clone()
Returns a copy of this complex number.void
copy(Complex c)
Set this complex number to the same value than the specified one.void
divide(Complex c1, Complex c2)
Divides one complex number by another.boolean
equals(Object c)
Compares this complex with the specified object for equality.boolean
equals(Complex c)
Returnstrue
if this complex number has the same value than the specified one.int
hashCode()
Returns a hash value for this complex number.void
multiply(Complex c, double s)
Multiplies a complex number by a scalar.void
multiply(Complex c1, Complex c2)
Multplies two complex numbers.void
power(Complex c, int power)
Computes the integer power of a complex number up to 6.String
toString()
Returns a string representation of this complex number.
-
-
-
Constructor Detail
-
Complex
public Complex()
Creates a complex number initialized to (0,0).
-
Complex
public Complex(Complex c)
Creates a complex number initialized to the same value than the specified one.
-
Complex
public Complex(double real, double imag)
Creates a complex number initialized to the specified real and imaginary parts.
-
-
Method Detail
-
copy
public void copy(Complex c)
Set this complex number to the same value than the specified one. This method computes the following:this = c
-
multiply
public void multiply(Complex c, double s)
Multiplies a complex number by a scalar. This method computes the following:this = c * s
-
multiply
public void multiply(Complex c1, Complex c2)
Multplies two complex numbers. This method computes the following:this = c1 * c2
-
divide
public void divide(Complex c1, Complex c2)
Divides one complex number by another. This method computes the following:this = c1 / c2
-
add
public void add(Complex c1, Complex c2)
Adds to complex numbers. This method computes the following:this = c1 + c2
-
addMultiply
public void addMultiply(Complex c0, Complex c1, Complex c2)
Multplies two complex numbers, and add the result to a third one. This method computes the following:this = c0 + (c1 * c2)
-
power
public void power(Complex c, int power)
Computes the integer power of a complex number up to 6. This method computes the following:this = c ^ power
-
clone
public Complex clone()
Returns a copy of this complex number.- Specified by:
clone
in interfaceCloneable
- Overrides:
clone
in classObject
- Returns:
- A copy of this object.
- See Also:
Object.clone()
-
equals
public boolean equals(Complex c)
Returnstrue
if this complex number has the same value than the specified one.
-
equals
public boolean equals(Object c)
Compares this complex with the specified object for equality.
-
hashCode
public int hashCode()
Returns a hash value for this complex number.
-
-