CoefficientMatrix#

Examples using this class are:

Doinikov 2021 Viscous - Convergence Study

Doinikov 2021 Viscous - Convergence Study

Doinikov 2021 Viscous - Convergence Study
Fluid: Acoustic velocity plots with arrows

Fluid: Acoustic velocity plots with arrows

Fluid: Acoustic velocity plots with arrows
class osaft.solutions.basedoinikov2021.coefficientmatrix.CoefficientMatrix(f, R_0, rho_s, E_s, nu_s, fluid, p_0, wave_type, position=None)[source]#

Bases: BaseDoinikov, ABC

Coefficient matrix class for scattering field class for Doinikov (viscous fluid-elastic sphere; 2021)

Parameters:
  • f (Frequency | float) – frequency [Hz]

  • R_0 (Sphere | float) – radius [m]

  • rho_s (float) – density of the particle [kg/m^3]

  • E_s (float) – Young’s modulus of the particle [Pa]

  • nu_s (float) – Poisson’s ratio of the particle [-]

  • fluid (ViscousFluid | ViscoelasticFluid) – Fluid instance of the model

  • p_0 (float) – pressure amplitude [Pa]

  • wave_type (WaveType) – wave type

  • position (None | float, optional) – position in the standing wave field [m]

    Default: None

Public Data Attributes:

Inherited from BaseDoinikov

supported_wavetypes

eta

Fluid shear viscosity.

zeta

Fluid bulk viscosity.

x_l

Dimensionless primary wavenumber in the solid

x_t

Dimensionless secondary wavenumber in the solid

x_f

Dimensionless acoustic wavenumber in the fluid

x_v

Dimensionless viscous wavenumber in the fluid

rho_s

Wraps to osaft.core.solids.ElasticSolid.rho_s

E_s

Wraps to osaft.core.solids.ElasticSolid.E_s

nu_s

Wraps to osaft.core.solids.ElasticSolid.nu_s

k_l

Wraps to osaft.core.solids.ElasticSolid.k_l

k_t

Wraps to osaft.core.solids.ElasticSolid.k_t

rho_f

Wraps to osaft.core.fluids.ViscousFluid.rho_0 or to osaft.core.fluids.ViscoelasticFluid.rho_0

c_f

Wraps to osaft.core.fluids.ViscousFluid.c_f or to osaft.core.fluids.ViscoelasticFluid.c_f

eta_f

Wraps to osaft.core.fluids.ViscousFluid.eta_f or to osaft.core.fluids.ViscoelasticFluid.eta_f

zeta_f

Wraps to osaft.core.fluids.ViscousFluid.zeta_f or to osaft.core.fluids.ViscoelasticFluid.zeta_f

k_f

Wraps to osaft.core.fluids.ViscousFluid.k_f or to osaft.core.fluids.ViscoelasticFluid.k_f

k_v

Wraps to osaft.core.fluids.ViscousFluid.k_v or to osaft.core.fluids.ViscoelasticFluid.k_v

delta

Wraps to osaft.core.fluids.ViscousFluid.delta or to osaft.core.fluids.ViscoelasticFluid.delta

lambda_v

Wraps to osaft.core.fluids.ViscousFluid.lambda_v or to osaft.core.fluids.ViscoelasticFluid.lambda_v

position

Wraps to osaft.core.backgroundfields.BackgroundField.position

p_0

Wraps to osaft.core.backgroundfields.BackgroundField.p_0

wave_type

Wraps to osaft.core.backgroundfields.BackgroundField.wave_type

Inherited from BaseSphereFrequencyComposite
Inherited from BaseFrequencyComposite
Inherited from BaseSolution

supported_wavetypes

wave_type

returns the wave type of the solution

Public Methods:

det_M_n(n[, column])

Determinant of the matrix M for the mode n

matrix_M(n)

Matrix \(M_l\)

vector_n(n)

Vector \(n_l\)

viscosity_term()

Often used function of fluids shear and bulk viscosity

a_0()

Coefficient \(a_0\) [m^2/s]

a_hat_0()

Coefficient \(\hat{a}_0\) [m^2/s]

D_0()

Coefficient \(D_0\)

Inherited from BaseDoinikov
Inherited from BaseFrequencyComposite

input_variables()

Returns all properties that are settable.

Inherited from BaseSolution

copy()

Returns a copy of the object

check_wave_type()

Checks if wave_type is in supported_wavetypes


A_in(n)#

Wraps to osaft.core.backgroundfields.BackgroundField.A_in

D_0()[source]#

Coefficient \(D_0\)

(Eq. A17)

Returns:

