Class 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 Detail

      • AttenuationCnossos

        public AttenuationCnossos()
    • Method Detail

      • getaGlobal

        public static double[] getaGlobal()
      • getDeltaDif

        public static double[] getDeltaDif​(SegmentPath srpath,
                                           AttenuationParameters data)
        Eq 2.5.21: calculate the value of DeltaDif
        Parameters:
        srpath -
        data -
        Returns:
        double list with the value of DeltaDif
      • 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
      • init

        public static void init​(AttenuationParameters data)
        Initialize the instance of AttenuationCnossos
        Parameters:
        data -
      • 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
      • evaluate

        public static double[] evaluate​(CnossosPath pathParameters,
                                        AttenuationParameters data)
        Only for propagation Path Cnossos // todo erase evaluate
        Parameters:
        pathParameters -
        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,
                                      boolean forceGPath)
        Compute AGroundF
        Parameters:
        proPathParameters -
        path -
        data -
        idFreq -
        forceGPath -
        Returns:
        favorable 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 -
        proPathParameters - Cnossos paths
        Returns:
        double list of attenuation