pub struct Grib2Template551 {
pub reference_value: f32,
pub binary_scale_factor: i32,
pub decimal_scale_factor: i32,
pub number_of_bits: u8,
pub p: f32,
pub j_s: i16,
pub k_s: i16,
pub m_s: i16,
pub t_s: i32,
pub precision: Grib2Table5_7,
}Expand description
§Data Representation Template 5.51 - Spectral data - complex packing
§Notes
- The unpacked subset is a set of values defined in the same way as the full set of values (on a spectrum limited to j_s, k_s and m_s ), but on which scaling and packing are not applied. Associated values are stored in octets 6 onwards of section 7.
- The remaining coefficients are multiplied by
(n x (n+1))p, scaled and packed. The operator associated with this multiplication is derived from the Laplacian operator on the sphere. - The retrieval formula for a coefficient of wave number n is then:
Y = (R+X x 2e ) x 10-d x (n x(n+1))-pwhere X is the packed scaled value associated with the coefficient.
§Returns
Description of how to decode simple unpacked data
Fields§
§reference_value: f32Reference value (R) (IEEE 32-bit floating-point value)
binary_scale_factor: i32Binary scale factor (E)
decimal_scale_factor: i32Decimal scale factor (D)
number_of_bits: u8Number of bits used for each packed value for simple packing, or for each group reference value for complex packing or spatial differencing
p: f32P ― Laplacian scaling factor (expressed in 10^-6 units)
j_s: i16j_s ― pentagonal resolution parameter of the unpacked subset (see Note1)
k_s: i16k_s ― pentagonal resolution parameter of the unpacked subset (see Note1)
m_s: i16m_s ― pentagonal resolution parameter of the unpacked subset (see Note1)
t_s: i32t_s ― total number of values in the unpacked subset (see Note1)
precision: Grib2Table5_7Precision of the unpacked subset (see Code Table 5.7)
Implementations§
Trait Implementations§
Source§impl Clone for Grib2Template551
impl Clone for Grib2Template551
Source§fn clone(&self) -> Grib2Template551
fn clone(&self) -> Grib2Template551
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for Grib2Template551
impl Debug for Grib2Template551
Source§impl PartialEq for Grib2Template551
impl PartialEq for Grib2Template551
impl StructuralPartialEq for Grib2Template551
Auto Trait Implementations§
impl Freeze for Grib2Template551
impl RefUnwindSafe for Grib2Template551
impl Send for Grib2Template551
impl Sync for Grib2Template551
impl Unpin for Grib2Template551
impl UnwindSafe for Grib2Template551
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)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 more