AbstractLinAlgPack: C++ Interfaces For Vectors, Matrices And Related Linear Algebra Objects  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | List of all members
AbstractLinAlgPack::BasisSystemPerm Class Referenceabstract

Interface for setting and selecting a basis from the Jacobian from a set of equations. More...

#include <AbstractLinAlgPack_BasisSystemPerm.hpp>

Inheritance diagram for AbstractLinAlgPack::BasisSystemPerm:
Inheritance graph
[legend]

Public Member Functions

 BasisSystemPerm (const mat_sym_fcty_ptr_t &factory_transDtD, const mat_sym_nonsing_fcty_ptr_t &factory_S)
 Required constructor (calls initialize()). More...
 
- Public Member Functions inherited from AbstractLinAlgPack::BasisSystem
 BasisSystem (const mat_sym_fcty_ptr_t &factory_transDtD, const mat_sym_nonsing_fcty_ptr_t &factory_S)
 Required constructor (calls initialize()). More...
 
virtual void initialize (const mat_sym_fcty_ptr_t &factory_transDtD, const mat_sym_nonsing_fcty_ptr_t &factory_S)
 Initialize the factory objects for the special matrices for D'*D and S = I + D'*D. More...
 
virtual ~BasisSystem ()
 
virtual const
mat_nonsing_fcty_ptr_t 
factory_C () const =0
 Return a matrix factory object for basis C = [ Gc(var_dep,equ_decomp)'; Gh(var_dep,inequ_decomp)' ]. More...
 
virtual const mat_fcty_ptr_t factory_D () const =0
 Return a matrix factory object for sensitivity matrix D = -inv(C)*N. More...
 
virtual const mat_fcty_ptr_t factory_GcUP () const
 Return a matrix factory object for auxiliary sensitivity matrix GcUP = Gc(var_indep,equ_undecomp)' + Gc(var_dep,equ_undecomp)'*D. More...
 
virtual const mat_sym_fcty_ptr_t factory_transDtD () const
 Returns a matrix factory for the result of J = D'*D More...
 
virtual const
mat_sym_nonsing_fcty_ptr_t 
factory_S () const
 Returns a matrix factory for the result of S = I + D'*D More...
 
virtual Range1D var_dep () const =0
 Range of dependent (basic) variables. More...
 
virtual Range1D var_indep () const =0
 Range of independnet (nonbasic) variables. More...
 
virtual Range1D equ_decomp () const
 Range of decomposed general equality constraints. More...
 
virtual Range1D equ_undecomp () const
 Range of undecomposed general equality constriants. More...
 
virtual void update_basis (const MatrixOp &Gc, MatrixOpNonsing *C, MatrixOp *D, MatrixOp *GcUP, EMatRelations mat_rel=MATRICES_INDEP_IMPS, std::ostream *out=NULL) const =0
 Update a basis and posssibly the direct sensitivity matrix for a set of Jacobian matrices. More...
 

Public types

typedef Teuchos::RCP< const
Teuchos::AbstractFactory
< Permutation > > 
perm_fcty_ptr_t
 

Permutation factories

virtual const perm_fcty_ptr_t factory_P_var () const =0
 
virtual const perm_fcty_ptr_t factory_P_equ () const =0
 

Basis selection / manipulation

virtual 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=MATRICES_INDEP_IMPS, std::ostream *out=NULL)=0
 Factor a basis selected by the client. More...
 
virtual 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=MATRICES_INDEP_IMPS, std::ostream *out=NULL)=0
 Select a basis. More...
 

Detailed Description

Interface for setting and selecting a basis from the Jacobian from a set of equations.

ToDo: Finish documentation!

Definition at line 54 of file AbstractLinAlgPack_BasisSystemPerm.hpp.

Member Typedef Documentation

Definition at line 62 of file AbstractLinAlgPack_BasisSystemPerm.hpp.

Constructor & Destructor Documentation

AbstractLinAlgPack::BasisSystemPerm::BasisSystemPerm ( const mat_sym_fcty_ptr_t factory_transDtD,
const mat_sym_nonsing_fcty_ptr_t factory_S 
)
inline

Required constructor (calls initialize()).

Definition at line 69 of file AbstractLinAlgPack_BasisSystemPerm.hpp.

Member Function Documentation

virtual const perm_fcty_ptr_t AbstractLinAlgPack::BasisSystemPerm::factory_P_var ( ) const
pure virtual
virtual const perm_fcty_ptr_t AbstractLinAlgPack::BasisSystemPerm::factory_P_equ ( ) const
pure virtual
virtual void AbstractLinAlgPack::BasisSystemPerm::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 = MATRICES_INDEP_IMPS,
std::ostream *  out = NULL 
)
pure virtual

Factor a basis selected by the client.

ToDo: Finish documentation!

Implemented in AbstractLinAlgPack::BasisSystemPermDirectSparse.

virtual void AbstractLinAlgPack::BasisSystemPerm::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 = MATRICES_INDEP_IMPS,
std::ostream *  out = NULL 
)
pure virtual

Select a basis.

ToDo: Finish documentation!

Implemented in AbstractLinAlgPack::BasisSystemPermDirectSparse.


The documentation for this class was generated from the following file: