pyva.properties.materialClasses.PoroElasticMat
- class pyva.properties.materialClasses.PoroElasticMat(solid_mat, flow_res, porosity, tortuosity, length_visc, length_therm, limp=False, c0=343.0, rho0=1.23, dynamic_viscosity=1.84e-05, kappa=1.4, Cp=1005.1, heat_conductivity=0.0257673, Ks=inf)
Bases:
EquivalentFluid
The PoroElasticMat class deals porous and elastic material
The material model is implemented according to Allard [All2009] and requires a geometry information of the frame given by the EquivalentFlluid attributes and the bulk properties elastic frame matrial. In addition the bulk modulus of the material the frame is made of can be given, but most cases this can be considered as much stiffer as the bulk material and is therefor considered as inf.
- frame
- 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
- E
See [All2009] for details of the theory
- __init__(solid_mat, flow_res, porosity, tortuosity, length_visc, length_therm, limp=False, c0=343.0, rho0=1.23, dynamic_viscosity=1.84e-05, kappa=1.4, Cp=1005.1, heat_conductivity=0.0257673, Ks=inf)
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:
solid_mat (IsoMat) – Bulk frame material (in vaccuum).
flow_res (float) – flow resistivity
porosity (float) – volume porosity.
tortuosity (float) – tortuosity (alpha_inf)N.
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
Delta
(omega)Delta helper function for Biot Theory.
G
(omega)Characteristic function of the equivalent fluid
N
(omega)N function of poroelastic material, equal to shear modulus.
P
(omega)P function of poroelastic material.
Q
(omega)Q function of poroelastic material.
R
(omega)R function of poroelastic material.
__init__
(solid_mat, flow_res, porosity, ...)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
impedances
(omega)Characteristic impedances of poroelastic material.
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
rho11
(omega)Dynamic frame density rho_11.
rho12
(omega)Dynamic coupled density rho_12.
rho22
(omega)Dynamic frame density rho_11.
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
surface_impedances
(omega, thickness)Surface impedance of poroelastic layer with hard wall backing
wavelength
(omega)- param omega:
DESCRIPTION.
wavenumber
(omega)Wavenumber including damping
wavenumbers
(omega)Provide wavenumber coefficients of poroelastic materials.
Attributes
Prandtl number.
Diffusivity.
Kinematic viscosity.
Kinematic viscosity.
Joint static density of air and frame.
Real characteristic impedance without damping
- Delta(omega)
Delta helper function for Biot Theory.
Eq(6.69)
- Parameters:
omega (float) – angular frequency.
- Returns:
Delta.
- Return type:
complex
- G(omega)
Characteristic function of the equivalent fluid
- Parameters:
omega (float) – angular frequency.
- Returns:
Characteristic function.
- Return type:
complex
- N(omega)
N function of poroelastic material, equal to shear modulus.
Just for usage of similar symbols
- Parameters:
omega (float) – Angular frequency.
- Returns:
shear modulus.
- Return type:
complex
- P(omega)
P function of poroelastic material.
Eq. (6.28) of [All2009] assuming that the stiffness of the matrix material is much higher that the bulk stiffness, thus Ks >> Kb
- Parameters:
omega (float) – Angular frequency.
- Returns:
- Return type:
complex
- property Pr
Prandtl number.
- Returns:
Prandtl number.
- Return type:
float
- Q(omega)
Q function of poroelastic material.
Eq. (6.27) of [All2009] assuming that the stiffness of the matrix material is much higher that the bulk stiffness, thus Ks >> Kb
- Parameters:
omega (float) – Angular frequency.
- Returns:
- Return type:
complex
- R(omega)
R function of poroelastic material.
Eq. (6.26) of [All2009] assuming that the stiffness of the matrix material is much higher that the bulk stiffness, thus Ks >> Kb
- Parameters:
omega (float) – Angular frequency.
- Returns:
- Return type:
complex
- 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:
- 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:
- 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
- impedances(omega)
Characteristic impedances of poroelastic material.
- Parameters:
omega (float) – angular frequency.
- Returns:
Zf1 (complex) – Characterisitc impedance of the air for the first compressinal wave.
Zf2 (complex) – Characterisitc impedance of the air for the second compressinal wave.
Zs1 (complex) – Characterisitc impedance of the frame for the first compressinal wave.
Zs2 (complex) – Characterisitc impedance of the frame for the second compressinal wave.
- 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:
- 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:
- 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
- property rho
Joint static density of air and frame.
- Returns:
Dynamic coupled density.
- Return type:
complex
- rho11(omega)
Dynamic frame density rho_11.
Eq. (6.56)
- Parameters:
omega (float) – angular frequency.
- Returns:
Dynamic frame density.
- Return type:
complex
- rho12(omega)
Dynamic coupled density rho_12.
Eq. (6.56)
- Parameters:
omega (float) – angular frequency.
- Returns:
Dynamic coupled density.
- Return type:
complex
- rho22(omega)
Dynamic frame density rho_11.
Eq. (6.56)
- Parameters:
omega (float) – angular frequency.
- Returns:
Dynamic frame density.
- 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
- surface_impedances(omega, thickness)
Surface impedance of poroelastic layer with hard wall backing
- Parameters:
omega (float) – angular frequency.
thickness (float) – thickness of layer.
- Returns:
Z – surface impedance.
- Return type:
ndarray
- 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
- wavenumbers(omega)
Provide wavenumber coefficients of poroelastic materials.
- Parameters:
omega (float) – angular frequency.
- Returns:
delta1 (complex) – squared first compressional wavenmuber.
delta2 (complex) – squared first compressional wavenmuber.
delta3 (complex) – squared shear wavenmuber.
mu1 (complex) – ratio of the velocity of air to the velocity of the frame of 1st compr. wave.
mu2 (complex) – ratio of the velocity of air to the velocity of the frame of 2nd compr. wave.
mu3 (complex) – ratio of the velocity of air to the velocity of the frame of shear wave.
- property z0
Real characteristic impedance without damping
- Returns:
Characteristic impedance.
- Return type:
float