Class AttenuationCnossos

java.lang.Object
org.noise_planet.noisemodelling.propagation.cnossos.AttenuationCnossos

public class AttenuationCnossos extends Object
Return the dB value corresponding to the parameters Following Directive 2015/996/EN https://circabc.europa.eu/sd/a/9566c5b9-8607-4118-8427-906dab7632e2/Directive_2015_996_EN.pdf
Author:
Pierre Aumond
  • Constructor Details

    • AttenuationCnossos

      public AttenuationCnossos()
  • Method Details

    • getADiv

      public static double getADiv(double distance)
      Compute attenuation of sound energy by distance. Minimum distance is one meter. Eq. 2.5.12
      Parameters:
      distance - Distance in meter
      Returns:
      Attenuated sound level. Take only account of geometric dispersion of sound wave.
    • getAGroundCore

      public static double[] getAGroundCore(CnossosPath pathParameters, SegmentPath segmentPath, AttenuationParameters data)
      Eq. 2.5.15: Compute Aground
      Parameters:
      pathParameters -
      segmentPath -
      data -
      Returns:
      list double with the values of AGround
    • aDiv

      public static double[] aDiv(CnossosPath pathParameters, AttenuationParameters data)
      Compute ADiv the attenuation
      Parameters:
      pathParameters -
      data -
      Returns:
      list double with the values of ADiv
    • aAtm

      public static double[] aAtm(double[] alphaAtmosphericKm, double distance)
      Compute AAtm
      Parameters:
      alphaAtmosphericKm - Absorption per km
      distance - Distance (m)
      Returns:
      list double with the values of AAtm
    • aBoundary

      public static double[] aBoundary(CnossosPath path, AttenuationParameters data)
      Compute ABoundary
      Parameters:
      path -
      data -
      Returns:
    • deltaRetrodif

      public static double[] deltaRetrodif(CnossosPath reflect, AttenuationParameters data)
      Compute deltaRetrodif Figure 2.5.36
      Parameters:
      reflect -
      data -
      Returns:
      list double with the values of deltaRetrodif
    • aGroundH

      public static double aGroundH(CnossosPath proPathParameters, SegmentPath path, AttenuationParameters data, int idFreq)
      Compute AGroundH
      Parameters:
      proPathParameters -
      path -
      data -
      idFreq -
      Returns:
      homogeneous ground Atktenuation in db
    • aGroundH

      public static double aGroundH(CnossosPath proPathParameters, SegmentPath path, AttenuationParameters data, int idFreq, boolean forceGPath)
      Compute AGroundH
      Parameters:
      proPathParameters -
      path -
      data -
      idFreq -
      forceGPath -
      Returns:
      homogeneous ground Attenuation in db
    • aGroundF

      public static double aGroundF(CnossosPath proPathParameters, SegmentPath path, AttenuationParameters data, int idFreq)
    • aGroundF

      public static double aGroundF(CnossosPath proPathParameters, SegmentPath path, AttenuationParameters data, int idFreq, boolean forceGPath)
      Compute AGroundF
      Parameters:
      proPathParameters -
      path -
      data -
      idFreq -
      forceGPath -
      Returns:
      favourable ground Attenuation in db
    • computeCnossosAttenuation

      public static double[] computeCnossosAttenuation(AttenuationParameters data, CnossosPath proPathParameters, SceneWithAttenuation scene, boolean exportAttenuationMatrix)
      Compute the Attenuation for each frequency with a given sourceId, sourceLi and sourceId
      Parameters:
      data - Attenuation parameters
      proPathParameters - Cnossos paths
      scene - Scene with attenuation data
      exportAttenuationMatrix - if true, store intermediate values in proPathParameters for debugging purpose
      Returns:
      double list of attenuation