pub struct UniformCircularArray { /* private fields */ }Expand description
Uniform Circular Array (UCA)
N elements are placed uniformly on a circle of radius R.
Element m is at angle 2*pi*m/N from the x-axis.
For a source at azimuth phi, the m-th element phase is:
psi_m = 2*pi*(R/lambda)*cos(phi - 2*pi*m/N)
Implementations§
Trait Implementations§
Source§impl ArrayGeometry for UniformCircularArray
impl ArrayGeometry for UniformCircularArray
Source§fn steering_vector(
&self,
angle_rad: f64,
wavelength: f64,
) -> SignalResult<Vec<Complex64>>
fn steering_vector( &self, angle_rad: f64, wavelength: f64, ) -> SignalResult<Vec<Complex64>>
Compute the steering vector for a given angle (radians, measured from broadside)
at a given frequency. Read more
Source§fn n_elements(&self) -> usize
fn n_elements(&self) -> usize
Number of array elements
Source§fn steering_vector_normalized(
&self,
angle_rad: f64,
) -> SignalResult<Vec<Complex64>>
fn steering_vector_normalized( &self, angle_rad: f64, ) -> SignalResult<Vec<Complex64>>
Compute steering vector using element spacing in wavelengths (convenience) Read more
Source§impl Clone for UniformCircularArray
impl Clone for UniformCircularArray
Source§fn clone(&self) -> UniformCircularArray
fn clone(&self) -> UniformCircularArray
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for UniformCircularArray
impl RefUnwindSafe for UniformCircularArray
impl Send for UniformCircularArray
impl Sync for UniformCircularArray
impl Unpin for UniformCircularArray
impl UnsafeUnpin for UniformCircularArray
impl UnwindSafe for UniformCircularArray
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.