Code_TYMPAN  4.4.0
Industrial site acoustic simulation
Public Member Functions | Private Member Functions | Private Attributes | List of all members
TYAcousticModel Class Reference

Acoustic model for the default solver. More...

#include <TYAcousticModel.h>

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

Public Member Functions

 TYAcousticModel (TYSolver &solver)
 
virtual ~TYAcousticModel ()
 
virtual void compute (const std::deque< TYSIntersection > &tabIntersect, TYTrajet &trajet, TabPoint3D &ptsTop, TabPoint3D &ptsLeft, TabPoint3D &ptsRight)
 Main entry point, trigger acoustic computations. More...
 
void init ()
 Initialize the acoustic model. More...
 
virtual bool computeCheminsAvecEcran (const OSegment3D &rayon, const tympan::AcousticSource &source, const TabPoint3D &pts, const bool vertical, TYTabChemin &TabChemins, double distance, const bool left) const
 Compute barrier attenuation effect on the direct path for the considered geometrical path (top, left or right) More...
 
void computeCheminReflexion (const std::deque< TYSIntersection > &tabIntersect, const OSegment3D &ray, const tympan::AcousticSource &source, TYTabChemin &TabChemins, double distance) const
 Compute the list of path generated by reflection on the vertical walls. More...
 
void computeCheminSansEcran (const std::deque< TYSIntersection > &tabIntersect, const OSegment3D &rayon, const tympan::AcousticSource &source, TYTabChemin &TabChemins, double distance, bool conditionFav=false) const
 Compute the main path between source and receptor. In 9613 solver, this path includes all attenuation effects, except reflexion one. More...
 
void computeCheminAPlat (const OSegment3D &rayon, const tympan::AcousticSource &source, TYTabChemin &TabChemins, double distance) const
 Compute the list of paths for a perfectly flat and reflective ground. More...
 
OSpectreOctave calculC3 (const double &epaisseur) const
 Compute the spectrum of the C3 factor used in the diffraction calculation. More...
 
OSpectreOctave calculAttDiffraction (const OSegment3D &ray, const double &re, const double &dss, const double &dsr, const double &width, const bool &vertical) const
 Compute the attenuation from the diffraction on the screen. More...
 
OSpectreOctave limAttDiffraction (const OSpectreOctave &sNC, const OSpectreOctave &C) const
 Limit the screen attenuation value with a frequency dependent criteria. More...
 
bool addStep (const OPoint3D &ptStart, const OPoint3D &ptEnd, const tympan::AcousticSource &source, const bool &fromSource, TYTabEtape &Etapes) const
 Compute the different steps from a point to another via a reflection and a direct view. More...
 
bool getGroundfactors (const std::deque< TYSIntersection > &tabIntersect, const OSegment3D &ray2D, double hs, double hr, double &Gs, double &Gm, double &Gr) const
 Get ground factors for source, middle and receptor zones. More...
 
bool getGroundfactors (const std::deque< TYSIntersection > &tabIntersectUpSegment, const std::deque< TYSIntersection > &tabIntersectDownSegment, const OSegment3D &SO2D, const OSegment3D &OR2D, double hs, double hr, double &Gs, double &Gm, double &Gr) const
 Get ground factors for source, middle and receptor zones for a reflected path. More...
 
OSpectreOctave computeEffectiveBarAttenuation (const OSpectreOctave &Abar_top, const OSpectreOctave &Abar_left, const OSpectreOctave &Abar_right)
 
OPlan buildMeanSlopePlan (const OSegment3D &penteMoyenne) const
 
bool solve (TYTrajet &trajet)
 Compute the source contributions to the receptor point. More...
 
 TYAcousticModel (TYSolver &solver)
 
virtual ~TYAcousticModel ()
 
virtual void compute (const std::deque< TYSIntersection > &tabIntersect, TYTrajet &trajet, TabPoint3D &ptsTop, TabPoint3D &ptsLeft, TabPoint3D &ptsRight)
 
void init ()
 Initialize the acoustic model. More...
 
virtual bool computeCheminsAvecEcran (const OSegment3D &rayon, const tympan::AcousticSource &source, const TabPoint3D &pts, const bool vertical, TYTabChemin &TabChemins, double distance, bool conditionFav=false) const
 Compute the segment path from the list of the points of the TYTrajet journey. It takes in account the ground reflection. More...
 
void computeCheminReflexion (const std::deque< TYSIntersection > &tabIntersect, const OSegment3D &rayon, const tympan::AcousticSource &source, TYTabChemin &TabChemins, double distance) const
 Compute the list of path generated by reflection on the vertical walls. More...
 
void computeCheminSansEcran (const OSegment3D &rayon, const tympan::AcousticSource &source, TYTabChemin &TabChemins, double distance, bool conditionFav=false) const
 Compute the list of paths generated by reflection on the ground if there is no screen. More...
 
void computeCheminAPlat (const OSegment3D &rayon, const tympan::AcousticSource &source, TYTabChemin &TabChemins, double distance) const
 Compute the list of paths for a perfectly flat and reflective ground. More...
 
OSpectre calculC (const double &epaisseur) const
 Compute the spectrum of the C factor used in the diffraction calculation. More...
 
OSpectre calculAttDiffraction (const OSegment3D &rayon, const OSegment3D &penteMoyenne, const bool &miroir, const double &re, const double &epaisseur, const bool &vertical, const bool &avantApres, bool &bDiffOk, bool conditionFav=false) const
 Compute the attenuation from the diffraction on the screen. More...
 
OSpectre limAttDiffraction (const OSpectre &sNC, const OSpectre &C) const
 Limit the screen attenuation value with a frequency dependent criteria. More...
 
bool addEtapesSol (const OPoint3D &ptDebut, const OPoint3D &ptFin, const OSegment3D &penteMoyenne, const tympan::AcousticSource &source, const bool &fromSource, const bool &toRecepteur, TYTabEtape &Etapes, double &longueur) const
 Compute the different steps from a point to another via a reflection and a direct view. More...
 
void addEtapeDirectToChemins (const TYEtape &EtapeDirecte, TYTabChemin &TabChemin) const
 Add a direct journey to all the paths. More...
 
bool solve (TYTrajet &trajet)
 Compute the source contribution to the point. More...
 
- Public Member Functions inherited from AcousticModelInterface
 AcousticModelInterface ()
 
virtual ~AcousticModelInterface ()
 

Private Member Functions

OSpectreOctave getReflexionSpectrumAt (const OSegment3D &incident, double length, const OSegment3D &segPente, const tympan::AcousticSource &source) const
 Find Reflexion spectrum at point defined by the end of an incident segment. More...
 
void meanSlope (const OSegment3D &director, OSegment3D &slope) const
 Create a segment corresponding to the projection of "director" segment on the ground. More...
 
bool computeSegmentEdgesHeights (double &hauteurA, double &hauteurB, const OSegment3D &meanSlope, const OSegment3D &ray) const
 Compute heights relative to real ground, of the edges of a segment. More...
 
bool computeGZone (const OPoint3D &ptDebut, const OPoint3D &ptFin, double &GZone, double &dpZone, const std::deque< TYSIntersection > &tabIntersect) const
 Compute GZone and dpZone for the segment between ptDebut and ptFin. More...
 
OSpectreComplex getReflexionSpectrumAt (const OSegment3D &incident, double length, const OSegment3D &segPente, const tympan::AcousticSource &source) const
 Find Reflexion spectrum at point defined by the end of an incident segment. More...
 
void meanSlope (const OSegment3D &director, OSegment3D &slope) const
 Create a segment corresponding to the projection of "director" segment on the ground. More...
 
 FRIEND_TEST (test_TYAcousticModel, calculAttDiffraction)
 
 FRIEND_TEST (test_TYAcousticModel, calculC)
 
 FRIEND_TEST (test_TYAcousticModel, limAttDiffraction)
 
 FRIEND_TEST (test_TYAcousticModel, computeCheminReflexion)
 

Private Attributes

bool _useSol
 
bool _useReflex
 
int _propaCond
 
bool _useAtmo
 
bool _interference
 
double _paramH
 
std::unique_ptr< AtmosphericConditionspSolverAtmos
 
OSpectreOctave _lambda
 
OSpectreOctave _absoNulle
 
TYSolver_solver
 Reference to the solver. More...
 
OSpectre _lambda
 
OSpectreComplex _absoNulle
 

Detailed Description

Acoustic model for the default solver.

Definition at line 32 of file TYAcousticModel.h.

Constructor & Destructor Documentation

◆ TYAcousticModel() [1/2]

TYAcousticModel::TYAcousticModel ( TYSolver solver)

Definition at line 31 of file TYAcousticModel.cpp.

Here is the call graph for this function:

◆ ~TYAcousticModel() [1/2]

TYAcousticModel::~TYAcousticModel ( )
virtual

Definition at line 38 of file TYAcousticModel.cpp.

◆ TYAcousticModel() [2/2]

TYAcousticModel::TYAcousticModel ( TYSolver solver)

◆ ~TYAcousticModel() [2/2]

virtual TYAcousticModel::~TYAcousticModel ( )
virtual

Member Function Documentation

◆ addEtapeDirectToChemins()

void TYAcousticModel::addEtapeDirectToChemins ( const TYEtape EtapeDirecte,
TYTabChemin TabChemin 
) const

Add a direct journey to all the paths.

Parameters
[in]EtapeDirecteDirect journey.
[out]TabCheminArray of all paths.

◆ addEtapesSol()

bool TYAcousticModel::addEtapesSol ( const OPoint3D ptDebut,
const OPoint3D ptFin,
const OSegment3D penteMoyenne,
const tympan::AcousticSource source,
const bool &  fromSource,
const bool &  toRecepteur,
TYTabEtape Etapes,
double &  longueur 
) const

Compute the different steps from a point to another via a reflection and a direct view.

Parameters
[in]ptDebutStarting point.
[in]ptFinEnding point.
[in]penteMoyenneMean slope.
[in]sourceAcoustic source.
[in]fromSourceBoolean if the starting point is the source.
[in]toRecepteurBoolean if the ending point is the receptor.
[out]EtapesArray of all the computed TYEtape steps.
[out]longueurTotal length of the different steps
Returns
bool true if succeeds; false if not.

Definition at line 633 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ addStep()

bool TYAcousticModel::addStep ( const OPoint3D ptStart,
const OPoint3D ptEnd,
const tympan::AcousticSource source,
const bool &  fromSource,
TYTabEtape Etapes 
) const

Compute the different steps from a point to another via a reflection and a direct view.

Parameters
[in]ptStartStarting point.
[in]ptEndEnding point.
[in]sourceAcoustic source.
[in]fromSourceBoolean if the starting point is the source.
[out]EtapesArray of all the computed TYEtape steps.
Returns
bool true if succeeds; false if not.

Definition at line 331 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ buildMeanSlopePlan()

OPlan TYAcousticModel::buildMeanSlopePlan ( const OSegment3D penteMoyenne) const

Definition at line 648 of file TYAcousticModel.cpp.

◆ calculAttDiffraction() [1/2]

OSpectreOctave TYAcousticModel::calculAttDiffraction ( const OSegment3D ray,
const double &  re,
const double &  dss,
const double &  dsr,
const double &  width,
const bool &  vertical 
) const

Compute the attenuation from the diffraction on the screen.

Parameters
[in]rayA segment describing the direct path between source and receptor.
[in]rePath length to take into account for the walking difference computation
[in]dssLength between source and first edge of the obstacle
[in]dsrLength between last edge of the obstacle and receptor
[in]widthTotal width of the obstacle.
[in]verticalBoolean to indicate we deal with the vertical plane (maximal attenuation is limited)
Returns
Attenuation from the diffraction on the screen.

Definition at line 955 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ calculAttDiffraction() [2/2]

OSpectre TYAcousticModel::calculAttDiffraction ( const OSegment3D rayon,
const OSegment3D penteMoyenne,
const bool &  miroir,
const double &  re,
const double &  epaisseur,
const bool &  vertical,
const bool &  avantApres,
bool &  bDiffOk,
bool  conditionFav = false 
) const

Compute the attenuation from the diffraction on the screen.

Parameters
[in]rayonA segment describing the direct path between source and receptor.
[in]penteMoyenneMean slope between source and receptor
[in]miroirBoolean to indicate if we should use the source (false) or the image source (true) during the walking difference computation
[in]rePath length to take into account for the walking difference computation
[in]epaisseurTotal thickness of the obstacle.
[in]verticalBoolean to indicate we deal with the vertical plane (maximal attenuation is limited)
[in]avantApresBoolean to indicate if we are before (false) or after (true) the obstacle
[out]bDiffOkSet to false if the walking difference is <=0, true otherwise
[in]conditionFavspecify if favorite condition or not (false by default)
Returns
Attenuation from the diffraction on the screen.

Definition at line 999 of file TYAcousticModel.cpp.

Here is the call graph for this function:

◆ calculC()

OSpectre TYAcousticModel::calculC ( const double &  epaisseur) const

Compute the spectrum of the C factor used in the diffraction calculation.

Parameters
epaisseurTotal thickness of the obstacle.
Returns
A OSpectre giving the correction coefficient for each frequency.

Definition at line 972 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ calculC3()

OSpectreOctave TYAcousticModel::calculC3 ( const double &  epaisseur) const

Compute the spectrum of the C3 factor used in the diffraction calculation.

Parameters
epaisseurTotal thickness of the obstacle.
Returns
A OSpectreOctave giving the correction coefficient for each frequency.

Definition at line 928 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ compute() [1/2]

void TYAcousticModel::compute ( const std::deque< TYSIntersection > &  tabIntersect,
TYTrajet trajet,
TabPoint3D ptsTop,
TabPoint3D ptsLeft,
TabPoint3D ptsRight 
)
virtual

Main entry point, trigger acoustic computations.

Parameters
[in]tabIntersectArray of intersections.
[in]trajetRoute between source and receptor.
[in]ptsTopList of points of the vertical path (in EV plane).
[in]ptsLeftList of points of the left lateral path (in EL plane).
[in]ptsRightList of points of the right lateral path (in EL plane).

Definition at line 66 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ compute() [2/2]

virtual void TYAcousticModel::compute ( const std::deque< TYSIntersection > &  tabIntersect,
TYTrajet trajet,
TabPoint3D ptsTop,
TabPoint3D ptsLeft,
TabPoint3D ptsRight 
)
virtual

◆ computeCheminAPlat() [1/2]

void TYAcousticModel::computeCheminAPlat ( const OSegment3D rayon,
const tympan::AcousticSource source,
TYTabChemin TabChemins,
double  distance 
) const

Compute the list of paths for a perfectly flat and reflective ground.

Not used in 9613 Solver for the time being

Parameters
[in]rayonA segment describing the acoustic ray.
[in]sourceThe acoustic source.
[out]TabCheminsPaths list of the journey generated.
[out]distanceRoute (source-receptor) 3D distance

Definition at line 134 of file TYAcousticModel.cpp.

Here is the call graph for this function:

◆ computeCheminAPlat() [2/2]

void TYAcousticModel::computeCheminAPlat ( const OSegment3D rayon,
const tympan::AcousticSource source,
TYTabChemin TabChemins,
double  distance 
) const

Compute the list of paths for a perfectly flat and reflective ground.

Parameters
[in]rayonA segment describing the acoustic ray.
[in]sourceThe acoustic source.
[out]TabCheminsPaths list of the journey generated.
[out]distanceJourney distance

◆ computeCheminReflexion() [1/2]

void TYAcousticModel::computeCheminReflexion ( const std::deque< TYSIntersection > &  tabIntersect,
const OSegment3D ray,
const tympan::AcousticSource source,
TYTabChemin TabChemins,
double  distance 
) const

Compute the list of path generated by reflection on the vertical walls.

