|
Code_TYMPAN
4.4.0
Industrial site acoustic simulation
|
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>


Public Member Functions | |
| OSpectreOctave | calcMinimalExtensionConditionOneReflection (const OPoint3D &Oprev, const OPoint3D &O, double d_SO, double d_OR, 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... | |
| void | calcCylinderReflectionAttenuation (const OPoint3D &S, const OPoint3D &R, const OPoint3D &P, const OPoint3D &M, double r, const OVector3D &axis) override |
| Compute attenuation when a reflection occur on a cylinder Implements Eq. 30 of 9613-2:2024 standard. More... | |
Public Member Functions inherited from TYChemin9613Solver | |
| TYChemin9613Solver () | |
| Constructor. More... | |
| TYChemin9613Solver (const TYChemin9613Solver &other) | |
| Copy contructor. More... | |
| ~TYChemin9613Solver () override | |
| Destructor. More... | |
| TYChemin9613Solver & | operator= (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 | setMinimalExtensionConditionReflection (const OSpectreOctave &filter) |
| Set the minimal extension condition reflection. 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... | |
| OSpectreOctave & | getAttenuation (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... | |
| bool | hasAttenuation (const TYTypeAttenuation type) const |
| Check if the attenuation of the given type exists in the attenuations table. More... | |
Public Member Functions inherited from TYChemin | |
| TYChemin () | |
| Constructor. More... | |
| TYChemin (const TYChemin &other) | |
| Copy contructor. More... | |
| virtual | ~TYChemin () |
| Destructor. More... | |
| TYChemin & | operator= (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_path * | get_ray (OPoint3D ptR) |
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... | |
| OPoint3D | projectOnPlane (const OPoint3D &P, const OVector3D &u1, const OVector3D &u2) |
| Project a point P on the plane spanned by (u1, u2) from (0, 0, 0) More... | |
Additional Inherited Members | |
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... | |
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.
|
overridevirtual |
Compute attenuation when a reflection occur on a cylinder Implements Eq. 30 of 9613-2:2024 standard.
| S | source point |
| R | receptor point |
| P | reflection point |
| M | center of the cylinder (any point along the cylinder' axis) |
| r | radius of the cylinder (assumed > 0) |
| axis | axis of the cylinder (assumed non-zero) |
Reimplemented from TYChemin9613Solver.
Definition at line 100 of file TYChemin9613Solver2024.cpp.

|
overridevirtual |
Evaluate minimal extension condition for a specular reflection on a flat surface in function of the wavelength.
| Oprev | the previous reflection point to compute reflection angle on current barrier |
| O | the reflection point on the flat surface |
| d_SO | Length along ray-path between Source S an reflection point O |
| d_OR | Length along ray-path between reflection point O and Receptor R |
| a | the horizontal extension of the surface (in meters) |
| h | the vertical extension of the surface (in meters) |
| n | normal of the surface (assumed to have a non-zero horizontal component) |
Reimplemented from TYChemin9613Solver.
Definition at line 34 of file TYChemin9613Solver2024.cpp.

|
overrideprotectedvirtual |
Compute total ground attenuation Agr from region ground attenuations and geometric configuration.
| Agr_s | Ground attenuation spectrum in the "source region" in octave band |
| Agr_r | Ground attenuation spectrum in the "receiver region" in octave band |
| Agr_m | Ground attenuation spectrum in the "middle region" in octave band |
| hs | Height from ground of the source in meters |
| hr | Height from ground of the receiver in meters |
| dp | Distance between source and receiver projected on an horizontal plane in meters |
Reimplemented from TYChemin9613Solver.
Definition at line 18 of file TYChemin9613Solver2024.cpp.

|
protected |
Project a point P on the plane spanned by (u1, u2) from (0, 0, 0)
| P | P point |
| u1 | first orthonormal basis vector |
| u2 | second orthonormal basis vector |
Definition at line 162 of file TYChemin9613Solver2024.cpp.

