|
| static CMR_ERROR | computePivots (CMR *cmr, CMR_CHRMAT *matrix, size_t numPivots, size_t *pivotRows, size_t *pivotColumns, int characteristic, CMR_SUBMAT **pviolator, CMR_CHRMAT **presult) |
| | Carries out numPivots pivots on matrix and stores the result in *presult.
|
| |
| CMR_ERROR | CMRchrmatBinaryPivot (CMR *cmr, CMR_CHRMAT *matrix, size_t pivotRow, size_t pivotColumn, CMR_CHRMAT **presult) |
| | Apply a pivot to matrix and returns the resulting matrix in *presult.
|
| |
| CMR_ERROR | CMRchrmatTernaryPivot (CMR *cmr, CMR_CHRMAT *matrix, size_t pivotRow, size_t pivotColumn, CMR_CHRMAT **presult) |
| | Applies a pivot to matrix and returns the resulting matrix in *presult.
|
| |
| CMR_ERROR | CMRchrmatRegularPivot (CMR *cmr, CMR_CHRMAT *matrix, size_t pivotRow, size_t pivotColumn, CMR_SUBMAT **pviolator, CMR_CHRMAT **presult) |
| | Applies a pivot to matrix and returns the resulting matrix in *presult.
|
| |
| CMR_ERROR | CMRchrmatBinaryPivots (CMR *cmr, CMR_CHRMAT *matrix, size_t numPivots, size_t *pivotRows, size_t *pivotColumns, CMR_CHRMAT **presult) |
| | Applies a sequence of pivots to matrix and returns the resulting matrix in *presult.
|
| |
| CMR_ERROR | CMRchrmatTernaryPivots (CMR *cmr, CMR_CHRMAT *matrix, size_t numPivots, size_t *pivotRows, size_t *pivotColumns, CMR_CHRMAT **presult) |
| | Applies a sequence of pivots to matrix and returns the resulting matrix in *presult.
|
| |
| CMR_ERROR | CMRchrmatRegularPivots (CMR *cmr, CMR_CHRMAT *matrix, size_t numPivots, size_t *pivotRows, size_t *pivotColumns, CMR_SUBMAT **pviolator, CMR_CHRMAT **presult) |
| | Applies a sequence of pivots to matrix and returns the resulting matrix in *presult.
|
| |
| CMR_ERROR | CMRminorCreate (CMR *cmr, CMR_MINOR **pminor, size_t numPivots, CMR_SUBMAT *submatrix, CMR_MINOR_TYPE type) |
| | Creates a minor, allocating space for numPivots pivots and a remaining submatrix.
|
| |
| CMR_ERROR | CMRminorFree (CMR *cmr, CMR_MINOR **pminor) |
| | Frees the minor *pminor (if pminor is not NULL).
|
| |
| CMR_MINOR_TYPE | CMRminorType (CMR_MINOR *minor) |
| | Returns the type of minor.
|
| |
| size_t | CMRminorNumPivots (CMR_MINOR *minor) |
| | Returns the number of pivots needed to make a minor visible.
|
| |
| size_t * | CMRminorPivotRows (CMR_MINOR *minor) |
| | Returns the array with pivot rows to make a minor visible.
|
| |
| size_t * | CMRminorPivotColumns (CMR_MINOR *minor) |
| | Returns the array with pivot columns to make a minor visible.
|
| |
| CMR_SUBMAT * | CMRminorSubmatrix (CMR_MINOR *minor) |
| | Returns the submatrix to take (after applying pivots) to make a minor visible.
|
| |
| CMR_ERROR | CMRminorPrint (CMR *cmr, CMR_MINOR *minor, size_t numRows, size_t numColumns, FILE *stream) |
| | Writes the minor minor to stream by means of lists of row and column indices as well as pivot entries.
|
| |
| CMR_ERROR | CMRminorWriteToFile (CMR *cmr, CMR_MINOR *minor, size_t numRows, size_t numColumns, const char *fileName) |
| | Writes the minor minor to the file fileName by means of lists of row and column indices as well as pivot entries.
|
| |
Carries out numPivots pivots on matrix and stores the result in *presult.
Calculations are done modulo characteristic. If that value is negative then the pivots must be regular, i.e., over every field. If the result would differ over fields, *presult will be NULL and, if given, *pviolator will refer to the submatrix indexed by an affected entry as well as indices of all previous pivots.
- Parameters
-
| cmr | CMR environment . |
| matrix | Input matrix. |
| numPivots | Number of pivots. |
| pivotRows | Row indices of pivots. |
| pivotColumns | Column indices of pivots. |
| characteristic | Characteristic of field. |
| pviolator | Pointer for storing a violating (irregular) submatrix; may be NULL. |
| presult | Pointer for storing the resulting matrix. |