37 #ifndef NEKTAR_LIB_UTILITIES_BASIC_UTILS_PTSFIELD_H 
   38 #define NEKTAR_LIB_UTILITIES_BASIC_UTILS_PTSFIELD_H 
   42 #include <boost/shared_ptr.hpp> 
   43 #include <boost/function.hpp> 
   51 namespace LibUtilities
 
  107             const vector<std::string> fieldnames,
 
  109             map<PtsInfo,int> ptsInfo = NullPtsInfoMap):
 
  112                 m_fieldNames(fieldnames),
 
  120             const vector<std::string> fieldnames,
 
  124             m_ptsInfo(NullPtsInfoMap),
 
  126             m_fieldNames(fieldnames),
 
  130                 m_neighInds(neighInds)
 
  136             short int coordId = -1);
 
  141             short int coordId = -1);
 
  171             const vector<std::string> fieldNames);
 
  174                                            const std::string fieldName);
 
  200         template<
typename FuncPo
interT, 
typename ObjectPo
interT>
 
  204             m_progressCallback = boost::bind(func, obj, _1, _2);
 
  257                 vector<PtsPoint> &neighbourPts,
 
  258                 const unsigned int numPts = 1);
 
Array< OneD, Array< OneD, unsigned int > > m_neighInds
Indices of the relevant neighbours for each physical point. Structure: m_neighInds[ptIdx][neighbourId...
 
map< PtsInfo, int > m_ptsInfo
map for information about points that can be added through PtsInfo enum 
 
Array< OneD, Array< OneD, float > > m_weights
Interpolation weights for each neighbour. Structure: m_weights[physPtIdx][neighbourIdx]. 
 
PtsPoint(int idx, Array< OneD, NekDouble > coords, NekDouble distSq)
 
vector< Array< OneD, int > > m_ptsConn
Connectivity data needed for ePtsTetBlock and ePtsTriBlock. For n Blocks with m elements each...
 
boost::shared_ptr< PtsField > PtsFieldSharedPtr
 
vector< int > m_nPtsPerEdge
Number of points per edge. Empty if the point data has no specific shape (ePtsLine) or is a block (eP...
 
Array< OneD, Array< OneD, NekDouble > > m_pts
Point data. For a n-dimensional field, the first m_dim fields are the points spatial coordinates...
 
map< pair< int, int >, NekDouble > weights(set< pair< int, int > > springs, Array< OneD, NekDouble > u, Array< OneD, NekDouble > v)
 
PtsType m_ptsType
Type of the PtsField. 
 
#define LIB_UTILITIES_EXPORT
 
int m_dim
Dimension of the pts field. 
 
vector< std::string > m_fieldNames
Names of the field variables. 
 
PtsField(const int dim, const vector< std::string > fieldnames, const Array< OneD, Array< OneD, NekDouble > > &pts, map< PtsInfo, int > ptsInfo=NullPtsInfoMap)
 
void setProgressCallback(FuncPointerT func, ObjectPointerT obj)
 
Array< OneD, NekDouble > m_coords
 
bool operator<(const BasisKey &lhs, const BasisKey &rhs)
 
static PtsFieldSharedPtr NullPtsField
 
static map< PtsInfo, int > NullPtsInfoMap
 
vector< NekDouble > m_boxSize
vector of box size xmin,xmax,ymin,ymax,zmin,zmax 
 
PtsField(const int dim, const vector< std::string > fieldnames, const Array< OneD, Array< OneD, NekDouble > > &pts, const Array< OneD, Array< OneD, float > > &weights, const Array< OneD, Array< OneD, unsigned int > > &neighInds)
 
boost::function< void(const int position, const int goal)> m_progressCallback