CCAFFEINE
0.8.8
|
00001 #ifdef HAVE_CLASSIC 00002 #ifndef SimpleLinearSolverContainer_h_seen 00003 #define SimpleLinearSolverContainer_h_seen 00004 00009 template<class Scalar, class Ordinal> 00010 class SimpleLinearSolverContainer : public virtual classic::gov::cca::Port { 00011 00012 public: 00013 00014 virtual ~SimpleLinearSolverContainer() {} 00015 00027 virtual void setEquation(Ordinal equationId, Ordinal variableLen, Ordinal *variableIds, Scalar *variableCoefs, Scalar rhs) = 0; 00028 00035 virtual int buildSystem() = 0; 00036 00043 virtual int solve() = 0; 00044 00049 virtual int getResidual(Ordinal equationLen, Ordinal *equationIds, Scalar *residual) = 0; 00050 00055 virtual int getSolution(Ordinal variableLen, Ordinal *variableIds, Scalar *solution) = 0; 00056 00057 }; 00058 #endif //SimpleLinearSolverContainer_h_seen 00059 #endif // HAVE_CLASSIC