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 = EquationSystem> |
| std::shared_ptr< T > | get_es (const std::string &name) |
| | Get an equation system from the factory.
|
| 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.
|
| Vec | to_euler_angles (const std::string &angle_convention, const std::string &angle_type) const |
| | Convert back to Euler angles.
|
| Rot | rotate (const Rot &r) const |
| | Rotate using a Rodrigues vector.
|
| R2 | drotate (const Rot &r) const |
| | Derivative of the rotated vector w.r.t. the Rodrigues vector.
|
| | PrimitiveTensor ()=default |
| | Special member functions.
|
| | 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.
|
| 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 | batch_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 |
| Rot | batch_slice (Size d, const indexing::Slice &index) const |
| void | dynamic_index_put_ (indexing::TensorIndicesRef indices, const ATensor &other) |
| void | intmd_index_put_ (indexing::TensorIndicesRef indices, const ATensor &other) |
| void | base_index_put_ (indexing::TensorIndicesRef indices, const ATensor &other) |
| void | batch_index_put_ (indexing::TensorIndicesRef indices, const ATensor &other) |
| 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_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 | batch_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 | batch_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 | batch_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 | batch_movedim (Size old_dim, Size new_dim) const |
| Rot | dynamic_flatten (Size start_dim=0, Size end_dim=-1) const |
| Rot | intmd_flatten (Size start_dim=0, Size end_dim=-1) const |
| neml2::Tensor | base_flatten (Size start_dim=0, Size end_dim=-1) 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 | zeros (const TensorOptions &options=default_tensor_options()) |
| static Rot | ones (const TensorOptions &options=default_tensor_options()) |
| static Rot | full (const CScalar &init, const TensorOptions &options=default_tensor_options()) |
| static Rot | rand (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) |