Parameters
[in]tabIntersectArray of intersections
[in]rayA segment describing the acoustic ray.
[in]sourceThe acoustic source.
[out]TabCheminsPaths list of the journey generated by reflection.
[out]distanceRoute (source-receptor) 3D distance

Definition at line 785 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeCheminReflexion() [2/2]

void TYAcousticModel::computeCheminReflexion ( const std::deque< TYSIntersection > &  tabIntersect,
const OSegment3D rayon,
const tympan::AcousticSource source,
TYTabChemin TabChemins,
double  distance 
) const

Compute the list of path generated by reflection on the vertical walls.

Parameters
[in]tabIntersectArray of intersections
[in]rayonA segment describing the acoustic ray.
[in]sourceThe acoustic source.
[out]TabCheminsPaths list of the journey generated by reflection.
[out]distanceJourney distance

◆ computeCheminSansEcran() [1/2]

void TYAcousticModel::computeCheminSansEcran ( const OSegment3D rayon,
const tympan::AcousticSource source,
TYTabChemin TabChemins,
double  distance,
bool  conditionFav = false 
) const

Compute the list of paths generated by reflection on the ground if there is no screen.

Parameters
[in]rayonA segment describing the acoustic ray.
[in]sourceThe acoustic source.
[out]TabCheminsPaths list of the journey generated (1 or 2 under favorables conditions).
[out]distanceJourney distance
[in]conditionFavspecify if favorite condition or not (false by default)

Definition at line 231 of file TYAcousticModel.cpp.

Here is the call graph for this function:

◆ computeCheminSansEcran() [2/2]

void TYAcousticModel::computeCheminSansEcran ( const std::deque< TYSIntersection > &  tabIntersect,
const OSegment3D rayon,
const tympan::AcousticSource source,
TYTabChemin TabChemins,
double  distance,
bool  conditionFav = false 
) const

Compute the main path between source and receptor. In 9613 solver, this path includes all attenuation effects, except reflexion one.

Parameters
[in]tabIntersectArray of intersections
[in]rayonA segment describing the acoustic ray.
[in]sourceThe acoustic source.
[in]conditionFavTrue if propagation conditions are DownWard, False else. Not used in 9613Solver.
[out]TabCheminsPaths list of the journey generated
[out]distanceRoute (source-receptor) 3D distance

Definition at line 359 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeCheminsAvecEcran() [1/2]

virtual bool TYAcousticModel::computeCheminsAvecEcran ( const OSegment3D rayon,
const tympan::AcousticSource source,
const TabPoint3D pts,
const bool  vertical,
TYTabChemin TabChemins,
double  distance,
bool  conditionFav = false 
) const
virtual

Compute the segment path from the list of the points of the TYTrajet journey. It takes in account the ground reflection.

Parameters
[in]rayonA segment describing the acoustic ray.
[in]sourceThe acoustic source.
[in]ptsThe list of points of the journey.
[in]verticalboolean to indicate we deal with the vertical plane
[out]TabCheminsPaths list of the journey
[out]distanceJourney distance
[in]conditionFavspecify if favorite condition or not (false by default)
Returns
true if succeeds; false otherwise.

◆ computeCheminsAvecEcran() [2/2]

bool TYAcousticModel::computeCheminsAvecEcran ( const OSegment3D rayon,
const tympan::AcousticSource source,
const TabPoint3D pts,
const bool  vertical,
TYTabChemin TabChemins,
double  distance,
const bool  left 
) const
virtual

Compute barrier attenuation effect on the direct path for the considered geometrical path (top, left or right)

Parameters
[in]rayonA segment describing the acoustic ray.
[in]sourceThe acoustic source.
[in]ptsThe list of points of the journey.
[in]verticalboolean to indicate we deal with the vertical plane
[in]leftboolean to indicate we deal with the lateral left side
[out]TabCheminsPaths list of the journey
[out]distanceRoute (source-receptor) 3D distance
Returns
true if succeeds; false otherwise.

Definition at line 227 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeEffectiveBarAttenuation()

OSpectreOctave TYAcousticModel::computeEffectiveBarAttenuation ( const OSpectreOctave Abar_top,
const OSpectreOctave Abar_left,
const OSpectreOctave Abar_right 
)

Definition at line 630 of file TYAcousticModel.cpp.

Here is the caller graph for this function:

◆ computeGZone()

bool TYAcousticModel::computeGZone ( const OPoint3D ptDebut,
const OPoint3D ptFin,
double &  GZone,
double &  dpZone,
const std::deque< TYSIntersection > &  tabIntersect 
) const
private

Compute GZone and dpZone for the segment between ptDebut and ptFin.

Parameters
[in]ptDebutStarting point of the considered segment
[in]ptFinEnding point of the considered segment
[in]tabIntersectArray of intersections
[out]GZoneGround factor computed for the considered segment
[out]dpZone2D distance of the considered segment

Definition at line 679 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ computeSegmentEdgesHeights()

bool TYAcousticModel::computeSegmentEdgesHeights ( double &  hauteurA,
double &  hauteurB,
const OSegment3D meanSlope,
const OSegment3D ray 
) const
private

Compute heights relative to real ground, of the edges of a segment.

Parameters
[in]meanSlopeMean slope on real ground between segement edges
[in]raySegment whose edges heights are computed
[out]hauteurAHeight of ray._ptA segment edge
[out]hauteurBHeight of ray._ptB segment edge

Definition at line 1246 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ FRIEND_TEST() [1/4]

TYAcousticModel::FRIEND_TEST ( test_TYAcousticModel  ,
calculAttDiffraction   
)
private

◆ FRIEND_TEST() [2/4]

TYAcousticModel::FRIEND_TEST ( test_TYAcousticModel  ,
calculC   
)
private

◆ FRIEND_TEST() [3/4]

TYAcousticModel::FRIEND_TEST ( test_TYAcousticModel  ,
computeCheminReflexion   
)
private

◆ FRIEND_TEST() [4/4]

TYAcousticModel::FRIEND_TEST ( test_TYAcousticModel  ,
limAttDiffraction   
)
private

◆ getGroundfactors() [1/2]

bool TYAcousticModel::getGroundfactors ( const std::deque< TYSIntersection > &  tabIntersect,
const OSegment3D ray2D,
double  hs,
double  hr,
double &  Gs,
double &  Gm,
double &  Gr 
) const

Get ground factors for source, middle and receptor zones.

Parameters
[in]tabIntersectArray of intersections.
[in]ray2DConsidered ray projected on horizontal plane.
[in]hsHeight of the starting edge.
[in]hrHeight of the ending edge
[out]GsGround factor of the source zone.
[out]GmGround factor of the middle zone.
[out]GrGround factor of the receptor zone.
Returns
bool true if succeeds; false if not.

Definition at line 398 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getGroundfactors() [2/2]

bool TYAcousticModel::getGroundfactors ( const std::deque< TYSIntersection > &  tabIntersectUpSegment,
const std::deque< TYSIntersection > &  tabIntersectDownSegment,
const OSegment3D SO2D,
const OSegment3D OR2D,
double  hs,
double  hr,
double &  Gs,
double &  Gm,
double &  Gr 
) const

Get ground factors for source, middle and receptor zones for a reflected path.

Parameters
[in]tabIntersectUpSegmentArray of intersections for segment source to reflexion point.
[in]tabIntersectDownSegmentArray of intersections for segment reflexion point to receptor.
[in]SO2DRay between source and reflexion point projected on horizontal plane.
[in]OR2DRay between reflexion and receptor point projected on horizontal plane.
[in]hsHeight of the starting edge.
[in]hrHeight of the ending edge
[out]GsGround factor of the source zone.
[out]GmGround factor of the middle zone.
[out]GrGround factor of the receptor zone.
Returns
bool true if succeeds; false if not.

Definition at line 471 of file TYAcousticModel.cpp.

Here is the call graph for this function:

◆ getReflexionSpectrumAt() [1/2]

