NEML2 2.1.0
Loading...
Searching...
No Matches

Create a filled R2 from the input file. More...

Detailed Description

Create a filled R2 from the input file.

#include <FillR2.h>

Inheritance diagram for FillR2:

Public Member Functions

 FillR2 (const OptionSet &options)
Public Member Functions inherited from UserTensorBase< R2 >
 UserTensorBase (const OptionSet &options)
void setup () override
 Setup this object.
Public Member Functions inherited from NEML2Object
 NEML2Object ()=delete
 NEML2Object (NEML2Object &&)=delete
 NEML2Object (const NEML2Object &)=delete
NEML2Objectoperator= (NEML2Object &&)=delete
NEML2Objectoperator= (const NEML2Object &)=delete
virtual ~NEML2Object ()=default
 NEML2Object (const OptionSet &options)
 Construct a new NEML2Object object.
const OptionSetinput_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.
Factoryfactory () const
 Get the factory that created this object.
const Settingssettings () 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 &section, 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.
Public Member Functions inherited from R2
 R2 (const SR2 &S)
 Form a full R2 from a symmetric tensor.
 R2 (const WR2 &W)
 Form a full R2 from a skew-symmetric tensor.
R2 rotate (const Rot &r) const
 Rotate using a Rodrigues vector.
R2 rotate (const R2 &R) const
 Rotate using a rotation matrix.
R3 drotate (const Rot &r) const
 Derivative of the rotated tensor w.r.t. the Rodrigues vector.
R4 drotate (const R2 &R) const
 Derivative of the rotated tensor w.r.t. the rotation matrix.
Vec row (Size i) const
 Row.
Vec col (Size i) const
 Coluomn.
R2 transpose () const
 transpose
Public Member Functions inherited from PrimitiveTensor< R2, 3, 3 >
 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.
Public Member Functions inherited from TensorBase< R2 >
 TensorBase ()=default
 Default constructor.
R2 variable_data () const
 Variable data without function graph.
R2 contiguous () const
R2 clone () const
 Clone (take ownership).
R2 detach () const
 Discard function graph.
R2 to (const TensorOptions &options) const
 Change tensor options.
R2 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 TraceableTensorShapedynamic_sizes () const
TensorShapeRef static_sizes () const
TensorShapeRef intmd_sizes () const
TraceableSize batch_size (Size i) const
Size base_size (Size i) const
const TraceableSizedynamic_size (Size i) const
Size static_size (Size i) const
Size intmd_size (Size i) const
R2 dynamic_index (indexing::TensorIndicesRef indices) const
R2 intmd_index (indexing::TensorIndicesRef indices) const
neml2::Tensor base_index (indexing::TensorIndicesRef indices) const
R2 batch_index (indexing::TensorIndicesRef indices) const
R2 dynamic_slice (Size d, const indexing::Slice &index) const
R2 intmd_slice (Size d, const indexing::Slice &index) const
neml2::Tensor base_slice (Size d, const indexing::Slice &index) const
R2 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)
R2 dynamic_expand (const TraceableTensorShape &shape) const
R2 intmd_expand (TensorShapeRef shape) const
neml2::Tensor base_expand (TensorShapeRef shape) const
R2 batch_expand (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape={}) const
neml2::Tensor static_expand (TensorShapeRef intmd_shape, TensorShapeRef base_shape) const
R2 dynamic_expand_as (const neml2::Tensor &other) const
R2 intmd_expand_as (const neml2::Tensor &other) const
neml2::Tensor base_expand_as (const neml2::Tensor &other) const
R2 batch_expand_as (const neml2::Tensor &other) const
neml2::Tensor static_expand_as (const neml2::Tensor &other) const
R2 dynamic_reshape (const TraceableTensorShape &shape) const
R2 intmd_reshape (TensorShapeRef shape) const
neml2::Tensor base_reshape (TensorShapeRef shape) const
R2 batch_reshape (const TraceableTensorShape &dynamic_shape, TensorShapeRef intmd_shape={}) const
neml2::Tensor static_reshape (TensorShapeRef intmd_shape, TensorShapeRef base_shape) const
R2 dynamic_squeeze (Size d) const
R2 intmd_squeeze (Size d) const
neml2::Tensor base_squeeze (Size d) const
R2 batch_squeeze (Size d) const
R2 dynamic_unsqueeze (Size d, Size n=1) const
R2 intmd_unsqueeze (Size d, Size n=1) const
neml2::Tensor base_unsqueeze (Size d, Size n=1) const
R2 batch_unsqueeze (Size d, Size n=1) const
R2 dynamic_transpose (Size d1, Size d2) const
R2 intmd_transpose (Size d1, Size d2) const
neml2::Tensor base_transpose (Size d1, Size d2) const
R2 batch_transpose (Size d1, Size d2) const
R2 dynamic_movedim (Size old_dim, Size new_dim) const
R2 intmd_movedim (Size old_dim, Size new_dim) const
neml2::Tensor base_movedim (Size old_dim, Size new_dim) const
R2 batch_movedim (Size old_dim, Size new_dim) const
R2 dynamic_flatten (Size start_dim=0, Size end_dim=-1) const
R2 intmd_flatten (Size start_dim=0, Size end_dim=-1) const
neml2::Tensor base_flatten (Size start_dim=0, Size end_dim=-1) const
R2 batch_flatten () const
 Flatten batch dimensions.
