pyva.properties.materialClasses.EquivalentFluid

class pyva.properties.materialClasses.EquivalentFluid(flow_res, porosity, tortuosity, rho_bulk, length_visc, length_therm, limp=True, c0=343.0, rho0=1.23, eta=0.0, dynamic_viscosity=1.84e-05, kappa=1.4, Cp=1005.1, heat_conductivity=0.0257673)

Bases: Fluid

The EquivalentFluid class deals with fibre models based on Champoux Allard with limp/rigid frame theory

This class is a doughter class of fluid.

flow_res
Type:

flow resistivity

porosity
Type:

volume porosity

tortuosity
Type:

tortuosity (alpha_inf)

rho_bulk
Type:

apearant density of fluid and matrix

length_visc
Type:

viscous characteristic length

length_therm
Type:

thermal characteristic length

limp
Type:

Switch for use of limp model, false means rigid frame

all original attributes of fluid
See [All2005]_ for details of the theory
__init__(flow_res, porosity, tortuosity, rho_bulk, length_visc, length_therm, limp=True, c0=343.0, rho0=1.23, eta=0.0, dynamic_viscosity=1.84e-05, kappa=1.4, Cp=1005.1, heat_conductivity=0.0257673)

Construcutor of equivalent fluid class

The equivalent fluid model deals with the propagation of sound waves through a geometrical porous construction. It models the acoustic motion inside the skeleon and the viscous and thermal interactions between fluid and skeleton.

Parameters:
  • flow_res (float) – flow resistivity

  • porosity (float) – volume porosity.

  • tortuosity (float) – tortuosity (alpha_inf)N.

  • rho_bulk (float) – apearant density of fluid and matrix.

  • length_visc (float) – viscous characteristic lengt.

  • length_therm (float) – thermal characteristic length.

  • limp (bool, optional) – Switch for use of limp model. The default is True.

  • c0 (complex, optional) – Speed of sound. The default is 343..

  • rho0 (complex, optional) – density. The default is 1.23.

  • eta (float, optional) – Damping loss. The default is 0.01.

  • dynamic_viscosity (float, optional) – Dynamic viscosity. The default is 1.84e-5.

  • kappa (float, optional) – ratio of specific heat capacities. The default is 1.4.

  • Pr (float, optional) – Prandtl number. The default is 0.71.

Return type:

None.

Methods

G(omega)

Characteristic function of the equivalent fluid

__init__(flow_res, porosity, tortuosity, ...)

Construcutor of equivalent fluid class

absorption(omega, impedance[, theta])

Absorption coefficient for interface to other fluids

absorption_diffuse(omega, z[, theta_max, ...])

Diffuse absorption coefficient for interface to other fluids

acoustic_FE(omega, S[, ID])

Acoustic Finite Element radiator/end condition of plane wave fluid

air(temperature, pressure[, h_rel])

Determine precise properties of air from ambient conditions.

bulk_modulus(omega)

Dynamic complex bulk modulus of the equivalent fluid

c_freq(omega)

Complex, frequency dependent speed of sound of the equivalent fluid

damping(omega)

Damping loss

impedance(omega)

Complex characteristic impedance of the equivalent fluid

infinite_layer_TM(omega, wavenumber, thickness)

Calculated transfermatrix of infinite fluid layer

inverse_parameter_derivation(flow_res, ...)

Create EquivalentFluid object from test paramters

propagation_constant(omega)

param omega:

angular frequency

reflection_factor(omega, impedance[, theta, ...])

Refection factor for interface to other fluids

rho_freq(omega)

Complex density of the equivalent fluid

rho_rigid(omega)

Dynamic complex density of the equivalent fluid with rigid matrix

shear_wavenumber(omega)

Shear wavenumber according to Maa's theory

wavelength(omega)

param omega:

DESCRIPTION.

wavenumber(omega)

Wavenumber including damping

Attributes

Pr

Prandtl number.

diffusivity

Diffusivity.

kinematic_viscosity

Kinematic viscosity.

nu0

Kinematic viscosity.

z0

Real characteristic impedance without damping

G(omega)

Characteristic function of the equivalent fluid

Parameters:

omega (float) – angular frequency.

Returns:

Characteristic function.

Return type:

complex

property Pr

Prandtl number.

Returns:

Prandtl number.

Return type:

float

absorption(omega, impedance, theta=0)

Absorption coefficient for interface to other fluids

Parameters:
  • omega (float) – angular frequency.

  • impedance (complex) – impedance of interfacing fluid.

  • theta (float, optional) – angle of incidence. The default is 0.

Returns:

Absorption coefficient.

Return type:

complex

absorption_diffuse(omega, z, theta_max=1.5550883635269477, theta_step=0.015707963267948967)

Diffuse absorption coefficient for interface to other fluids

Parameters:
  • omega (float) – angular frequency.

  • z (complex) – impedance.

  • theta_max (float, optional) – Maximum integration angle. The default is np.pi/2*0.99.

  • theta_step (float, optional) – Angle integration step. The default is np.pi/200.

Returns:

alpha – diffuse field absorption coefficient.

Return type:

float

