Code_TYMPAN  4.4.0
Industrial site acoustic simulation
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions | List of all members
tympan::AcousticGroundMaterial Class Reference

Describes the ground material, a specific AcousticBuildingMaterial. More...

#include <entities.hpp>

Inheritance diagram for tympan::AcousticGroundMaterial:
Inheritance graph
[legend]
Collaboration diagram for tympan::AcousticGroundMaterial:
Collaboration graph
[legend]

Public Member Functions

 AcousticGroundMaterial (const string &name_, double resistivity_, double deviation_, double length_, double factor_g_)
 Constructor. More...
 
virtual ~AcousticGroundMaterial ()
 Destructor. More...
 
virtual ComplexSpectrum get_absorption (double incidence_angle, double length)
 Get material absorption at reflection point. More...
 
const ComplexSpectrumget_Zc () const
 Get characteristic impedance. More...
 
const ComplexSpectrumget_K () const
 Get wave number. More...
 
void set_thickness (double thickness_)
 Set thickness. More...
 
void set_deviation (double deviation_)
 Set deviation. More...
 
void set_length (double length_)
 Set wave length. More...
 
double get_ISO9613_G ()
 Absorption given by ISO9613. More...
 
bool compare (const string &name, double resistivity, double deviation, double length, double factor_g)
 Compare this AcousticGroundMaterial to another one. More...
 
- Public Member Functions inherited from tympan::AcousticMaterialBase
 AcousticMaterialBase (const string &name_)
 Constructor. More...
 
- Public Member Functions inherited from tympan::BaseEntity
virtual ~BaseEntity ()
 Constructor. More...
 

Static Public Member Functions

static void set_atmosphere (AtmosphericConditions *atmosphere_)
 Set pointer to current atmosphere. More...
 

Protected Member Functions

void computeZc ()
 Compute characteristic impedance. More...
 
void computeK ()
 Compute wave number. More...
 
void computeZs (double angle, ComplexSpectrum Z, ComplexSpectrum &spectrum)
 Compute specific impedance. More...
 
void computeZf (double angle, ComplexSpectrum Zs)
 Compute effective impedance in rough ground. More...
 
void computeRp (double angle, const ComplexSpectrum &Zs, ComplexSpectrum &Rp)
 Compute reflection coefficient for plane waves. More...
 
void computeW (double angle, double length, const ComplexSpectrum &Zs, ComplexSpectrum &W)
 Compute numeric distance. More...
 
void computeFw (ComplexSpectrum localW, ComplexSpectrum &Fw)
 Compute function of numeric distance. More...
 
void computeQ (double angle, ComplexSpectrum &Rp, ComplexSpectrum &Fw, ComplexSpectrum &Q)
 Compute reflection coefficient. More...
 
- Protected Member Functions inherited from tympan::BaseEntity
 BaseEntity ()
 

Protected Attributes

double resistivity
 XXX. More...
 
double thickness
 
double deviation
 
double length
 
double factor_g
 
ComplexSpectrum Zc
 Characteristic impedance. More...
 
ComplexSpectrum K
 Wave number. More...
 
ComplexSpectrum Zf
 Effective impedance. More...
 

Static Protected Attributes

static AtmosphericConditionsatmosphere = new AtmosphericConditions(101325., 20., 70.)
 Pointer to current atmosphere. More...
 

Private Member Functions

void init ()
 
TYComplex erfcCas1 (const TYComplex &wValue) const
 : Functions used in Fw computation More...
 
TYComplex erfcCas2 (const TYComplex &wValue) const
 
TYComplex erfcCas3 (const TYComplex &wValue) const
 
TYComplex sgnReIm (const TYComplex &W, const TYComplex &G) const
 : function used in G computation More...
 
void limit_W_values (ComplexSpectrum &localW)
 
void erfc_G_computation (const ComplexSpectrum &localW, ComplexSpectrum &G)
 
void sgn_G_computation (const ComplexSpectrum &localW, ComplexSpectrum &G)
 
double gaussianSpectrum (double const k, double const sigma, double const lc)
 
double trapz (std::vector< double > u, std::vector< double > integrande)
 

Additional Inherited Members

- Public Attributes inherited from tympan::AcousticMaterialBase
string name
 Material name. More...
 

Detailed Description

