Simplification of the API of package linear
In this wiki page, the proposals made on the mailing-list towards the simplification of the org.apache.commons.math3.linear package will be summarized.
Real{{`Vector vs. Real}}`Matrix
In this section, the current (version 3.0) interfaces for vectors and matrices are compared. Vectors and matrices are two mathematical objects which are very close in nature. Their implementations should therefore be as similar as possible.
Essential methods
The methods listed below are tagged as "essential", as they reflect the underlying mathematical structure of vector spaces.
RealVector |
RealMatrix |
Comments |
||
RealVector add(RealVector v) |
RealMatrix add(RealMatrix m) |
|
||
|
double getTrace() |
|
||
RealVector mapMultiply(double d) |
RealMatrix scalarMultiply(double d) |
|
||
RealVector mapMultiplyToSelf(double d) |
|
|
||
|
RealMatrix multiply(RealMatrix m) |
|
||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="aa8522ed-4928-4e1a-a3e8-1e889666536b"><ac:plain-text-body><![CDATA[ |
|
double[] operate(double[] v) |
|
]]></ac:plain-text-body></ac:structured-macro> |
|
RealVector operate(RealVector v) |
|
||
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="90904c18-9f08-4579-b5b5-cb1f10749b4d"><ac:plain-text-body><![CDATA[ |
|
double[] [RealVector] preMultiply(double[] v) |
|
]]></ac:plain-text-body></ac:structured-macro> |
|
RealMatrix preMultiply(RealMatrix m) |
|
||
|
RealVector preMultiply(RealVector v) |
|
||
|
RealMatrix transpose() |
|
|
Comparison of essential methods in interfaces RealVector and RealMatrix |
|