coefficient D_0

a_0()[source]#

Coefficient \(a_0\) [m^2/s]

(Eq. A15)

Returns:

coefficient a_0

a_hat_0()[source]#

Coefficient \(\hat{a}_0\) [m^2/s]

(Eq. A15)

Returns:

coefficient a_0

check_wave_type()#

Checks if wave_type is in supported_wavetypes

Raises:

WrongWaveTypeError – If wave_type is not supported

Return type:

None

copy()#

Returns a copy of the object

Return type:

BaseSolution

det_M_n(n, column=None)[source]#

Determinant of the matrix M for the mode n

Parameters:
  • n (int) – mode

  • column (None | int, optional) – the l`th coefficient is replaced with the vector `N

    Default: None

Return type:

complex

classmethod input_variables()#

Returns all properties that are settable.

Returns a list of the names of all properties that are settable, i.e. all properties that wrap a PassiveVariable.

Return type:

list[str]

matrix_M(n)[source]#

Matrix \(M_l\)

(Eq. A19 - A 22)

Parameters:

n (int) – mode

Return type:

ndarray

vector_n(n)[source]#

Vector \(n_l\)

(Eq. A19 - A 22)

Parameters:

n (int) – mode

Return type:

ndarray

viscosity_term()[source]#

Often used function of fluids shear and bulk viscosity

Return type:

complex

property E_s: float#

Wraps to osaft.core.solids.ElasticSolid.E_s

property R_0: float#

Wrapper for osaft.core.geometries.Sphere.R_0

property area: float#

Wrapper for osaft.core.geometries.Sphere.area

property c_f: float#

Wraps to osaft.core.fluids.ViscousFluid.c_f or to osaft.core.fluids.ViscoelasticFluid.c_f

property delta: float#

Wraps to osaft.core.fluids.ViscousFluid.delta or to osaft.core.fluids.ViscoelasticFluid.delta

abstract property eta: float | complex#

Fluid shear viscosity. For a osaft.core.fluids.ViscousFluid returns \(\eta_f\), for a osaft.core.fluids.ViscoelasticFluid returns \(\eta_c\).

property eta_f: float#

Wraps to osaft.core.fluids.ViscousFluid.eta_f or to osaft.core.fluids.ViscoelasticFluid.eta_f

property f: float#

wrapper for osaft.core.frequency.Frequency.f

property k_f: complex#

Wraps to osaft.core.fluids.ViscousFluid.k_f or to osaft.core.fluids.ViscoelasticFluid.k_f

property k_l: float#

Wraps to osaft.core.solids.ElasticSolid.k_l

property k_t: float#

Wraps to osaft.core.solids.ElasticSolid.k_t

property k_v: complex#

Wraps to osaft.core.fluids.ViscousFluid.k_v or to osaft.core.fluids.ViscoelasticFluid.k_v

property lambda_v: float#

Wraps to osaft.core.fluids.ViscousFluid.lambda_v or to osaft.core.fluids.ViscoelasticFluid.lambda_v

property nu_s: float#

Wraps to osaft.core.solids.ElasticSolid.nu_s

property omega: float#

wrapper for osaft.core.frequency.Frequency.omega

property p_0: float#

Wraps to osaft.core.backgroundfields.BackgroundField.p_0

property position: float#

Wraps to osaft.core.backgroundfields.BackgroundField.position

property rho_f: float#

Wraps to osaft.core.fluids.ViscousFluid.rho_0 or to osaft.core.fluids.ViscoelasticFluid.rho_0

property rho_s: float#

Wraps to osaft.core.solids.ElasticSolid.rho_s

property volume: float#

Wrapper for osaft.core.geometries.Sphere.volume

property wave_type: WaveType#

Wraps to osaft.core.backgroundfields.BackgroundField.wave_type

property x_f#

Dimensionless acoustic wavenumber in the fluid

\(k_f \cdot R_0\)

property x_l#

Dimensionless primary wavenumber in the solid

\(k_l \cdot R_0\)

property x_t#

Dimensionless secondary wavenumber in the solid

\(k_t \cdot R_0\)

property x_v#

Dimensionless viscous wavenumber in the fluid

\(k_v \cdot R_0\)

abstract property zeta: float | complex#

Fluid bulk viscosity. For a osaft.core.fluids.ViscousFluid returns \(\zeta_f\), for a osaft.core.fluids.ViscoelasticFluid returns \(\zeta_c\).

property zeta_f: float#

Wraps to osaft.core.fluids.ViscousFluid.zeta_f or to osaft.core.fluids.ViscoelasticFluid.zeta_f