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

Diff of /temp_trunk_copy/finley/src/CPPAdapter/MeshAdapter.h

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

revision 767 by gross, Fri Jun 30 07:29:08 2006 UTC revision 1312 by ksteube, Mon Sep 24 06:18:44 2007 UTC
# Line 1  Line 1 
1  // $Id$  
2  /*  /* $Id$ */
3   ************************************************************  
4   *          Copyright 2006 by ACcESS MNRF                   *  /*******************************************************
5   *                                                          *   *
6   *              http://www.access.edu.au                    *   *           Copyright 2003-2007 by ACceSS MNRF
7   *       Primary Business: Queensland, Australia            *   *       Copyright 2007 by University of Queensland
8   *  Licensed under the Open Software License version 3.0    *   *
9   *     http://www.opensource.org/licenses/osl-3.0.php       *   *                http://esscc.uq.edu.au
10   *                                                          *   *        Primary Business: Queensland, Australia
11   ************************************************************   *  Licensed under the Open Software License version 3.0
12  */   *     http://www.opensource.org/licenses/osl-3.0.php
13                                                                               *
14     *******************************************************/
15    
16  #if !defined finley_MeshAdapter_20040526_H  #if !defined finley_MeshAdapter_20040526_H
17  #define finley_MeshAdapter_20040526_H  #define finley_MeshAdapter_20040526_H
18  #include "system_dep.h"  #include "system_dep.h"
# Line 74  class MeshAdapter : public escript::Abst Line 76  class MeshAdapter : public escript::Abst
76    static const int DegreesOfFreedom;    static const int DegreesOfFreedom;
77    static const int ReducedDegreesOfFreedom;    static const int ReducedDegreesOfFreedom;
78    static const int Nodes;    static const int Nodes;
79      static const int ReducedNodes;
80    static const int Elements;    static const int Elements;
81      static const int ReducedElements;
82    static const int FaceElements;    static const int FaceElements;
83      static const int ReducedFaceElements;
84    static const int Points;    static const int Points;
85    static const int ContactElementsZero;    static const int ContactElementsZero;
86      static const int ReducedContactElementsZero;
87    static const int ContactElementsOne;    static const int ContactElementsOne;
88      static const int ReducedContactElementsOne;
89    
90    /**    /**
91       \brief       \brief
# Line 86  class MeshAdapter : public escript::Abst Line 93  class MeshAdapter : public escript::Abst
93    
94       Description:       Description:
95       Constructor for MeshAdapter. The pointer passed to MeshAdapter       Constructor for MeshAdapter. The pointer passed to MeshAdapter
96       is deleted using a call to Finley_Mesh_deallocate in the       is deleted using a call to Finley_Mesh_free in the
97       MeshAdapter destructor.       MeshAdapter destructor.
98    
99       Throws:       Throws:
# Line 95  class MeshAdapter : public escript::Abst Line 102  class MeshAdapter : public escript::Abst
102       \param finleyMesh Input - A pointer to the externally constructed       \param finleyMesh Input - A pointer to the externally constructed
103                                 finley mesh.The pointer passed to MeshAdapter                                 finley mesh.The pointer passed to MeshAdapter
104                                 is deleted using a call to                                 is deleted using a call to
105                                 Finley_Mesh_deallocate in the MeshAdapter                                 Finley_Mesh_free in the MeshAdapter
106                                 destructor.                                 destructor.
107    */    */
108    FINLEY_DLL_API    FINLEY_DLL_API
# Line 111  class MeshAdapter : public escript::Abst Line 118  class MeshAdapter : public escript::Abst
118    /**    /**
119       \brief       \brief
120       Destructor for MeshAdapter. As specified in the constructor       Destructor for MeshAdapter. As specified in the constructor
121       this calls Finley_Mesh_deallocate for the pointer given to the       this calls Finley_Mesh_free for the pointer given to the
122       constructor.       constructor.
123    */    */
124    FINLEY_DLL_API    FINLEY_DLL_API
# Line 119  class MeshAdapter : public escript::Abst Line 126  class MeshAdapter : public escript::Abst
126    
127    /**    /**
128       \brief       \brief
129         return the number of processors used for this domain
130      */
131      FINLEY_DLL_API
132      virtual int getMPISize() const;
133      /**
134         \brief
135         return the number MPI rank of this processor
136      */
137    
138      FINLEY_DLL_API
139      virtual int getMPIRank() const;
140    
141      /**
142         \brief
143       return this as an AbstractContinuousDomain.       return this as an AbstractContinuousDomain.
144    */    */
145    inline const AbstractContinuousDomain& asAbstractContinuousDomain() const    inline const AbstractContinuousDomain& asAbstractContinuousDomain() const
# Line 145  class MeshAdapter : public escript::Abst Line 166  class MeshAdapter : public escript::Abst
166    
167    /**    /**
168       \brief       \brief
169         dumps the mesh to a file with the given name.
170         \param fileName Input - The name of the file
171      */
172      FINLEY_DLL_API
173      void dump(const std::string& fileName) const;
174    
175      /**
176         \brief
177       return the pointer to the underlying finley mesh structure       return the pointer to the underlying finley mesh structure
178    */    */
179    FINLEY_DLL_API    FINLEY_DLL_API
# Line 163  class MeshAdapter : public escript::Abst Line 192  class MeshAdapter : public escript::Abst
192       \brief       \brief
193       Return the reference number of  the given sample number.       Return the reference number of  the given sample number.
194       \param functionSpaceType Input - The function space type.       \param functionSpaceType Input - The function space type.
      \param sampleNo Input - The sample number.  
