#[repr(transparent)]pub struct FkTable { /* private fields */ }
Expand description
Structure implementing FK tables. These are special Grid
s, for which the following
additional guarantees are given:
- all subgrids of the grid evaluate the PDFs at a single scale
muf2
. - all subgrids, for both hadronic initial states (if both initial states are hadronic), share
the same
x
grid. SeeFkTable::x_grid
. - the luminosity function is simple, meaning that every entry consists of a single pair of
partons with trivial factor
1.0
, and all tuples are distinct from each other. SeeGrid::lumi
. - the FK table’s grid contains only a single
Order
, whose exponents are all zero.
Implementations
sourceimpl FkTable
impl FkTable
sourcepub fn table(&self) -> Array4<f64>
pub fn table(&self) -> Array4<f64>
Returns the FK table represented as a four-dimensional array indexed by bin
, lumi
,
x1
and x2
, in this order.
sourcepub fn bin_normalizations(&self) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn bin_normalizations(&self) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Extract the normalizations for each bin.
sourcepub fn bin_dimensions(&self) -> usize
pub fn bin_dimensions(&self) -> usize
Extract the number of dimensions for bins.
sourcepub fn bin_left(&self, dimension: usize) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn bin_left(&self, dimension: usize) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Extract the left edges of a specific bin dimension.
sourcepub fn bin_right(&self, dimension: usize) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn bin_right(&self, dimension: usize) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Extract the right edges of a specific bin dimension.
sourcepub fn lumi(&self) -> Vec<(i32, i32)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn lumi(&self) -> Vec<(i32, i32)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns the (simplified) luminosity function for this FkTable
. All factors are 1.0
.
sourcepub fn x_grid(&self) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn x_grid(&self) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Returns the x grid that all subgrids for all hadronic initial states share.
sourcepub fn convolute(
&self,
lumi_cache: &mut LumiCache<'_>,
bin_indices: &[usize],
lumi_mask: &[bool]
) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
pub fn convolute(
&self,
lumi_cache: &mut LumiCache<'_>,
bin_indices: &[usize],
lumi_mask: &[bool]
) -> Vec<f64>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
Propagate convolute to grid
sourcepub fn set_key_value(&mut self, key: &str, value: &str)
pub fn set_key_value(&mut self, key: &str, value: &str)
Set a metadata key-value pair
sourcepub fn optimize(&mut self, assumptions: FkAssumptions)
pub fn optimize(&mut self, assumptions: FkAssumptions)
Optimizes the storage of FK tables based of assumptions of the PDFs at the FK table’s scale.
Panics
TODO
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for FkTable
impl Send for FkTable
impl Sync for FkTable
impl Unpin for FkTable
impl UnwindSafe for FkTable
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more