28#ifndef dftefeGenerateMesh_h
29#define dftefeGenerateMesh_h
61 const std::vector<utils::Point> &atomCoordinates,
62 const std::vector<utils::Point> &domainBoundingVectors,
63 double radiusAroundAtom,
64 double meshSizeAroundAtom,
65 const std::vector<bool> & isPeriodicFlags,
67 const MPI_Comm & mpiDomainCommunicator,
81 const std::vector<utils::Point> &atomCoordinates,
82 const std::vector<utils::Point> &domainBoundingVectors,
84 double meshSizeAtAtom,
85 double radiusAroundAtom,
86 double meshSizeAroundAtom,
87 const std::vector<bool> & isPeriodicFlags,
89 const MPI_Comm & mpiDomainCommunicator,
100 const std::vector<bool> &isPeriodicFlags);
105 std::vector<size_type> & locallyOwnedCellsRefineFlags,
106 std::map<size_type, size_type> &cellIdToCellRefineFlagMapLocal,
112 std::vector<double> &maxAtomCoordinates,
113 std::vector<double> &minAtomCoordinates);
An abstract class to map a real point to parametric point and vice-versa.
Definition: CellMappingBase.h:27
Definition: GenerateMesh.h:48
const MPI_Comm & d_mpiInterpoolCommunicator
Definition: GenerateMesh.h:126
const std::vector< utils::Point > & d_domainBoundingVectors
Definition: GenerateMesh.h:123
double d_radiusAtAtom
Definition: GenerateMesh.h:117
bool d_adaptiveWithFineMesh
Definition: GenerateMesh.h:115
bool refineInsideSystemNonPeriodicAlgorithm(TriangulationBase &triangulation, std::vector< double > &maxAtomCoordinates, std::vector< double > &minAtomCoordinates)
Definition: GenerateMesh.cpp:390
const std::vector< bool > & d_isPeriodicFlags
Definition: GenerateMesh.h:124
double d_radiusAroundAtom
Definition: GenerateMesh.h:118
size_type d_dim
Definition: GenerateMesh.h:116
bool refinementAlgorithm(TriangulationBase &triangulation, std::vector< size_type > &locallyOwnedCellsRefineFlags, std::map< size_type, size_type > &cellIdToCellRefineFlagMapLocal, const basis::CellMappingBase &cellMapping)
Definition: GenerateMesh.cpp:257
size_type d_maxRefinementSteps
Definition: GenerateMesh.h:121
double d_meshSizeAroundAtom
Definition: GenerateMesh.h:120
void generateCoarseMesh(TriangulationBase &triangulation, const std::vector< bool > &isPeriodicFlags)
Definition: GenerateMesh.cpp:156
utils::ConditionalOStream d_rootCout
Definition: GenerateMesh.h:128
const std::vector< utils::Point > & d_atomCoordinates
Definition: GenerateMesh.h:122
void createMesh(TriangulationBase &triangulation)
Definition: GenerateMesh.cpp:457
std::vector< std::vector< bool > > d_triaCurrentRefinement
Definition: GenerateMesh.h:129
double d_meshSizeAtAtom
Definition: GenerateMesh.h:119
const MPI_Comm & d_mpiDomainCommunicator
Definition: GenerateMesh.h:125
const basis::CellMappingBase & d_cellMapping
Definition: GenerateMesh.h:127
An abstract class for the triangulation class. The derived class specialises this class to dealii and...
Definition: TriangulationBase.h:17
Provides an interface to print based on whether a certain condition is met or not....
Definition: ConditionalOStream.h:47
MPIComm MPICommSelf
Definition: MPITypes.cpp:155
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
unsigned int size_type
Definition: TypeConfig.h:8