An abstract base class for domain splitters used in discrete element method simulations.
Definition domain_splittor.hpp:17
virtual STLModel GetSTLModel()=0
Gets the STL model corresponding to the discretized domain.
virtual ~DomainSplittor()
Virtual destructor.
Definition domain_splittor.hpp:101
virtual void MakePorosity(double porosity)=0
Modifies the domain by adding porosity.
virtual STLModel GetSTLModel(const VecXT< int > &indices)=0
Gets the STL model corresponding to a subset of the discretized domain.
virtual void GetPeriDigmNodes(VecXT< Vec3d > *const nodes, VecXT< double > *const node_vols)=0
Gets the nodes and volumes of the discretized domain.
virtual void InitFromSTL(STLModel const &stl_model, int num_ele_each)=0
Initializes the domain splitter from an STL model.
DomainSplittor()
Default constructor.
Definition domain_splittor.hpp:22
virtual void InitFromSTL(std::string const &stl_file, int num_ele_each)
Initializes the domain splitter from an STL file.
Definition domain_splittor.hpp:34