SUMO - Simulation of Urban MObility
HelpersHarmonoise.h
Go to the documentation of this file.
1 /****************************************************************************/
8 // Helper methods for Harmonoise-based noise emission computation
9 /****************************************************************************/
10 // SUMO, Simulation of Urban MObility; see http://sumo.dlr.de/
11 // Copyright (C) 2001-2015 DLR (http://www.dlr.de/) and contributors
12 /****************************************************************************/
13 //
14 // This file is part of SUMO.
15 // SUMO is free software: you can redistribute it and/or modify
16 // it under the terms of the GNU General Public License as published by
17 // the Free Software Foundation, either version 3 of the License, or
18 // (at your option) any later version.
19 //
20 /****************************************************************************/
21 #ifndef HelpersHarmonoise_h
22 #define HelpersHarmonoise_h
23 
24 
25 // ===========================================================================
26 // included modules
27 // ===========================================================================
28 #ifdef _MSC_VER
29 #include <windows_config.h>
30 #else
31 #include <config.h>
32 #endif
33 
34 #include <vector>
35 #include <limits>
36 #include <cmath>
37 #include <utils/common/StdDefs.h>
39 
40 
41 // ===========================================================================
42 // class definitions
43 // ===========================================================================
52 public:
60  static SUMOReal computeNoise(SUMOEmissionClass c, double v, double a);
61 
62 
68  inline static SUMOReal sum(SUMOReal val) {
69  return SUMOReal(10. * log10(val));
70  }
71 
72 
73 private:
76 
78  static double myR_A_C1_Parameter[27];
79 
81  static double myR_B_C1_Parameter[27];
82 
84  static double myR_A_C3_Parameter[27];
85 
87  static double myR_B_C3_Parameter[27];
88 
90  static double myT_A_C1_Parameter[27];
91 
93  static double myT_B_C1_Parameter[27];
94 
96  static double myT_A_C3_Parameter[27];
97 
99  static double myT_B_C3_Parameter[27];
101 
102 
104  static double myAOctaveBandCorrection[27];
105 
106 
107 };
108 
109 
110 #endif
111 
112 /****************************************************************************/
113 
static double myAOctaveBandCorrection[27]
A-weighted correction for octave bands.
static double myR_B_C3_Parameter[27]
rolling component, heavy vehicles, beta
static double myR_A_C3_Parameter[27]
rolling component, heavy vehicles, alpha
static double myT_B_C3_Parameter[27]
traction component, heavy vehicles, beta
static double myT_B_C1_Parameter[27]
traction component, light vehicles, beta
static SUMOReal computeNoise(SUMOEmissionClass c, double v, double a)
Returns the noise produced by the a vehicle of the given type at the given speed. ...
int SUMOEmissionClass
static double myT_A_C3_Parameter[27]
traction component, heavy vehicles, alpha
static double myR_B_C1_Parameter[27]
rolling component, light vehicles, beta
Helper methods for Harmonoise-based noise emission computation.
static double myR_A_C1_Parameter[27]
rolling component, light vehicles, alpha
static SUMOReal sum(SUMOReal val)
Computes the resulting noise.
static double myT_A_C1_Parameter[27]
traction component, light vehicles, alpha
#define SUMOReal
Definition: config.h:214