Portage::Meshfree::oper Namespace Reference

Classes

class  DomainTraits
 
class  DomainTraits< Circle >
 
class  DomainTraits< Hexahedron >
 
class  DomainTraits< Interval >
 
class  DomainTraits< Quadrilateral >
 
class  DomainTraits< Sphere >
 
class  DomainTraits< Tetrahedron >
 
class  DomainTraits< Triangle >
 
class  DomainTraits< Wedge >
 
class  Operator
 
class  Operator< VolumeIntegral, basis::Linear, Hexahedron >
 
class  Operator< VolumeIntegral, basis::Linear, Interval >
 
class  Operator< VolumeIntegral, basis::Linear, Quadrilateral >
 
class  Operator< VolumeIntegral, basis::Linear, Tetrahedron >
 
class  Operator< VolumeIntegral, basis::Linear, Triangle >
 
class  Operator< VolumeIntegral, basis::Linear, Wedge >
 
class  Operator< VolumeIntegral, basis::Quadratic, Interval >
 
class  Operator< VolumeIntegral, basis::Quadratic, Quadrilateral >
 
class  Operator< VolumeIntegral, basis::Quadratic, Tetrahedron >
 
class  Operator< VolumeIntegral, basis::Quadratic, Triangle >
 
class  Operator< VolumeIntegral, basis::Unitary, Hexahedron >
 
class  Operator< VolumeIntegral, basis::Unitary, Interval >
 
class  Operator< VolumeIntegral, basis::Unitary, Quadrilateral >
 
class  Operator< VolumeIntegral, basis::Unitary, Tetrahedron >
 
class  Operator< VolumeIntegral, basis::Unitary, Triangle >
 
class  Operator< VolumeIntegral, basis::Unitary, Wedge >
 
class  OperatorBase
 

Enumerations

enum  Domain {
  Interval, Quadrilateral, Triangle, Circle,
  Hexahedron, Tetrahedron, Wedge, Sphere,
  LastDomain
}
 
enum  Type { VolumeIntegral, SurfaceIntegral, LastOperator }
 

Functions

constexpr size_t dimension (Domain domain)
 
template<int dim>
Domain domain_from_points (std::vector< Wonton::Point< dim >> const &points)
 
std::array< size_t, 3 > size_info (Type type, basis::Type basis, Domain domain)
 
template<class OP >
void copy_points (const std::vector< Wonton::Point< OP::dim >> &points, typename OP::points_t &apts)
 
template<class OP >
Wonton::Point< OP::dim > centroid (const typename OP::points_t &apts)
 
template<class OP >
void shift_points (const Wonton::Point< OP::dim > c, typename OP::points_t &apts)
 
template<class OP >
void resize_result (std::vector< std::vector< double >> &result)
 
template<class OP >
void copy_result (const typename OP::result_t &ares, std::vector< std::vector< double >> &result)
 
template<class OP >
void get_result (const std::vector< Wonton::Point< OP::dim >> &points, std::vector< std::vector< double >> &result, const bool center=true)
 
template<class OP >
std::vector< std::vector< double > > get_result (const std::vector< Wonton::Point< OP::dim >> &points, bool center=true)
 
template<size_t dim>
void apply (const Type type, const basis::Type basis_type, const Domain domain_type, const std::vector< Wonton::Point< dim >> &points, std::vector< std::vector< double >> &result)
 
template<>
void apply< 1 > (const Type type, const basis::Type basis_type, const Domain domain_type, const std::vector< Wonton::Point< 1 >> &points, std::vector< std::vector< double >> &result)
 
template<>
void apply< 2 > (const Type type, const basis::Type basis_type, const Domain domain_type, const std::vector< Wonton::Point< 2 >> &points, std::vector< std::vector< double >> &result)
 
template<>
void apply< 3 > (const Type type, const basis::Type basis_type, const Domain domain_type, const std::vector< Wonton::Point< 3 >> &points, std::vector< std::vector< double >> &result)
 

Enumeration Type Documentation

◆ Domain

Enumerator
Interval 
Quadrilateral 
Triangle 
Circle 
Hexahedron 
Tetrahedron 
Wedge 
Sphere 
LastDomain 

◆ Type

Enumerator
VolumeIntegral 
SurfaceIntegral 
LastOperator 

Function Documentation

◆ apply()

template<size_t dim>
void Portage::Meshfree::oper::apply ( const Type  type,
const basis::Type  basis_type,
const Domain  domain_type,
const std::vector< Wonton::Point< dim >> &  points,
std::vector< std::vector< double >> &  result 
)

◆ apply< 1 >()

template<>
void Portage::Meshfree::oper::apply< 1 > ( const Type  type,
const basis::Type  basis_type,
const Domain  domain_type,
const std::vector< Wonton::Point< 1 >> &  points,
std::vector< std::vector< double >> &  result 
)
inline

◆ apply< 2 >()

template<>
void Portage::Meshfree::oper::apply< 2 > ( const Type  type,
const basis::Type  basis_type,
const Domain  domain_type,
const std::vector< Wonton::Point< 2 >> &  points,
std::vector< std::vector< double >> &  result 
)
inline

◆ apply< 3 >()

template<>
void Portage::Meshfree::oper::apply< 3 > ( const Type  type,
const basis::Type  basis_type,
const Domain  domain_type,
const std::vector< Wonton::Point< 3 >> &  points,
std::vector< std::vector< double >> &  result 
)
inline

◆ centroid()

template<class OP >
Wonton::Point<OP::dim> Portage::Meshfree::oper::centroid ( const typename OP::points_t &  apts)
inline

◆ copy_points()

template<class OP >
void Portage::Meshfree::oper::copy_points ( const std::vector< Wonton::Point< OP::dim >> &  points,
typename OP::points_t &  apts 
)
inline

◆ copy_result()

template<class OP >
void Portage::Meshfree::oper::copy_result ( const typename OP::result_t &  ares,
std::vector< std::vector< double >> &  result 
)
inline

◆ dimension()

constexpr size_t Portage::Meshfree::oper::dimension ( Domain  domain)
Parameters
domain
Returns

◆ domain_from_points()

template<int dim>
Domain Portage::Meshfree::oper::domain_from_points ( std::vector< Wonton::Point< dim >> const &  points)
Template Parameters
dim
Parameters
points
Returns

◆ get_result() [1/2]

template<class OP >
void Portage::Meshfree::oper::get_result ( const std::vector< Wonton::Point< OP::dim >> &  points,
std::vector< std::vector< double >> &  result,
const bool  center = true 
)
inline

◆ get_result() [2/2]

template<class OP >
std::vector<std::vector<double> > Portage::Meshfree::oper::get_result ( const std::vector< Wonton::Point< OP::dim >> &  points,
bool  center = true 
)
inline

◆ resize_result()

template<class OP >
void Portage::Meshfree::oper::resize_result ( std::vector< std::vector< double >> &  result)
inline

◆ shift_points()

template<class OP >
void Portage::Meshfree::oper::shift_points ( const Wonton::Point< OP::dim >  c,
typename OP::points_t &  apts 
)
inline

◆ size_info()

std::array<size_t,3> Portage::Meshfree::oper::size_info ( Type  type,
basis::Type  basis,
Domain  domain 
)
inline