acoustic_FE(omega, S, ID=[1], **kwargs)

Acoustic Finite Element radiator/end condition of plane wave fluid

See also

piston

Parameters:
  • omega (float) – angular frequency.

  • S (float) – tube cross section

  • ID (list of int, optional) – list of input ID. The default is [1].

  • **kwargs (TYPE) – DESCRIPTION.

Raises:

ValueError – DESCRIPTION.

Returns:

0D aoustic radiation mobility S/Z * p = Q Za = p/Q = p/(v*S) = Z/S

Return type:

DynamicMatrix

static air(temperature, pressure, h_rel=0.0)

Determine precise properties of air from ambient conditions.

Implementation is based on [1] that collects numerous papers dealing with various properties of air. Rasmussen condenses all papers into one formula collection.

[1] Rasmussen, K. (1997). Calculation methods for the physical properties of air used in the calibration of microphones.

Parameters:
  • temperature (float) – temperature in Kelvin

  • pressure (float) – atmospheric pressure in bar

  • h_rel (float) – relative humidity in percent. The default is 0 (dry air).

Returns:

air with properties according to environmental conditions.

Return type:

Fluid

bulk_modulus(omega)

Dynamic complex bulk modulus of the equivalent fluid

Parameters:

omega (float) – angular frequency.

Returns:

Dynamic complex bulk modulus.

Return type:

complex

c_freq(omega)

Complex, frequency dependent speed of sound of the equivalent fluid

Parameters:

omega (float) – Angular frequency.

Returns:

speed of sound.

Return type:

complex

damping(omega)

Damping loss

Parameters:

omega (float or ndarray) – DESCRIPTION.

Returns:

damping loss.

Return type:

float or ndarray

property diffusivity

Diffusivity.

Returns:

Diffusivity.

Return type:

float

impedance(omega)

Complex characteristic impedance of the equivalent fluid

Parameters:

omega (float or ndarray) – angular frequency.

Returns:

characteristic impedance.

Return type:

complex

infinite_layer_TM(omega, wavenumber, thickness, ID=[1, 2], **kwargs)

Calculated transfermatrix of infinite fluid layer

Deprecated: This method is part of the FluidLayer class

Parameters:
  • omega (float) – angular frequency.

  • wavenumber (float) – wavenumbner in plane direction.

  • thickness (float) – thickness of fluid layer.

  • ID (list if int, optional) – list of input and output ID. The default is [1,2].

  • **kwargs (TYPE) – DESCRIPTION.

Raises:

ValueError – DESCRIPTION.

Returns:

transfer matrix of infinite fluid layer.

Return type:

DynamicMatrix

static inverse_parameter_derivation(flow_res, porosity, rho_bulk, fluid, rho_eq, K_eq, omega, limp=True)

Create EquivalentFluid object from test paramters

Parameters:
  • flow_res (float) – flow resistivity

  • porosity (float) – volume porosity.

  • rho_bulk (float) – apearant density of fluid and matrix.

  • fluid (Fluid) – fluid during test in the fluid phase of the absorber.

  • rho_eq (complex nd.array of size (N,) or complex) – Equivalent density of absorber material under test.

  • K_eq (complex nd.array of size (N,) or complex) – Equivalent bulk modulus of absorber material under test.

  • omega (ndarray of size (N,) or float) – Upper and lower limit for averaging

  • limp (bool, optional) – Switch for use of limp model. The default is True.

Returns:

LMS extimation of the materail due to test results.

Return type:

EquivalentFluid

property kinematic_viscosity

Kinematic viscosity.

Returns:

Kinematic viscosity.

Return type:

float

property nu0

Kinematic viscosity.

Returns:

Kinematic viscosity

Return type:

float

propagation_constant(omega)
Parameters:

omega (float or ndarray) – angular frequency

Returns:

propagation constant.

Return type:

complex

reflection_factor(omega, impedance, theta=0, area=1.0)

Refection factor for interface to other fluids

Parameters:
  • omega (float) – angular frequency.

  • impedance (complex) – impedance of interfacing fluid.

  • theta (float, optional) – angle of incidence. The default is 0.

  • area (float, optional) – ?????? . The default is 1..

Returns:

reflection coefficient.

Return type:

complex

rho_freq(omega)

Complex density of the equivalent fluid

Parameters:

omega (float) – angular frequency.

Returns:

Complex density.

Return type:

complex

rho_rigid(omega)

Dynamic complex density of the equivalent fluid with rigid matrix

Parameters:

omega (float) – angular frequency.

Returns:

Dynamic complex density.

Return type:

complex

shear_wavenumber(omega)

Shear wavenumber according to Maa’s theory

Parameters:

omega (float or ndarray) – angular frequency.

Returns:

wavenumber

Return type:

complex

wavelength(omega)
Parameters:

omega (TYPE) – DESCRIPTION.

Returns:

wavelength

Return type:

float

wavenumber(omega)

Wavenumber including damping

Parameters:

omega (TYPE) – DESCRIPTION.

Returns:

Complex wavenumber

Return type:

complex

property z0

Real characteristic impedance without damping

Returns:

Characteristic impedance.

Return type:

float