42 #ifndef ABSTRACT_LIN_ALG_PACK_BASIS_PERM_DIRECT_SPARSE_SYSTEM_H
43 #define ABSTRACT_LIN_ALG_PACK_BASIS_PERM_DIRECT_SPARSE_SYSTEM_H
49 namespace AbstractLinAlgPack {
210 #endif // ABSTRACT_LIN_ALG_PACK_BASIS_PERM_DIRECT_SPARSE_SYSTEM_H
Range1D equ_undecomp() const
const perm_fcty_ptr_t factory_P_inequ() const
Abstract interface for immutable, finite dimensional, coordinate vectors {abstract}.
void do_some_basis_stuff(const MatrixOp &Gc, const Range1D &var_dep, const Range1D &equ_decomp, const Teuchos::RCP< DirectSparseSolver::BasisMatrix > &C_bm, MatrixOpNonsingAggr *C_aggr, MatrixOp *D, MatrixOp *GcUP)
BasisSystemPermDirectSparse(const direct_solver_ptr_t &direct_solver=Teuchos::null)
Calls this->initialize()
void initialize(const direct_solver_ptr_t &direct_solver)
Initialize given a direct sparse solver object.
Aggregate matrix class for a matrix and its permuted view.
const perm_fcty_ptr_t factory_P_var() const
Range1D var_indep() const
void update_basis_and_auxiliary_matrices(const MatrixOp &Gc, const Teuchos::RCP< DirectSparseSolver::BasisMatrix > &C_bm, MatrixOpNonsingAggr *C_aggr, MatrixOp *D, MatrixOp *GcUP) const
const mat_fcty_ptr_t factory_D() const
const perm_fcty_ptr_t factory_P_equ() const
IVector init_equ_inv_perm_
IVector init_var_inv_perm_
. One-based subregion index range class.
RTOp_index_type size_type
Teuchos::RCP< DirectSparseSolver::BasisMatrix > get_basis_matrix(MatrixOpNonsingAggr &C_aggr) const
Base class for all matrices that support basic matrix operations.
direct_solver_ptr_t direct_solver_
const mat_nonsing_fcty_ptr_t factory_C() const
const mat_fcty_ptr_t factory_GcUP() const
Permutatble basis system subclass that uses a direct sparse solver.
Abstract interface to permutation matrices.
void set_A_mctse(size_type n, size_type m, const MatrixPermAggr &Gc_pa, MatrixConvertToSparseEncap *A_mctse) const
void set_basis(const Permutation &P_var, const Range1D &var_dep, const Permutation *P_equ, const Range1D *equ_decomp, const MatrixOp &Gc, MatrixOpNonsing *C, MatrixOp *D, MatrixOp *GcUP, EMatRelations mat_rel, std::ostream *out)
Interface for setting and selecting a basis from the Jacobian from a set of equations.
Abstract base class for all nonsingular polymorphic matrices that can be used to compute matrix-vecto...
Teuchos::RCP< DirectSparseSolver > direct_solver_ptr_t
void select_basis(const Vector *nu, MatrixOp *Gc, Permutation *P_var, Range1D *var_dep, Permutation *P_equ, Range1D *equ_decomp, MatrixOpNonsing *C, MatrixOp *D, MatrixOp *GcUP, EMatRelations mat_rel, std::ostream *out)
Sparse conversion subclass based on views of a MatrixExtractSparseElements object.
void update_basis(const MatrixOp &Gc, MatrixOpNonsing *C, MatrixOp *D, MatrixOp *GcUP, EMatRelations mat_rel, std::ostream *out) const
Aggregate matrix class pulling together a MatrixOp object and a MatrixNonsing object into a unified m...
Range1D equ_decomp() const