Struct QuadratureRule
pub struct QuadratureRule { /* private fields */ }Description
Validated quadrature rule tied to one reference-cell topology.
Implementations§
§impl QuadratureRule
impl QuadratureRule
pub fn new(
reference_cell: ReferenceCell,
polynomial_exactness: Option<usize>,
points: Vec<QuadraturePoint>,
) -> Result<QuadratureRule, Diagnostic>
pub fn new( reference_cell: ReferenceCell, polynomial_exactness: Option<usize>, points: Vec<QuadraturePoint>, ) -> Result<QuadratureRule, Diagnostic>
Construct a custom rule in any dimension.
polynomial_exactness is declarative evidence, not inferred. Use
None for rules without a polynomial exactness contract.
§Errors
Returns EQ0804 for an empty rule, non-finite data, inconsistent point
dimensions, points outside the reference cell, or non-positive total
measure.
pub const fn reference_cell(&self) -> ReferenceCell
pub const fn reference_cell(&self) -> ReferenceCell
Reference-cell topology and dimension.
pub const fn polynomial_exactness(&self) -> Option<usize>
pub const fn polynomial_exactness(&self) -> Option<usize>
Declared maximum total polynomial degree integrated exactly.
pub fn points(&self) -> &[QuadraturePoint]
pub fn points(&self) -> &[QuadraturePoint]
Ordered quadrature samples.
pub fn point() -> QuadratureRule
pub fn point() -> QuadratureRule
Canonical measure-one rule for a reference point.
pub fn gauss_legendre(point_count: usize) -> Result<QuadratureRule, Diagnostic>
pub fn gauss_legendre(point_count: usize) -> Result<QuadratureRule, Diagnostic>
Gauss–Legendre rule on [-1, 1] with one to seven points.
§Errors
Returns EQ0804 for an unsupported point count.
pub fn tensor_product_gauss_legendre(
dimension: usize,
points_per_axis: usize,
) -> Result<QuadratureRule, Diagnostic>
pub fn tensor_product_gauss_legendre( dimension: usize, points_per_axis: usize, ) -> Result<QuadratureRule, Diagnostic>
Tensor-product Gauss–Legendre rule on [-1, 1]^d.
§Errors
Returns EQ0804 for dimension zero, an unsupported one-dimensional
point count, point-count overflow, or allocation failure.
Trait Implementations§
§impl Clone for QuadratureRule
impl Clone for QuadratureRule
§impl Debug for QuadratureRule
impl Debug for QuadratureRule
§impl PartialEq for QuadratureRule
impl PartialEq for QuadratureRule
§fn eq(&self, other: &QuadratureRule) -> bool
fn eq(&self, other: &QuadratureRule) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for QuadratureRule
Auto Trait Implementations§
impl Freeze for QuadratureRule
impl RefUnwindSafe for QuadratureRule
impl Send for QuadratureRule
impl Sync for QuadratureRule
impl Unpin for QuadratureRule
impl UnsafeUnpin for QuadratureRule
impl UnwindSafe for QuadratureRule
Blanket Implementations§
Source§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
impl<Src, Scheme> ApproxFrom<Src, Scheme> for Srcwhere
Scheme: ApproxScheme,
§fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
fn approx_from(src: Src) -> Result<Src, <Src as ApproxFrom<Src, Scheme>>::Err>
§impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
impl<Dst, Src, Scheme> ApproxInto<Dst, Scheme> for Srcwhere
Dst: ApproxFrom<Src, Scheme>,
Scheme: ApproxScheme,
§type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
type Err = <Dst as ApproxFrom<Src, Scheme>>::Err
§fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
Source§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T, Dst> ConvAsUtil<Dst> for T
impl<T, Dst> ConvAsUtil<Dst> for T
§fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§impl<T> ConvUtil for T
impl<T> ConvUtil for T
§fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
fn approx_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst>,
§fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
fn approx_as_by<Dst, Scheme>(self) -> Result<Dst, Self::Err>where
Self: Sized + ApproxInto<Dst, Scheme>,
Scheme: ApproxScheme,
§fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
fn into_as<Dst>(self) -> Dstwhere
Self: Sized + Into<Dst>,
§fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
fn try_as<Dst>(self) -> Result<Dst, Self::Err>where
Self: Sized + TryInto<Dst>,
§impl<T> DistributionExt for Twhere
T: ?Sized,
impl<T> DistributionExt for Twhere
T: ?Sized,
fn rand<T>(&self, rng: &mut (impl Rng + ?Sized)) -> Twhere
Self: Distribution<T>,
Source§impl<T> From<T> for T
impl<T> From<T> for T
Source§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
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>
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>where
F: FnOnce(&Self) -> bool,
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>where
F: FnOnce(&Self) -> bool,
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§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Same for T
impl<T> Same for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.