707 |
707 |
708 impl<F : Float, const N : usize> AXPY<F, Loc<F, N>> for Loc<F, N> { |
708 impl<F : Float, const N : usize> AXPY<F, Loc<F, N>> for Loc<F, N> { |
709 type Owned = Self; |
709 type Owned = Self; |
710 |
710 |
711 #[inline] |
711 #[inline] |
|
712 fn add_mul<I : Instance<Loc<F, N>>>(mut self, α : F, x : I, β : F) -> Self { |
|
713 self.axpy(α, x, β); |
|
714 self |
|
715 } |
|
716 |
|
717 #[inline] |
712 fn axpy<I : Instance<Loc<F, N>>>(&mut self, α : F, x : I, β : F) { |
718 fn axpy<I : Instance<Loc<F, N>>>(&mut self, α : F, x : I, β : F) { |
713 x.eval(|x̃| { |
719 x.eval(|x̃| { |
714 if β == F::ZERO { |
720 if β == F::ZERO { |
715 map2_mut(self, x̃, |yi, xi| { *yi = α * (*xi) }) |
721 map2_mut(self, x̃, |yi, xi| { *yi = α * (*xi) }) |
716 } else { |
722 } else { |