Create a filled R2 from the input file.
|
| | FillR2 (const OptionSet &options) |
| | Construct a new FillR2 object.
|
| |
| | UserTensorBase (const OptionSet &options) |
| |
| | NEML2Object ()=delete |
| |
| | NEML2Object (NEML2Object &&)=delete |
| |
| | NEML2Object (const NEML2Object &)=delete |
| |
| NEML2Object & | operator= (NEML2Object &&)=delete |
| |
| NEML2Object & | operator= (const NEML2Object &)=delete |
| |
| virtual | ~NEML2Object ()=default |
| |
| | NEML2Object (const OptionSet &options) |
| | Construct a new NEML2Object object.
|
| |
| const OptionSet & | input_options () const |
| |
| virtual void | setup () |
| | Setup this object.
|
| |
| const std::string & | name () const |
| | A readonly reference to the object's name.
|
| |
| const std::string & | type () const |
| | A readonly reference to the object's type.
|
| |
| const std::string & | path () const |
| | A readonly reference to the object's path.
|
| |
| const std::string & | doc () const |
| | A readonly reference to the object's docstring.
|
| |
| Factory * | factory () const |
| | Get the factory that created this object.
|
| |
| const Settings & | settings () const |
| | Settings.
|
| |
| template<typename T = NEML2Object> |
| const T * | host () const |
| | Get a readonly pointer to the host.
|
| |
| template<typename T = NEML2Object> |
| T * | host () |
| | Get a writable pointer to the host.
|
| |
| template<typename T > |
| const T & | resolve_tensor (const std::string &name) |
| | Resolve a TensorName to a Tensor.
|
| |
| template<class T > |
| std::shared_ptr< T > | get_object (const std::string §ion, const std::string &name) |
| |
| template<class T = Solver> |
| std::shared_ptr< T > | get_solver (const std::string &name) |
| | Get a solver from the factory.
|
| |
| template<class T = Data> |
| std::shared_ptr< T > | get_data (const std::string &name) |
| | Get a data from the factory.
|
| |
| template<class T = Model> |
| std::shared_ptr< T > | get_model (const std::string &name) |
| | Get a model from the factory.
|
| |
| template<class T = Driver> |
| std::shared_ptr< T > | get_driver (const std::string &name) |
| | Get a driver from the factory.
|
| |
| template<class T = WorkScheduler> |
| std::shared_ptr< T > | get_scheduler (const std::string &name) |
| | Get a scheduler from the factory.
|
| |
| | R2 (const SR2 &S) |
| | Form a full R2 from a symmetric tensor.
|
| |
| | R2 (const WR2 &W) |
| | Form a full R2 from a skew-symmetric tensor.
|
| |
| | R2 (const Rot &r) |
| | Form rotation matrix from vector.
|
| |
| | operator SR2 () const |
| | Conversion operator to symmetric second order tensor.
|
| |
| R2 | rotate (const Rot &r) const |
| | Rotate using a Rodrigues vector.
|
| |
| R2 | rotate (const R2 &R) const |
| | Rotate using a rotation matrix.
|
| |
| R3 | drotate (const Rot &r) const |
| | Derivative of the rotated tensor w.r.t. the Rodrigues vector.
|
| |
| R4 | drotate (const R2 &R) const |
| | Derivative of the rotated tensor w.r.t. the rotation matrix.
|
| |
| Scalar | operator() (Size i, Size j) const |
| | Accessor.
|
| |
| Vec | row (Size i) const |
| | Row.
|
| |
| Vec | col (Size i) const |
| | Coluomn.
|
| |
| Scalar | det () const |
| | Determinant.
|
| |
| Scalar | inner (const R2 &other) const |
| | Double contraction ij,ij.
|
| |
| R4 | outer (const R2 &other) const |
| | Outer product ij,kl.
|
| |
| R2 | inverse () const |
| | Inversion.
|
| |
| R2 | transpose () const |
| | transpose
|
| |
| | PrimitiveTensor ()=default |
| | Special member functions.
|
| |
| | PrimitiveTensor (const ATensor &tensor, Size batch_dim) |
| | Construct from another ATensor given batch dimension.
|
| |
| | PrimitiveTensor (const ATensor &tensor, const TraceableTensorShape &batch_shape) |
| | Construct from another ATensor given batch shape.
|
| |
| | PrimitiveTensor (const Tensor &tensor) |
| | Copy constructor.
|
| |
| | PrimitiveTensor (const ATensor &tensor) |
| | Construct from another ATensor and infer batch dimension.
|
| |
| | operator Tensor () const |
| | Implicit conversion to a Tensor and loses information on the fixed base shape.
|
| |
| | TensorBase ()=default |
| | Special member functions.
|
| |
| | TensorBase (const ATensor &tensor, Size batch_dim) |
| | Construct from another ATensor with given batch dimension.
|
| |
| | TensorBase (const ATensor &tensor, const TraceableTensorShape &batch_shape) |
| | Construct from another ATensor with given batch shape.
|
| |
| | TensorBase (const neml2::Tensor &tensor) |
| | Copy constructor.
|
| |
| | TensorBase (double)=delete |
| |
| | TensorBase (float)=delete |
| |
| | TensorBase (int)=delete |
| |
| R2 | variable_data () const |
| |
| R2 | clone () const |
| |
| R2 | detach () const |
| | Discard function graph.
|
| |
| R2 | to (const TensorOptions &options) const |
| | Change tensor options.
|
| |
| R2 | operator- () const |
| | Negation.
|
| |
| bool | batched () const |
| | Whether the tensor is batched.
|
| |
| Size | batch_dim () const |
| | Return the number of batch dimensions.
|
| |
| Size | base_dim () const |
| | Return the number of base dimensions.
|
| |
| const TraceableTensorShape & | batch_sizes () const |
| | Return the batch size.
|
| |
| TraceableSize | batch_size (Size index) const |
| | Return the size of a batch axis.
|
| |
| TensorShapeRef | base_sizes () const |
| | Return the base size.
|
| |
| Size | base_size (Size index) const |
| | Return the size of a base axis.
|
| |
| Size | base_storage () const |
| | Return the flattened storage needed just for the base indices.
|
| |
| R2 | batch_index (indexing::TensorIndicesRef indices) const |
| | Get a tensor by slicing on the batch dimensions.
|
| |
| neml2::Tensor | base_index (indexing::TensorIndicesRef indices) const |
| | Get a tensor by slicing on the base dimensions.
|
| |
| R2 | batch_slice (Size dim, const indexing::Slice &index) const |
| | Get a tensor by slicing along a batch dimension.
|
| |
| neml2::Tensor | base_slice (Size dim, const indexing::Slice &index) const |
| | Get a tensor by slicing along a base dimension.
|
| |
| void | batch_index_put_ (indexing::TensorIndicesRef indices, const ATensor &other) |
| |
| void | batch_index_put_ (indexing::TensorIndicesRef indices, const CScalar &v) |
| |
| void | base_index_put_ (indexing::TensorIndicesRef indices, const ATensor &other) |
| |
| void | base_index_put_ (indexing::TensorIndicesRef indices, const CScalar &v) |
| |
| R2 | batch_expand (const TraceableTensorShape &batch_shape) const |
| |
| R2 | batch_expand (const TraceableSize &batch_size, Size dim) const |
| | Return a new view of the tensor with values broadcast along a given batch dimension.
|
| |
| neml2::Tensor | base_expand (TensorShapeRef base_shape) const |
| | Return a new view of the tensor with values broadcast along the base dimensions.
|
| |
| neml2::Tensor | base_expand (Size base_size, Size dim) const |
| | Return a new view of the tensor with values broadcast along a given base dimension.
|
| |
| R2 | batch_expand_as (const neml2::Tensor &other) const |
| | Expand the batch to have the same shape as another tensor.
|
| |
| neml2::Tensor | base_expand_as (const neml2::Tensor &other) const |
| | Expand the base to have the same shape as another tensor.
|
| |
| R2 | batch_expand_copy (const TraceableTensorShape &batch_shape) const |
| | Return a new tensor with values broadcast along the batch dimensions.
|
| |
| neml2::Tensor | base_expand_copy (TensorShapeRef base_shape) const |
| | Return a new tensor with values broadcast along the base dimensions.
|
| |
| R2 | batch_reshape (const TraceableTensorShape &batch_shape) const |
| | Reshape batch dimensions.
|
| |
| neml2::Tensor | base_reshape (TensorShapeRef base_shape) const |
| | Reshape base dimensions.
|
| |
| R2 | batch_unsqueeze (Size d) const |
| | Unsqueeze a batch dimension.
|
| |
| neml2::Tensor | base_unsqueeze (Size d) const |
| | Unsqueeze a base dimension.
|
| |
| R2 | batch_transpose (Size d1, Size d2) const |
| | Transpose two batch dimensions.
|
| |
| neml2::Tensor | base_transpose (Size d1, Size d2) const |
| | Transpose two base dimensions.
|
| |
| neml2::Tensor | base_flatten () const |
| | Flatten base dimensions.
|
| |
|
| static OptionSet | expected_options () |
| |
| static OptionSet | expected_options () |
| |
| static OptionSet | expected_options () |
| |
| static R4 | identity_map (const TensorOptions &options=default_tensor_options()) |
| | The derivative of a R2 with respect to itself.
|
| |
| static R2 | fill (const CScalar &a, const TensorOptions &options=default_tensor_options()) |
| | Fill the diagonals with a11 = a22 = a33 = a.
|
| |
| static R2 | fill (const Scalar &a) |
| |
| static R2 | fill (const CScalar &a11, const CScalar &a22, const CScalar &a33, const TensorOptions &options=default_tensor_options()) |
| | Fill the diagonals with a11, a22, a33.
|
| |
| static R2 | fill (const Scalar &a11, const Scalar &a22, const Scalar &a33) |
| |
| static R2 | fill (const CScalar &a11, const CScalar &a22, const CScalar &a33, const CScalar &a23, const CScalar &a13, const CScalar &a12, const TensorOptions &options=default_tensor_options()) |
| | Fill symmetric entries.
|
| |
| static R2 | fill (const Scalar &a11, const Scalar &a22, const Scalar &a33, const Scalar &a23, const Scalar &a13, const Scalar &a12) |
| |
| static R2 | fill (const CScalar &a11, const CScalar &a12, const CScalar &a13, const CScalar &a21, const CScalar &a22, const CScalar &a23, const CScalar &a31, const CScalar &a32, const CScalar &a33, const TensorOptions &options=default_tensor_options()) |
| | Fill all entries.
|
| |
| static R2 | fill (const Scalar &a11, const Scalar &a12, const Scalar &a13, const Scalar &a21, const Scalar &a22, const Scalar &a23, const Scalar &a31, const Scalar &a32, const Scalar &a33) |
| |
| static R2 | skew (const Vec &v) |
| | Skew matrix from Vec.
|
| |
| static R2 | identity (const TensorOptions &options=default_tensor_options()) |
| | Identity.
|
| |
| static R2 | create (const TensorDataContainer &data, const TensorOptions &options=default_tensor_options()) |
| | Arbitrary tensor from a nested container with inferred batch dimension.
|
| |
| static R2 | empty (const TensorOptions &options=default_tensor_options()) |
| | Unbatched empty tensor.
|
| |
| static R2 | empty (const TraceableTensorShape &batch_shape, const TensorOptions &options=default_tensor_options()) |
| | Empty tensor given batch shape.
|
| |
| static R2 | zeros (const TensorOptions &options=default_tensor_options()) |
| | Unbatched zero tensor.
|
| |
| static R2 | zeros (const TraceableTensorShape &batch_shape, const TensorOptions &options=default_tensor_options()) |
| | Zero tensor given batch shape.
|
| |
| static R2 | ones (const TensorOptions &options=default_tensor_options()) |
| | Unbatched unit tensor.
|
| |
| static R2 | ones (const TraceableTensorShape &batch_shape, const TensorOptions &options=default_tensor_options()) |
| | Unit tensor given batch shape.
|
| |
| static R2 | full (const CScalar &init, const TensorOptions &options=default_tensor_options()) |
| | Unbatched tensor filled with a given value given base shape.
|
| |
| static R2 | full (const TraceableTensorShape &batch_shape, const CScalar &init, const TensorOptions &options=default_tensor_options()) |
| | Full tensor given batch shape.
|
| |
| static Tensor | identity_map (const TensorOptions &) |
| | Derived tensor classes should define identity_map where appropriate.
|
| |
| static R2 | empty_like (const R2 &other) |
| |
| static R2 | zeros_like (const R2 &other) |
| | Zero tensor like another, i.e. same batch and base shapes, same tensor options, etc.
|
| |
| static R2 | ones_like (const R2 &other) |
| | Unit tensor like another, i.e. same batch and base shapes, same tensor options, etc.
|
| |
| static R2 | full_like (const R2 &other, const CScalar &init) |
| |
| static R2 | linspace (const R2 &start, const R2 &end, Size nstep, Size dim=0) |
| | Create a new tensor by adding a new batch dimension with linear spacing between start and end.
|
| |
| static R2 | logspace (const R2 &start, const R2 &end, Size nstep, Size dim=0, const CScalar &base=10) |
| | log-space equivalent of the linspace named constructor
|
| |