levels_int¶
class description¶
-
class
levels_int.
LevelsInt
(**kwargs)[source]¶ Bases:
openmdao.core.explicitcomponent.ExplicitComponent
Compute noise levels according to ICAO Annex 16 Volume I: Noise.
Sound pressure level (spl)
Integrated overall sound pressure level (ioaspl)
Integrated pnlt (ipnlt)
Effective perceived noise level (epnl)
The LevelsInt component requires the following inputs:
inputs['oaspl']
: overall sound pressure level [dB]inputs['pnlt']
: perceived noise level, tone corrected [dB]inputs['C']
: tone-corrections [dB]inputs['t_o']
: observer time [s]
The LevelsInt component computes the following outputs:
outputs['ioaspl']
: time-integrated overall sound pressure level [-]outputs['ipnlt']
: time-integrated pnlt [-]outputs['epnl']
: effective perceived noise level [EPNdB]
The LevelsInt component has the following options:
settings
: pyna settingsn_t
: number of time steps in the noise time series
-
compute
(inputs: openmdao.vectors.default_vector.DefaultVector, outputs: openmdao.vectors.default_vector.DefaultVector)[source]¶ Compute outputs given inputs. The model is assumed to be in an unscaled state.
- Parameters
inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].
outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].
discrete_inputs (dict or None) – If not None, dict containing discrete input values.
discrete_outputs (dict or None) – If not None, dict containing discrete output values.
Warning
The Julia version of the Levels component, levels_int.jl
, is not documented yet. However, it is very similar to the Python version, levels.py
. More information and examples on how OpenMDAO.jl components work can be found here.
theory¶
The effective perceived noise level (EPNL) is calculated using the method described in ICAO Annex 16, Volume I cite{ICAO2017}. Firstly, the tone-corrected perceived noise level signal, \(PNLT\), and the tone corrections matrix, \(C\), at the observer are interpolated at time steps \(\Delta t = 0.5s\). The effective perceived noise level, \(EPNL\), is given by:
The duration correction, \(D\), is given by:
where \(t_0 = 10s\) and $mathcal{I}$ contains all points in the \(PNLT\) time series that satisfy \(PNLT > PNLTM - 10\). Finally, $PNLTM$ includes a correction term in the case of one-third octave band-sharing:
where \(i_{\max}\) is the index of the maximum value of the \(PNLT\) time series. The correction term, \(\Delta_c\), is given by: