ARF
Examples using this class are:
- class osaft.solutions.king1934.arf.ARF(f, R_0, rho_s, rho_f, c_f, p_0, wave_type, position=None, N_max=5, small_particle_limit=False)[source]
Bases:
ScatteringField,BaseARFARF class for King (1934)
- Parameters:
f (
Union[Frequency,float,int]) – Frequency [Hz]R_0 (
Union[Sphere,float,int]) – Radius of the sphere [m]rho_s (
float) – Density of the fluid-like sphere [kg/m^3]rho_f (
float) – Density of the fluid [kg/m^3]c_f (
float) – Speed of sound of the fluid [m/s]p_0 (
float) – Pressure amplitude of the field [Pa]wave_type (
WaveType) – Type of incident wave (traveling/standing)position (
Optional[float], optional) – Position in the standing wave field [rad]Default:NoneN_max (
int, optional) – Highest order modeDefault:5small_particle_limit (
bool, optional) – compute ARF based on small particle limitDefault:FalsePublic Data Attributes:
Dipole scatting coefficient \(f_2\) [-]
Acoustic contrast factor \(\Phi\) [-]
ARF for the small particle limit
Inherited from
BaseKingsupported_wavetypesWave number times radius of the particle (\(kR\)) [-]
Wraps to
osaft.core.backgroundfields.BackgroundField.positionWraps to
osaft.core.backgroundfields.BackgroundField.wave_typeWraps to
osaft.core.solids.RigidSolid.rho_sWraps to
osaft.core.fluids.InviscidFluid.c_fWraps to
osaft.core.fluids.InviscidFluid.k_fInherited from
BaseSphereFrequencyCompositeWrapper for
osaft.core.geometries.Sphere.R_0Wrapper for
osaft.core.geometries.Sphere.areaWrapper for
osaft.core.geometries.Sphere.volumeInherited from
BaseFrequencyCompositewrapper for
osaft.core.frequency.Frequency.fwrapper for
osaft.core.frequency.Frequency.omegaInherited from
BaseSolutionsupported_wavetypesreturns the wave type of the solution
Inherited from
BaseScatteringRigidParticleR_0Inherited from
BaseScatteringCutoff mode number for infinite sums
fieldomegaR_0rho_fk_fPublic Methods:
Acoustic radiation fore in [N]
FFGG(n)Returns the coefficient \(F_{n+1}F_{n}+G_{n+1}G_{n}\) for n.
FGFG(n)Returns the coefficient \(F_{n+1}G_{n}-G_{n+1}F_{n}\) for n.
HH(n)Returns the coefficient \(H_{n}^2(n)H_{n}^2(n+1)\) for n of (56) and (57).
Inherited from
ScatteringFieldParticle velocity
Wrapper to the fluid scattering coefficients for an inviscid fluid
phi_n(n, arg)From King equation (22)
psi_n(n, arg)From King equation (22)
F_n(n, arg)From King equation (30) and (31)
G_n(n, arg)From King equation (30) and (31)
A_dash_n(n)From King equation (21), (28) potential from 28 to form of 21
Phi_scattering(r, theta, t)King equation (28) for scattering potential \(\Phi_{\mathrm{scattering}}\)
Phi_incident(r, theta, t)King equation (28) for scattering potential \(\Phi_{\mathrm{incident}}\)
V_r_sc(n, r)Implements
osaft.solutions.base_scattering.BaseScattering.V_r_sc()V_theta_sc(n, r)Implements
osaft.solutions.base_scattering.BaseScattering.V_theta_sc()Inherited from
BaseFrequencyCompositeReturns all properties that are settable.
Inherited from
BaseSolutionInherited from
BaseScatteringRigidParticleparticle_velocity(t)Particle velocity
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
BaseScatteringradial_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 onscatteredandincidentV_theta(n, r, scattered, incident)Superposition of
V_theta_sc()andV_theta_i()depending onscatteredandincidentInherited from
BaseARFReturns the value for the ARF in Newton [N].
- A_dash_n(n)
From King equation (21), (28) potential from 28 to form of 21
Returns Scattering field coefficient \(A^{\prime}_{n}\)
- Parameters:
n (
int) – mode number- Return type:
complex
- A_in(n)
Wraps to
osaft.core.backgroundfields.BackgroundField.A_in- Parameters:
n (
int) –- Return type:
complex
- FFGG(n)[source]
Returns the coefficient \(F_{n+1}F_{n}+G_{n+1}G_{n}\) for n.
- Parameters:
n (
int) – order- Return type:
complex
- FGFG(n)[source]
Returns the coefficient \(F_{n+1}G_{n}-G_{n+1}F_{n}\) for n.
- Parameters:
n (
int) – order- Return type:
complex
- F_n(n, arg)
From King equation (30) and (31)
Returns \(F_n\)
- Parameters:
n (
int) – modearg (
float) – argument for spherical Bessel function
- Return type:
float
- G_n(n, arg)
From King equation (30) and (31)
Returns \(G_n\)
- Parameters:
n (
int) – modearg (
float) – argument for spherical Bessel function
- Return type:
complex
- HH(n)[source]
Returns the coefficient \(H_{n}^2(n)H_{n}^2(n+1)\) for n of (56) and (57).
- Parameters:
n (
int) – order- Return type:
float
- Phi_incident(r, theta, t)
King equation (28) for scattering potential \(\Phi_{\mathrm{incident}}\)
- Phi_scattering(r, theta, t)
King equation (28) for scattering potential \(\Phi_{\mathrm{scattering}}\)
- V_r(n, r, scattered, incident)
Superposition of
V_r_sc()andV_r_i()depending onscatteredandincidentAt 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) – moder (
Union[float,Sequence]) – radial coordinate [m]
- Return type:
complex
- V_r_sc(n, r)
Implements
osaft.solutions.base_scattering.BaseScattering.V_r_sc()- Parameters:
n (
int) –r (
Union[float,ndarray,list[float]]) –
- Return type:
complex
- V_theta(n, r, scattered, incident)
Superposition of
V_theta_sc()andV_theta_i()depending onscatteredandincidentAt 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) – moder (
Union[float,Sequence]) – radial coordinate [m]
- Return type:
complex
- V_theta_sc(n, r)
Implements
osaft.solutions.base_scattering.BaseScattering.V_theta_sc()- Parameters:
n (
int) –r (
Union[float,ndarray,list[float]]) –
- Return type:
complex
- check_wave_type()
Checks if
wave_typeis insupported_wavetypes- Raises:
WrongWaveTypeError – If
wave_typeis not supported- Return type:
None
- compute_arf()[source]
Acoustic radiation fore in [N]
- Raises:
WrongWaveTypeError – if wrong
wave_typeAssumptionWarning – if the used parameters might not be valid for the chosen limiting case
- Return type:
float
- copy()
Returns a copy of the object
- Return type:
- 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]
- particle_velocity(t)
Particle velocity
Returns the value of the particle velocity in the direction of the axis of rotational symmetry of the radiation field in [m/s]
- Parameters:
t (
float) – time [s]- Return type:
float
- static phi_n(n, arg)
From King equation (22)
Returns \(\phi_n\)
- Parameters:
n (
int) – modearg (
float) – argument for spherical Bessel function
- Return type:
complex
- 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 (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]scattered (
bool) – add scattered fieldincident (
bool) – add incidentmode (
Optional[int], optional) – specific mode number of interest; if None then all modes untilN_maxDefault:None- Return type:
complex- static psi_n(n, arg)
From King equation (22)
Returns \(\psi_n\)
- Parameters:
n (
int) – modearg (
float) – argument for spherical Bessel function
- 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 (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]scattered (
bool) – scattered field contributionincident (
bool) – incident field contributionmode (
Optional[int], optional) – specific mode number of interest; if None then all modes untilN_maxDefault:None- Return type:
Union[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=intthe formula is\[e^{-i\omega t}\, f_{\text{mode}}(r) \,P_{\text{mode}}(\cos\theta)\]If
mode=Nonethe 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 onrr (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]mode (
Optional[int], optional) – specific mode number of interest; if None then all modes untilN_maxDefault:None- Return type:
Union[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 (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]mode (
Optional[int], optional) – specific mode number of interest; if None that all modes untilN_maxDefault:None- Return type:
Union[complex,ndarray]- radial_particle_velocity(r, theta, t, mode=None)
Particle velocity in radial direction
Returns the value of the particle velocity in radial direction in [m/s]
- Parameters:
r (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]mode (
Optional[int], optional) – specific mode number of interest; if None that all modes untilN_maxDefault:None- Return type:
Union[complex,ndarray]- 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 (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]scattered (
bool) – scattered field contributionincident (
bool) – incident field contributionmode (
Optional[int], optional) – specific mode number of interest; if None then all modes untilN_maxDefault:None- Return type:
Union[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=intthe formula is\[e^{-i\omega t}\, f_\text{mode}(r) \,P^1_{\text{mode}}(\cos\theta)\]If
mode=Nonethe 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 onrr (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]mode (
int) – specific mode number of interest; if None then all modes untilN_max
- Return type:
Union[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 (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]mode (
Optional[int], optional) – specific mode number of interest; if None that all modes untilN_maxDefault:None- Return type:
Union[complex,ndarray]- tangential_particle_velocity(r, theta, t, mode=None)
Particle velocity in tangential direction
Returns the value of the particle velocity in tangential direction in [m/s]
- Parameters:
r (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]mode (
Optional[int], optional) – specific mode number of interest; if None that all modes untilN_maxDefault:None- Return type:
Union[complex,ndarray]- velocity_potential(r, theta, t, scattered, incident, mode=None)
Returns the velocity potential of the fluid in [m^2/s].
- Parameters:
r (
Union[float,Sequence]) – radial coordinate [m]theta (
Union[float,Sequence]) – tangential coordinate [rad]t (
Union[float,Sequence]) – time [s]scattered (
bool) – add scattered fieldincident (
bool) – add incidentmode (
Optional[int], optional) – specific mode number of interest; if None then all modes untilN_maxDefault: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 Phi: float
Acoustic contrast factor \(\Phi\) [-]
- property R_0: float
Wrapper for
osaft.core.geometries.Sphere.R_0
- property alpha
Wave number times radius of the particle (\(kR\)) [-]
- property area: float
Wrapper for
osaft.core.geometries.Sphere.area
- property c_f: float
Wraps to
osaft.core.fluids.InviscidFluid.c_f
- property f: float
wrapper for
osaft.core.frequency.Frequency.f
- property f_2: float
Dipole scatting coefficient \(f_2\) [-]
- property k_f: float
Wraps to
osaft.core.fluids.InviscidFluid.k_f
- property kappa_f: float
- 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
- property rho_s: float
Wraps to
osaft.core.solids.RigidSolid.rho_s
- property small_particle_limit: bool
ARF for the small particle limit
- Getter:
returns if small particle limit is computed
- Setter:
automatically invokes
osaft.core.variable.BaseVariable.notify()
- property volume: float
Wrapper for
osaft.core.geometries.Sphere.volume
- property wave_type: WaveType
Wraps to
osaft.core.backgroundfields.BackgroundField.wave_type