neml2::Tensor static_flatten () const
 Flatten static dimensions.

Static Public Member Functions

static OptionSet expected_options ()
Static Public Member Functions inherited from UserTensorBase< R2 >
static OptionSet expected_options ()
Static Public Member Functions inherited from NEML2Object
static OptionSet expected_options ()
Static Public Member Functions inherited from R2
static R2 fill (const CScalar &a, const TensorOptions &options=default_tensor_options())
 Fill the diagonals with a11 = a22 = a33 = a.
static R2 fill (const Scalar &a)
static R2 fill (const CScalar &a11, const CScalar &a22, const CScalar &a33, const TensorOptions &options=default_tensor_options())
 Fill the diagonals with a11, a22, a33.
static R2 fill (const Scalar &a11, const Scalar &a22, const Scalar &a33)
static R2 fill (const CScalar &a11, const CScalar &a22, const CScalar &a33, const CScalar &a23, const CScalar &a13, const CScalar &a12, const TensorOptions &options=default_tensor_options())
 Fill symmetric entries.
static R2 fill (const Scalar &a11, const Scalar &a22, const Scalar &a33, const Scalar &a23, const Scalar &a13, const Scalar &a12)
static R2 skew (const Vec &v)
 Skew matrix from Vec.
static R2 identity (const TensorOptions &options=default_tensor_options())
 Identity.
Static Public Member Functions inherited from PrimitiveTensor< R2, 3, 3 >
static R2 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 R2 einsum (c10::string_view equation, TensorList tensors)
 Einstein summation along base dimensions.
static R2 empty (const TensorOptions &options=default_tensor_options())
static R2 zeros (const TensorOptions &options=default_tensor_options())
static R2 ones (const TensorOptions &options=default_tensor_options())
static R2 full (const CScalar &init, const TensorOptions &options=default_tensor_options())
static R2 rand (const TensorOptions &options=default_tensor_options())
static R2 fill (Args &&... args)
Static Public Member Functions inherited from TensorBase< R2 >
static R2 empty_like (const R2 &other)
static R2 zeros_like (const R2 &other)
 Zero tensor like another, i.e. same batch and base shapes, same tensor options, etc.
static R2 ones_like (const R2 &other)
 Unit tensor like another, i.e. same batch and base shapes, same tensor options, etc.
static R2 full_like (const R2 &other, const CScalar &init)
static R2 rand_like (const R2 &other)

Protected Member Functions

R2 make () const override
 Create the tensor given input options.
Protected Member Functions inherited from PrimitiveTensor< R2, 3, 3 >
void validate_shapes_and_dims () const
 Validate shapes and dimensions.
Protected Member Functions inherited from TensorBase< R2 >
void validate_shapes_and_dims () const
 Validate shapes and dimensions.

Additional Inherited Members

Public Types inherited from PrimitiveTensor< R2, 3, 3 >
using base_sizes_sequence
 Base shape sequence.
Static Public Attributes inherited from PrimitiveTensor< R2, 3, 3 >
static const TensorShape const_base_sizes
 The base shape.
static constexpr Size const_base_dim
 The base dim.
static constexpr Size const_base_numel
 The base numel.
Static Protected Member Functions inherited from UserTensorBase< R2 >
static std::string tensor_type ()
 A human-readable description of the tensor type.

Constructor & Destructor Documentation

◆ FillR2()

FillR2 ( const OptionSet & options)

Member Function Documentation

◆ expected_options()

OptionSet expected_options ( )
static

◆ make()

R2 make ( ) const
overrideprotectedvirtual

Create the tensor given input options.

Implements UserTensorBase< R2 >.