escript  Revision_
Classes | Typedefs | Enumerations | Functions | Variables
speckley Namespace Reference

Classes

class  AbstractAssembler
 
class  Brick
 Brick is the 3-dimensional implementation of a SpeckleyDomain. More...
 
class  DefaultAssembler2D
 
class  DefaultAssembler3D
 
struct  DiracPoint
 A struct to contain a dirac point's information. More...
 
struct  ReaderParameters
 Structure that wraps parameters for the grid reading routines. More...
 
class  Rectangle
 Rectangle is the 2-dimensional implementation of a SpeckleyDomain. More...
 
class  RipleyCoupler
 
class  SpeckleyDomain
 SpeckleyDomain extends the AbstractContinuousDomain interface for the Speckley library and is the base class for Rectangle and Brick. More...
 
class  SpeckleyException
 SpeckleyException exception class. More...
 
class  WaveAssembler2D
 
class  WaveAssembler3D
 

Typedefs

typedef std::map< std::string, escript::DataDataMap
 
typedef std::pair< index_t, index_t > IndexPair
 
typedef std::vector< index_t > IndexVector
 
typedef std::vector< real_t > DoubleVector
 
typedef std::map< std::string, int > TagMap
 
typedef std::map< std::string, int > simap_t
 

Enumerations

enum  {
  DegreesOfFreedom =1, ReducedDegreesOfFreedom =2, Nodes =3, ReducedNodes =14,
  Elements =4, ReducedElements =10, FaceElements =5, ReducedFaceElements =11,
  Points =6
}
 
enum  assembler_t { DEFAULT_ASSEMBLER }
 
enum  { BYTEORDER_NATIVE = BOOST_BYTE_ORDER, BYTEORDER_LITTLE_ENDIAN = 1234, BYTEORDER_BIG_ENDIAN = 4321 }
 
enum  { DATATYPE_INT32 = 1, DATATYPE_FLOAT32, DATATYPE_FLOAT64 }
 

Functions

escript::Data unpackData (std::string target, std::map< std::string, escript::Data > mapping)
 
typedef POINTER_WRAPPER_CLASS (AbstractAssembler) Assembler_ptr
 
int indexOfMax (dim_t a, dim_t b, dim_t c)
 
bool probeInterpolationAcross (int fsType_source, const escript::AbstractDomain &domain, int fsType_target, int dim)
 
void interpolateAcross3D (escript::Data &target, const escript::Data &source, const Brick *speck, const double s_dx[3], int rank, MPI_Comm comm)
 interpolates data given on source onto target where source and target are given on different domains More...
 
void factorise (std::vector< int > &factors, int product)
 
const escript::Data unpackData (const std::string target, const DataMap &mapping)
 
bool isNotEmpty (const std::string target, const DataMap &mapping)
 
double lagrange_degree2_0 (double xi)
 
double lagrange_degree2_1 (double xi)
 
double lagrange_degree2_2 (double xi)
 
double lagrange_degree3_0 (double xi)
 
double lagrange_degree3_1 (double xi)
 
double lagrange_degree3_2 (double xi)
 
double lagrange_degree3_3 (double xi)
 
double lagrange_degree4_0 (double xi)
 
double lagrange_degree4_1 (double xi)
 
double lagrange_degree4_2 (double xi)
 
double lagrange_degree4_3 (double xi)
 
double lagrange_degree4_4 (double xi)
 
double lagrange_degree5_0 (double xi)
 
double lagrange_degree5_1 (double xi)
 
double lagrange_degree5_2 (double xi)
 
double lagrange_degree5_3 (double xi)
 
double lagrange_degree5_4 (double xi)
 
double lagrange_degree5_5 (double xi)
 
double lagrange_degree6_0 (double xi)
 
double lagrange_degree6_1 (double xi)
 
double lagrange_degree6_2 (double xi)
 
double lagrange_degree6_3 (double xi)
 
double lagrange_degree6_4 (double xi)
 
double lagrange_degree6_5 (double xi)
 
double lagrange_degree6_6 (double xi)
 
double lagrange_degree7_0 (double xi)
 
double lagrange_degree7_1 (double xi)
 
double lagrange_degree7_2 (double xi)
 
double lagrange_degree7_3 (double xi)
 
double lagrange_degree7_4 (double xi)
 
double lagrange_degree7_5 (double xi)
 