OSpectreComplex TYAcousticModel::getReflexionSpectrumAt ( const OSegment3D incident,
double  length,
const OSegment3D segPente,
const tympan::AcousticSource source 
) const
private

Find Reflexion spectrum at point defined by the end of an incident segment.

Not used in 9613 Solver

Definition at line 1111 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getReflexionSpectrumAt() [2/2]

OSpectreComplex TYAcousticModel::getReflexionSpectrumAt ( const OSegment3D incident,
double  length,
const OSegment3D segPente,
const tympan::AcousticSource source 
) const
private

Find Reflexion spectrum at point defined by the end of an incident segment.

◆ init() [1/2]

void TYAcousticModel::init ( )

Initialize the acoustic model.

Definition at line 40 of file TYAcousticModel.cpp.

Here is the call graph for this function:

◆ init() [2/2]

void TYAcousticModel::init ( )

Initialize the acoustic model.

◆ limAttDiffraction() [1/2]

OSpectre TYAcousticModel::limAttDiffraction ( const OSpectre sNC,
const OSpectre C 
) const

Limit the screen attenuation value with a frequency dependent criteria.

Parameters
sNCNon corrected spectrum
C

Definition at line 1085 of file TYAcousticModel.cpp.

Here is the call graph for this function:

◆ limAttDiffraction() [2/2]

OSpectreOctave TYAcousticModel::limAttDiffraction ( const OSpectreOctave sNC,
const OSpectreOctave C 
) const

Limit the screen attenuation value with a frequency dependent criteria.

Parameters
sNCNon corrected spectrum
C

Definition at line 995 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ meanSlope() [1/2]

void TYAcousticModel::meanSlope ( const OSegment3D director,
OSegment3D slope 
) const
private

Create a segment corresponding to the projection of "director" segment on the ground.

Definition at line 1172 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ meanSlope() [2/2]

void TYAcousticModel::meanSlope ( const OSegment3D director,
OSegment3D slope 
) const
private

Create a segment corresponding to the projection of "director" segment on the ground.

◆ solve() [1/2]

bool TYAcousticModel::solve ( TYTrajet trajet)

Compute the source contributions to the receptor point.

Parameters
trajetRoute

Definition at line 1026 of file TYAcousticModel.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ solve() [2/2]

bool TYAcousticModel::solve ( TYTrajet trajet)

Compute the source contribution to the point.

Parameters
trajetJourney

Member Data Documentation

◆ _absoNulle [1/2]

OSpectreOctave TYAcousticModel::_absoNulle
private

Definition at line 273 of file TYAcousticModel.h.

◆ _absoNulle [2/2]

OSpectreComplex TYAcousticModel::_absoNulle
private

Definition at line 214 of file TYAcousticModel.h.

◆ _interference

bool TYAcousticModel::_interference
private

Definition at line 267 of file TYAcousticModel.h.

◆ _lambda [1/2]

OSpectreOctave TYAcousticModel::_lambda
private

Definition at line 272 of file TYAcousticModel.h.

◆ _lambda [2/2]

OSpectre TYAcousticModel::_lambda
private

Definition at line 213 of file TYAcousticModel.h.

◆ _paramH

double TYAcousticModel::_paramH
private

Definition at line 268 of file TYAcousticModel.h.

◆ _propaCond

int TYAcousticModel::_propaCond
private

Definition at line 265 of file TYAcousticModel.h.

◆ _solver

TYSolver & TYAcousticModel::_solver
private

Reference to the solver.

Definition at line 276 of file TYAcousticModel.h.

◆ _useAtmo

bool TYAcousticModel::_useAtmo
private

Definition at line 266 of file TYAcousticModel.h.

◆ _useReflex

bool TYAcousticModel::_useReflex
private

Definition at line 264 of file TYAcousticModel.h.

◆ _useSol

bool TYAcousticModel::_useSol
private

Definition at line 263 of file TYAcousticModel.h.

◆ pSolverAtmos

std::unique_ptr< AtmosphericConditions > TYAcousticModel::pSolverAtmos
private

Definition at line 270 of file TYAcousticModel.h.


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