24 #ifndef COM_DAFER45_TBTK_SPACE_PARTITION
25 #define COM_DAFER45_TBTK_SPACE_PARTITION
46 enum class MeshType {Nodal, Interior};
53 const std::vector<std::vector<double>> &basisVectors,
58 virtual ~SpacePartition();
61 unsigned int getNumDimensions()
const;
65 virtual Index getMajorCellIndex(
66 const std::vector<double> &coordinate
72 virtual Index getMinorCellIndex(
73 const std::vector<double> &coordinate,
74 const std::vector<unsigned int> &numMeshPoints
79 virtual std::vector<std::vector<double>> getMajorMesh(
80 const std::vector<unsigned int> &numMeshPoints
85 virtual std::vector<std::vector<double>> getMinorMesh(
86 const std::vector<unsigned int> &numMeshPoints
95 virtual std::vector<double> getMinorMeshPoint(
96 const std::vector<unsigned int> &meshPoint,
97 const std::vector<unsigned int> &numMeshPoints
101 const std::vector<Vector3d>& getBasisVectors()
const;
104 MeshType getMeshType()
const;
113 std::vector<Vector3d> basisVectors;
119 inline unsigned int SpacePartition::getNumDimensions()
const{
123 inline const std::vector<Vector3d>& SpacePartition::getBasisVectors()
const{
127 inline SpacePartition::MeshType SpacePartition::getMeshType()
const{