pyva.properties.structuralPropertyClasses.PlateProp

class pyva.properties.structuralPropertyClasses.PlateProp(thickness, material)

Bases: object

Class for thin plates.

The plate property class deals with the dynamics of thin plates. This comprises all waves and dynamics of isotropic plates.

Due to this simplicity there are only two attributes

thickness

plate thickness.

Type:

float

material

isotropic plate material.

Type:

IsoMat

__init__(thickness, material)

Class constructor of plate property

Parameters:
  • thickness (float) – plate thickness.

  • material (IsoMat) – isotropic plate material.

Return type:

None.

Methods

__init__(thickness, material)

Class constructor of plate property

c_B_group(omega)

Bending group wave speed

c_B_phase(omega)

Bending phase wave speed

c_L()

Longitudinal wave speed

c_S()

Shear wave speed

c_T()

Shear wave speed

coincidence_frequency([c0])

coincidence frequency of flat plate

edge_imaginary_radiation_stiffness_wavenumber(...)

Structural edge radiation stiffness for specific wave types

edge_radiation_stiffness_wavenumber(omega, ...)

Structural radiation stiffness of straight plate edges

edge_radiation_stiffness_wavenumber_LM(...)

Structural radiation stiffness of straight plate edges

edge_skew_radiation_stiffness_wavenumber(...)

Structural edge radiation stiffness for specific wave types.

edge_skew_radiation_stiffness_wavenumber_LM(...)

Structural edge radiation stiffness for specific wave types

edge_wave_amplitude_radiated_power(Psi, ...)

Calculates the radiated power from wave amplidute

edge_wave_amplitude_radiation_stiffness(...)

Efficient radiation stiffness related to wave amplitude

edge_wave_excitation_displacement(omega, ...)

Calculates the edge displacement due to outgoing wave

edge_wave_excitation_force(omega, ...[, matrix])

wave_excitation_force calculates the blocked force wave amplitudes into edge harmonic diplacement

edge_wave_excitation_force_cross_correlation(...)

Cross correlation of excitation forces due to wave theory

force_excitation_power(omega[, force])

Power input due to normal force input

muL(omega, kx)

Longitudiunal wave propagation constant in y-direction

muS(omega, kx)

Shear wave propagation constant in y-direction

muT(omega, kx)

plate_wavenumber(omega, wave_DOF)

Wavenumber of plates

point_stiffness(omega)

Normal force point stiffness

point_stiffness_edge(omega)

Normal force point edge stiffness

transfer_impedance(omega, kx)

Transfer impedance of infinite plates

transmission_coefficient_angular(omega, fluid1)

Transmission coefficient of plane wave transmission through infinite plates

transmission_coefficient_diffuse(omega, fluid1)

Diffuse transmission coeffient of infinite plates

w_inf(omega, r, Fz)

Displacement due to normal point force excitatoin

wave_transformation_matrix(omega, wavenumber)

Transformation matrix from wave amplitude coordinates into edge harmonic displacement.

wave_transformation_matrix_LM(omega, wavenumber)

Transformation matrix from wave amplitude coordinates into edge harmonic displacement.

wavelength_B(omega)

Bending wavelength

wavelength_L(omega)

Longitudial wavelength

wavelength_S([omega])

Shear wavelength

wavelength_T([omega])

wavenumber_B(omega[, comp])

Bending wavenumber

wavenumber_B_4(omega)

wavenumber_L([omega])

Longitudinal wavenumber

wavenumber_S([omega])

Shear wavenumber

wavenumber_T([omega])

wavenumber_constants(omega)

Bending wavenumber

Attributes

B

real bending stiffness

B_complex

complex bending stiffness with consideration of damping loss.

B_per_M

Bending stiffness per area mass

B_per_M_complex

Complex bending stiffness per area mass

C

longitudinal stiffness

S

transversal stiffness

S_complex

complex transversal stiffness.

mass_per_area

Mass per area

point_impedance

Normal force point impedance

point_impedance_edge

Normal force point edge impedance

property B

real bending stiffness

Returns:

bending stiffness.

Return type:

float

property B_complex

complex bending stiffness with consideration of damping loss.

Returns:

bending stiffness.

Return type:

complex

property B_per_M

Bending stiffness per area mass

Returns:

Bending stiffness per area specific mass.

Return type:

float

property B_per_M_complex

Complex bending stiffness per area mass

Returns:

