9 #ifndef _snl_fei_LinearSystem_General_hpp_
10 #define _snl_fei_LinearSystem_General_hpp_
22 class DirichletBCManager;
43 const double* prescribedValues);
51 const int* offsetIntoField,
52 const double* prescribedValues);
56 const double *weights,
61 const double *weights,
69 bool globalAssemble=
true);
78 const char*
const* paramStrings);
91 std::vector<double>& bcVals)
const;
110 std::vector<double>& coefs,
111 std::vector<int>& indices);
138 #endif // _snl_fei_LinearSystem_General_hpp_
int loadEssentialBCs(int numIDs, const int *IDs, int idType, int fieldID, int offsetIntoField, const double *prescribedValues)
int getMatrixRow(fei::Matrix *matrix, int row, std::vector< double > &coefs, std::vector< int > &indices)
fei::CSVec * essBCvalues_
bool BCenforcement_no_column_mod_
int setBCValuesOnVector(fei::Vector *vector)
void enforceEssentialBC_step_2(fei::CSVec &essBCs)
int parameters(int numParams, const char *const *paramStrings)
int loadPenaltyConstraint(int constraintID, const double *weights, double penaltyValue, double rhsValue)
int loadComplete(bool applyBCs=true, bool globalAssemble=true)
void getConstrainedEqns(std::vector< int > &crEqns) const
LinearSystem_General(fei::SharedPtr< fei::MatrixGraph > &matrixGraph)
int implementBCs(bool applyBCs)
int enforceEssentialBC_LinSysCore()
void setName(const char *name)
std::map< std::string, unsigned > named_loadcomplete_counter_
void getEssentialBCs(std::vector< int > &bcEqns, std::vector< double > &bcVals) const
bool eqnIsEssentialBC(int globalEqnIndex) const
std::vector< int > iwork_
void enforceEssentialBC_step_1(fei::CSVec &essBCs)
bool explicitBCenforcement_
virtual ~LinearSystem_General()
int loadLagrangeConstraint(int constraintID, const double *weights, double rhsValue)
bool resolveConflictRequested_
std::vector< double > dwork_