NEML2 2.0.0
|
Convenience struct to hold solution to prevent developers from accidentally confusing the scaled and unscaled solution (or solution increment, search direction, etc.)
#include <NonlinearSystem.h>
Public Member Functions | |
Sol ()=default | |
Sol (const Tensor &u) | |
Conversion from Tensor must be explicit. | |
Sol (const Sol<!scaled > &u) | |
Conversion between scaled and unscaled must be explicit. | |
Public Member Functions inherited from Tensor | |
Tensor ()=default | |
Default constructor. | |
Tensor (const torch::Tensor &tensor, Size batch_dim) | |
Construct from another torch::Tensor. | |
Tensor (const torch::Tensor &tensor, const TraceableTensorShape &batch_shape) | |
Construct from another torch::Tensor with given batch shape. | |
template<class Derived2 > | |
Tensor (const TensorBase< Derived2 > &tensor) | |
Copy constructor. | |
Public Member Functions inherited from TensorBase< Tensor > | |
TensorBase ()=default | |
Default constructor. | |
TensorBase (const torch::Tensor &tensor, Size batch_dim) | |
Construct from another torch::Tensor with given batch dimension. | |
TensorBase (const torch::Tensor &tensor, const TraceableTensorShape &batch_shape) | |
Construct from another torch::Tensor with given batch shape. | |
TensorBase (const TensorBase< Derived2 > &tensor) | |
Copy constructor. | |
TensorBase (Real)=delete | |
Tensor | variable_data () const |
Tensor | clone (torch::MemoryFormat memory_format=torch::MemoryFormat::Contiguous) const |
Tensor | detach () const |
Discard function graph. | |
Tensor | to (const torch::TensorOptions &options) const |
Change tensor options. | |
Tensor | 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. | |
const TraceableTensorShape & | batch_sizes () const |
Return the batch size. | |
TraceableSize | 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. | |
Tensor | 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) |
void | batch_index_put_ (indexing::TensorIndicesRef indices, Real v) |
void | base_index_put_ (indexing::TensorIndicesRef indices, const torch::Tensor &other) |
void | base_index_put_ (indexing::TensorIndicesRef indices, Real v) |
Tensor | batch_expand (const TraceableTensorShape &batch_shape) const |
Tensor | batch_expand (const TraceableSize &batch_size, Size dim) const |
Return a new view of the tensor with values broadcast along a given batch dimension. | |
neml2::Tensor | base_expand (TensorShapeRef base_shape) const |
Return a new view of the tensor with values broadcast along the base dimensions. | |
neml2::Tensor | base_expand (Size base_size, Size dim) const |
Return a new view of the tensor with values broadcast along a given base dimension. | |
Tensor | 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. | |
Tensor | batch_expand_copy (const TraceableTensorShape &batch_shape) const |
Return a new tensor with values broadcast along the batch dimensions. | |
neml2::Tensor | base_expand_copy (TensorShapeRef base_shape) const |
Return a new tensor with values broadcast along the base dimensions. | |
Tensor | batch_reshape (const TraceableTensorShape &batch_shape) const |
Reshape batch dimensions. | |
neml2::Tensor | base_reshape (TensorShapeRef base_shape) const |
Reshape base dimensions. | |
Tensor | batch_unsqueeze (Size d) const |
Unsqueeze a batch dimension. | |
neml2::Tensor | base_unsqueeze (Size d) const |
Unsqueeze a base dimension. | |
Tensor | batch_transpose (Size d1, Size d2) const |
Transpose two batch dimensions. | |
neml2::Tensor | base_transpose (Size d1, Size d2) const |
Transpose two base dimensions. | |
neml2::Tensor | base_flatten () const |
Flatten base dimensions. | |
Additional Inherited Members | |
Static Public Member Functions inherited from Tensor | |
static Tensor | empty (TensorShapeRef base_shape, const torch::TensorOptions &options=default_tensor_options()) |
Unbatched empty tensor given base shape. | |
static Tensor | empty (const TraceableTensorShape &batch_shape, TensorShapeRef base_shape, const torch::TensorOptions &options=default_tensor_options()) |
Empty tensor given batch and base shapes. | |
static Tensor | zeros (TensorShapeRef base_shape, const torch::TensorOptions &options=default_tensor_options()) |
Unbatched tensor filled with zeros given base shape. | |
static Tensor | zeros (const TraceableTensorShape &batch_shape, TensorShapeRef base_shape, const torch::TensorOptions &options=default_tensor_options()) |
Zero tensor given batch and base shapes. | |
static Tensor | ones (TensorShapeRef base_shape, const torch::TensorOptions &options=default_tensor_options()) |
Unbatched tensor filled with ones given base shape. | |
static Tensor | ones (const TraceableTensorShape &batch_shape, TensorShapeRef base_shape, const torch::TensorOptions &options=default_tensor_options()) |
Unit tensor given batch and base shapes. | |
static Tensor | full (TensorShapeRef base_shape, Real init, const torch::TensorOptions &options=default_tensor_options()) |
Unbatched tensor filled with a given value given base shape. | |
static Tensor | full (const TraceableTensorShape &batch_shape, TensorShapeRef base_shape, Real init, const torch::TensorOptions &options=default_tensor_options()) |
Full tensor given batch and base shapes. | |
static Tensor | identity (Size n, const torch::TensorOptions &options=default_tensor_options()) |
Unbatched identity tensor. | |
static Tensor | identity (const TraceableTensorShape &batch_shape, Size n, const torch::TensorOptions &options=default_tensor_options()) |
Identity tensor given batch shape and base length. | |
Static Public Member Functions inherited from TensorBase< Tensor > | |
static Tensor | empty_like (const Tensor &other) |
Empty tensor like another, i.e. same batch and base shapes, same tensor options, etc. | |
static Tensor | zeros_like (const Tensor &other) |
Zero tensor like another, i.e. same batch and base shapes, same tensor options, etc. | |
static Tensor | ones_like (const Tensor &other) |
Unit tensor like another, i.e. same batch and base shapes, same tensor options, etc. | |
static Tensor | full_like (const Tensor &other, Real init) |
static Tensor | linspace (const Tensor &start, const Tensor &end, Size nstep, Size dim=0) |
Create a new tensor by adding a new batch dimension with linear spacing between start and end . | |
static Tensor | logspace (const Tensor &start, const Tensor &end, Size nstep, Size dim=0, Real base=10) |
log-space equivalent of the linspace named constructor | |
Conversion from Tensor must be explicit.