Acoustic
Acoustic type and functions.
MultipleScattering.Acoustic
— TypeAcoustic{T<:AbstractFloat,Dim}(ρ::T, c::Complex{T})
Acoustic(ρ::T, c::Union{T,Complex{AbstractFloat}}, Dim::Integer)
Physical properties for a homogenous isotropic acoustic medium with wavespeed (c) and density (ρ)
Simulations in this medium produce scalar (1D) fields in Dim dimensions.
MultipleScattering.check_material
— Methodcheck_material(p::Particle, outer_medium::Acoustic)
Checks if wave scattering from the particle p
is physically viable given the material properties of p
and its surrounding medium outer_medium
.
MultipleScattering.hard
— Methodhard(host_medium::Acoustic)
See sound_hard
.
MultipleScattering.impedance
— Methodimpedance(medium::Acoustic)
Characteristic specific acoustic impedance (z₀) of medium
MultipleScattering.internal_field
— Methodinternal_field(x::AbstractVector, p::Particle{Dim,Acoustic{T,Dim}}, source::RegularSource, ω::T, scattering_coefficients::AbstractVector{Complex{T}})
The internal field for an acoustic particle in an acoustic medium. For a sphere and circular cylinder the result is exact, for everything else it is an approximation which assumes smooth fields.
MultipleScattering.pressure_release
— Methodpressure_release(host_medium::Acoustic)
See sound_soft
.
MultipleScattering.rigid
— Methodrigid(host_medium::Acoustic)
See sound_hard
.
MultipleScattering.soft
— Methodsoft(host_medium::Acoustic)
See sound_soft
.
MultipleScattering.sound_hard
— Methodsound_hard([T::Type = Float64,] Dim::Integer)
Construct physical properties of a sound hard acoustic object with type T and dimension Dim. Also known as rigid
and equivalent to a zero_neumann
pressure boundary condition.
MultipleScattering.sound_soft
— Methodsound_soft([T::Type = Float64,] Dim::Integer)
Construct physical properties of a sound hard acoustic object with type T and dimension Dim. Equivalent to a zero_dirichlet
pressure boundary condition.
MultipleScattering.zero_dirichlet
— Methodzero_dirichlet(host_medium::Acoustic)
See sound_soft
.
MultipleScattering.zero_neumann
— Methodzero_neumann(host_medium::Acoustic)
See sound_hard
.
MultipleScattering.t_matrix
— Methodt_matrix(Particle{2,Acoustic{T,2},Sphere{T,2}}, Acoustic{T,2}, ω, order)
The T-matrix for a 2D circlular acoustic particle in a 2D acoustic medium.
MultipleScattering.t_matrix
— Methodt_matrix(Particle{3,Acoustic{T,3},Sphere{T,3}}, Acoustic{T,3}, ω, order)
The T-matrix for a 3D spherical acoustic particle in a 3D acoustic medium.
MultipleScattering.plane_source
— Methodplane_source(medium::Acoustic, source_position, source_direction=[1,0], amplitude=1)::RegularSource
Create an Acoustic
planar wave RegularSource
MultipleScattering.point_source
— Methodpoint_source(medium::Acoustic, source_position, amplitude=1)::RegularSource
Create 2D Acoustic
point RegularSource
(zeroth Hankel function of first type)