jsci.maths.vectors
Class Double3Vector
- java.lang.Object
-
- jsci.maths.vectors.MathVector
-
- jsci.maths.vectors.AbstractDoubleVector
-
- jsci.maths.vectors.Double3Vector
-
- All Implemented Interfaces:
- java.io.Serializable, BanachSpace.Member, Module.Member, VectorSpace.Member, AbelianGroup.Member, Member
public final class Double3Vector extends AbstractDoubleVector
An optimised implementation of a 3D double vector.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor and Description Double3Vector()Constructs an empty 3-vector.Double3Vector(double[] array)Constructs a 3-vector.Double3Vector(double x, double y, double z)Constructs a 3-vector.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description AbelianGroup.Memberadd(AbelianGroup.Member vec)Returns the addition of this vector and another.AbstractDoubleVectoradd(AbstractDoubleVector vec)Returns the addition of this vector and another.booleanequals(java.lang.Object obj, double tol)Compares two double vectors for equality.doublegetComponent(int n)Returns a component of this vector.doubleinfNorm()Returns the l
-norm.AbstractDoubleVectormapComponents(Mapping mapping)Applies a function on all the vector components.Double3Vectormultiply(Double3Vector vec)Returns the vector product of this vector and another (so(3) algebra).AbelianGroup.Membernegate()Returns the negative of this vector.doublenorm()Returns the l2-norm (magnitude).doublenorm(int n)Returns the ln-norm.AbstractDoubleVectorscalarDivide(double k)Returns the division of this vector by a scalar.VectorSpace.MemberscalarDivide(Field.Member x)Returns the division of this vector by a scalar.AbstractDoubleVectorscalarMultiply(double k)Returns the multiplication of this vector by a scalar.Module.MemberscalarMultiply(Ring.Member x)Returns the multiplication of this vector by a scalar.doublescalarProduct(AbstractDoubleVector vec)Returns the scalar product of this vector and another.voidsetComponent(int n, double value)Sets the value of a component of this vector.AbelianGroup.Membersubtract(AbelianGroup.Member vec)Returns the subtraction of this vector by another.AbstractDoubleVectorsubtract(AbstractDoubleVector vec)Returns the subtraction of this vector by another.AbstractComplexVectortoComplexVector()Converts this 3-vector to a complex 3-vector.AbstractIntegerVectortoIntegerVector()Converts this 3-vector to an integer 3-vector.java.lang.StringtoString()Returns a comma delimited string representing the value of this vector.-
Methods inherited from class jsci.maths.vectors.AbstractDoubleVector
equals, getSet, hashCode, mass, normalize
-
Methods inherited from class jsci.maths.vectors.MathVector
dimension
-
-
-
-
Constructor Detail
-
Double3Vector
public Double3Vector()
Constructs an empty 3-vector.
-
Double3Vector
public Double3Vector(double x, double y, double z)Constructs a 3-vector.- Parameters:
x- x coordinate.y- y coordinate.z- z coordinate.
-
Double3Vector
public Double3Vector(double[] array)
Constructs a 3-vector.
-
-
Method Detail
-
equals
public boolean equals(java.lang.Object obj, double tol)Compares two double vectors for equality.- Overrides:
equalsin classAbstractDoubleVector- Parameters:
obj- a double 3-vector
-
toString
public java.lang.String toString()
Returns a comma delimited string representing the value of this vector.- Overrides:
toStringin classAbstractDoubleVector
-
toIntegerVector
public AbstractIntegerVector toIntegerVector()
Converts this 3-vector to an integer 3-vector.- Returns:
- an integer 3-vector
-
toComplexVector
public AbstractComplexVector toComplexVector()
Converts this 3-vector to a complex 3-vector.- Returns:
- a complex 3-vector
-
getComponent
public double getComponent(int n)
Returns a component of this vector.- Specified by:
getComponentin classAbstractDoubleVector- Parameters:
n- index of the vector component- Throws:
VectorDimensionException- If attempting to access an invalid component.
-
setComponent
public void setComponent(int n, double value)Sets the value of a component of this vector. Should only be used to initialise this vector.- Specified by:
setComponentin classAbstractDoubleVector- Parameters:
n- index of the vector componentvalue- a number- Throws:
VectorDimensionException- If attempting to access an invalid component.
-
norm
public double norm(int n)
Returns the ln-norm.- Overrides:
normin classAbstractDoubleVector
-
norm
public double norm()
Returns the l2-norm (magnitude).- Specified by:
normin interfaceBanachSpace.Member- Overrides:
normin classAbstractDoubleVector
-
infNorm
public double infNorm()
Returns the l
-norm.- Overrides:
infNormin classAbstractDoubleVector
-
negate
public AbelianGroup.Member negate()
Returns the negative of this vector.
-
add
public AbelianGroup.Member add(AbelianGroup.Member vec)
Returns the addition of this vector and another.- Parameters:
vec- a group member
-
add
public AbstractDoubleVector add(AbstractDoubleVector vec)
Returns the addition of this vector and another.- Specified by:
addin classAbstractDoubleVector- Parameters:
vec- a double 3-vector
-
subtract
public AbelianGroup.Member subtract(AbelianGroup.Member vec)
Returns the subtraction of this vector by another.- Parameters:
vec- a group member
-
subtract
public AbstractDoubleVector subtract(AbstractDoubleVector vec)
Returns the subtraction of this vector by another.- Specified by:
subtractin classAbstractDoubleVector- Parameters:
vec- a double 3-vector
-
scalarMultiply
public Module.Member scalarMultiply(Ring.Member x)
Returns the multiplication of this vector by a scalar.- Parameters:
x- a ring member
-
scalarMultiply
public AbstractDoubleVector scalarMultiply(double k)
Returns the multiplication of this vector by a scalar.- Specified by:
scalarMultiplyin classAbstractDoubleVector- Parameters:
k- a double- Returns:
- a double 3-vector
-
scalarDivide
public VectorSpace.Member scalarDivide(Field.Member x)
Returns the division of this vector by a scalar.- Parameters:
x- a field member
-
scalarDivide
public AbstractDoubleVector scalarDivide(double k)
Returns the division of this vector by a scalar.- Specified by:
scalarDividein classAbstractDoubleVector- Parameters:
k- a double- Returns:
- a double 3-vector
- Throws:
java.lang.ArithmeticException- If divide by zero.
-
scalarProduct
public double scalarProduct(AbstractDoubleVector vec)
Returns the scalar product of this vector and another.- Specified by:
scalarProductin classAbstractDoubleVector- Parameters:
vec- a double 3-vector
-
multiply
public Double3Vector multiply(Double3Vector vec)
Returns the vector product of this vector and another (so(3) algebra).- Parameters:
vec- a double 3-vector
-
mapComponents
public AbstractDoubleVector mapComponents(Mapping mapping)
Applies a function on all the vector components.- Specified by:
mapComponentsin classAbstractDoubleVector- Parameters:
mapping- a user-defined function- Returns:
- a double 3-vector
-
-
DMelt 3.0 © DataMelt by jWork.ORG