42 #ifndef DECOMPOSITION_SYSTEM_VAR_REDUCT_PERM_H
43 #define DECOMPOSITION_SYSTEM_VAR_REDUCT_PERM_H
47 #include "ConstrainedOptPack_DecompositionSystemVarReduct.hpp"
48 #include "AbstractLinAlgPack_VectorSpace.hpp"
50 namespace ConstrainedOptPack {
106 ,
const Permutation &P_var
108 ,
const Permutation *P_equ
147 #endif // DECOMPOSITION_SYSTEM_VAR_REDUCT_PERM_H
virtual const perm_fcty_ptr_t factory_P_var() const =0
virtual Range1D var_dep() const =0
EOutputLevel
Enumeration for the amount of output to create from update_decomp().
virtual void set_decomp(std::ostream *out, EOutputLevel olevel, ERunTests test_what, const Permutation &P_var, const Range1D &var_dep, const Permutation *P_equ, const Range1D *equ_decomp, const MatrixOp &Gc, MatrixOp *Z, MatrixOp *Y, MatrixOpNonsing *R, MatrixOp *Uz, MatrixOp *Uy, EMatRelations mat_rel=MATRICES_INDEP_IMPS)=0
Client selects the basis for Gc(:,con_decomp)'.
ERunTests
Enumeration for if to run internal tests or not.
DecompositionSystemVarReductPerm(EExplicitImplicit D_imp=MAT_IMP_AUTO, EExplicitImplicit Uz_imp=MAT_IMP_AUTO)
virtual Range1D equ_decomp() const
Returns the range of the decomposed equalities.
virtual const perm_fcty_ptr_t factory_P_equ() const =0
Specialization of DecompositionSystem for variable reduction decompositions.
Specialization interface of DecompositonSystem that allows basis permutations.
virtual void select_decomp(std::ostream *out, EOutputLevel olevel, ERunTests test_what, const Vector *nu, MatrixOp *Gc, Permutation *P_var, Range1D *var_dep, Permutation *P_equ, Range1D *equ_decomp, MatrixOp *Z, MatrixOp *Y, MatrixOpNonsing *R, MatrixOp *Uz, MatrixOp *Uy, EMatRelations mat_rel=MATRICES_INDEP_IMPS)=0
Client asks decompostion system object to select the basis for Gc(:,con_decomp)'. ...
Teuchos::RCP< const Teuchos::AbstractFactory< Permutation > > perm_fcty_ptr_t
virtual bool has_basis() const =0
Query to see if a current basis is already selected.