colvar.h

Go to the documentation of this file.
00001 
00041 #ifndef ABA_COLVAR_H
00042 #define ABA_COLVAR_H
00043 
00044 #include "abacus/variable.h"
00045 #include "abacus/vartype.h"
00046 #include "abacus/column.h"
00047 
00048 class ABA_SPARVEC;
00049   class  ABA_COLVAR :  public ABA_VARIABLE  { 
00050     public: 
00051 
00075       ABA_COLVAR(ABA_MASTER *master, 
00076                  const ABA_SUB *sub, 
00077                  bool dynamic,  
00078                  bool local,
00079                  double lBound, 
00080                  double uBound,
00081                  ABA_VARTYPE::TYPE varType, 
00082                  double obj, 
00083                  int nnz, 
00084                  ABA_ARRAY<int> &support, 
00085                  ABA_ARRAY<double> &coeff);
00086 
00091       ABA_COLVAR(ABA_MASTER *master, 
00092                  const ABA_SUB *sub, 
00093                  bool dynamic,  
00094                  bool local,
00095                  double lBound, 
00096                  double uBound,
00097                  ABA_VARTYPE::TYPE varType, 
00098                  double obj, ABA_SPARVEC &vector);
00099 
00102       virtual ~ABA_COLVAR();
00103 #ifdef ABACUS_PARALLEL
00104 
00109       ABA_COLVAR(ABA_MASTER *master, ABA_MESSAGE &msg);
00110 
00111 /* Packs the data of the variable in an ABA_MESSAGE object.
00112  *
00113  *\param msg The ABA_MESSAGE object in which the variable is packed.
00114  */
00115       virtual void pack(ABA_MESSAGE &msg) const;
00116 
00121       virtual int classId() const;
00122 #endif
00123 
00131       friend ostream &operator<<(ostream &out, const ABA_COLVAR &rhs);
00132 
00139       virtual void print(ostream &out);
00140 
00146       virtual double coeff(ABA_CONSTRAINT *con);
00147 
00154       double coeff(int i);
00155 
00158       ABA_COLUMN *column();
00159 
00160     protected:
00161       ABA_COLUMN   column_;
00162   };
00163 #endif  // ABA_COLVAR_H
00164 

Generated on Tue Aug 14 18:09:53 2007 for ABACUS by  doxygen 1.5.1