Skip to main content

LocalToGlobalMap

Struct LocalToGlobalMap 

Source
pub struct LocalToGlobalMap { /* private fields */ }
Expand description

Mapping from local point/DOF pairs to unique global indices.

Implementations§

Source§

impl LocalToGlobalMap

Source

pub fn from_section_with_tags_and_ownership<V, S, C>( section: &Section<V, S>, overlap: &Overlap, ownership: &PointOwnership, comm: &C, my_rank: usize, tags: SectionCommTags, ) -> Result<Self, MeshSieveError>
where S: Storage<V>, C: Communicator + Sync,

Build a global numbering map using explicit communication tags and ownership data.

Source

pub fn from_section_with_ownership<V, S, C>( section: &Section<V, S>, overlap: &Overlap, ownership: &PointOwnership, comm: &C, my_rank: usize, ) -> Result<Self, MeshSieveError>
where S: Storage<V>, C: Communicator + Sync,

Build a global numbering map using ownership metadata and a legacy default tag (0xBEEF).

Source

pub fn from_section_with_constraints_and_ownership<V, S, C, CS>( section: &Section<V, S>, constraints: &CS, overlap: &Overlap, ownership: &PointOwnership, comm: &C, my_rank: usize, tags: SectionCommTags, ) -> Result<Self, MeshSieveError>
where S: Storage<V>, C: Communicator + Sync, CS: ConstraintSet<V>,

Build a global numbering map using a section, constraints, and ownership data.

Source

pub fn from_multi_section_with_tags_and_ownership<V, S, C>( section: &MultiSection<V, S>, overlap: &Overlap, ownership: &PointOwnership, comm: &C, my_rank: usize, tags: SectionCommTags, ) -> Result<Self, MeshSieveError>
where S: Storage<V>, C: Communicator + Sync,

Build a global numbering map using a multi-section and ownership data.

Source

pub fn from_multi_section_with_ownership<V, S, C>( section: &MultiSection<V, S>, overlap: &Overlap, ownership: &PointOwnership, comm: &C, my_rank: usize, ) -> Result<Self, MeshSieveError>
where S: Storage<V>, C: Communicator + Sync,

Build a global numbering map for a multi-section using a legacy default tag (0xBEEF).

Source

pub fn global_offset(&self, point: PointId) -> Result<u64, MeshSieveError>

Return the global offset (start index) for a point.

Source

pub fn global_index( &self, point: PointId, dof: usize, ) -> Result<u64, MeshSieveError>

Return the global index for a local point/DOF pair.

Source

pub fn global_range(&self, point: PointId) -> Result<Range<u64>, MeshSieveError>

Return the global DOF range [start, end) for a point.

Source

pub fn remap_points<I>(&self, new_to_old: I) -> Result<Self, MeshSieveError>
where I: IntoIterator<Item = (PointId, PointId)>,

Return a copy of this numbering with point IDs remapped.

new_to_old maps each point in the returned map to the corresponding point in this map. Offsets and DOF lengths are preserved, which is useful for compact submeshes that must keep parent global numbering semantics.

Source

pub fn total_dofs(&self) -> u64

Total number of globally owned DOFs across all ranks.

Trait Implementations§

Source§

impl Clone for LocalToGlobalMap

Source§

fn clone(&self) -> LocalToGlobalMap

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for LocalToGlobalMap

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for LocalToGlobalMap

Source§

fn default() -> LocalToGlobalMap

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> AccumulatePathExt for T

Source§

fn accumulate_path<O, I>(path: I) -> O
where O: Orientation, I: IntoIterator<Item = O>,

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PayloadLike for T
where T: Clone,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.