/[escript]/branches/diaplayground/finley/src/CPPAdapter/MeshAdapter.h
ViewVC logotype

Diff of /branches/diaplayground/finley/src/CPPAdapter/MeshAdapter.h

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

revision 101 by jgs, Wed Dec 15 03:48:48 2004 UTC revision 102 by jgs, Wed Dec 15 07:08:39 2004 UTC
# Line 1  Line 1 
1    // $Id$
2  /*  /*
3   ******************************************************************************   ******************************************************************************
4   *                                                                            *   *                                                                            *
# Line 257  class MeshAdapter:public escript::Abstra Line 258  class MeshAdapter:public escript::Abstra
258    */    */
259    virtual void setToIntegrals(std::vector<double>& integrals,const escript::Data& arg) const;    virtual void setToIntegrals(std::vector<double>& integrals,const escript::Data& arg) const;
260    
261     /**
262         \brief
263         return the identifier of the matrix type to be used for the global stiffness matrix when a particular solver, preconditioner
264         and symmetric matrix is used.
265         \param solver
266         \param symmetry
267      */
268      virtual int getSystemMatrixTypeId(const int solver, const bool symmetry) const;
269    
270    /**    /**
271       \brief       \brief
272       returns true if data on this domain and a function space of type functionSpaceCode has to       returns true if data on this domain and a function space of type functionSpaceCode has to
# Line 282  class MeshAdapter:public escript::Abstra Line 292  class MeshAdapter:public escript::Abstra
292    virtual void addPDEToSystem(    virtual void addPDEToSystem(
293                       SystemMatrixAdapter& mat, escript::Data& rhs,                       SystemMatrixAdapter& mat, escript::Data& rhs,
294                       const escript::Data& A, const escript::Data& B, const escript::Data& C,                       const escript::Data& A, const escript::Data& B, const escript::Data& C,
295                       const escript::Data& D, const escript::Data& X, const escript::Data& Y) const;                       const escript::Data& D, const escript::Data& X, const escript::Data& Y,
296                         const escript::Data& d, const escript::Data& y,
297                         const escript::Data& d_contact, const escript::Data& y_contact) const;
298    /**    /**
299       \brief       \brief
300       adds a Robin boundary condition onto the stiffness matrix mat and a rhs       adds a PDE onto the stiffness matrix mat and a rhs
   */  
   virtual void addRobinConditionsToSystem(  
                      SystemMatrixAdapter& mat, escript::Data& rhs,  
                      const escript::Data& d, const escript::Data& y) const;  
   
   /**  
      \brief  
      adds a contact condition onto the stiffness matrix mat and a rhs  
301    */    */
302    virtual void addContactToSystem(    virtual void addPDEToRHS(escript::Data& rhs,
303                       SystemMatrixAdapter& mat, escript::Data& rhs,                       const escript::Data& X, const escript::Data& Y,
304                       const escript::Data& d, const escript::Data& y) const;                       const escript::Data& y, const escript::Data& y_contact) const;
   
305    /**    /**
306       \brief       \brief
307      creates a SystemMatrixAdapter stiffness matrix an initializes it with zeros:      creates a SystemMatrixAdapter stiffness matrix an initializes it with zeros:
# Line 309  class MeshAdapter:public escript::Abstra Line 311  class MeshAdapter:public escript::Abstra
311                        const escript::FunctionSpace& row_functionspace,                        const escript::FunctionSpace& row_functionspace,
312                        const int column_blocksize,                        const int column_blocksize,
313                        const escript::FunctionSpace& column_functionspace,                        const escript::FunctionSpace& column_functionspace,
314                        const int type,                        const int type) const;
315                        const bool sym) const;  
316      /**
317         \brief returns locations in the FEM nodes
318      */
319      virtual escript::Data getX() const;
320      /**
321         \brief return boundary normals at the quadrature point on the face elements
322      */
323      virtual escript::Data getNormal() const;
324      /**
325         \brief returns the element size
326      */
327      virtual escript::Data getSize() const;
328    
329    
330    // `virtual bool operator==(const escript::AbstractDomain& other) const;    // `virtual bool operator==(const escript::AbstractDomain& other) const;
331    bool operator==(const MeshAdapter& other) const;    bool operator==(const MeshAdapter& other) const;
332    bool operator!=(const MeshAdapter& other) const;    bool operator!=(const MeshAdapter& other) const;
333    
334   protected:   protected:
335    
336   private:   private:

Legend:
Removed from v.101  
changed lines
  Added in v.102

  ViewVC Help
Powered by ViewVC 1.1.26