Describes the ground material, a specific AcousticBuildingMaterial.

Definition at line 75 of file entities.hpp.

Constructor & Destructor Documentation

◆ AcousticGroundMaterial()

tympan::AcousticGroundMaterial::AcousticGroundMaterial ( const string &  name_,
double  resistivity_,
double  deviation_,
double  length_,
double  factor_g_ 
)

Constructor.

Definition at line 37 of file entities.cpp.

Here is the call graph for this function:

◆ ~AcousticGroundMaterial()

virtual tympan::AcousticGroundMaterial::~AcousticGroundMaterial ( )
inlinevirtual

Destructor.

Definition at line 82 of file entities.hpp.

Member Function Documentation

◆ compare()

bool tympan::AcousticGroundMaterial::compare ( const string &  name,
double  resistivity,
double  deviation,
double  length,
double  factor_g 
)

Compare this AcousticGroundMaterial to another one.

Parameters
nameName of the other AcousticGroundMaterial
resistivityResistivity of the other AcousticGroundMaterial
deviationDeviation of the other AcousticGroundMaterial
lengthLength of the other AcousticGroundMaterial
factor_gGround factor G of the other AcousticGroundMaterial
Returns
True if other AcousticGroundMaterial has same name and characteristics, else False

Definition at line 51 of file entities.cpp.

◆ computeFw()

void tympan::AcousticGroundMaterial::computeFw ( ComplexSpectrum  localW,
ComplexSpectrum Fw 
)
protected

Compute function of numeric distance.

Definition at line 276 of file entities.cpp.

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

◆ computeK()

void tympan::AcousticGroundMaterial::computeK ( )
protected

Compute wave number.

Definition at line 97 of file entities.cpp.

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

◆ computeQ()

void tympan::AcousticGroundMaterial::computeQ ( double  angle,
ComplexSpectrum Rp,
ComplexSpectrum Fw,
ComplexSpectrum Q 
)
protected

Compute reflection coefficient.

Definition at line 397 of file entities.cpp.

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

◆ computeRp()

void tympan::AcousticGroundMaterial::computeRp ( double  angle,
const ComplexSpectrum Zs,
ComplexSpectrum Rp 
)
protected

Compute reflection coefficient for plane waves.

Definition at line 236 of file entities.cpp.

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

◆ computeW()

void tympan::AcousticGroundMaterial::computeW ( double  angle,
double  length,
const ComplexSpectrum Zs,
ComplexSpectrum W 
)
protected

Compute numeric distance.

Definition at line 253 of file entities.cpp.

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

◆ computeZc()

void tympan::AcousticGroundMaterial::computeZc ( )
protected

Compute characteristic impedance.

Definition at line 81 of file entities.cpp.

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

◆ computeZf()

void tympan::AcousticGroundMaterial::computeZf ( double  angle,
ComplexSpectrum  Zs 
)
protected

Compute effective impedance in rough ground.

Definition at line 139 of file entities.cpp.

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

◆ computeZs()

void tympan::AcousticGroundMaterial::computeZs ( double  angle,
ComplexSpectrum  Z,
ComplexSpectrum spectrum 
)
protected

Compute specific impedance.

Definition at line 116 of file entities.cpp.

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

◆ erfc_G_computation()

void tympan::AcousticGroundMaterial::erfc_G_computation ( const ComplexSpectrum localW,
ComplexSpectrum G 
)
private

Definition at line 323 of file entities.cpp.

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

◆ erfcCas1()

TYComplex tympan::AcousticGroundMaterial::erfcCas1 ( const TYComplex wValue) const
private

: Functions used in Fw computation

Definition at line 414 of file entities.cpp.

Here is the caller graph for this function:

◆ erfcCas2()

TYComplex tympan::AcousticGroundMaterial::erfcCas2 ( const TYComplex wValue) const
private

Definition at line 483 of file entities.cpp.

Here is the caller graph for this function:

◆ erfcCas3()

TYComplex tympan::AcousticGroundMaterial::erfcCas3 ( const TYComplex wValue) const
private

Definition at line 494 of file entities.cpp.

Here is the caller graph for this function:

◆ gaussianSpectrum()

double tympan::AcousticGroundMaterial::gaussianSpectrum ( double const  k,
double const  sigma,
double const  lc 
)
private

Definition at line 222 of file entities.cpp.

