Class TemplatePropagationModel

java.lang.Object
org.noise_planet.noisemodelling.propagation.template.TemplatePropagationModel
All Implemented Interfaces:
PropagationModel

public class TemplatePropagationModel extends Object implements PropagationModel
Template of propagation model. To be used as a basis for new P2P model implementation.
Author:
Martin Glesser
  • Constructor Details

    • TemplatePropagationModel

      public TemplatePropagationModel()
      Constructor for TemplatePropagationModel objects
  • Method Details

    • computeAttenuation

      public List<double[]> computeAttenuation(SceneWithAttenuation scene, CutProfile cutProfile, List<CnossosPath> paths, AttenuationParameters attenuationParameters, boolean isExportAttenuationMatrix)
      Compute the attenuation for a given cut-profile
      Specified by:
      computeAttenuation in interface PropagationModel
      Parameters:
      scene - Geometrical information about the propagation scene
      cutProfile - Geometrical cross-section
      paths - List of propagation paths (Cnossos specific)
      attenuationParameters - parameters of the computation
      isExportAttenuationMatrix - if true, store intermediate values in proPathParameters for debugging purpose
      Returns:
      Attenuation for the homogeneous and favourable path
    • computeDirectAttenuation

      public double[] computeDirectAttenuation(PathFinder.SourcePointInfo source, PathFinder.ReceiverPointInfo receiver, SceneWithAttenuation scene, AttenuationParameters attenuationParameters, boolean isExportAttenuationMatrix)
      Compute attenuation along direct path between source and receiver
      Specified by:
      computeDirectAttenuation in interface PropagationModel
      Parameters:
      source - source point information
      receiver - receiver point information
      scene - Geometrical information about the propagation scene
      attenuationParameters - parameters of the computation
      isExportAttenuationMatrix - if true, store intermediate values in proPathParameters for debugging purpose
      Returns:
      Attenuation
    • computePaths

      public List<CnossosPath> computePaths(SceneWithAttenuation scene, CutProfile cutProfile)
      Compute the propagation paths for a given geometrical cross-section / cut profile (Specific to Cnossos propagation model, will be removed after pathFinder module refacto)
      Specified by:
      computePaths in interface PropagationModel
      Parameters:
      scene - Geometrical information about the propagation scene
      cutProfile - Geometrical cross-section
      Returns:
      List of Cnossos propagation paths