Create a filled SR2 from the input file.
|
| FillSR2 (const OptionSet &options) |
| Construct a new FillSR2 object.
|
|
| SR2 (const R2 &T) |
| Symmetrize an R2 then fill.
|
|
SR2 | rotate (const Rot &r) const |
| Rotate.
|
|
SR2 | rotate (const R2 &R) const |
|
SFR3 | drotate (const Rot &r) const |
| Derivative of the rotated tensor w.r.t. the Rodrigues vector.
|
|
SFFR4 | drotate (const R2 &R) const |
|
Scalar | operator() (Size i, Size j) const |
| Accessor.
|
|
Scalar | tr () const |
| Trace.
|
|
SR2 | vol () const |
| Volumetric part of the tensor.
|
|
SR2 | dev () const |
| Deviatoric part of the tensor.
|
|
Scalar | det () const |
| Determinant.
|
|
Scalar | inner (const SR2 &other) const |
| Double contraction ij,ij.
|
|
Scalar | norm_sq () const |
| Norm squared.
|
|
Scalar | norm (Real eps=0) const |
| Norm.
|
|
SSR4 | outer (const SR2 &other) const |
| Outer product ij,kl -> ijkl.
|
|
SR2 | inverse () const |
| Inversion.
|
|
SR2 | transpose () const |
| Transpose, no-op.
|
|
| PrimitiveTensor ()=default |
| Default constructor.
|
|
| PrimitiveTensor (const torch::Tensor &tensor, Size batch_dim) |
| Construct from another torch::Tensor given batch dimension.
|
|
| PrimitiveTensor (const torch::Tensor &tensor) |
| Construct from another torch::Tensor and infer batch dimension.
|
|
| operator Tensor () const |
| Implicit conversion to a Tensor and loses information on the fixed base shape.
|
|
| TensorBase ()=default |
| Default constructor.
|
|
| TensorBase (const torch::Tensor &tensor, Size batch_dim) |
| Construct from another torch::Tensor.
|
|
| TensorBase (const Derived &tensor) |
| Copy constructor.
|
|
| TensorBase (Real)=delete |
|
Derived | clone (torch::MemoryFormat memory_format=torch::MemoryFormat::Contiguous) const |
|
Derived | detach () const |
| Discard function graph.
|
|
Derived | to (const torch::TensorOptions &options) const |
| Change tensor options.
|
|
Derived | 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.
|
|
TensorShapeRef | batch_sizes () const |
| Return the batch size.
|
|
Size | 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.
|
|
Derived | 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.
|
|
void | batch_index_put_ (indexing::TensorIndicesRef indices, const torch::Tensor &other) |
| Set values by slicing on the batch dimensions.
|
|
void | base_index_put_ (indexing::TensorIndicesRef indices, const torch::Tensor &other) |
| Set values by slicing on the base dimensions.
|
|
Derived | batch_expand (TensorShapeRef batch_size) const |
|
neml2::Tensor | base_expand (TensorShapeRef base_size) const |
| Return a new view of the tensor with values broadcast along the base dimensions.
|
|
template<class Derived2 > |
Derived | batch_expand_as (const Derived2 &other) const |
| Expand the batch to have the same shape as another tensor.
|
|
template<class Derived2 > |
Derived2 | base_expand_as (const Derived2 &other) const |
| Expand the base to have the same shape as another tensor.
|
|
Derived | batch_expand_copy (TensorShapeRef batch_size) const |
| Return a new tensor with values broadcast along the batch dimensions.
|
|
neml2::Tensor | base_expand_copy (TensorShapeRef base_size) const |
| Return a new tensor with values broadcast along the base dimensions.
|
|
Derived | batch_reshape (TensorShapeRef batch_shape) const |
| Reshape batch dimensions.
|
|
neml2::Tensor | base_reshape (TensorShapeRef base_shape) const |
| Reshape base dimensions.
|
|
Derived | batch_unsqueeze (Size d) const |
| Unsqueeze a batch dimension.
|
|
neml2::Tensor | base_unsqueeze (Size d) const |
| Unsqueeze a base dimension.
|
|
Derived | batch_transpose (Size d1, Size d2) const |
| Transpose two batch dimensions.
|
|
neml2::Tensor | base_transpose (Size d1, Size d2) const |
| Transpose two base dimensions.
|
|
| UserTensorBase (const OptionSet &options) |
|
| NEML2Object (const OptionSet &options) |
| Construct a new NEML2Object object.
|
|
virtual | ~NEML2Object ()=default |
|
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.
|
|
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.
|
|
|
static OptionSet | expected_options () |
|
static SR2 | fill (const Real &a, const torch::TensorOptions &options=default_tensor_options()) |
| Fill the diagonals with a11 = a22 = a33 = a.
|
|
static SR2 | fill (const Scalar &a) |
|
static SR2 | fill (const Real &a11, const Real &a22, const Real &a33, const torch::TensorOptions &options=default_tensor_options()) |
| Fill the diagonals with a11, a22, a33.
|
|
static SR2 | fill (const Scalar &a11, const Scalar &a22, const Scalar &a33) |
|
static SR2 | fill (const Real &a11, const Real &a22, const Real &a33, const Real &a23, const Real &a13, const Real &a12, const torch::TensorOptions &options=default_tensor_options()) |
| Fill all entries.
|
|
static SR2 | fill (const Scalar &a11, const Scalar &a22, const Scalar &a33, const Scalar &a23, const Scalar &a13, const Scalar &a12) |
|
static SR2 | identity (const torch::TensorOptions &options=default_tensor_options()) |
| Identity.
|
|
static SSR4 | identity_map (const torch::TensorOptions &options=default_tensor_options()) |
| The derivative of a SR2 with respect to itself.
|
|
static SR2 | empty (const torch::TensorOptions &options=default_tensor_options()) |
| Unbatched empty tensor.
|
|
static SR2 | empty (TensorShapeRef batch_shape, const torch::TensorOptions &options=default_tensor_options()) |
| Empty tensor given batch shape.
|
|
static SR2 | zeros (const torch::TensorOptions &options=default_tensor_options()) |
| Unbatched zero tensor.
|
|
static SR2 | zeros (TensorShapeRef batch_shape, const torch::TensorOptions &options=default_tensor_options()) |
| Zero tensor given batch shape.
|
|
static SR2 | ones (const torch::TensorOptions &options=default_tensor_options()) |
| Unbatched unit tensor.
|
|
static SR2 | ones (TensorShapeRef batch_shape, const torch::TensorOptions &options=default_tensor_options()) |
| Unit tensor given batch shape.
|
|
static SR2 | full (Real init, const torch::TensorOptions &options=default_tensor_options()) |
| Unbatched tensor filled with a given value given base shape.
|
|
static SR2 | full (TensorShapeRef batch_shape, Real init, const torch::TensorOptions &options=default_tensor_options()) |
| Full tensor given batch shape.
|
|
static Tensor | identity_map (const torch::TensorOptions &) |
| Derived tensor classes should define identity_map where appropriate.
|
|
static Derived | empty_like (const Derived &other) |
| Empty tensor like another, i.e. same batch and base shapes, same tensor options, etc.
|
|
static Derived | zeros_like (const Derived &other) |
| Zero tensor like another, i.e. same batch and base shapes, same tensor options, etc.
|
|
static Derived | ones_like (const Derived &other) |
| Unit tensor like another, i.e. same batch and base shapes, same tensor options, etc.
|
|
static Derived | full_like (const Derived &other, Real init) |
|
static Derived | linspace (const Derived &start, const Derived &end, Size nstep, Size dim=0, Size batch_dim=-1) |
| Create a new tensor by adding a new batch dimension with linear spacing between start and end .
|
|
static Derived | logspace (const Derived &start, const Derived &end, Size nstep, Size dim=0, Size batch_dim=-1, Real base=10) |
| log-space equivalent of the linspace named constructor
|
|
static OptionSet | expected_options () |
|
static OptionSet | expected_options () |
|