NEML2 1.4.0
|
The (logical) symmetric fourth order tensor, with symmetry in the first two dimensionss and skew-symmetry in the second two. More...
The (logical) symmetric fourth order tensor, with symmetry in the first two dimensionss and skew-symmetry in the second two.
Mandel notation/reduced skew is used, and so the logical storage space is (6, 3).
#include <SWR4.h>
Public Member Functions | |
SWR4 (const R4 &F) | |
Public Member Functions inherited from FixedDimTensor< SWR4, 6, 3 > | |
FixedDimTensor ()=default | |
Default constructor. | |
FixedDimTensor (const torch::Tensor &tensor, TorchSize batch_dim) | |
Construct from another torch::Tensor given batch dimension. | |
FixedDimTensor (const torch::Tensor &tensor) | |
Construct from another torch::Tensor and infer batch dimension. | |
operator BatchTensor () const | |
Implicit conversion to a BatchTensor and loses information on the fixed base shape. | |
Public Member Functions inherited from BatchTensorBase< Derived > | |
BatchTensorBase ()=default | |
Default constructor. | |
BatchTensorBase (const torch::Tensor &tensor, TorchSize batch_dim) | |
Construct from another torch::Tensor. | |
BatchTensorBase (const Derived &tensor) | |
Copy constructor. | |
BatchTensorBase (Real)=delete | |
bool | batched () const |
Whether the tensor is batched. | |
TorchSize | batch_dim () const |
Return the number of batch dimensions. | |
TorchSize & | batch_dim () |
Return a writable reference to the batch dimension. | |
TorchSize | base_dim () const |
Return the number of base dimensions. | |
TorchShapeRef | batch_sizes () const |
Return the batch size. | |
TorchSize | batch_size (TorchSize index) const |
Return the length of some batch axis. | |
TorchShapeRef | base_sizes () const |
Return the base size. | |
TorchSize | base_size (TorchSize index) const |
Return the length of some base axis. | |
TorchSize | base_storage () const |
Return the flattened storage needed just for the base indices. | |
Derived | batch_index (TorchSlice indices) const |
Get a batch. | |
BatchTensor | base_index (const TorchSlice &indices) const |
Return an index sliced on the base dimensions. | |
void | batch_index_put (TorchSlice indices, const torch::Tensor &other) |
Set a index sliced on the batch dimensions to a value. | |
void | base_index_put (const TorchSlice &indices, const torch::Tensor &other) |
Set a index sliced on the base dimensions to a value. | |
Derived | batch_expand (TorchShapeRef batch_size) const |
Return a new view of the tensor with values broadcast along the batch dimensions. | |
BatchTensor | base_expand (TorchShapeRef 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 (TorchShapeRef batch_size) const |
Return a new tensor with values broadcast along the batch dimensions. | |
BatchTensor | base_expand_copy (TorchShapeRef base_size) const |
Return a new tensor with values broadcast along the base dimensions. | |
Derived | batch_reshape (TorchShapeRef batch_shape) const |
Reshape batch dimensions. | |
BatchTensor | base_reshape (TorchShapeRef base_shape) const |
Reshape base dimensions. | |
Derived | batch_unsqueeze (TorchSize d) const |
Unsqueeze a batch dimension. | |
Derived | list_unsqueeze () const |
Unsqueeze on the special list batch dimension. | |
BatchTensor | base_unsqueeze (TorchSize d) const |
Unsqueeze a base dimension. | |
Derived | batch_transpose (TorchSize d1, TorchSize d2) const |
Transpose two batch dimensions. | |
BatchTensor | base_transpose (TorchSize d1, TorchSize d2) const |
Transpose two base dimensions. | |
BatchTensor | base_movedim (TorchSize d1, TorchSize d2) const |
Move two base dimensions. | |
Derived | clone (torch::MemoryFormat memory_format=torch::MemoryFormat::Contiguous) const |
Clone (take ownership) | |
Derived | detach () const |
Discard function graph. | |
Derived | to (const torch::TensorOptions &options) const |
Send to options. | |
Derived | operator- () const |
Negation. | |
Derived | batch_sum (TorchSize d) const |
Sum on a batch index. | |
Derived | list_sum () const |
Sum on the list index (TODO: replace with class) | |
Additional Inherited Members | |
Static Public Member Functions inherited from FixedDimTensor< SWR4, 6, 3 > | |
static SWR4 | empty (const torch::TensorOptions &options=default_tensor_options()) |
Unbatched empty tensor. | |
static SWR4 | empty (TorchShapeRef batch_shape, const torch::TensorOptions &options=default_tensor_options()) |
Empty tensor given batch shape. | |
static SWR4 | zeros (const torch::TensorOptions &options=default_tensor_options()) |
Unbatched zero tensor. | |
static SWR4 | zeros (TorchShapeRef batch_shape, const torch::TensorOptions &options=default_tensor_options()) |
Zero tensor given batch shape. | |
static SWR4 | ones (const torch::TensorOptions &options=default_tensor_options()) |
Unbatched unit tensor. | |
static SWR4 | ones (TorchShapeRef batch_shape, const torch::TensorOptions &options=default_tensor_options()) |
Unit tensor given batch shape. | |
static SWR4 | full (Real init, const torch::TensorOptions &options=default_tensor_options()) |
Unbatched tensor filled with a given value given base shape. | |
static SWR4 | full (TorchShapeRef batch_shape, Real init, const torch::TensorOptions &options=default_tensor_options()) |
Full tensor given batch shape. | |
static BatchTensor | identity_map (const torch::TensorOptions &) |
Derived tensor classes should define identity_map where appropriate. | |
Static Public Member Functions inherited from BatchTensorBase< Derived > | |
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, TorchSize nstep, TorchSize dim=0, TorchSize 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, TorchSize nstep, TorchSize dim=0, TorchSize batch_dim=-1, Real base=10) |
log-space equivalent of the linspace named constructor | |
Static Public Attributes inherited from FixedDimTensor< SWR4, 6, 3 > | |
static const TorchShape | const_base_sizes |
The base shape. | |
static constexpr TorchSize | const_base_dim |
The base dim. | |
static const TorchSize | const_base_storage |
The base storage. | |