Package edu.jas.structure
Interface ModulElem<M extends ModulElem<M,C>,C extends RingElem<C>>
-
- Type Parameters:
M- module typeC- scalar type
- All Superinterfaces:
AbelianGroupElem<M>,java.lang.Comparable<M>,Element<M>,java.io.Serializable
- All Known Implementing Classes:
GenVector
public interface ModulElem<M extends ModulElem<M,C>,C extends RingElem<C>> extends AbelianGroupElem<M>
Module element interface. Defines scalar operations.- Author:
- Heinz Kredel
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description MlinearCombination(C a, M b, C s)Linear combination.MlinearCombination(M b, C s)Linear combination.MscalarMultiply(C s)Scalar multiplication.MscalarProduct(java.util.List<M> b)Scalar product.CscalarProduct(M b)Scalar product.
-
-
-
Method Detail
-
scalarMultiply
M scalarMultiply(C s)
Scalar multiplication. Multiply this by a scalar.- Parameters:
s- scalar- Returns:
- this * s.
-
linearCombination
M linearCombination(C a, M b, C s)
Linear combination.- Parameters:
a- scalarb- module elements- scalar- Returns:
- a * b + this * s.
-
linearCombination
M linearCombination(M b, C s)
Linear combination.- Parameters:
b- module elements- scalar- Returns:
- b + this * s.
-
scalarProduct
C scalarProduct(M b)
Scalar product. Multiply two vectors to become a scalar.- Parameters:
b- module element- Returns:
- this * b, a scalar.
-
scalarProduct
M scalarProduct(java.util.List<M> b)
Scalar product. Multiply this vectors by list of vectors to become a vector.- Parameters:
b- list of module elements- Returns:
- this * b, a list of scalars, a module element.
-
-