/[escript]/trunk/finley/src/CPPAdapter/SystemMatrixAdapter.h
ViewVC logotype

Diff of /trunk/finley/src/CPPAdapter/SystemMatrixAdapter.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 682 by robwdcock, Mon Mar 27 02:43:09 2006 UTC revision 757 by woo409, Mon Jun 26 13:12:56 2006 UTC
# Line 13  Line 13 
13    
14  #if !defined  finley_SystemMatrixAdapter_20040610_H  #if !defined  finley_SystemMatrixAdapter_20040610_H
15  #define finley_SystemMatrixAdapter_20040610_H  #define finley_SystemMatrixAdapter_20040610_H
16    #include "system_dep.h"
17    
18  extern "C" {  extern "C" {
19  #include "paso/SystemMatrix.h"  #include "paso/SystemMatrix.h"
# Line 49  class SystemMatrixAdapter:public escript Line 50  class SystemMatrixAdapter:public escript
50       Default Constructor for SystemMatrixAdapter.       Default Constructor for SystemMatrixAdapter.
51       NB: Only throws an exception.       NB: Only throws an exception.
52    */    */
53      FINLEY_DLL_API
54    SystemMatrixAdapter();    SystemMatrixAdapter();
55    
56    /**    /**
57       /brief       /brief
58       Constructor for SystemMatrixAdapter.       Constructor for SystemMatrixAdapter.
59    */    */
60      FINLEY_DLL_API
61    SystemMatrixAdapter(Paso_SystemMatrix* system_matrix,    SystemMatrixAdapter(Paso_SystemMatrix* system_matrix,
62                        const int row_blocksize,                        const int row_blocksize,
63                        const escript::FunctionSpace& row_functionspace,                        const escript::FunctionSpace& row_functionspace,
# Line 67  class SystemMatrixAdapter:public escript Line 70  class SystemMatrixAdapter:public escript
70       Destructor for SystemMatrixAdapter. As specified in the constructor       Destructor for SystemMatrixAdapter. As specified in the constructor
71       this deallocates the pointer given to the constructor.       this deallocates the pointer given to the constructor.
72    */    */
73      FINLEY_DLL_API
74    ~SystemMatrixAdapter();    ~SystemMatrixAdapter();
75    
76    /**    /**
77       \brief       \brief
78       Returns the pointer to the system matrix.       Returns the pointer to the system matrix.
79    */    */
80      FINLEY_DLL_API
81    Paso_SystemMatrix* getPaso_SystemMatrix() const;    Paso_SystemMatrix* getPaso_SystemMatrix() const;
82    
83    /**    /**
# Line 97  class SystemMatrixAdapter:public escript Line 102  class SystemMatrixAdapter:public escript
102      \brief      \brief
103      nullifyRowsAndCols - calls Paso_SystemMatrix_nullifyRowsAndCols.      nullifyRowsAndCols - calls Paso_SystemMatrix_nullifyRowsAndCols.
104    */    */
105      FINLEY_DLL_API
106    void nullifyRowsAndCols(escript::Data& row_q, escript::Data& col_q, const double mdv) const;    void nullifyRowsAndCols(escript::Data& row_q, escript::Data& col_q, const double mdv) const;
107    
108    /**    /**
109       \brief writes the matrix to a file using the Matrix Market file format       \brief writes the matrix to a file using the Matrix Market file format
110    */    */
111      FINLEY_DLL_API
112    virtual void saveMM(const std::string& fileName) const;    virtual void saveMM(const std::string& fileName) const;
113    
114    /**    /**
115       \brief writes the matrix to a file using the Harwell-Boeing file format       \brief writes the matrix to a file using the Harwell-Boeing file format
116    */    */
117      FINLEY_DLL_API
118    virtual void saveHB(const std::string& fileName) const;    virtual void saveHB(const std::string& fileName) const;
119    
120    /**    /**
121       \brief sets the matrix entries to zero       \brief sets the matrix entries to zero
122    */    */
123      FINLEY_DLL_API
124    virtual void resetValues() const;    virtual void resetValues() const;
125    
126    /**    /**
127       \brief maps escript options onto Paso options:       \brief maps escript options onto Paso options:
128    */    */
129      FINLEY_DLL_API
130    static int mapOptionToPaso(const int option);    static int mapOptionToPaso(const int option);
131    
132   protected:   protected:
# Line 127  class SystemMatrixAdapter:public escript Line 137  class SystemMatrixAdapter:public escript
137        \brief        \brief
138        solves the linear system this*out=in        solves the linear system this*out=in
139     */     */
140       FINLEY_DLL_API
141     virtual void setToSolution(escript::Data& out, escript::Data& in, const boost::python::dict& options) const;     virtual void setToSolution(escript::Data& out, escript::Data& in, const boost::python::dict& options) const;
142    
143     /**     /**
144         \brief         \brief
145         performs y+=this*x         performs y+=this*x
146     */     */
147       FINLEY_DLL_API
148     virtual void ypAx(escript::Data& y, escript::Data& x) const;     virtual void ypAx(escript::Data& y, escript::Data& x) const;
149    
150     //     //

Legend:
Removed from v.682  
changed lines
  Added in v.757

  ViewVC Help
Powered by ViewVC 1.1.26