195    */    */
196    FINLEY_DLL_API    FINLEY_DLL_API
197    int getReferenceNoFromSampleNo(int functionSpaceType, int sampleNo) const;    int* borrowSampleReferenceIDs(int functionSpaceType) const;
198    
199    /**    /**
200       \brief       \brief
# Line 206  class MeshAdapter : public escript::Abst Line 234  class MeshAdapter : public escript::Abst
234    
235    /**    /**
236       \brief       \brief
237       Return a functon FunctionSpace code       Return a continuous on reduced order nodes FunctionSpace code
238      */
239      FINLEY_DLL_API
240      virtual int getReducedContinuousFunctionCode() const;
241    
242      /**
243         \brief
244         Return a function FunctionSpace code
245    */    */
246    FINLEY_DLL_API    FINLEY_DLL_API
247    virtual int getFunctionCode() const;    virtual int getFunctionCode() const;
248    
249    /**    /**
250       \brief       \brief
251         Return a function with reduced integration order FunctionSpace code
252      */
253      FINLEY_DLL_API
254      virtual int getReducedFunctionCode() const;
255    
256      /**
257         \brief
258       Return a function on boundary FunctionSpace code       Return a function on boundary FunctionSpace code
259    */    */
260    FINLEY_DLL_API    FINLEY_DLL_API
# Line 220  class MeshAdapter : public escript::Abst Line 262  class MeshAdapter : public escript::Abst
262    
263    /**    /**
264       \brief       \brief
265         Return a function on boundary with reduced integration order FunctionSpace code
266      */
267      FINLEY_DLL_API
268      virtual int getReducedFunctionOnBoundaryCode() const;
269    
270      /**
271         \brief
272       Return a FunctionOnContactZero code       Return a FunctionOnContactZero code
273    */    */
274    FINLEY_DLL_API    FINLEY_DLL_API
# Line 227  class MeshAdapter : public escript::Abst Line 276  class MeshAdapter : public escript::Abst
276    
277    /**    /**
278       \brief       \brief
279         Return a FunctionOnContactZero code  with reduced integration order
280      */
281      FINLEY_DLL_API
282      virtual int getReducedFunctionOnContactZeroCode() const;
283    
284      /**
285         \brief
286       Return a FunctionOnContactOne code       Return a FunctionOnContactOne code
287    */    */
288    FINLEY_DLL_API    FINLEY_DLL_API
# Line 234  class MeshAdapter : public escript::Abst Line 290  class MeshAdapter : public escript::Abst
290    
291    /**    /**
292       \brief       \brief
293         Return a FunctionOnContactOne code  with reduced integration order
294      */
295      FINLEY_DLL_API
296      virtual int getReducedFunctionOnContactOneCode() const;
297    
298      /**
299         \brief
300       Return a Solution code       Return a Solution code
301    */    */
302    FINLEY_DLL_API    FINLEY_DLL_API
# Line 254  class MeshAdapter : public escript::Abst Line 317  class MeshAdapter : public escript::Abst
317    virtual int getDiracDeltaFunctionCode() const;    virtual int getDiracDeltaFunctionCode() const;
318    
319    /**    /**
320             5B
321       \brief       \brief
322    */    */
323    typedef std::map<int, std::string> FunctionSpaceNamesMapType;    typedef std::map<int, std::string> FunctionSpaceNamesMapType;
# Line 282  class MeshAdapter : public escript::Abst Line 346  class MeshAdapter : public escript::Abst
346    
347    /**    /**
348       \brief       \brief
349         sets a map from a clear tag name to a tag key
350         \param name Input - tag name.
351         \param tag Input - tag key.
352      */
353      FINLEY_DLL_API
354      virtual void setTagMap(const std::string& name,  int tag);
355    
356      /**
357         \brief
358         Return the tag key for tag name.
359         \param name Input - tag name
360      */
361      FINLEY_DLL_API
362      virtual int getTag(const std::string& name) const;
363    
364      /**
365         \brief
366         Returns true if name is a defined tage name.
367         \param name Input - tag name to be checked.
368      */
369      FINLEY_DLL_API
370      virtual bool isValidTagName(const std::string& name) const;
371    
372      /**
373         \brief
374         Returns all tag names in a single string sperated by commas
375      */
376      FINLEY_DLL_API
377      virtual std::string showTagNames() const;
378    
379      /**
380         \brief
381       assigns new location to the domain       assigns new location to the domain
382    */    */
383    FINLEY_DLL_API    FINLEY_DLL_API
# Line 393  class MeshAdapter : public escript::Abst Line 489  class MeshAdapter : public escript::Abst
489                       const escript::Data& D, const escript::Data& X, const escript::Data& Y,                       const escript::Data& D, const escript::Data& X, const escript::Data& Y,
490                       const escript::Data& d, const escript::Data& y,                       const escript::Data& d, const escript::Data& y,
491                       const escript::Data& d_contact, const escript::Data& y_contact) const;                       const escript::Data& d_contact, const escript::Data& y_contact) const;
492      /**
493         \brief
494         adds a PDE onto the lumped stiffness matrix matrix
495      */
496      FINLEY_DLL_API
497      virtual void addPDEToLumpedSystem(
498                         escript::Data& mat,
499                         const escript::Data& D,
500                         const escript::Data& d) const;
501    
502    /**    /**
503       \brief       \brief

Legend:
Removed from v.767  
changed lines
  Added in v.1312

  ViewVC Help
Powered by ViewVC 1.1.26