/[escript]/trunk/ripley/src/Rectangle.h
ViewVC logotype

Diff of /trunk/ripley/src/Rectangle.h

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

revision 3713 by caltinay, Tue Dec 6 04:43:29 2011 UTC revision 3748 by caltinay, Thu Dec 15 07:36:19 2011 UTC
# Line 100  public: Line 100  public:
100    
101      /**      /**
102         \brief         \brief
103           copies the surface normals at data points into out. The actual function
104           space to be considered is defined by out. out has to be defined on this
105           domain.
106        */
107        RIPLEY_DLL_API
108        virtual void setToNormal(escript::Data& out) const;
109    
110        /**
111           \brief
112         returns the number of data points summed across all MPI processes         returns the number of data points summed across all MPI processes
113      */      */
114      RIPLEY_DLL_API      RIPLEY_DLL_API
# Line 150  public: Line 159  public:
159      RIPLEY_DLL_API      RIPLEY_DLL_API
160      virtual std::pair<double,double> getFirstCoordAndSpacing(dim_t dim) const;      virtual std::pair<double,double> getFirstCoordAndSpacing(dim_t dim) const;
161    
     /**  
        \brief  
        adds a PDE onto the stiffness matrix mat and rhs  
     */  
     RIPLEY_DLL_API  
     virtual void addPDEToSystem(escript::AbstractSystemMatrix& mat,  
             escript::Data& rhs, const escript::Data& A, const escript::Data& B,  
             const escript::Data& C, const escript::Data& D,  
             const escript::Data& X, const escript::Data& Y,  
             const escript::Data& d, const escript::Data& y,  
             const escript::Data& d_contact, const escript::Data& y_contact,  
             const escript::Data& d_dirac, const escript::Data& y_dirac) const;  
   
162  protected:  protected:
163      virtual dim_t getNumNodes() const { return m_N0*m_N1; }      virtual dim_t getNumNodes() const { return m_N0*m_N1; }
164      virtual dim_t getNumElements() const { return m_NE0*m_NE1; }      virtual dim_t getNumElements() const { return m_NE0*m_NE1; }
165      virtual dim_t getNumFaceElements() const;      virtual dim_t getNumFaceElements() const;
166      virtual void assembleCoordinates(escript::Data& arg) const;      virtual void assembleCoordinates(escript::Data& arg) const;
167        virtual void assemblePDESingle(Paso_SystemMatrix* mat, escript::Data& rhs,
168                const escript::Data& A, const escript::Data& B,
169                const escript::Data& C, const escript::Data& D,
170                const escript::Data& X, const escript::Data& Y,
171                const escript::Data& d, const escript::Data& y) const;
172        //virtual void assemblePDESystem(Paso_SystemMatrix* mat, escript::Data& rhs,
173        //        const escript::Data& A, const escript::Data& B,
174        //        const escript::Data& C, const escript::Data& D,
175        //        const escript::Data& X, const escript::Data& Y,
176        //        const escript::Data& d, const escript::Data& y) const;
177    
178      virtual Paso_SystemMatrixPattern* getPattern(bool reducedRowOrder, bool reducedColOrder) const;      virtual Paso_SystemMatrixPattern* getPattern(bool reducedRowOrder, bool reducedColOrder) const;
179      virtual void interpolateNodesOnElements(escript::Data& out,      virtual void interpolateNodesOnElements(escript::Data& out,
180                                         escript::Data& in, bool reduced) const;                                         escript::Data& in, bool reduced) const;
# Line 179  private: Line 186  private:
186      int insertNeighbours(IndexVector& index, index_t node) const;      int insertNeighbours(IndexVector& index, index_t node) const;
187      void generateCouplePatterns(Paso_Pattern** colPattern,      void generateCouplePatterns(Paso_Pattern** colPattern,
188                                  Paso_Pattern** rowPattern) const;                                  Paso_Pattern** rowPattern) const;
189        void addToSystemMatrix(Paso_SystemMatrix* in, dim_t NN_Equa,
190                const IndexVector& Nodes_Equa, dim_t num_Equa, dim_t NN_Sol,
191                const IndexVector& Nodes_Sol, dim_t num_Sol,
192                const std::vector<double>& array) const;
193    
194      /// total number of elements in each dimension      /// total number of elements in each dimension
195      dim_t m_gNE0, m_gNE1;      dim_t m_gNE0, m_gNE1;

Legend:
Removed from v.3713  
changed lines
  Added in v.3748

  ViewVC Help
Powered by ViewVC 1.1.26