17 #ifndef __RIPLEY_MULTIRECTANGLE_H__ 18 #define __RIPLEY_MULTIRECTANGLE_H__ 20 #include <ripley/Rectangle.h> 44 const std::vector<double>& points = std::vector<double>(),
45 const std::vector<int>& tags = std::vector<int>(),
48 unsigned int subdivisions = 1
70 void validateInterpolationAcross(
int fsType_source,
77 virtual std::string getDescription()
const;
89 void dump(
const std::string& filename)
const;
107 std::string filename,
108 int byteOrder,
int dataType)
const;
121 virtual RankVector getOwnerVector(
int fsType)
const;
132 #ifdef ESYS_HAVE_PASO 134 bool reducedRowOrder,
135 bool reducedColOrder)
const;
137 virtual index_t getFirstInDim(
unsigned axis)
const;
138 virtual void populateSampleIds();
139 virtual dim_t getNumDOFInAxis(
unsigned axis)
const;
140 virtual dim_t getNumDOF()
const;
141 virtual void populateDofMap();
143 virtual dim_t findNode(
const double *coords)
const;
154 return getNumDOFInAxis(0)*getNumDOFInAxis(1);
161 dim_t res = m_ownNE[axis] + 1;
162 if (m_offset[axis] + m_NE[axis] < m_gNE[axis]) {
171 return m_offset[axis] == 0 ? 0 : m_subdivisions;
176 #endif // __RIPLEY_MULTIRECTANGLE_H__ Rectangle is the 2-dimensional implementation of a RipleyDomain.
Definition: MultiRectangle.h:28
std::vector< int > RankVector
Definition: Ripley.h:45
escript::Data readNcGrid(std::string filename, std::string varname, escript::FunctionSpace fs, const object &pyShape, double fill, const object &pyFirst, const object &pyNum, const object &pyMultiplier, const object &pyReverse)
Definition: ripleycpp.cpp:116
Definition: ripley/src/WaveAssembler2D.h:24
Definition: LameAssembler2D.h:24
std::vector< IndexVector > m_rowIndices
Definition: MultiRectangle.h:147
virtual dim_t getNumDOF() const
returns the number of degrees of freedom per MPI rank
Definition: MultiRectangle.h:152
Definition: ripley/src/DefaultAssembler2D.h:24
escript::Data readBinaryGrid(std::string filename, escript::FunctionSpace fs, const object &pyShape, double fill, int byteOrder, int dataType, const object &pyFirst, const object &pyNum, const object &pyMultiplier, const object &pyReverse)
Definition: ripleycpp.cpp:62
boost::shared_ptr< SystemMatrixPattern > SystemMatrixPattern_ptr
Definition: SystemMatrixPattern.h:39
std::map< std::string, int > TagMap
Definition: Ripley.h:46
int index_t
type for array/matrix indices used both globally and on each rank
Definition: DataTypes.h:59
Rectangle is the 2-dimensional implementation of a RipleyDomain.
Definition: ripley/src/Rectangle.h:28
virtual dim_t getNumDOFInAxis(unsigned axis) const
Definition: MultiRectangle.h:158
boost::shared_ptr< SubWorld > SubWorld_ptr
Definition: SubWorld.h:146
Structure that wraps parameters for the grid reading routines.
Definition: ripley/src/RipleyDomain.h:68
virtual index_t getFirstInDim(unsigned axis) const
Definition: MultiRectangle.h:169
Data represents a collection of datapoints.
Definition: Data.h:63
virtual unsigned int getNumSubdivisionsPerElement() const
returns the number of times each root element has been subdivided
Definition: MultiRectangle.h:114
Definition: ripley/src/AbstractAssembler.h:25
escript::Data readBinaryGridFromZipped(std::string filename, escript::FunctionSpace fs, const object &pyShape, double fill, int byteOrder, int dataType, const object &pyFirst, const object &pyNum, const object &pyMultiplier, const object &pyReverse)
Definition: ripleycpp.cpp:87
unsigned int m_subdivisions
Definition: MultiRectangle.h:148
Base class for all escript domains.
Definition: AbstractDomain.h:45
#define ESYS_ASSERT(a, b)
EsysAssert is a MACRO that will throw an exception if the boolean condition specified is false...
Definition: Assert.h:78
#define RIPLEY_DLL_API
Definition: ripley/src/system_dep.h:20
index_t dim_t
Definition: DataTypes.h:64
std::vector< IndexVector > m_colIndices
Definition: MultiRectangle.h:146