double lagrange_degree7_6 (double xi)
 
double lagrange_degree7_7 (double xi)
 
double lagrange_degree8_0 (double xi)
 
double lagrange_degree8_1 (double xi)
 
double lagrange_degree8_2 (double xi)
 
double lagrange_degree8_3 (double xi)
 
double lagrange_degree8_4 (double xi)
 
double lagrange_degree8_5 (double xi)
 
double lagrange_degree8_6 (double xi)
 
double lagrange_degree8_7 (double xi)
 
double lagrange_degree8_8 (double xi)
 
double lagrange_degree9_0 (double xi)
 
double lagrange_degree9_1 (double xi)
 
double lagrange_degree9_2 (double xi)
 
double lagrange_degree9_3 (double xi)
 
double lagrange_degree9_4 (double xi)
 
double lagrange_degree9_5 (double xi)
 
double lagrange_degree9_6 (double xi)
 
double lagrange_degree9_7 (double xi)
 
double lagrange_degree9_8 (double xi)
 
double lagrange_degree9_9 (double xi)
 
double lagrange_degree10_0 (double xi)
 
double lagrange_degree10_1 (double xi)
 
double lagrange_degree10_2 (double xi)
 
double lagrange_degree10_3 (double xi)
 
double lagrange_degree10_4 (double xi)
 
double lagrange_degree10_5 (double xi)
 
double lagrange_degree10_6 (double xi)
 
double lagrange_degree10_7 (double xi)
 
double lagrange_degree10_8 (double xi)
 
double lagrange_degree10_9 (double xi)
 
double lagrange_degree10_10 (double xi)
 
template<typename T >
std::vector< T > extractPyArray (const object &obj, const std::string &name, int expectedLength=0)
 
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)
 
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)
 
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)
 
escript::Domain_ptr _brick (int order, double _n0, double _n1, double _n2, const object &l0, const object &l1, const object &l2, int d0, int d1, int d2, const object &objpoints, const object &objtags, escript::SubWorld_ptr world)
 
escript::Domain_ptr _rectangle (int order, double _n0, double _n1, const object &l0, const object &l1, int d0, int d1, const object &objpoints, const object &objtags, escript::SubWorld_ptr world)
 
void tupleListToMap (DataMap &mapping, const bp::list &list)
 
char * byte_swap32 (char *val)
 
char * byte_swap64 (char *val)
 

Variables

const double ripleyLocations [2] = {.21132486540518711775, .78867513459481288225}
 
const double point_locations [][11]
 

Typedef Documentation

◆ DataMap

typedef std::map<std::string, escript::Data> speckley::DataMap

◆ DoubleVector

typedef std::vector<real_t> speckley::DoubleVector

◆ IndexPair

typedef std::pair<index_t,index_t> speckley::IndexPair

◆ IndexVector

typedef std::vector<index_t> speckley::IndexVector

◆ simap_t

typedef std::map<std::string, int> speckley::simap_t

◆ TagMap

typedef std::map<std::string,int> speckley::TagMap

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
DegreesOfFreedom 
ReducedDegreesOfFreedom 
Nodes 
ReducedNodes 
Elements 
ReducedElements 
FaceElements 
ReducedFaceElements 
Points 

◆ anonymous enum

anonymous enum
Enumerator
BYTEORDER_NATIVE 
BYTEORDER_LITTLE_ENDIAN 
BYTEORDER_BIG_ENDIAN 

◆ anonymous enum

anonymous enum
Enumerator
DATATYPE_INT32 
DATATYPE_FLOAT32 
DATATYPE_FLOAT64 

◆ assembler_t

Enumerator
DEFAULT_ASSEMBLER 

Function Documentation

◆ _brick()

escript::Domain_ptr speckley::_brick ( int  order,
double  _n0,
double  _n1,
double  _n2,
const object &  l0,
const object &  l1,
const object &  l2,
int  d0,
int  d1,
int  d2,
const object &  objpoints,
const object &  objtags,
escript::SubWorld_ptr  world 
)

References paso::util::l2().

Referenced by BOOST_PYTHON_MODULE().

◆ _rectangle()

escript::Domain_ptr speckley::_rectangle ( int  order,
double  _n0,
double  _n1,
const object &  l0,
const object &  l1,
int  d0,
int  d1,
const object &  objpoints,
const object &  objtags,
escript::SubWorld_ptr  world 
)

