9 #ifndef _fei_LinearSystem_hpp_
10 #define _fei_LinearSystem_hpp_
52 const char*
const* paramStrings) = 0;
125 const double* prescribedValues);
147 const int* offsetsIntoField,
148 const double* prescribedValues);
159 const double *weights,
160 double rhsValue) = 0;
172 const double *weights,
174 double rhsValue) = 0;
180 bool globalAssemble=
true) = 0;
197 std::vector<double>& bcVals)
const = 0;
217 #endif // _fei_LinearSystem_hpp_
virtual void setMatrix(fei::SharedPtr< fei::Matrix > &matrix)
virtual int loadEssentialBCs(int numIDs, const int *IDs, int idType, int fieldID, int offsetIntoField, const double *prescribedValues)
virtual fei::SharedPtr< fei::Matrix > getMatrix()
virtual int loadLagrangeConstraint(int constraintID, const double *weights, double rhsValue)=0
virtual bool eqnIsEssentialBC(int globalEqnIndex) const =0
fei::SharedPtr< fei::Vector > soln_
virtual int parameters(int numParams, const char *const *paramStrings)=0
virtual void setSolutionVector(fei::SharedPtr< fei::Vector > &soln)
virtual int loadPenaltyConstraint(int constraintID, const double *weights, double penaltyValue, double rhsValue)=0
virtual fei::SharedPtr< fei::LinearSystem > createLinearSystem(fei::SharedPtr< fei::MatrixGraph > &matrixGraph)
virtual fei::SharedPtr< fei::Vector > getRHS()
virtual fei::SharedPtr< const fei::Vector > getSolutionVector() const
virtual void setRHS(fei::SharedPtr< fei::Vector > &rhs)
virtual void getEssentialBCs(std::vector< int > &bcEqns, std::vector< double > &bcVals) const =0
virtual int loadComplete(bool applyBCs=true, bool globalAssemble=true)=0
virtual fei::SharedPtr< const fei::Matrix > getMatrix() const
fei::SharedPtr< fei::Matrix > matrix_
virtual void getConstrainedEqns(std::vector< int > &crEqns) const =0
fei::DirichletBCManager * dbcManager_
virtual int putAttribute(const char *name, void *attribute)
fei::SharedPtr< fei::MatrixGraph > matrixGraph_
std::vector< char * > attributeNames_
virtual int getAttribute(const char *name, void *&attribute)
fei::SharedPtr< fei::Vector > rhs_
virtual int setBCValuesOnVector(fei::Vector *vector)=0
LinearSystem(fei::SharedPtr< fei::MatrixGraph > &matrixGraph)
virtual fei::SharedPtr< const fei::Vector > getRHS() const
virtual fei::SharedPtr< fei::Vector > getSolutionVector()
std::vector< void * > attributes_