Interface VectorSpace<T,N extends Comparable<N>>
- Type Parameters:
T
- The vector typeN
- The scalar type
- All Superinterfaces:
Group
,Group.Additive<T>
,Operation
,Operation.Addition<T>
,ScalarOperation
,ScalarOperation.Multiplication<T,
N>
- All Known Subinterfaces:
DecompositionStore<N>
,Matrix2D<N,
,M> MatrixStore<N>
,NormedVectorSpace<T,
,N> PhysicalStore<N>
,Scalar<N>
,SelfDeclaringScalar<S>
,Tensor<N,
T>
- All Known Implementing Classes:
AboveBelowStore
,AbstractStore
,Amount
,AnyTensor
,ArrayBasedTensor
,BasicMatrix
,BigScalar
,ColumnsStore
,ColumnsSupplier
,ComplexNumber
,ComposingStore
,ConjugatedStore
,DiagonalStore
,ExactDecimal
,FactoryStore
,GenericStore
,IdentityStore
,ImageData
,ImageData.SingleChannel
,IterativeASS.SchurComplementSolver
,LeftRightStore
,LimitStore
,LogicalStore
,LowerHessenbergStore
,LowerSymmetricStore
,LowerTriangularStore
,MatrixC128
,MatrixH256
,MatrixQ128
,MatrixR032
,MatrixR064
,MatrixR128
,MatrixTensor
,Money
,OffsetStore
,Price
,PrimitiveScalar
,Quadruple
,Quantity
,Quaternion
,R032Store
,R064Store
,RationalNumber
,RawStore
,RepeatedColumnsStore
,RepeatedRowsStore
,RowsStore
,RowsSupplier
,SelectingStore
,ShadingStore
,SingleStore
,SparseStore
,SuperimposedStore
,TransjugatedStore
,TransposedStore
,UnaryOperatoStore
,UpperHessenbergStore
,UpperSymmetricStore
,UpperTriangularStore
,VectorTensor
,WrapperStore
,ZeroStore
A vector space is a set of objects called vectors, where a vector is a tuple of fields/scalars/numbers. Each vector space has two operations: vector addition and scalar multiplication. Eight axioms must be satisfied. The first four are the group axioms of the additive group of vectors. The remaining four relates to scalar multiplication, and are:
- Compatibility of scalar multiplication with field multiplication: a(bV) = (ab)V
- Identity element of scalar multiplication: 1V = V, where 1 denotes the multiplicative identity of the field.
- Distributivity of scalar multiplication with respect to vector addition: a(U + V) = aU + aV
- Distributivity of scalar multiplication with respect to field addition: (a + b)V = aV + bV
To enable the use of existing Java classes as scalars this interface declares the scalar type to be a subclass of Comparable (think Number) rather than an implementation of Field.
Any field is also a vector space in itself.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.ojalgo.algebra.Group
Group.Additive<T>, Group.Multiplicative<T>
Nested classes/interfaces inherited from interface org.ojalgo.algebra.Operation
Operation.Addition<T>, Operation.Division<T>, Operation.Multiplication<T>, Operation.Subtraction<T>
Nested classes/interfaces inherited from interface org.ojalgo.algebra.ScalarOperation
ScalarOperation.Addition<T,
N extends Comparable<N>>, ScalarOperation.Division<T, N extends Comparable<N>>, ScalarOperation.Multiplication<T, N extends Comparable<N>>, ScalarOperation.Subtraction<T, N extends Comparable<N>> -
Method Summary
Methods inherited from interface org.ojalgo.algebra.Group.Additive
negate
Methods inherited from interface org.ojalgo.algebra.Operation.Addition
add
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Multiplication
multiply, multiply, multiply
-
Method Details
-
conjugate
T conjugate()This method will (most likely) be moved to some other interface in the future! Just have to figure out where it fits...
The conjugate transpose of a matrix and/or the conjugate of a scalar/field like ComplexNumber or Quaternion.
The conjugate transpose of a real matrix is simply its transpose.
-