Package org.ojalgo.optimisation.convex
Class IterativeASS.SchurComplementSolver
java.lang.Object
org.ojalgo.matrix.task.iterative.IterativeSolverTask
org.ojalgo.matrix.task.iterative.MutableSolver<ConjugateGradientSolver>
org.ojalgo.optimisation.convex.IterativeASS.SchurComplementSolver
- All Implemented Interfaces:
Group
,Group.Additive<MatrixStore<Double>>
,NormedVectorSpace<MatrixStore<Double>,
,Double> Operation
,Operation.Addition<MatrixStore<Double>>
,Operation.Multiplication<MatrixStore<Double>>
,Operation.Subtraction<MatrixStore<Double>>
,ScalarOperation
,ScalarOperation.Addition<MatrixStore<Double>,
,Double> ScalarOperation.Division<MatrixStore<Double>,
,Double> ScalarOperation.Multiplication<MatrixStore<Double>,
,Double> ScalarOperation.Subtraction<MatrixStore<Double>,
,Double> VectorSpace<MatrixStore<Double>,
,Double> Matrix2D<Double,
,MatrixStore<Double>> ElementsSupplier<Double>
,MatrixStore<Double>
,MatrixTask<Double>
,SolverTask<Double>
,Access1D<Double>
,Access1D.Aggregatable<Double>
,Access1D.Sliceable<Double>
,Access1D.Visitable<Double>
,Access2D<Double>
,Access2D.Aggregatable<Double>
,Access2D.Collectable<Double,
,TransformableRegion<Double>> Access2D.Sliceable<Double>
,Access2D.Visitable<Double>
,Operate2D<Double,
,ElementsSupplier<Double>> Structure1D
,Structure2D
,Structure2D.Logical<Access2D<Double>,
,MatrixStore<Double>> Structure2D.ReducibleTo1D<ElementsSupplier<Double>>
- Enclosing class:
IterativeASS
final class IterativeASS.SchurComplementSolver
extends MutableSolver<ConjugateGradientSolver>
implements MatrixStore<Double>
The equation system body is the (negated) Schur complement (of the Q-matrix in the full KKT-system).
-
Nested Class Summary
Nested classes/interfaces inherited from class org.ojalgo.matrix.task.iterative.IterativeSolverTask
IterativeSolverTask.Configurator, IterativeSolverTask.SparseDelegate
Nested classes/interfaces inherited from interface org.ojalgo.structure.Access2D
Access2D.Aggregatable<N extends Comparable<N>>, Access2D.Collectable<N extends Comparable<N>,
R extends Mutate2D>, Access2D.ColumnView<N extends Comparable<N>>, Access2D.ElementView<N extends Comparable<N>>, Access2D.RowView<N extends Comparable<N>>, Access2D.SelectionView<N extends Comparable<N>>, Access2D.Sliceable<N extends Comparable<N>>, Access2D.Visitable<N extends Comparable<N>> 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>> Nested classes/interfaces inherited from interface org.ojalgo.matrix.task.SolverTask
SolverTask.Factory<N extends Comparable<N>>
Nested classes/interfaces inherited from interface org.ojalgo.structure.Structure1D
Structure1D.BasicMapper<T>, Structure1D.IndexMapper<T>, Structure1D.IntIndex, Structure1D.Logical<S extends Structure1D,
B extends Structure1D.Logical<S, B>>, Structure1D.LongIndex, Structure1D.LoopCallback Nested classes/interfaces inherited from interface org.ojalgo.structure.Structure2D
Structure2D.IntRowColumn, Structure2D.Logical<S extends Structure2D,
B extends Structure2D.Logical<S, B>>, Structure2D.LongRowColumn, Structure2D.ReducibleTo1D<R extends Structure1D>, Structure2D.Reshapable, Structure2D.RowColumnKey<R, C>, Structure2D.RowColumnMapper<R, C> -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final int
private final IterativeASS.SparseArrayPool
private final int
private final Equation[]
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) void
double
doubleValue
(int row, int col) Extracts one element of this matrix as a double.get
(int row, int col) int
int
physical()
(package private) void
remove
(int i) Methods inherited from class org.ojalgo.matrix.task.iterative.MutableSolver
add, clear, getDelegate, getRHS, remove, resolve, resolve, setAccuracyContext, setDebugPrinter, setIterationsLimit, solve
Methods inherited from class org.ojalgo.matrix.task.iterative.IterativeSolverTask
configurator, debug, getAccuracyContext, getIterationsLimit, isDebugPrinterSet, preallocate, solve
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.ojalgo.structure.Access1D
asCollectable1D, asKeyed1D, axpy, dot, select, supplyTo, toRawCopy1D
Methods inherited from interface org.ojalgo.structure.Access1D.Visitable
visitAll, visitRange
Methods inherited from interface org.ojalgo.structure.Access2D
asCollectable2D, asKeyed2D, byteValue, byteValue, byteValue, byteValue, columns, doubleValue, doubleValue, doubleValue, elements, floatValue, floatValue, floatValue, floatValue, get, intValue, intValue, intValue, intValue, longValue, longValue, longValue, longValue, nonzeros, rows, shortValue, shortValue, shortValue, shortValue, toRawCopy2D
Methods inherited from interface org.ojalgo.structure.Access2D.Aggregatable
aggregateColumn, aggregateDiagonal, aggregateRow, reduceColumns, reduceRows
Methods inherited from interface org.ojalgo.structure.Access2D.Collectable
collect
Methods inherited from interface org.ojalgo.structure.Access2D.Sliceable
sliceColumn, sliceDiagonal, sliceRow
Methods inherited from interface org.ojalgo.structure.Access2D.Visitable
visitColumn, visitColumn, visitDiagonal, visitDiagonal, visitOne, visitRow, visitRow
Methods inherited from interface org.ojalgo.matrix.store.ElementsSupplier
onAny, onColumns, onColumns, onMatching, onMatching, onRows, onRows
Methods inherited from interface org.ojalgo.matrix.store.MatrixStore
above, above, above, add, add, add, aggregateAll, aggregateColumn, aggregateDiagonal, aggregateRange, aggregateRow, below, below, below, bidiagonal, column, column, columns, columns, conjugate, copy, diagonal, diagonally, divide, divide, equals, get, get, hermitian, hessenberg, indexOfLargest, isHermitian, isNormal, isSmall, isSmall, left, left, left, limits, logical, multiply, multiply, multiply, multiply, multiplyBoth, negate, norm, offsets, onAll, operate, power, premultiply, reduceColumns, reduceRows, repeat, right, right, right, row, row, rows, rows, select, select, signum, sliceColumn, sliceDiagonal, sliceRange, sliceRow, subtract, subtract, subtract, superimpose, superimpose, supplyTo, symmetric, toScalar, transpose, triangular, tridiagonal, visitOne
Methods inherited from interface org.ojalgo.structure.Operate2D
onAll, onAll, onAll, onAll, onAll, onCompatible, onCompatible
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Addition
add
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Division
divide
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Multiplication
multiply
Methods inherited from interface org.ojalgo.algebra.ScalarOperation.Subtraction
subtract
Methods inherited from interface org.ojalgo.matrix.task.SolverTask
preallocate, solve, toSolutionProvider
Methods inherited from interface org.ojalgo.structure.Structure2D
count, countColumns, countRows, firstInColumn, firstInRow, getMaxDim, getMinDim, isEmpty, isFat, isScalar, isSquare, isTall, isVector, limitOfColumn, limitOfRow, size
-
Field Details
-
myCountE
private final int myCountE -
myEquationBodyPool
-
myFullDim
private final int myFullDim -
myIterationRows
-
-
Constructor Details
-
SchurComplementSolver
SchurComplementSolver()
-
-
Method Details
-
doubleValue
public double doubleValue(int row, int col) Description copied from interface:Access2D
Extracts one element of this matrix as a double.- Specified by:
doubleValue
in interfaceAccess2D<Double>
- Specified by:
doubleValue
in interfaceMatrixStore<Double>
- Overrides:
doubleValue
in classMutableSolver<ConjugateGradientSolver>
- Parameters:
row
- A row index.col
- A column index.- Returns:
- One matrix element
-
get
- Specified by:
get
in interfaceMatrixStore<Double>
-
getColDim
public int getColDim()- Specified by:
getColDim
in interfaceStructure2D
- Returns:
- The number of columns
-
getRowDim
public int getRowDim()- Specified by:
getRowDim
in interfaceStructure2D
- Returns:
- The number of rows
-
physical
- Specified by:
physical
in interfaceMatrixStore<Double>
-
add
-
remove
void remove(int i)
-