10 #ifndef TYMPAN__ACOUSTIC_PROBLEM_MODEL_H__INCLUDED 11 #define TYMPAN__ACOUSTIC_PROBLEM_MODEL_H__INCLUDED 139 const Point& position_);
179 #endif // TYMPAN__ACOUSTIC_PROBLEM_MODEL_H__INCLUDED This file provides the declaration of the entities of the model, which inherit from BaseEntity...
const AcousticReceptor & receptor(receptor_idx idx) const
Return a receptor by its id.
const Point & node(node_idx idx) const
Return a node by its id.
std::deque< material_ptr_t > material_pool_t
size_t nreceptors() const
Return the total number of receptors.
source_pool_t all_sources
Array of all sources.
shared_ptr< AcousticMaterialBase > material_ptr_t
const material_pool_t & materials() const
Return array of materials.
node_idx make_node(const Point &point)
Destructor.
receptor_idx make_receptor(const Point &position_)
Push a new acoustic receptor into the model.
node_idx make_node(double x, double y, double z)
Call make_node(Point) with a point given by its coordinates.
triangle_idx make_triangle(node_idx n1, node_idx n2, node_idx n3)
triangle_pool_t all_triangles
Array of all triangles.
std::unique_ptr< AcousticProblemModel > make_AcousticProblemModel()
AcousticMaterialBase & material(size_t mat_idx)
Return a material by its id.
const receptor_pool_t & receptors() const
Return array of receptors.
AcousticTriangle & triangle(triangle_idx tri_idx)
Return a triangle by its id.
size_t nmaterials() const
Return the total number of materials.
const triangle_pool_t & triangles() const
Return array of triangles.
size_t ntriangles() const
Return the total number of triangles.
source_idx make_source(const Point &point_, const Spectrum &spectrum_, SourceDirectivityInterface *directivity)
Push a new acoustic source into the model.
AcousticSource & source(source_idx idx)
Return a source by its id.
Point & node(node_idx idx)
Return a node by its id.
const AcousticSource & source(source_idx idx) const
Return a source by its id.
AcousticReceptor & receptor(receptor_idx idx)
Return a receptor by its id.
nodes_pool_t all_nodes
Array of all nodes.
Common utilities and includes for all data models.
std::deque< AcousticTriangle > triangle_pool_t
Array of AcousticTriangle.
const AcousticTriangle & triangle(triangle_idx tri_idx) const
Return a triangle by its id.
Class to describe the acoustic problem.
Describes an acoustic receptor.
const nodes_pool_t & nodes() const
Return array of nodes.
std::deque< AcousticReceptor > receptor_pool_t
Array of receptors.
deque< triangle_idx > scene_volume_intersection(const triangle_pool_t &triangle_soup, const nodes_pool_t &nodes, float w, float h, OPoint3D source, OPoint3D receptor)
Find the intersection between some triangles (triangles, nodes) and a volume given by a width...
std::deque< Point > nodes_pool_t
size_t npoints() const
Return the total number of nodes.
size_t nsources() const
Return the total number of sources.
Describes an acoustic source.
std::deque< AcousticSource > source_pool_t
Array of sources.
material_pool_t all_materials
Array of all materials.
material_ptr_t make_material(const string &name, double resistivity, double deviation, double length)
Push a representation of a ground material into the model.
const source_pool_t & sources() const
Return array of sources.
Store acoustic power values for different frequencies.
virtual ~AcousticProblemModel()
Constructor.
const AcousticMaterialBase & material(size_t mat_idx) const
Return a material by its id.
receptor_pool_t all_receptors
Array of all receptors.
Interface for source directivity classes (SphericalSourceDirectivity, CommonFaceDirectivity, ...)