NEML2 1.4.0
Loading...
Searching...
No Matches
BatchTensor Class Reference

#include <BatchTensor.h>

Inheritance diagram for BatchTensor:

Static Public Member Functions

static BatchTensor empty (const TorchShapeRef &base_shape, const torch::TensorOptions &options=default_tensor_options())
 Unbatched empty tensor given base shape.
 
static BatchTensor empty (const TorchShapeRef &batch_shape, const TorchShapeRef &base_shape, const torch::TensorOptions &options=default_tensor_options())
 Empty tensor given batch and base shapes.
 
static BatchTensor zeros (const TorchShapeRef &base_shape, const torch::TensorOptions &options=default_tensor_options())
 Unbatched tensor filled with zeros given base shape.
 
static BatchTensor zeros (const TorchShapeRef &batch_shape, const TorchShapeRef &base_shape, const torch::TensorOptions &options=default_tensor_options())
 Zero tensor given batch and base shapes.
 
static BatchTensor ones (const TorchShapeRef &base_shape, const torch::TensorOptions &options=default_tensor_options())
 Unbatched tensor filled with ones given base shape.
 
static BatchTensor ones (const TorchShapeRef &batch_shape, const TorchShapeRef &base_shape, const torch::TensorOptions &options=default_tensor_options())
 Unit tensor given batch and base shapes.
 
static BatchTensor full (const TorchShapeRef &base_shape, Real init, const torch::TensorOptions &options=default_tensor_options())
 Unbatched tensor filled with a given value given base shape.
 
static BatchTensor full (const TorchShapeRef &batch_shape, const TorchShapeRef &base_shape, Real init, const torch::TensorOptions &options=default_tensor_options())
 Full tensor given batch and base shapes.
 
static BatchTensor identity (TorchSize n, const torch::TensorOptions &options=default_tensor_options())
 Unbatched identity tensor.
 
static BatchTensor identity (const TorchShapeRef &batch_shape, TorchSize n, const torch::TensorOptions &options=default_tensor_options())
 Identity tensor given batch shape and base length.
 
- Static Public Member Functions inherited from BatchTensorBase< BatchTensor >
static BatchTensor empty_like (const BatchTensor &other)
 Empty tensor like another, i.e. same batch and base shapes, same tensor options, etc.
 
static BatchTensor zeros_like (const BatchTensor &other)
 Zero tensor like another, i.e. same batch and base shapes, same tensor options, etc.
 
static BatchTensor ones_like (const BatchTensor &other)
 Unit tensor like another, i.e. same batch and base shapes, same tensor options, etc.
 
static BatchTensor full_like (const BatchTensor &other, Real init)
 
static BatchTensor linspace (const BatchTensor &start, const BatchTensor &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 BatchTensor logspace (const BatchTensor &start, const BatchTensor &end, TorchSize nstep, TorchSize dim=0, TorchSize batch_dim=-1, Real base=10)
 log-space equivalent of the linspace named constructor
 

Additional Inherited Members

- Public Member Functions inherited from BatchTensorBase< BatchTensor >
 BatchTensorBase ()=default
 Default constructor.
 
 BatchTensorBase (const torch::Tensor &tensor, TorchSize batch_dim)
 Construct from another torch::Tensor.
 
 BatchTensorBase (const BatchTensor &tensor)
 Copy constructor.
 
 BatchTensorBase (Real)=delete
 
bool batched () const
 Whether the tensor is batched.
 
TorchSize batch_dim () const
 Return the number of batch dimensions.
 
TorchSizebatch_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.
 
BatchTensor 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.
 
BatchTensor 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.
 
BatchTensor batch_expand_as (const Derived2 &other) const
 Expand the batch to have the same shape as another tensor.
 
Derived2 base_expand_as (const Derived2 &other) const
 Expand the base to have the same shape as another tensor.
 
BatchTensor 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.
 
BatchTensor batch_reshape (TorchShapeRef batch_shape) const
 Reshape batch dimensions.
 
BatchTensor base_reshape (TorchShapeRef base_shape) const
 Reshape base dimensions.
 
BatchTensor batch_unsqueeze (TorchSize d) const
 Unsqueeze a batch dimension.
 
BatchTensor list_unsqueeze () const
 Unsqueeze on the special list batch dimension.
 
BatchTensor base_unsqueeze (TorchSize d) const
 Unsqueeze a base dimension.
 
BatchTensor 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.
 
BatchTensor clone (torch::MemoryFormat memory_format=torch::MemoryFormat::Contiguous) const
 Clone (take ownership)
 
BatchTensor detach () const
 Discard function graph.
 
BatchTensor to (const torch::TensorOptions &options) const
 Send to options.
 
BatchTensor operator- () const
 Negation.
 
BatchTensor batch_sum (TorchSize d) const
 Sum on a batch index.
 
BatchTensor list_sum () const
 Sum on the list index (TODO: replace with class)
 

Member Function Documentation

◆ empty() [1/2]

BatchTensor empty ( const TorchShapeRef & base_shape,
const torch::TensorOptions & options = default_tensor_options() )
static

Unbatched empty tensor given base shape.

◆ empty() [2/2]

BatchTensor empty ( const TorchShapeRef & batch_shape,
const TorchShapeRef & base_shape,
const torch::TensorOptions & options = default_tensor_options() )
static

Empty tensor given batch and base shapes.

◆ full() [1/2]

BatchTensor full ( const TorchShapeRef & base_shape,
Real init,
const torch::TensorOptions & options = default_tensor_options() )
static

Unbatched tensor filled with a given value given base shape.

◆ full() [2/2]

BatchTensor full ( const TorchShapeRef & batch_shape,
const TorchShapeRef & base_shape,
Real init,
const torch::TensorOptions & options = default_tensor_options() )
static

Full tensor given batch and base shapes.

◆ identity() [1/2]

BatchTensor identity ( const TorchShapeRef & batch_shape,
TorchSize n,
const torch::TensorOptions & options = default_tensor_options() )
static

Identity tensor given batch shape and base length.

◆ identity() [2/2]

BatchTensor identity ( TorchSize n,
const torch::TensorOptions & options = default_tensor_options() )
static

Unbatched identity tensor.

◆ ones() [1/2]

BatchTensor ones ( const TorchShapeRef & base_shape,
const torch::TensorOptions & options = default_tensor_options() )
static

Unbatched tensor filled with ones given base shape.

◆ ones() [2/2]

BatchTensor ones ( const TorchShapeRef & batch_shape,
const TorchShapeRef & base_shape,
const torch::TensorOptions & options = default_tensor_options() )
static

Unit tensor given batch and base shapes.

◆ zeros() [1/2]

BatchTensor zeros ( const TorchShapeRef & base_shape,
const torch::TensorOptions & options = default_tensor_options() )
static

Unbatched tensor filled with zeros given base shape.

◆ zeros() [2/2]

BatchTensor zeros ( const TorchShapeRef & batch_shape,
const TorchShapeRef & base_shape,
const torch::TensorOptions & options = default_tensor_options() )
static

Zero tensor given batch and base shapes.