Referenced by BOOST_PYTHON_MODULE().

◆ byte_swap32()

char* speckley::byte_swap32 ( char *  val)
inline

◆ byte_swap64()

char* speckley::byte_swap64 ( char *  val)
inline

◆ extractPyArray()

template<typename T >
std::vector<T> speckley::extractPyArray ( const object &  obj,
const std::string &  name,
int  expectedLength = 0 
)

◆ factorise()

void speckley::factorise ( std::vector< int > &  factors,
int  product 
)

factorises 'product' and inserts the factors into the vector 'factors' in order of smallest to largest

Referenced by speckley::Brick::Brick(), isNotEmpty(), and speckley::Rectangle::Rectangle().

◆ indexOfMax()

int speckley::indexOfMax ( dim_t  a,
dim_t  b,
dim_t  c 
)
inline

Referenced by speckley::Brick::Brick().

◆ interpolateAcross3D()

void speckley::interpolateAcross3D ( escript::Data target,
const escript::Data source,
const Brick speck,
const double  s_dx[3],
int  rank,
MPI_Comm  comm 
)

interpolates data given on source onto target where source and target are given on different domains

◆ isNotEmpty()

bool speckley::isNotEmpty ( const std::string  target,
const DataMap mapping 
)
inline

◆ lagrange_degree10_0()

double speckley::lagrange_degree10_0 ( double  xi)
inline

◆ lagrange_degree10_1()

double speckley::lagrange_degree10_1 ( double  xi)
inline

◆ lagrange_degree10_10()

double speckley::lagrange_degree10_10 ( double  xi)
inline

◆ lagrange_degree10_2()

double speckley::lagrange_degree10_2 ( double  xi)
inline

◆ lagrange_degree10_3()

double speckley::lagrange_degree10_3 ( double  xi)
inline

◆ lagrange_degree10_4()

double speckley::lagrange_degree10_4 ( double  xi)
inline

◆ lagrange_degree10_5()

double speckley::lagrange_degree10_5 ( double  xi)
inline

◆ lagrange_degree10_6()

double speckley::lagrange_degree10_6 ( double  xi)
inline

◆ lagrange_degree10_7()

double speckley::lagrange_degree10_7 ( double  xi)
inline

◆ lagrange_degree10_8()

double speckley::lagrange_degree10_8 ( double  xi)
inline

◆ lagrange_degree10_9()

double speckley::lagrange_degree10_9 ( double  xi)
inline

◆ lagrange_degree2_0()

double speckley::lagrange_degree2_0 ( double  xi)
inline

◆ lagrange_degree2_1()

double speckley::lagrange_degree2_1 ( double  xi)
inline

◆ lagrange_degree2_2()

double speckley::lagrange_degree2_2 ( double  xi)
inline

◆ lagrange_degree3_0()

double speckley::lagrange_degree3_0 ( double  xi)
inline

◆ lagrange_degree3_1()

double speckley::lagrange_degree3_1 ( double  xi)
inline

◆ lagrange_degree3_2()

double speckley::lagrange_degree3_2 ( double  xi)
inline

◆ lagrange_degree3_3()

double speckley::lagrange_degree3_3 ( double  xi)
inline

◆ lagrange_degree4_0()

double speckley::lagrange_degree4_0 ( double  xi)
inline

◆ lagrange_degree4_1()

double speckley::lagrange_degree4_1 ( double  xi)
inline

◆ lagrange_degree4_2()

double speckley::lagrange_degree4_2 ( double  xi)
inline

◆ lagrange_degree4_3()

double speckley::lagrange_degree4_3 ( double  xi)
inline

◆ lagrange_degree4_4()

double speckley::lagrange_degree4_4 ( double  xi)
inline

◆ lagrange_degree5_0()

double speckley::lagrange_degree5_0 ( double  xi)
inline

◆ lagrange_degree5_1()

double speckley::lagrange_degree5_1 ( double  xi)
inline

◆ lagrange_degree5_2()

double speckley::lagrange_degree5_2 ( double  xi)
inline

◆ lagrange_degree5_3()

double speckley::lagrange_degree5_3 ( double  xi)
inline

◆ lagrange_degree5_4()

double speckley::lagrange_degree5_4 ( double  xi)
inline

◆ lagrange_degree5_5()

