ScatteringField#
Examples using this class are:
- class osaft.solutions.doinikov1994compressible.scattering.ScatteringField(f, R_0, rho_s, c_s, eta_s, zeta_s, rho_f, c_f, eta_f, zeta_f, p_0, wave_type, position, N_max=5)[source]#
Bases:
CoefficientMatrix
,BaseScatteringDoinikov1994
Scattering field of Doinikov (viscous fluid-viscous sphere; 1994)
- Parameters:
f (Frequency | float | int) – Frequency [Hz]
R_0 (Sphere | float | int) – Radius of the sphere [m]
rho_s (float) – Density of the sphere [kg/m^3]
c_s (float) – Speed of sound of in the sphere [m/s]
eta_s (float) – shear viscosity of in the sphere [Pa s]
zeta_s (float) – bulk viscosity of in the sphere [Pa s]
rho_f (float) – Density of the fluid [kg/m^3]
c_f (float) – Speed of sound of the fluid [m/s]
eta_f (float) – shear viscosity [Pa s]
zeta_f (float) – bulk viscosity [Pa s]
p_0 (float) – Pressure amplitude of the field [Pa]
position (float) – Position within the standing wave field [m]
wave_type (WaveType) – Type of wave, traveling or standing
N_max (None | int, optional) – Highest order mode included in the computation [-]
Default:5
Public Data Attributes:
Inherited from
CoefficientMatrix
Inherited from
BaseDoinikov1994Compressible
supported_wavetypes
Wraps to
osaft.core.solids.RigidSolid.rho_s
Wraps to
osaft.core.fluids.ViscousFluid.k_f
Wraps to
osaft.core.fluids.ViscousFluid.k_v
Wraps to
osaft.core.fluids.ViscousFluid.c_f
Wraps to
osaft.core.fluids.ViscousFluid.eta_f
Inherited from
BaseDoinikov1994
Real part of \(x\)
normalized viscous boundary thickness \(\tilde{\delta}=\frac{\delta}{R_0}\)
Wraps to
osaft.core.backgroundfields.BackgroundField.position
Wraps to
osaft.core.backgroundfields.BackgroundField.wave_type
Wraps to
osaft.core.fluids.ViscousFluid.rho_f
Wraps to
osaft.core.fluids.ViscousFluid.c_f
Wraps to
osaft.core.fluids.ViscousFluid.eta_f
Returns the ratio of the densities \(\tilde{\rho}=\frac{\rho_f}{\rho_s}\)
Wraps to
osaft.core.fluids.ViscousFluid.k_f
Wraps to
osaft.core.fluids.ViscousFluid.k_v
Wraps to
osaft.core.fluids.ViscousFluid.delta
Wraps to
osaft.core.backgroundfields.BackgroundField.abs_pos
Inherited from
BaseSphereFrequencyComposite
Wrapper for
osaft.core.geometries.Sphere.R_0
Wrapper for
osaft.core.geometries.Sphere.area
Wrapper for
osaft.core.geometries.Sphere.volume
Inherited from
BaseFrequencyComposite
wrapper for
osaft.core.frequency.Frequency.f
wrapper for
osaft.core.frequency.Frequency.omega
Inherited from
BaseSolution
supported_wavetypes
returns the wave type of the solution
Inherited from
BaseScatteringDoinikov1994
Inherited from
BaseScattering
Cutoff mode number for infinite sums
field
omega
R_0
rho_f
k_f
Public Methods:
alpha_n
(n)coefficient \(\alpha_n\) (3.13) and (3.20)
beta_n
(n)coefficient \(\beta_n\) (3.13) and (3.20)
alpha_hat_n
(n)coefficient \(\alpha_hat_n\) (3.13) and (3.20)
beta_hat_n
(n)coefficient \(\beta_hat_n\) (3.13) and (3.20)
radial_particle_velocity
(r, theta, t[, mode])Particle velocity in radial direction
tangential_particle_velocity
(r, theta, t[, mode])Particle velocity in tangential direction
Inherited from
CoefficientMatrix
det_M_n
(n[, column])Determinant of the matrix M for the mode n
M
(n)Matrix M of order n
N
(n)Vector N
Inherited from
BaseDoinikov1994
A_in
(n)Inherited from
BaseFrequencyComposite
Returns all properties that are settable.
Inherited from
BaseSolution
Inherited from
BaseScatteringDoinikov1994
Wrapper to the fluid scattering coefficients for an inviscid fluid
V_r_sc
(n, r)Radial scattering field velocity term of mode n without Legendre coefficients
V_theta_sc
(n, r)Tangential scattering field velocity term of mode n without Legendre coefficients
A_in
(n)Incoming wave amplitude
alpha_n
(n)\(\alpha_n\) coefficient
beta_n
(n)\(\beta_n\) coefficient
Inherited from
BaseScattering
radial_acoustic_fluid_velocity
(r, theta, t, ...)Returns the value for the radial acoustic velocity in [m/s].
tangential_acoustic_fluid_velocity
(r, theta, ...)Returns the value for the tangential acoustic velocity in [m/s].
pressure
(r, theta, t, scattered, incident[, ...])Returns the acoustic pressure [Pa].
Wrapper to the fluid scattering coefficients for an inviscid fluid
velocity_potential
(r, theta, t, scattered, ...)Returns the velocity potential of the fluid in [m^2/s].
radial_particle_velocity
(r, theta, t[, mode])Returns the value for the radial particle velocity in [m/s].
tangential_particle_velocity
(r, theta, t[, mode])Returns the value for the tangential particle velocity in [m/s].
radial_particle_displacement
(r, theta, t[, mode])Particle displacement in radial direction
tangential_particle_displacement
(r, theta, t)Particle displacement in tangential direction
radial_mode_superposition
(radial_func, r, ...)Returns either a single mode (
mode=int
) or a the sum untilN_max
(mode=None
).Returns either a single mode (
mode=int
) or a the sum untilN_max
(mode=None
).V_r_i
(n, r)Radial incident field velocity term of mode n without Legendre coefficients
V_theta_i
(n, r)Tangential incident field velocity term of mode n without Legendre coefficients
V_r_sc
(n, r)Radial scattering field velocity term of mode n without Legendre coefficients
V_theta_sc
(n, r)Tangential scattering field velocity term of mode n without Legendre coefficients
V_r
(n, r, scattered, incident)Superposition of
V_r_sc()
andV_r_i()
depending onscattered
andincident
V_theta
(n, r, scattered, incident)Superposition of
V_theta_sc()
andV_theta_i()
depending onscattered
andincident
- A_in(n)#
Wraps to
osaft.core.backgroundfields.BackgroundField.A_in
- Parameters:
n (
int
) – mode number- Return type:
complex
- V_r(n, r, scattered, incident)#
Superposition of
V_r_sc()
andV_r_i()
depending onscattered
andincident
At least one of the two must be True.
- Parameters:
n (
int
) – moder (
float
) – radial coordinate [m]scattered (
bool
) – add scattered fieldincident (
bool
) – add incident
- Return type:
complex
- V_r_i(n, r)#
Radial incident field velocity term of mode n without Legendre coefficients
Returns radial incident field velocity in [m/s]
- Parameters:
n (int) – mode
r (float | Sequence) – radial coordinate [m]
- Return type:
complex
- V_r_sc(n, r)#
Radial scattering field velocity term of mode n without Legendre coefficients
Returns radial scattering field velocity in [m/s]
- Parameters:
n (
int
) – moder (
float
) – radial coordinate [m]
- Return type:
complex
- V_theta(n, r, scattered, incident)#
Superposition of
V_theta_sc()
andV_theta_i()
depending onscattered
andincident
At least one of the two must be True.
- Parameters:
n (
int
) – moder (
float
) – radial coordinate [m]scattered (
bool
) – add scattered fieldincident (
bool
) – add incident
- Return type:
complex
- V_theta_i(n, r)#
Tangential incident field velocity term of mode n without Legendre coefficients
Returns tangential incident field velocity in [m/s]
- Parameters:
n (int) – mode
r (float | Sequence) – radial coordinate [m]
- Return type:
complex
- V_theta_sc(n, r)#
Tangential scattering field velocity term of mode n without Legendre coefficients
Returns tangential scattering field velocity in [m/s]
- Parameters:
n (
int
) – moder (
float
) – radial coordinate [m]
- Return type:
complex
- alpha_hat_n(n)[source]#
coefficient \(\alpha_hat_n\) (3.13) and (3.20)
- Parameters:
n (
int
) – order- Return type:
complex
- alpha_n(n)[source]#
coefficient \(\alpha_n\) (3.13) and (3.20)
- Parameters:
n (
int
) – order- Return type:
complex
- beta_hat_n(n)[source]#
coefficient \(\beta_hat_n\) (3.13) and (3.20)
- Parameters:
n (
int
) – order- Return type:
complex
- beta_n(n)[source]#
coefficient \(\beta_n\) (3.13) and (3.20)
- Parameters:
n (
int
) – order- Return type:
complex
- check_wave_type()#
Checks if
wave_type
is insupported_wavetypes
- Raises:
WrongWaveTypeError – If
wave_type
is not supported- Return type:
None
- copy()#
Returns a copy of the object
- Return type:
- det_M_n(n, column=None)#
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
]
- potential_coefficient(n)#
Wrapper to the fluid scattering coefficients for an inviscid fluid
This method must be implemented by every theory to have a common interface for other modules.
- Parameters:
n (
int
) – mode- Return type:
complex
- pressure(r, theta, t, scattered, incident, mode=None)#
Returns the acoustic pressure [Pa].
- Parameters:
r (float | Sequence) – radial coordinate [m]
theta (float | Sequence) – tangential coordinate [rad]
t (float | Sequence) – time [s]
scattered (bool) – add scattered field
incident (bool) – add incident
mode (None | int, optional) – specific mode number of interest; if None then all modes until
N_max
Default:None
- Return type:
complex
- radial_acoustic_fluid_velocity(r, theta, t, scattered, incident, mode=None)#
Returns the value for the radial acoustic velocity in [m/s].
This method must be implemented by every theory to have a common interface for other modules.
- Parameters:
r (float | Sequence) – radial coordinate [m]
theta (float | Sequence) – tangential coordinate [rad]
t (float | Sequence) – time [s]
scattered (bool) – scattered field contribution
incident (bool) – incident field contribution
mode (None | int, optional) – specific mode number of interest; if None then all modes until
N_max
Default:None
- Return type:
complex | NDArray
- radial_mode_superposition(radial_func, r, theta, t, mode=None)#
Returns either a single mode (
mode=int
) or a the sum untilN_max
(mode=None
).If
mode=int
the formula is\[e^{-i\omega t}\, f_{\text{mode}}(r) \,P_{\text{mode}}(\cos\theta)\]If
mode=None
the formula is\[e^{-i\omega t} \sum_{n=0}^{\text{N}_{\text{max}}} \,f_n(r) \,P_n(\cos\theta)\]where \(f_\text{n}(r)\) is the
radial_func(n, r)
passed to the method.- Parameters:
radial_func (Callable[[int, float], complex]) – radial function dependent on
r
r (float | Sequence) – radial coordinate [m]
theta (float | Sequence) – tangential coordinate [rad]
t (float | Sequence) – time [s]
mode (int, optional) – specific mode number of interest; if None then all modes until
N_max
Default:None
- Return type:
complex | NDArray
- radial_particle_displacement(r, theta, t, mode=None)#
Particle displacement in radial direction
Returns the value of the particle displacement in radial direction in [m]
- Parameters:
r (float | Sequence) – radial coordinate [m]
theta (float | Sequence) – tangential coordinate [rad]
t (float | Sequence) – time [s]
mode (None | int, optional) – specific mode number of interest; if None that all modes until
N_max
Default:None
- Return type:
complex | NDArray
- radial_particle_velocity(r, theta, t, mode=None)[source]#
Particle velocity in radial direction
Returns the value of the particle velocity in radial direction in [m/s]
- Parameters:
r (float | NDArray | list[float]) – radial coordinate [m]
theta (float | NDArray | list[float]) – tangential coordinate [rad]
t (float | NDArray | list[float]) – time [s]
mode (None | int, optional) – mode to be plotted, if None then sum of all mode up to N_max
Default:None
- Return type:
complex
- tangential_acoustic_fluid_velocity(r, theta, t, scattered, incident, mode=None)#
Returns the value for the tangential acoustic velocity in [m/s].
This method must be implemented by every theory to have a common interface for other modules.
- Parameters:
r (float | Sequence) – radial coordinate [m]
theta (float | Sequence) – tangential coordinate [rad]
t (float | Sequence) – time [s]
scattered (bool) – scattered field contribution
incident (bool) – incident field contribution
mode (None | int, optional) – specific mode number of interest; if None then all modes until
N_max
Default:None
- Return type:
complex | NDArray
- tangential_mode_superposition(tangential_func, r, theta, t, mode)#
Returns either a single mode (
mode=int
) or a the sum untilN_max
(mode=None
).If
mode=int
the formula is\[e^{-i\omega t}\, f_\text{mode}(r) \,P^1_{\text{mode}}(\cos\theta)\]If
mode=None
the formula is\[e^{-i\omega t}\sum_{n=0}^{\text{N}_{\text{max}}} \,f_n(r) \,P^1_n(\cos\theta)\]where \(f_n(r)\) is the
tangential_func(n, r)
passed to the method.- Parameters:
tangential_func (Callable[[int, float], complex]) – tangential function dependent on
r
r (float | Sequence) – radial coordinate [m]
theta (float | Sequence) – tangential coordinate [rad]
t (float | Sequence) – time [s]
mode (int) – specific mode number of interest; if None then all modes until
N_max
- Return type:
complex | NDArray
- tangential_particle_displacement(r, theta, t, mode=None)#
Particle displacement in tangential direction
Returns the value of the particle displacement in tangential direction in [m]
- Parameters:
r (float | Sequence) – radial coordinate [m]
theta (float | Sequence) – tangential coordinate [rad]
t (float | Sequence) – time [s]
mode (None | int, optional) – specific mode number of interest; if None that all modes until
N_max
Default:None
- Return type:
complex | NDArray
- tangential_particle_velocity(r, theta, t, mode=None)[source]#
Particle velocity in tangential direction
Returns the value of the particle velocity in tangential direction in [m/s]
- Parameters:
r (float | NDArray | list[float]) – radial coordinate [m]
theta (float | NDArray | list[float]) – tangential coordinate [rad]
t (float | NDArray | list[float]) – time [s]
mode (None | int, optional) – mode to be plotted, if None then sum of all mode up to N_max
Default:None
- Return type:
complex
- velocity_potential(r, theta, t, scattered, incident, mode=None)#
Returns the velocity potential of the fluid in [m^2/s].
- Parameters:
r (float | Sequence) – radial coordinate [m]
theta (float | Sequence) – tangential coordinate [rad]
t (float | Sequence) – time [s]
scattered (bool) – add scattered field
incident (bool) – add incident
mode (None | int, optional) – specific mode number of interest; if None then all modes until
N_max
Default:None
- Return type:
complex
- property N_max#
Cutoff mode number for infinite sums
- Getter:
returns number of infinite sum term
- Setter:
automatically invokes
osaft.core.variable.BaseVariable.notify()
- property R_0: float#
Wrapper for
osaft.core.geometries.Sphere.R_0
- property abs_pos: float#
Wraps to
osaft.core.backgroundfields.BackgroundField.abs_pos
- property area: float#
Wrapper for
osaft.core.geometries.Sphere.area
- property c_f: float#
Wraps to
osaft.core.fluids.ViscousFluid.c_f
- property c_s: float#
Wraps to
osaft.core.fluids.ViscousFluid.c_f
- property delta: float#
Wraps to
osaft.core.fluids.ViscousFluid.delta
- property eta_f: float#
Wraps to
osaft.core.fluids.ViscousFluid.eta_f
- property eta_s: float#
Wraps to
osaft.core.fluids.ViscousFluid.eta_f
- property f: float#
wrapper for
osaft.core.frequency.Frequency.f
- property k_f: complex#
Wraps to
osaft.core.fluids.ViscousFluid.k_f
- property k_s: complex#
Wraps to
osaft.core.fluids.ViscousFluid.k_f
- property k_v: complex#
Wraps to
osaft.core.fluids.ViscousFluid.k_v
- property k_vs: complex#
Wraps to
osaft.core.fluids.ViscousFluid.k_v
- property kappa_f: float#
- property kappa_s: float#
- property norm_delta: float#
normalized viscous boundary thickness \(\tilde{\delta}=\frac{\delta}{R_0}\)
- property omega: float#
wrapper for
osaft.core.frequency.Frequency.omega
- property p_0: float#
- property position: float#
Wraps to
osaft.core.backgroundfields.BackgroundField.position
- property rho_f: float#
Wraps to
osaft.core.fluids.ViscousFluid.rho_f
- property rho_s: float#
Wraps to
osaft.core.solids.RigidSolid.rho_s
- property rho_t: float#
Returns the ratio of the densities \(\tilde{\rho}=\frac{\rho_f}{\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_0: complex#
Real part of \(x\)
- property zeta_f: float#
- property zeta_s: float#