pub struct ScalarTimesOperator<Op: OperatorBase>(/* private fields */);
Expand description
Operator muiltiplied by a scalar
Trait Implementations§
Source§impl<Op: AsApply> AsApply for ScalarTimesOperator<Op>
impl<Op: AsApply> AsApply for ScalarTimesOperator<Op>
Source§fn apply_extended<ContainerIn: ElementContainer<E = <Self::Domain as LinearSpace>::E>, ContainerOut: ElementContainerMut<E = <Self::Range as LinearSpace>::E>>(
&self,
alpha: <Self::Range as LinearSpace>::F,
x: Element<ContainerIn>,
beta: <Self::Range as LinearSpace>::F,
y: Element<ContainerOut>,
)
fn apply_extended<ContainerIn: ElementContainer<E = <Self::Domain as LinearSpace>::E>, ContainerOut: ElementContainerMut<E = <Self::Range as LinearSpace>::E>>( &self, alpha: <Self::Range as LinearSpace>::F, x: Element<ContainerIn>, beta: <Self::Range as LinearSpace>::F, y: Element<ContainerOut>, )
Apply an operator as y -> alpha * Ax + beta y
Source§fn apply<ContainerIn: ElementContainer<E = <Self::Domain as LinearSpace>::E>>(
&self,
x: Element<ContainerIn>,
) -> ElementType<<Self::Range as LinearSpace>::E>
fn apply<ContainerIn: ElementContainer<E = <Self::Domain as LinearSpace>::E>>( &self, x: Element<ContainerIn>, ) -> ElementType<<Self::Range as LinearSpace>::E>
Apply an operator to a vector
Source§impl<Op: OperatorBase> Debug for ScalarTimesOperator<Op>
impl<Op: OperatorBase> Debug for ScalarTimesOperator<Op>
Source§impl<Op: OperatorBase> OperatorBase for ScalarTimesOperator<Op>
impl<Op: OperatorBase> OperatorBase for ScalarTimesOperator<Op>
Source§type Domain = <Op as OperatorBase>::Domain
type Domain = <Op as OperatorBase>::Domain
Domain space type
Source§type Range = <Op as OperatorBase>::Range
type Range = <Op as OperatorBase>::Range
Range space type
Source§fn r(&self) -> Operator<RlstOperatorReference<'_, Self>>where
Self: Sized,
fn r(&self) -> Operator<RlstOperatorReference<'_, Self>>where
Self: Sized,
Convert to RLST reference
Source§fn scale(
self,
alpha: <Self::Range as LinearSpace>::F,
) -> ScalarTimesOperator<Self>where
Self: Sized,
fn scale(
self,
alpha: <Self::Range as LinearSpace>::F,
) -> ScalarTimesOperator<Self>where
Self: Sized,
Form a new operator alpha * self.
Source§fn sum<Op: OperatorBase<Domain = Self::Domain, Range = Self::Range> + Sized>(
self,
other: Op,
) -> OperatorSum<Self::Domain, Self::Range, Self, Op>where
Self: Sized,
fn sum<Op: OperatorBase<Domain = Self::Domain, Range = Self::Range> + Sized>(
self,
other: Op,
) -> OperatorSum<Self::Domain, Self::Range, Self, Op>where
Self: Sized,
Form a new operator self + other.
Source§fn sub<Op: OperatorBase<Domain = Self::Domain, Range = Self::Range> + Sized>(
self,
other: Op,
) -> OperatorSum<Self::Domain, Self::Range, Self, ScalarTimesOperator<Op>>where
Self: Sized,
fn sub<Op: OperatorBase<Domain = Self::Domain, Range = Self::Range> + Sized>(
self,
other: Op,
) -> OperatorSum<Self::Domain, Self::Range, Self, ScalarTimesOperator<Op>>where
Self: Sized,
Take the difference self - other.
Source§fn neg(self) -> ScalarTimesOperator<Self>where
Self: Sized,
fn neg(self) -> ScalarTimesOperator<Self>where
Self: Sized,
Return the negative -self.
Source§fn product<Op: OperatorBase<Range = Self::Domain>>(
self,
other: Op,
) -> OperatorProduct<Self::Domain, Op, Self>where
Self: Sized,
fn product<Op: OperatorBase<Range = Self::Domain>>(
self,
other: Op,
) -> OperatorProduct<Self::Domain, Op, Self>where
Self: Sized,
Form a new operator self * other.
Auto Trait Implementations§
impl<Op> Freeze for ScalarTimesOperator<Op>
impl<Op> RefUnwindSafe for ScalarTimesOperator<Op>
impl<Op> Send for ScalarTimesOperator<Op>where
Op: Send,
impl<Op> Sync for ScalarTimesOperator<Op>where
Op: Sync,
impl<Op> Unpin for ScalarTimesOperator<Op>
impl<Op> UnwindSafe for ScalarTimesOperator<Op>
Blanket Implementations§
§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>
Convert the given value into an approximately equivalent representation.
§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,
§fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
fn approx_into(self) -> Result<Dst, <Src as ApproxInto<Dst, Scheme>>::Err>
Convert the subject into an approximately equivalent representation.
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
Mutably borrows from an owned value. Read more
§impl<T, Dst> ConvAsUtil<Dst> for T
impl<T, Dst> ConvAsUtil<Dst> for T
§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>,
Approximate the subject to a given type with the default scheme.
§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,
Approximate the subject to a given type with a specific scheme.
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§impl<Src> TryFrom<Src> for Src
impl<Src> TryFrom<Src> for Src
§impl<Src, Dst> TryInto<Dst> for Srcwhere
Dst: TryFrom<Src>,
impl<Src, Dst> TryInto<Dst> for Srcwhere
Dst: TryFrom<Src>,
§impl<Src> ValueFrom<Src> for Src
impl<Src> ValueFrom<Src> for Src
§fn value_from(src: Src) -> Result<Src, <Src as ValueFrom<Src>>::Err>
fn value_from(src: Src) -> Result<Src, <Src as ValueFrom<Src>>::Err>
Convert the given value into an exactly equivalent representation.