Mark R. Diggory wrote:
How close does everyone think we are to a release?
Maybe its getting time for a Vote?
Most of the stoppers have been sorted out. Open issues
- a Complex class
- providing more flexibile framework for solving linear
equation systems.
I think of RealMatrix as Data holder only, and providing
a decomposer class with an associated factory, a decomposition
class holding the decomposition and providing the backward
pass of the solving algorithms.
Like
class RealMatrix {
// get a matrix specific decomposer factory
DecompositionFactory getDecompositionFactory();
}
class DecompositionFactory {
// get overall default factory
static newInstance();
// construct a new default decomposer
Decomposer newDecomposer();
// example for a specific decomposer (Householder or QR)
Decomposer newQRDecopmposer();
}
Decomposer {
Decomposition decompose(RealMatrix);
}
Decomposition {
// solve A*x=b
RealVector solve(RealVector b);
// solve matrix equation
RealMatrix solve(RealMatrix b);
RealMatrix invert();
}
This way it would be possible to
a) take advantage of special matrix forms, like symmetric
or tridiagonal matrices, thereby using simple and more
stable methods
b) use different solvers in case one solver proves to be
unsatisfactory (like QR or even SVD instead of the standard LR
decomposition, or post-iterations)
c) reuse the decomposition for solvong multiple systems with
differend right hand sides
The decomposition objects could provide for an error estimate, if
available for this decomposition.
Any comments regarding numerical integration methods? Minimizing
functions? Optimization (linear and non-linear programming)?
Regards
J.Pietschmann
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]