NetDEM v1.0
Loading...
Searching...
No Matches
gen_pack.hpp
Go to the documentation of this file.
1#pragma once
2
3#include "bonded_spheres.hpp"
4#include "bonded_voronois.hpp"
6#include "particle.hpp"
7#include "shape.hpp"
8#include "shape_sphere.hpp"
9#include "utils_math.hpp"
10
11namespace netdem {
12
17public:
37 static VecXT<Particle> GetGridPack(double len_x, double len_y, double len_z,
38 double center_x, double center_y,
39 double center_z, int num_x, int num_y,
40 int num_z,
41 const VecXT<Shape *> &shape_list);
42
62 static VecXT<Particle> GetGridPack(double len_x, double len_y, double len_z,
63 double center_x, double center_y,
64 double center_z, int num_x, int num_y,
65 int num_z, Shape *shape);
66
88 GetGridPack(double len_x, double len_y, double len_z, double center_x,
89 double center_y, double center_z, int num_x, int num_y, int num_z,
90 const BondedSpheres &bonded_spheres_template);
91
113 GetGridPack(double len_x, double len_y, double len_z, double center_x,
114 double center_y, double center_z, int num_x, int num_y, int num_z,
115 const BondedVoronois &bonded_voronois_template);
116
130 static VecXT<Particle> GetVoronoiPack(STLModel const &st_model, int num_p,
131 const VecXT<Shape *> &shape_list);
132
151 static VecXT<Particle> GetVoronoiPack(double len_x, double len_y,
152 double len_z, double center_x,
153 double center_y, double center_z,
154 int num_p,
155 const VecXT<Shape *> &shape_list);
156
175 static VecXT<Particle> GetVoronoiPack(double len_x, double len_y,
176 double len_z, double center_x,
177 double center_y, double center_z,
178 int num_p, Shape *shape);
179
193 static VecXT<Particle> GetVoronoiPack(STLModel const &st_model, int num_p,
194 Shape *shape);
195};
196
197} // namespace netdem
A class representing a sphere bonded to other spheres through contact pairs.
Definition bonded_spheres.hpp:18
A class representing a set of bonded Voronoi cells generated from an STL file.
Definition bonded_voronois.hpp:19
A class for generating packs of particles.
Definition gen_pack.hpp:16
static VecXT< Particle > GetGridPack(double len_x, double len_y, double len_z, double center_x, double center_y, double center_z, int num_x, int num_y, int num_z, const VecXT< Shape * > &shape_list)
Generate a grid of particles.
Definition gen_pack.cpp:6
static VecXT< Particle > GetVoronoiPack(STLModel const &st_model, int num_p, const VecXT< Shape * > &shape_list)
Generate a pack of particles inside a mesh using Voronoi tessellation.
Definition gen_pack.cpp:148
Class for working with STL models.
Definition stl_model.hpp:17
This class represents different types of shapes and performs various calculations on them.
Definition shape.hpp:15
Definition bond_entry.hpp:7
std::vector< T > VecXT
Definition utils_macros.hpp:31