/[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 3792 by caltinay, Wed Feb 1 06:16:25 2012 UTC revision 3915 by caltinay, Mon Jun 25 02:17:58 2012 UTC
# Line 24  namespace ripley { Line 24  namespace ripley {
24     \brief     \brief
25     Rectangle is the 2-dimensional implementation of a RipleyDomain.     Rectangle is the 2-dimensional implementation of a RipleyDomain.
26  */  */
27  class Rectangle: public RipleyDomain  class RIPLEY_DLL_API Rectangle: public RipleyDomain
28  {  {
29  public:  public:
30    
# Line 35  public: Line 35  public:
35         \param x0,y0,x1,y1 coordinates of bottom-left and top-right corners         \param x0,y0,x1,y1 coordinates of bottom-left and top-right corners
36         \param d0,d1 number of subdivisions in each dimension         \param d0,d1 number of subdivisions in each dimension
37      */      */
     RIPLEY_DLL_API  
38      Rectangle(int n0, int n1, double x0, double y0, double x1, double y1, int d0, int d1);      Rectangle(int n0, int n1, double x0, double y0, double x1, double y1, int d0, int d1);
39    
40      /**      /**
41         \brief         \brief
42         Destructor.         Destructor.
43      */      */
     RIPLEY_DLL_API  
44      ~Rectangle();      ~Rectangle();
45    
46      /**      /**
47         \brief         \brief
48         returns a description for this domain         returns a description for this domain
49      */      */
     RIPLEY_DLL_API  
50      virtual std::string getDescription() const;      virtual std::string getDescription() const;
51    
52      /**      /**
53         \brief equality operator         \brief equality operator
54      */      */
     RIPLEY_DLL_API  
55      virtual bool operator==(const escript::AbstractDomain& other) const;      virtual bool operator==(const escript::AbstractDomain& other) const;
56    
57      /**      /**
# Line 63  public: Line 59  public:
59         dumps the mesh to a file with the given name         dumps the mesh to a file with the given name
60         \param filename The name of the output file         \param filename The name of the output file
61      */      */
     RIPLEY_DLL_API  
62      void dump(const std::string& filename) const;      void dump(const std::string& filename) const;
63    
64      /**      /**
# Line 71  public: Line 66  public:
66         returns the array of reference numbers for a function space type         returns the array of reference numbers for a function space type
67         \param fsType The function space type         \param fsType The function space type
68      */      */
     RIPLEY_DLL_API  
69      const int* borrowSampleReferenceIDs(int fsType) const;      const int* borrowSampleReferenceIDs(int fsType) const;
70    
71      /**      /**
72         \brief         \brief
73         returns true if this rank owns the sample id.         returns true if this rank owns the sample id.
74      */      */
     RIPLEY_DLL_API  
75      virtual bool ownSample(int fs_code, index_t id) const;      virtual bool ownSample(int fs_code, index_t id) const;
76    
77      /**      /**
# Line 87  public: Line 80  public:
80         space to be considered is defined by out. out has to be defined on this         space to be considered is defined by out. out has to be defined on this
81         domain.         domain.
82      */      */
     RIPLEY_DLL_API  
83      virtual void setToNormal(escript::Data& out) const;      virtual void setToNormal(escript::Data& out) const;
84    
85      /**      /**
# Line 95  public: Line 87  public:
87         copies the size of samples into out. The actual function space to be         copies the size of samples into out. The actual function space to be
88         considered is defined by out. out has to be defined on this domain.         considered is defined by out. out has to be defined on this domain.
89      */      */
     RIPLEY_DLL_API  
90      virtual void setToSize(escript::Data& out) const;      virtual void setToSize(escript::Data& out) const;
91    
92      /**      /**
93         \brief         \brief
94         returns the number of data points summed across all MPI processes         returns the number of data points summed across all MPI processes
95      */      */
     RIPLEY_DLL_API  
96      virtual int getNumDataPointsGlobal() const { return (m_gNE0+1)*(m_gNE1+1); }      virtual int getNumDataPointsGlobal() const { return (m_gNE0+1)*(m_gNE1+1); }
97    
98      /**      /**
# Line 110  public: Line 100  public:
100         writes information about the mesh to standard output         writes information about the mesh to standard output
101         \param full whether to print additional data         \param full whether to print additional data
102      */      */
     RIPLEY_DLL_API  
103      virtual void Print_Mesh_Info(const bool full=false) const;      virtual void Print_Mesh_Info(const bool full=false) const;
104    
105      /**      /**
106         \brief         \brief
107         returns the number of nodes per MPI rank in each dimension         returns the number of nodes per MPI rank in each dimension
108      */      */
     RIPLEY_DLL_API  
109      virtual IndexVector getNumNodesPerDim() const;      virtual IndexVector getNumNodesPerDim() const;
110    
111      /**      /**
112         \brief         \brief
113         returns the number of elements per MPI rank in each dimension         returns the number of elements per MPI rank in each dimension
114      */      */
     RIPLEY_DLL_API  
115      virtual IndexVector getNumElementsPerDim() const;      virtual IndexVector getNumElementsPerDim() const;
116    
117      /**      /**
# Line 132  public: Line 119  public:
119         returns the number of face elements in the order         returns the number of face elements in the order
120         (left,right,bottom,top,[front,back]) on current MPI rank         (left,right,bottom,top,[front,back]) on current MPI rank
121      */      */
     RIPLEY_DLL_API  
122      virtual IndexVector getNumFacesPerBoundary() const;      virtual IndexVector getNumFacesPerBoundary() const;
123    
124      /**      /**
125         \brief         \brief
126         returns the node distribution vector         returns the node distribution vector
127      */      */
     RIPLEY_DLL_API  
128      virtual IndexVector getNodeDistribution() const { return m_nodeDistribution; }      virtual IndexVector getNodeDistribution() const { return m_nodeDistribution; }
129    
130      /**      /**
131         \brief         \brief
132         returns the number of spatial subdivisions in each dimension         returns the number of spatial subdivisions in each dimension
133      */      */
     RIPLEY_DLL_API  
134      virtual IndexVector getNumSubdivisionsPerDim() const;      virtual IndexVector getNumSubdivisionsPerDim() const;
135    
136      /**      /**
# Line 154  public: Line 138  public:
138         returns the first coordinate value and the node spacing along given         returns the first coordinate value and the node spacing along given
139         dimension as a pair         dimension as a pair
140      */      */
     RIPLEY_DLL_API  
141      virtual std::pair<double,double> getFirstCoordAndSpacing(dim_t dim) const;      virtual std::pair<double,double> getFirstCoordAndSpacing(dim_t dim) const;
142    
143  protected:  protected:

Legend:
Removed from v.3792  
changed lines
  Added in v.3915

  ViewVC Help
Powered by ViewVC 1.1.26