Code_TYMPAN  4.4.0
Industrial site acoustic simulation
Protected Member Functions | List of all members
TYChemin9613Solver2024 Class Reference

Representation of one of the most optimal path between source and receptor: S—>R. The class TYChemin represents a path between a Source and a receptor (Recepteur class). It's constituted of a collection of steps (TYEtape class). Specific derivation of TYChemin for 9613Solver version 2024. More...

#include <TYChemin9613Solver2024.h>

Inheritance diagram for TYChemin9613Solver2024:
Inheritance graph
[legend]
Collaboration diagram for TYChemin9613Solver2024:
Collaboration graph
[legend]

Protected Member Functions

OSpectreOctave calcTotalGroundAttenuation (const OSpectreOctave &Agr_s, const OSpectreOctave &Agr_r, const OSpectreOctave &Agr_m, double hs, double hr, double dp) const override
 Compute total ground attenuation Agr from region ground attenuations and geometric configuration. More...
 
OSpectreOctave calcMinimalExtensionConditionOneReflection (const OPoint3D &S, const OPoint3D &O, const OPoint3D &R, double a, double h, const OVector3D &n) const override
 Evaluate minimal extension condition for a specular reflection on a flat surface in function of the wavelength. More...
 

Additional Inherited Members

- Public Member Functions inherited from TYChemin9613Solver
 TYChemin9613Solver ()
 Constructor. More...
 
 TYChemin9613Solver (const TYChemin9613Solver &other)
 Copy contructor. More...
 
 ~TYChemin9613Solver () override
 Destructor. More...
 
TYChemin9613Solveroperator= (const TYChemin9613Solver &other)
 Operator =. More...
 
bool operator== (const TYChemin9613Solver &other) const
 Operator ==. More...
 
bool operator!= (const TYChemin9613Solver &other) const
 Operator !=. More...
 
void calcAttenuation (const TYTabEtape9613Solver &tabEtapes, const AtmosphericConditions &atmos, double dp=0.0, double hs=0.0, double hr=0.0, double Gs=0.5, double Gm=0.5, double Gr=0.5)
 Compute the global attenuation on the path. More...
 
void calcMinimalExtensionCondition (const OPoint3D &S, const OPoint3D &O, const OPoint3D &R, double a, double h, const OVector3D &n)
 Evaluate minimal extension condition for specular reflections on flat surfaces in function of the wavelength The result is stored as an attenuation of type REFLEXION_MIN_EXT_COND. It is the responsibility of the user to ensure that reflections occur over flat surfaces. NOTE: restricted to 1st order reflections only. More...
 
void computeBarAttenuation (const OSpectreOctave &Dz, const bool vertical, const bool left)
 Compute barrier attenuation on the path. It implements recommendation 5.5 of 17534-3 standard, or equivalently Eq. 16-17 of 9613-2:2024 standard. In addition to the parameters, the result is function of the attenuation of type ATTENUATION_GND_TOTAL. The result is stored as an attenuation of type ATTENUATION_BAR_TOP, or ATTENUATION_BAR_LEFT, or ATTENUATION_BAR_RIGHT. More...
 
OSpectreOctavegetAttenuation (const TYTypeAttenuation type)
 Return attenuation of the path of the type. More...
 
void setAttenuation (const TYTypeAttenuation &type, const OSpectreOctave &att)
 Set the atmospheric attenuation. More...
 
void setAttenuationBarWhenNoPath (bool vertical, bool left)
 Set attenuation bar to max to traduce the lack of diffracted ray on this path. More...
 
- Public Member Functions inherited from TYChemin
 TYChemin ()
 Constructor. More...
 
 TYChemin (const TYChemin &other)
 Copy contructor. More...
 
virtual ~TYChemin ()
 Destructor. More...
 
TYCheminoperator= (const TYChemin &other)
 Operator =. More...
 
bool operator== (const TYChemin &other) const
 Operator ==. More...
 
bool operator!= (const TYChemin &other) const
 Operator !=. More...
 
double getLongueur ()
 Get/Set the path length. More...
 
const double getLongueur () const
 
void setLongueur (const double &longueur)
 
double getDistance ()
 Get/Set the distance between source and receptor. More...
 
const double getDistance () const
 
void setDistance (const double &distance)
 
void setType (const TYTypeChemin &type)
 Change the path type. More...
 
const TYTypeChemin getType () const
 Return the path type. More...
 
template<typename T >
void build_eq_path (const T &tabEtapes)
 build an acoustic_path from the tab of etapes More...
 
acoustic_pathget_ray (OPoint3D ptR)
 
- Protected Attributes inherited from TYChemin9613Solver
std::map< TYTypeAttenuation, OSpectreOctave_attenuations
 Attenuations spectra of the path. More...
 
- Protected Attributes inherited from TYChemin
TYTypeChemin _typeChemin
 Path type (has an influence on the algorithm) More...
 
double _longueur
 Total path length. More...
 
double _distance
 Direct distance between source and receptor. More...
 
acoustic_path_eq_path
 Equivalent acoustic_path. More...
 

Detailed Description

Representation of one of the most optimal path between source and receptor: S—>R. The class TYChemin represents a path between a Source and a receptor (Recepteur class). It's constituted of a collection of steps (TYEtape class). Specific derivation of TYChemin for 9613Solver version 2024.

Definition at line 36 of file TYChemin9613Solver2024.h.

Member Function Documentation

◆ calcMinimalExtensionConditionOneReflection()

OSpectreOctave TYChemin9613Solver2024::calcMinimalExtensionConditionOneReflection ( const OPoint3D S,
const OPoint3D O,
const OPoint3D R,
double  a,
double  h,
const OVector3D n 
) const
overrideprotectedvirtual

Evaluate minimal extension condition for a specular reflection on a flat surface in function of the wavelength.

Parameters
Sthe source point
Othe reflection point on the flat surface
Rthe receptor point
athe horizontal extension of the surface (in meters)
hthe vertical extension of the surface (in meters)
nnormal of the surface (assumed to have a non-zero horizontal component)
Returns
a spectrum whose components are 1 (reflection occurs) or 0 (the wave passes through the surface)

Reimplemented from TYChemin9613Solver.

Definition at line 34 of file TYChemin9613Solver2024.cpp.

Here is the call graph for this function:

◆ calcTotalGroundAttenuation()

OSpectreOctave TYChemin9613Solver2024::calcTotalGroundAttenuation ( const OSpectreOctave Agr_s,
const OSpectreOctave Agr_r,
const OSpectreOctave Agr_m,
double  hs,
double  hr,
double  dp 
) const
overrideprotectedvirtual

Compute total ground attenuation Agr from region ground attenuations and geometric configuration.

Parameters
Agr_sGround attenuation spectrum in the "source region" in octave band
Agr_rGround attenuation spectrum in the "receiver region" in octave band
Agr_mGround attenuation spectrum in the "middle region" in octave band
hsHeight from ground of the source in meters
hrHeight from ground of the receiver in meters
dpDistance between source and receiver projected on an horizontal plane in meters
Returns
Total ground attenuation spectrum Agr

Reimplemented from TYChemin9613Solver.

Definition at line 18 of file TYChemin9613Solver2024.cpp.

Here is the call graph for this function:

The documentation for this class was generated from the following files: