zenu_matrix/constructor/
ones.rs

1use crate::{
2    device::DeviceBase,
3    dim::DimTrait,
4    matrix::{Matrix, Owned, Repr},
5    num::Num,
6};
7
8impl<T, S, D> Matrix<Owned<T>, S, D>
9where
10    T: Num,
11    S: DimTrait,
12    D: DeviceBase,
13{
14    pub fn ones<I: Into<S>>(dim: I) -> Self {
15        let dim = dim.into();
16        let data = vec![T::one(); dim.num_elm()];
17        Self::from_vec(data, dim)
18    }
19
20    pub fn ones_like<R: Repr<Item = T>>(m: &Matrix<R, S, D>) -> Self {
21        Self::ones(m.shape())
22    }
23}