[−][src]Struct shallow_water::spectral::Spectral
Fields
hlap: Array2<f64>
glap: Array2<f64>
rlap: Array2<f64>
helm: Array2<f64>
c2g2: Array2<f64>
simp: Array2<f64>
rope: Array2<f64>
fope: Array2<f64>
filt: Array2<f64>
diss: Array2<f64>
opak: Array2<f64>
rdis: Array2<f64>
etdv: Array3<f64>
htdv: Array3<f64>
ap: Array2<f64>
etd1: Vec<f64>
htd1: Vec<f64>
theta: Vec<f64>
weight: Vec<f64>
hrkx: Vec<f64>
hrky: Vec<f64>
rk: Vec<f64>
d2fft: D2FFT
spmf: Vec<f64>
alk: Vec<f64>
kmag: Array2<usize>
kmax: usize
kmaxred: usize
ng: usize
nz: usize
Implementations
impl Spectral
[src]
pub fn new(ng: usize, nz: usize) -> Self
[src]
pub fn main_invert(
&self,
qs: ArrayView3<'_, f64>,
ds: ArrayView3<'_, f64>,
gs: ArrayView3<'_, f64>,
r: ArrayViewMut3<'_, f64>,
u: ArrayViewMut3<'_, f64>,
v: ArrayViewMut3<'_, f64>,
zeta: ArrayViewMut3<'_, f64>
)
[src]
&self,
qs: ArrayView3<'_, f64>,
ds: ArrayView3<'_, f64>,
gs: ArrayView3<'_, f64>,
r: ArrayViewMut3<'_, f64>,
u: ArrayViewMut3<'_, f64>,
v: ArrayViewMut3<'_, f64>,
zeta: ArrayViewMut3<'_, f64>
)
Given the PV anomaly qs, divergence ds and acceleration divergence gs (all in spectral space), this routine computes the dimensionless layer thickness anomaly and horizontal velocity, as well as the relative vertical vorticity in physical space.
pub fn jacob(
&self,
aa: ArrayView2<'_, f64>,
bb: ArrayView2<'_, f64>,
cs: ArrayViewMut2<'_, f64>
)
[src]
&self,
aa: ArrayView2<'_, f64>,
bb: ArrayView2<'_, f64>,
cs: ArrayViewMut2<'_, f64>
)
Computes the (xy) Jacobian of aa and bb and returns it in cs. aa and bb are in physical space while cs is in spectral space
NOTE: aa and bb are assumed to be spectrally truncated (de-aliased).
pub fn divs(
&self,
aa: ArrayView2<'_, f64>,
bb: ArrayView2<'_, f64>,
cs: ArrayViewMut2<'_, f64>
)
[src]
&self,
aa: ArrayView2<'_, f64>,
bb: ArrayView2<'_, f64>,
cs: ArrayViewMut2<'_, f64>
)
Computes the divergence of (aa,bb) and returns it in cs. Both aa and bb in physical space but cs is in spectral space.
pub fn ptospc3d(
&self,
fp: ArrayView3<'_, f64>,
fs: ArrayViewMut3<'_, f64>,
izbeg: usize,
izend: usize
)
[src]
&self,
fp: ArrayView3<'_, f64>,
fs: ArrayViewMut3<'_, f64>,
izbeg: usize,
izend: usize
)
Transforms a physical 3d field fp to spectral space (horizontally) as the array fs.
pub fn spctop3d(
&self,
fs: ArrayView3<'_, f64>,
fp: ArrayViewMut3<'_, f64>,
izbeg: usize,
izend: usize
)
[src]
&self,
fs: ArrayView3<'_, f64>,
fp: ArrayViewMut3<'_, f64>,
izbeg: usize,
izend: usize
)
Transforms a spectral 3d field fs to physical space (horizontally) as the array fp.
pub fn deal3d(&self, fp: ArrayViewMut3<'_, f64>)
[src]
Filters (horizontally) a physical 3d field fp (overwrites fp)
pub fn deal2d(&self, fp: ArrayViewMut2<'_, f64>)
[src]
Filters (horizontally) a physical 2d field fp (overwrites fp)
pub fn spec1d(&self, ss: &[f64], spec: &mut [f64])
[src]
Computes the 1d spectrum of a spectral field ss and returns the result in spec
Trait Implementations
impl Clone for Spectral
[src]
impl Debug for Spectral
[src]
impl<'de> Deserialize<'de> for Spectral
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl PartialEq<Spectral> for Spectral
[src]
impl Serialize for Spectral
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl StructuralPartialEq for Spectral
[src]
Auto Trait Implementations
impl RefUnwindSafe for Spectral
impl Send for Spectral
impl Sync for Spectral
impl Unpin for Spectral
impl UnwindSafe for Spectral
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Pointable for T
pub const ALIGN: usize
type Init = T
The type for initializers.
pub unsafe fn init(init: <T as Pointable>::Init) -> usize
pub unsafe fn deref<'a>(ptr: usize) -> &'a T
pub unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T
pub unsafe fn drop(ptr: usize)
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,