Create batch of rotations, with various methods.
|
| | Orientation (const OptionSet &options) |
| |
| | UserTensorBase (const OptionSet &options) |
| |
| void | setup () override |
| | Setup this object.
|
| |
| | 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 |
| |
| 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 | euler_rodrigues () const |
| | Generate a rotation matrix using the Euler-Rodrigues formula.
|
| |
| R3 | deuler_rodrigues () const |
| | d(R2)/d(r) – useful in constructing other derivatives
|
| |
| Rot | rotate (const Rot &r) const |
| | Rotate.
|
| |
| R2 | drotate (const Rot &r) const |
| | Derivative of the rotated Rodrigues vector w.r.t. the other Rodrigues vector.
|
| |
| R2 | drotate_self (const Rot &r) const |
| | Derivative of the rotated Rodrigues vector w.r.t. this vector.
|
| |
| Rot | shadow () const |
| | Return the shadow parameter set (a set of MRPs that define the same orientation)
|
| |
| R2 | dshadow () const |
| | Return the derivative of the shadow map.
|
| |
| Scalar | dist (const Rot &r) const |
| | Distance measure between two rotations, accounting for shadow mapping.
|
| |
| Scalar | gdist (const Rot &r) const |
| | Raw distance formula, not accounting for shadown mapping.
|
| |
| Scalar | dV () const |
| | Volume element at locations.
|
| |
| Rot | rotate (const Rot &r) const |
| | Rotate using a Rodrigues vector.
|
| |
| Rot | rotate (const R2 &R) const |
| | Rotate using a rotation matrix.
|
| |
| R2 | drotate (const Rot &r) const |
| | Derivative of the rotated vector w.r.t. the Rodrigues vector.
|
| |
| R3 | drotate (const R2 &R) const |
| | Derivative of the rotated vector w.r.t. the rotation matrix.
|
| |
| | PrimitiveTensor ()=default |
| | Special member functions.
|
| |
| | PrimitiveTensor (const ATensor &tensor, Size intmd_dim) |
| | Construct from an ATensor and infer dynamic shape.
|
| |
| | PrimitiveTensor (const ATensor &tensor, Size dynamic_dim, Size intmd_dim) |
| | Construct from an ATensor and extract dynamic shape given dynamic dimension.
|
| |
| | PrimitiveTensor (const ATensor &tensor, const TraceableTensorShape &dynamic_shape, Size intmd_dim) |
| | Construct from an ATensor given dynamic shape.
|
| |
| | PrimitiveTensor (const TensorBase< Derived2 > &tensor) |
| | Copy constructor.
|
| |
| | operator neml2::Tensor () const |
| | Implicit conversion to a Tensor (discards information on the fixed base shape)
|
| |
| Scalar | operator() (Args... i) const |
| | Single-element accessor.
|
| |
| | TensorBase ()=default |
| | Default constructor.
|
| |
| | TensorBase (const ATensor &tensor, Size dynamic_dim, Size intmd_dim) |
| | Construct from an ATensor with given dynamic dimension.
|
| |
| | TensorBase (const ATensor &tensor, TraceableTensorShape dynamic_shape, Size intmd_dim) |
| | Construct from an ATensor with given dynamic shape.
|
| |
| | TensorBase (const TensorBase< Derived2 > &tensor) |
| | Copy constructor.
|
| |
| | TensorBase (double)=delete |
| |
| | TensorBase (float)=delete |
| |
| | TensorBase (int)=delete |
| |
| Rot | variable_data () const |
| | Variable data without function graph.
|
| |
| Rot | contiguous () const |
| |
| Rot | clone () const |
| | Clone (take ownership)
|
| |
| Rot | detach () const |
| | Discard function graph.
|
| |
| Rot | to (const TensorOptions &options) const |
| | Change tensor options.
|
| |
| Rot | operator- () const |
| | Negation.
|
| |
| Size | batch_dim () const |
| |
| Size | base_dim () const |
| |
| Size | dynamic_dim () const |
| |
| Size | static_dim () const |
| |
| Size | intmd_dim () const |
| |
| TraceableTensorShape | batch_sizes () const |
| |
| TensorShapeRef | base_sizes () const |
| |
| const TraceableTensorShape & | dynamic_sizes () const |
| |
| TensorShapeRef | static_sizes () const |
| |
| TensorShapeRef | intmd_sizes () const |
| |
| TraceableSize | batch_size (Size i) const |
| |
| Size | base_size (Size i) const |
| |
| const TraceableSize & | dynamic_size (Size i) const |
| |
| Size | static_size (Size i) const |
| |
| Size | intmd_size (Size i) const |
| |
| Rot | dynamic_index (indexing::TensorIndicesRef indices) const |
| |
| Rot | intmd_index (indexing::TensorIndicesRef indices) const |
| |
| neml2::Tensor | base_index (indexing::TensorIndicesRef indices) const |
| |
| Rot | dynamic_slice (Size d, const indexing::Slice &index) const |
| |
| Rot | intmd_slice (Size d, const indexing::Slice &index) const |
| |
| neml2::Tensor | base_slice (Size d, const indexing::Slice &index) const |
| |
| void | dynamic_index_put_ (indexing::TensorIndicesRef indices, const ATensor &other) |
| |
| void | dynamic_index_put_ (indexing::TensorIndicesRef indices, const CScalar &v) |
| |
| void | intmd_index_put_ (indexing::TensorIndicesRef indices, const ATensor &other) |
| |
| void | intmd_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) |
| |
| Rot | dynamic_expand (const TraceableTensorShape &shape) const |
| |
| Rot | intmd_expand (TensorShapeRef shape) const |
| |
| neml2::Tensor | base_expand (TensorShapeRef shape) const |
| |
| Rot | batch_expand (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape) const |
| |
| neml2::Tensor | static_expand (TensorShapeRef intmd_shape, TensorShapeRef base_shape) const |
| |
| Rot | dynamic_expand (const TraceableSize &size, Size d) const |
| |
| Rot | intmd_expand (Size size, Size d) const |
| |
| neml2::Tensor | base_expand (Size size, Size d) const |
| |
| Rot | dynamic_expand_as (const neml2::Tensor &other) const |
| |
| Rot | intmd_expand_as (const neml2::Tensor &other) const |
| |
| neml2::Tensor | base_expand_as (const neml2::Tensor &other) const |
| |
| Rot | batch_expand_as (const neml2::Tensor &other) const |
| |
| neml2::Tensor | static_expand_as (const neml2::Tensor &other) const |
| |
| Rot | dynamic_reshape (const TraceableTensorShape &shape) const |
| |
| Rot | intmd_reshape (TensorShapeRef shape) const |
| |
| neml2::Tensor | base_reshape (TensorShapeRef shape) const |
| |
| Rot | batch_reshape (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape) const |
| |
| neml2::Tensor | static_reshape (TensorShapeRef intmd_shape, TensorShapeRef base_shape) const |
| |
| Rot | dynamic_squeeze (Size d) const |
| |
| Rot | intmd_squeeze (Size d) const |
| |
| neml2::Tensor | base_squeeze (Size d) const |
| |
| Rot | dynamic_unsqueeze (Size d, Size n=1) const |
| |
| Rot | intmd_unsqueeze (Size d, Size n=1) const |
| |
| neml2::Tensor | base_unsqueeze (Size d, Size n=1) const |
| |
| Rot | dynamic_transpose (Size d1, Size d2) const |
| |
| Rot | intmd_transpose (Size d1, Size d2) const |
| |
| neml2::Tensor | base_transpose (Size d1, Size d2) const |
| |
| Rot | dynamic_movedim (Size old_dim, Size new_dim) const |
| |
| Rot | intmd_movedim (Size old_dim, Size new_dim) const |
| |
| neml2::Tensor | base_movedim (Size old_dim, Size new_dim) const |
| |
| Rot | dynamic_flatten () const |
| |
| Rot | intmd_flatten () const |
| |
| neml2::Tensor | base_flatten () const |
| |
| Rot | batch_flatten () const |
| | Flatten batch dimensions.
|
| |
| neml2::Tensor | static_flatten () const |
| | Flatten static dimensions.
|
| |
|
| static OptionSet | expected_options () |
| |
| static OptionSet | expected_options () |
| |
| static OptionSet | expected_options () |
| |
| static Rot | identity (const TensorOptions &options=default_tensor_options()) |
| | The identity rotation, helpfully the zero vector.
|
| |
| static Rot | fill_euler_angles (const Vec &v, const std::string &angle_convention, const std::string &angle_type) |
| | Fill from Euler angle.
|
| |
| static Rot | fill_matrix (const R2 &M) |
| | Fill from rotation matrix.
|
| |
| static Rot | fill_rodrigues (const Scalar &rx, const Scalar &ry, const Scalar &rz) |
| | Fill from standard Rodrigues parameters.
|
| |
| static Rot | rotation_from_to (const Vec &v1, const Vec &v2) |
| | Fill by forming the rotation between two vectors.
|
| |
| static Rot | axis_angle (const Vec &n, const Scalar &theta) |
| | Fill with axis/angle pairs.
|
| |
| static Rot | axis_angle_standard (const Vec &n, const Scalar &theta) |
| | Fill with axis/angle pairs as a standard Rodrigues parameter, then convert to MRP.
|
| |
| static Rot | rand (const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | rand (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape, const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | create (const TensorDataContainer &data, Size intmd_dim=0, const TensorOptions &options=default_tensor_options()) |
| | Arbitrary tensor from a nested container with inferred batch dimension.
|
| |
| static Rot | einsum (c10::string_view equation, TensorList tensors) |
| | Einstein summation along base dimensions.
|
| |
| static Rot | empty (const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | empty (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape={}, const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | zeros (const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | zeros (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape={}, const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | ones (const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | ones (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape={}, const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | full (const CScalar &init, const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | full (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape, const CScalar &init, const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | rand (const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | rand (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape, const TensorOptions &options=default_tensor_options()) |
| |
| static Rot | fill (Args &&... args) |
| |
| static Rot | empty_like (const Rot &other) |
| |
| static Rot | zeros_like (const Rot &other) |
| | Zero tensor like another, i.e. same batch and base shapes, same tensor options, etc.
|
| |
| static Rot | ones_like (const Rot &other) |
| | Unit tensor like another, i.e. same batch and base shapes, same tensor options, etc.
|
| |
| static Rot | full_like (const Rot &other, const CScalar &init) |
| |
| static Rot | rand_like (const Rot &other) |
| |