Bending stiffness per area specific mass.

Return type:

complex

property C

longitudinal stiffness

Returns:

transversal stiffness.

Return type:

float

property S

transversal stiffness

Returns:

transversal stiffness.

Return type:

float

property S_complex

complex transversal stiffness.

Returns:

complex transversal stiffness.

Return type:

complex

c_B_group(omega)

Bending group wave speed

Parameters:

omega (float) – angular frequency.

Returns:

group wave speed.

Return type:

float

c_B_phase(omega)

Bending phase wave speed

Parameters:

omega (float) – angular frequency.

Returns:

phase wave speed.

Return type:

float

c_L()

Longitudinal wave speed

Returns:

wave speed.

Return type:

float

c_S()

Shear wave speed

Returns:

wave speed.

Return type:

float

c_T()

Shear wave speed

Returns:

wave speed.

Return type:

float

coincidence_frequency(c0=343.0)

coincidence frequency of flat plate

Parameters:

c0 (float) – speed of sound of fluid

Returns:

angular coincidence frequency in s^(-1)

Return type:

float

edge_imaginary_radiation_stiffness_wavenumber(omega, wavenumber, wave_DOF=0)

Structural edge radiation stiffness for specific wave types

Due to special relationships there are different formulations of the imaginary radiation stiffness as following directly from the radation_stiffness_wavenumber except for bendig waves where both expressions are similar. See [Pei2022] for details

Will be deprecated in the new future, because it is equivalent to the skew hermitian matrix.

Parameters:
  • omega (float) – angular frequency

  • wavenumber (float) – wavenumber kx

  • wave_DOF (int) – identifier of radiation matrix 0 all waves, 1,2,(3 or 4) correponds to longitudinal, shear and bending wave 5 stands for inplane (1+2)

Returns:

matrix [4 x 4] of the stiffness element

Return type:

LinearMatrix

edge_radiation_stiffness_wavenumber(omega, wavenumber, wave_DOF=0)

Structural radiation stiffness of straight plate edges

This method calculates the structural dynamic radiation stiffness matrix of a semi-infinite plate in the wave number domain. The force-displacement relations in wave number domain are derived from the harmonic solution of the vibrating plate equation, as explained in [Pei2022]. Given a cartesian system with the x-axis along the plate edge and the y-axix looking inside the plate, four degrees of freedom are considered at the edge of the plate: three displacement (u,v,w) and the rotation (theta) in the edge direction (x), so that the force-displacement function is a 4 X 4 matrix, function of wavenumber and time frequency, where the out-of-plane behavior is decoupled from the in-plane behavior. The matrix is given in terms of its single coefficients a_ij.

Parameters:
  • omega (float) – angular frequency

  • wavenumber (float) – wavenumber kx

  • wave_DOF (int) – identifier of radiation matrix 0 all waves, 1,2,3 correponds to longitudinal, shear and bending wave

Returns:

matrix [Nkx x 4 x 4] of the stiffness element

Return type:

nd.array

edge_radiation_stiffness_wavenumber_LM(omega, wavenumber, wave_DOF=0)

Structural radiation stiffness of straight plate edges

This method calculates the structural dynamic radiation stiffness matrix of a semi-infinite plate in the wave number domain. The force-displacement relations in wave number domain are derived from the harmonic solution of the vibrating plate equation, as explained in [Pei2022]. Given a cartesian system with the x-axis along the plate edge and the y-axix looking inside the plate, four degrees of freedom are considered at the edge of the plate: three displacement (u,v,w) and the rotation (theta) in the edge direction (x), so that the force-displacement function is a 4 X 4 matrix, function of wavenumber and time frequency, where the out-of-plane behavior is decoupled from the in-plane behavior. The matrix is given in terms of its single coefficients a_ij.

Parameters:
  • omega (float) – angular frequency

  • wavenumber (float) – wavenumber kx

  • wave_DOF (int) – identifier of radiation matrix 0 all waves, 1,2,3 correponds to longitudinal, shear and bending wave

Returns:

matrix [4 x 4] of the stiffness element

Return type:

LinearMatrix

edge_skew_radiation_stiffness_wavenumber(omega, wavenumber, wave_DOF=0)

Structural edge radiation stiffness for specific wave types.

Due to special relationships there are different formulations of the imaginary radiation stiffness as following directly from the radation_stiffness_wavenumber except for bendig waves where both expressions are similar. See [Pei2022] for details