Here is the caller graph for this function:

◆ get_absorption()

ComplexSpectrum tympan::AcousticGroundMaterial::get_absorption ( double  incidence_angle,
double  length 
)
virtual

Get material absorption at reflection point.

Parameters
incidence_angleAngle incidence
lengthWave length
Returns
A ComplexSpectrum

Reimplemented from tympan::AcousticMaterialBase.

Definition at line 60 of file entities.cpp.

Here is the call graph for this function:

◆ get_ISO9613_G()

double tympan::AcousticGroundMaterial::get_ISO9613_G ( )
virtual

Absorption given by ISO9613.

Reimplemented from tympan::AcousticMaterialBase.

Definition at line 76 of file entities.cpp.

◆ get_K()

const ComplexSpectrum& tympan::AcousticGroundMaterial::get_K ( ) const
inline

Get wave number.

Definition at line 97 of file entities.hpp.

◆ get_Zc()

const ComplexSpectrum& tympan::AcousticGroundMaterial::get_Zc ( ) const
inline

Get characteristic impedance.

Definition at line 93 of file entities.hpp.

◆ init()

void tympan::AcousticGroundMaterial::init ( )
private

Definition at line 45 of file entities.cpp.

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

◆ limit_W_values()

void tympan::AcousticGroundMaterial::limit_W_values ( ComplexSpectrum localW)
private

Definition at line 304 of file entities.cpp.

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

◆ set_atmosphere()

static void tympan::AcousticGroundMaterial::set_atmosphere ( AtmosphericConditions atmosphere_)
inlinestatic

Set pointer to current atmosphere.

Definition at line 116 of file entities.hpp.

◆ set_deviation()

void tympan::AcousticGroundMaterial::set_deviation ( double  deviation_)
inline

Set deviation.

Definition at line 106 of file entities.hpp.

◆ set_length()

void tympan::AcousticGroundMaterial::set_length ( double  length_)
inline

Set wave length.

Definition at line 110 of file entities.hpp.

◆ set_thickness()

void tympan::AcousticGroundMaterial::set_thickness ( double  thickness_)
inline

Set thickness.

Definition at line 102 of file entities.hpp.

◆ sgn_G_computation()

void tympan::AcousticGroundMaterial::sgn_G_computation ( const ComplexSpectrum localW,
ComplexSpectrum G 
)
private

Definition at line 352 of file entities.cpp.

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

◆ sgnReIm()

TYComplex tympan::AcousticGroundMaterial::sgnReIm ( const TYComplex W,
const TYComplex G 
) const
private

: function used in G computation

Definition at line 505 of file entities.cpp.

Here is the caller graph for this function:

◆ trapz()

double tympan::AcousticGroundMaterial::trapz ( std::vector< double >  u,
std::vector< double >  integrande 
)
private

Definition at line 227 of file entities.cpp.

Here is the caller graph for this function:

Member Data Documentation

◆ atmosphere

AtmosphericConditions * tympan::AcousticGroundMaterial::atmosphere = new AtmosphericConditions(101325., 20., 70.)
staticprotected

Pointer to current atmosphere.

Definition at line 147 of file entities.hpp.

◆ deviation

double tympan::AcousticGroundMaterial::deviation
protected

Definition at line 174 of file entities.hpp.

◆ factor_g

double tympan::AcousticGroundMaterial::factor_g
protected

Definition at line 176 of file entities.hpp.

◆ K

ComplexSpectrum tympan::AcousticGroundMaterial::K
protected

Wave number.

Definition at line 179 of file entities.hpp.

◆ length

double tympan::AcousticGroundMaterial::length
protected

Definition at line 175 of file entities.hpp.

◆ resistivity

double tympan::AcousticGroundMaterial::resistivity
protected

XXX.

Todo:
put SI unit.

Definition at line 172 of file entities.hpp.

◆ thickness

double tympan::AcousticGroundMaterial::thickness
protected

Definition at line 173 of file entities.hpp.

◆ Zc

ComplexSpectrum tympan::AcousticGroundMaterial::Zc
protected

Characteristic impedance.

Definition at line 178 of file entities.hpp.

◆ Zf

ComplexSpectrum tympan::AcousticGroundMaterial::Zf
protected

Effective impedance.

Definition at line 180 of file entities.hpp.


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