double speckley::lagrange_degree5_5 ( double  xi)
inline

◆ lagrange_degree6_0()

double speckley::lagrange_degree6_0 ( double  xi)
inline

◆ lagrange_degree6_1()

double speckley::lagrange_degree6_1 ( double  xi)
inline

◆ lagrange_degree6_2()

double speckley::lagrange_degree6_2 ( double  xi)
inline

◆ lagrange_degree6_3()

double speckley::lagrange_degree6_3 ( double  xi)
inline

◆ lagrange_degree6_4()

double speckley::lagrange_degree6_4 ( double  xi)
inline

◆ lagrange_degree6_5()

double speckley::lagrange_degree6_5 ( double  xi)
inline

◆ lagrange_degree6_6()

double speckley::lagrange_degree6_6 ( double  xi)
inline

◆ lagrange_degree7_0()

double speckley::lagrange_degree7_0 ( double  xi)
inline

◆ lagrange_degree7_1()

double speckley::lagrange_degree7_1 ( double  xi)
inline

◆ lagrange_degree7_2()

double speckley::lagrange_degree7_2 ( double  xi)
inline

◆ lagrange_degree7_3()

double speckley::lagrange_degree7_3 ( double  xi)
inline

◆ lagrange_degree7_4()

double speckley::lagrange_degree7_4 ( double  xi)
inline

◆ lagrange_degree7_5()

double speckley::lagrange_degree7_5 ( double  xi)
inline

◆ lagrange_degree7_6()

double speckley::lagrange_degree7_6 ( double  xi)
inline

◆ lagrange_degree7_7()

double speckley::lagrange_degree7_7 ( double  xi)
inline

◆ lagrange_degree8_0()

double speckley::lagrange_degree8_0 ( double  xi)
inline

◆ lagrange_degree8_1()

double speckley::lagrange_degree8_1 ( double  xi)
inline

◆ lagrange_degree8_2()

double speckley::lagrange_degree8_2 ( double  xi)
inline

◆ lagrange_degree8_3()

double speckley::lagrange_degree8_3 ( double  xi)
inline

◆ lagrange_degree8_4()

double speckley::lagrange_degree8_4 ( double  xi)
inline

◆ lagrange_degree8_5()

double speckley::lagrange_degree8_5 ( double  xi)
inline

◆ lagrange_degree8_6()

double speckley::lagrange_degree8_6 ( double  xi)
inline

◆ lagrange_degree8_7()

double speckley::lagrange_degree8_7 ( double  xi)
inline

◆ lagrange_degree8_8()

double speckley::lagrange_degree8_8 ( double  xi)
inline

◆ lagrange_degree9_0()

double speckley::lagrange_degree9_0 ( double  xi)
inline

◆ lagrange_degree9_1()

double speckley::lagrange_degree9_1 ( double  xi)
inline

◆ lagrange_degree9_2()

double speckley::lagrange_degree9_2 ( double  xi)
inline

◆ lagrange_degree9_3()

double speckley::lagrange_degree9_3 ( double  xi)
inline

◆ lagrange_degree9_4()

double speckley::lagrange_degree9_4 ( double  xi)
inline

◆ lagrange_degree9_5()

double speckley::lagrange_degree9_5 ( double  xi)
inline

◆ lagrange_degree9_6()

double speckley::lagrange_degree9_6 ( double  xi)
inline

◆ lagrange_degree9_7()

double speckley::lagrange_degree9_7 ( double  xi)
inline

◆ lagrange_degree9_8()

double speckley::lagrange_degree9_8 ( double  xi)
inline

◆ lagrange_degree9_9()

double speckley::lagrange_degree9_9 ( double  xi)
inline

◆ POINTER_WRAPPER_CLASS()

typedef speckley::POINTER_WRAPPER_CLASS ( AbstractAssembler  )

◆ probeInterpolationAcross()

bool speckley::probeInterpolationAcross ( int  fsType_source,
const escript::AbstractDomain domain,
int  fsType_target,
int  dim 
)

◆ readBinaryGrid()

escript::Data speckley::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 
)

◆ readBinaryGridFromZipped()

escript::Data speckley::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 
)

◆ readNcGrid()

escript::Data speckley::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 
)

◆ tupleListToMap()

void speckley::tupleListToMap ( DataMap mapping,
const bp::list &  list 
)

◆ unpackData() [1/2]