Parameters:
  • omega (float) – angular frequency

  • wavenumber (float) – wavenumber kx

  • wave_DOF (int) – identifier of radiation matrix 0 all waves, 1,2,(3 or 4) correponds to longitudinal, shear and bending wave 5 stands for inplane (1+2)

Returns:

matrix [Nx x 4 x 4] of the stiffness element

Return type:

np.ndarray

edge_skew_radiation_stiffness_wavenumber_LM(omega, wavenumber, wave_DOF=0)

Structural edge radiation stiffness for specific wave types

Due to special relationships there are different formulations of the imaginary radiation stiffness as following directly from the radation_stiffness_wavenumber except for bendig waves where both expressions are similar. See [Pei2022] for details

Parameters:
  • omega (float) – angular frequency

  • wavenumber (float) – wavenumber kx

  • wave_DOF (int) – identifier of radiation matrix 0 all waves, 1,2,(3 or 4) correponds to longitudinal, shear and bending wave 5 stands for inplane (1+2)

Returns:

matrix [4 x 4] of the stiffness element

Return type:

LinearMatrix

edge_wave_amplitude_radiated_power(Psi, omega, wavenumber, wave_DOF)

Calculates the radiated power from wave amplidute

Parameters:
  • Psi (complex) – wave amplitude.

  • omega (float) – angular frequency.

  • wavenumber (float) – edge wavenuber.

  • wave_DOF (int) – wave degrees of freedom.

Raises:

ValueError – DESCRIPTION.

Returns:

radiated power.

Return type:

float

edge_wave_amplitude_radiation_stiffness(omega, wavenumber, wave_DOF)

Efficient radiation stiffness related to wave amplitude

This method uses the power expressions to derive efficient stiffness values

Parameters:
  • omega (float) – angular frequency.

  • wavenumber (float) – edge wavenumber.

  • wave_DOF (int) – wave degree of freedom.

Raises:

ValueError – DESCRIPTION.

Returns:

efficient wave radiation stiffeness.

Return type:

float

edge_wave_excitation_displacement(omega, wavenumber, wave_DOF)

Calculates the edge displacement due to outgoing wave

Parameters:
  • omega (float) – angular frequency.

  • wavenumber (float) – edge wavenumber.

  • wave_DOF (int) – wave degree of freedom.

  • Returs

  • ------ – vector [4 x 1] of the displacement [u,v,w,eta]

edge_wave_excitation_force(omega, wavenumber, wave_DOF, matrix=False)

wave_excitation_force calculates the blocked force wave amplitudes into edge harmonic diplacement

Parameters:
  • omega (float) – angular frequency.

  • wavenumber (float) – edge wavenumber.

  • wave_DOF (int) – wave degree of freedom.

Returns:

vector [Fx,Fz,Fz,Mx]^T of force

Return type:

LinearMatrix

edge_wave_excitation_force_cross_correlation(omega, wavenumber, wave_DOF, matrix=False)

Cross correlation of excitation forces due to wave theory

The main purpose of this method is to check if the blocked force assumption leads to the same csd as the diffuse field reciprocity

Parameters:
  • omega (float) – angular frequency.

  • wavenumber (float) – edge wavenumber.

  • wave_DOF (int) – wave degree of freedom.

  • matrix (bool) – switch wether the analytical or the direct solution is used- Default value is True-

Returns:

[4 x 4] csd matrix

Return type:

LinearMatrix

force_excitation_power(omega, force=1.0)

Power input due to normal force input

Parameters:
  • omega (float) – angular frequency.

  • force (complex, optional) – normal force. The default is 1.

Returns:

power.

Return type:

float

property mass_per_area

Mass per area

Returns:

mass per area.

Return type:

float

muL(omega, kx)

Longitudiunal wave propagation constant in y-direction

Parameters:
  • omega (TYPE) – DESCRIPTION.

  • kx (float) – edge wavenumber.

Returns:

uL – propagation constant.

Return type:

complex

muS(omega, kx)

Shear wave propagation constant in y-direction

Parameters:
  • omega (TYPE) – DESCRIPTION.

  • kx (float) – edge wavenumber.

Returns:

uS – propagation constant.

Return type:

complex

plate_wavenumber(omega, wave_DOF)

Wavenumber of plates

Parameters:
  • omega (float) – angular frequency.

  • wave_DOF (int) – wave degree of freedom.

Raises:

ValueError – DESCRIPTION.

Returns:

k_plate – DESCRIPTION.

Return type:

TYPE

property point_impedance

Normal force point impedance

Returns:

mechanical impedance.

Return type:

float

property point_impedance_edge

Normal force point edge impedance

Returns:

mechanical impedance.

Return type:

float

point_stiffness(omega)

Normal force point stiffness

Returns:

mechanical stiffness.

Return type:

float

point_stiffness_edge(omega)

Normal force point edge stiffness

Returns:

mechanical stiffness.

Return type:

float

transfer_impedance(omega, kx)

Transfer impedance of infinite plates

The transfer impedanc is used in the transfer matrix applications using infinite plate theory

Parameters:
  • omega (float) – angular frequency

  • kx (float) – wavenumer of incomiing wave

Returns:

The transfer impedance of infinite plates

Return type:

complex

transmission_coefficient_angular(omega, fluid1, theta=0, fluid2='none')

Transmission coefficient of plane wave transmission through infinite plates

Parameters:
  • omega (float) – angular frequency

  • theta (float) – angle of incidence in radiants 0 <= theta <= pi/2

  • fluid1 (fluid) – fluid on irradiation side or both if fluid 2 is not given

  • fluid2 (fluid) – fluid on transmission side

Returns:

angular transmission coefficient of plateprop

Return type:

float

transmission_coefficient_diffuse(omega, fluid1, fluid2='none', theta_max=1.361356816555577, theta_step=0.017453292519943295)

Diffuse transmission coeffient of infinite plates

The diffuse field is implemented by angle intergration

Parameters:
  • omega (float) – angular frequency

  • fluid1 (fluid) – fluid on irradiation side or both if fluid 2 is not given

  • fluid2 (fluid) – fluid on transmission side

  • theta_max (float, optional) – max angle of incidence in radiants 0 <= theta <= pi/2. Default value is np.pi*78/180

  • theta_step (float, optional) – max angle of incidence in radiants 0 <= theta <= pi/2. Default value is np.pi/180

Returns:

Diffuse field transmission coefficient

Return type:

float

w_inf(omega, r, Fz)

Displacement due to normal point force excitatoin

Parameters:
  • omega (float) – angular frequency.

  • r (float) – distance source - receiver.

  • Fz (complex) – Normal force amplitude.

Returns:

Displacement.

Return type:

complex

wave_transformation_matrix(omega, wavenumber, inv=False)

Transformation matrix from wave amplitude coordinates into edge harmonic displacement.

Parameters:
  • omega (float) – angular frequency

  • wavenumber (float) – wavenumber

  • inv (bool) – switch for inverse version

Returns:

[Nkx x 4 x 4] transformation matrix

Return type:

np.ndarray

wave_transformation_matrix_LM(omega, wavenumber, inv=False)

Transformation matrix from wave amplitude coordinates into edge harmonic displacement.

LinearMatrix version

Parameters:
  • omega (float) – angular frequency

  • wavenumber (float) – wavenumber

  • inv (bool) – switch for inverse version

Returns:

[4 x 4] transformation matrix

Return type:

LinearMmatrix

wavelength_B(omega)

Bending wavelength

Parameters:

omega (float) – angular frequency.

Returns:

wavelength.

Return type:

float

wavelength_L(omega)

Longitudial wavelength

Parameters:

omega (float, optional) – angular frequency. The default is 0.

Returns:

wavelength.

Return type:

float

wavelength_S(omega=0.0)

Shear wavelength

Parameters:

omega (float, optional) – angular frequency. The default is 0.

Returns:

wavelength.

Return type:

float

wavenumber_B(omega, comp=False)

Bending wavenumber

Parameters:
  • omega (float) – angular frequency.

  • comp (bool, optional) – Switch for complex consideration of damping. The default is False.

Returns:

wavenumber.

Return type:

complex

wavenumber_L(omega=0.0)

Longitudinal wavenumber

Parameters:

omega (float, optional) – angular frequency. The default is 0.

Returns:

wavenumber.

Return type:

float

wavenumber_S(omega=0.0)

Shear wavenumber

Parameters:

omega (float, optional) – angular frequency. The default is 0.

Returns:

wavenumber.

Return type:

float

wavenumber_constants(omega)

Bending wavenumber

Parameters:

omega (float) – angular frequency.

Returns:

(kL,LS,kB).

Return type:

tuple