pub trait ComponentMulAssign {
// Required method
fn component_mul_assign(&mut self, other: &Self);
}Expand description
In-place componentwise multiplication self[i] ← self[i] · other[i].
CMA-ES uses this to apply the diagonal D (sqrt-eigenvalue) factor:
the sampling step y_k = B D z_k is z.component_mul_assign(&d); y = B.matvec(&z), and the conjugate-path step C^{−1/2} v = B (1/d ⊙ Bᵀv) is the same pattern with 1/d.
Required Methods§
Sourcefn component_mul_assign(&mut self, other: &Self)
fn component_mul_assign(&mut self, other: &Self)
Multiply self[i] by other[i] for every i, in place.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementations on Foreign Types§
§impl<F, R, C, S> ComponentMulAssign for Matrix<F, R, C, S>
Available on crate feature nalgebra_all only.
impl<F, R, C, S> ComponentMulAssign for Matrix<F, R, C, S>
Available on crate feature
nalgebra_all only.fn component_mul_assign(&mut self, other: &Self)
§impl<F, S, D> ComponentMulAssign for ArrayBase<S, D>
Available on crate features ndarray_all and ndarray_v0_17 only.
impl<F, S, D> ComponentMulAssign for ArrayBase<S, D>
Available on crate features
ndarray_all and ndarray_v0_17 only.fn component_mul_assign(&mut self, other: &Self)
§impl<F: Scalar> ComponentMulAssign for Col<F>
Available on crate features faer_all and faer_v0_24 only.
impl<F: Scalar> ComponentMulAssign for Col<F>
Available on crate features
faer_all and faer_v0_24 only.