escript::Data speckley::unpackData ( std::string  target,
std::map< std::string, escript::Data mapping 
)

Referenced by speckley::DefaultAssembler2D::assemblePDEBoundarySingle(), speckley::DefaultAssembler3D::assemblePDEBoundarySingle(), speckley::WaveAssembler2D::assemblePDEBoundarySingle(), speckley::WaveAssembler3D::assemblePDEBoundarySingle(), speckley::DefaultAssembler2D::assemblePDEBoundarySingleReduced(), speckley::DefaultAssembler3D::assemblePDEBoundarySingleReduced(), speckley::WaveAssembler2D::assemblePDEBoundarySingleReduced(), speckley::WaveAssembler3D::assemblePDEBoundarySingleReduced(), speckley::DefaultAssembler2D::assemblePDEBoundarySystem(), speckley::DefaultAssembler3D::assemblePDEBoundarySystem(), speckley::WaveAssembler2D::assemblePDEBoundarySystem(), speckley::WaveAssembler3D::assemblePDEBoundarySystem(), speckley::DefaultAssembler2D::assemblePDEBoundarySystemReduced(), speckley::DefaultAssembler3D::assemblePDEBoundarySystemReduced(), speckley::WaveAssembler2D::assemblePDEBoundarySystemReduced(), speckley::WaveAssembler3D::assemblePDEBoundarySystemReduced(), speckley::SpeckleyDomain::assemblePDEDirac(), speckley::DefaultAssembler2D::assemblePDESingle(), speckley::DefaultAssembler3D::assemblePDESingle(), speckley::WaveAssembler2D::assemblePDESingle(), speckley::WaveAssembler3D::assemblePDESingle(), speckley::DefaultAssembler2D::assemblePDESingleReduced(), speckley::DefaultAssembler3D::assemblePDESingleReduced(), speckley::WaveAssembler2D::assemblePDESingleReduced(), speckley::WaveAssembler3D::assemblePDESingleReduced(), speckley::DefaultAssembler2D::assemblePDESystem(), speckley::DefaultAssembler3D::assemblePDESystem(), speckley::WaveAssembler2D::assemblePDESystem(), speckley::WaveAssembler3D::assemblePDESystem(), speckley::DefaultAssembler2D::assemblePDESystemReduced(), speckley::DefaultAssembler3D::assemblePDESystemReduced(), speckley::WaveAssembler2D::assemblePDESystemReduced(), and speckley::WaveAssembler3D::assemblePDESystemReduced().

◆ unpackData() [2/2]

const escript::Data speckley::unpackData ( const std::string  target,
const DataMap mapping 
)
inline

returns the data associated with the string key or an empty data object if the map does not contain the given key

Variable Documentation

◆ point_locations

const double speckley::point_locations[][11]
Initial value:
= {
{0.0, 0.5, 1.0},
{0.0, 0.27639320225, 0.72360679775, 1.0},
{0.0, 0.172673164646, 0.5, 0.827326835354, 1.0},
{0.0, 0.117472338035, 0.35738424176, 0.64261575824, 0.882527661965, 1.0},
{0.0, 0.0848880518607, 0.265575603265, 0.5, 0.734424396735, 0.915111948139, 1.0},
{0.0, 0.0641299257452, 0.204149909283, 0.395350391049, 0.604649608951, 0.795850090717, 0.935870074255, 1.0},
{0.0, 0.0501210022943, 0.161406860245, 0.318441268087, 0.5, 0.681558731913, 0.838593139755, 0.949878997706, 1.0},
{0.0, 0.0402330459168, 0.130613067447, 0.261037525095, 0.417360521167, 0.582639478833, 0.738962474905, 0.869386932553, 0.959766954083, 1.0},
{0.0, 0.032999284796, 0.107758263168, 0.217382336502, 0.352120932207, 0.5, 0.647879067793, 0.782617663498, 0.892241736832, 0.967000715204, 1.0}}

Referenced by speckley::Brick::getLocalCoordinate(), speckley::Rectangle::getLocalCoordinate(), speckley::Brick::interpolateFromCorners(), speckley::Rectangle::interpolateFromCorners(), speckley::Brick::setToSize(), and speckley::Rectangle::setToSize().

◆ ripleyLocations

const double speckley::ripleyLocations[2] = {.21132486540518711775, .78867513459481288225}