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

Specialized crystal geometry for cubic crystals. More...

Detailed Description

Specialized crystal geometry for cubic crystals.

#include <CubicCrystal.h>

Inheritance diagram for CubicCrystal:

Public Member Functions

 CubicCrystal (const OptionSet &options)
 Setup from parameter set.
 
- Public Member Functions inherited from CrystalGeometry
 CrystalGeometry (const OptionSet &options)
 Setup from parameter set.
 
 CrystalGeometry (const OptionSet &options, const R2 &cclass, const Vec &lattice_vectors)
 Alternate constructor not relying on options.
 
Vec a1 () const
 accessor for the first lattice vector
 
Vec a2 () const
 accessor for the second lattice vector
 
Vec a3 () const
 accessor for the third lattice vector
 
Vec b1 () const
 accessor for the first reciprocal lattice vector
 
Vec b2 () const
 accessor for the second reciprocal lattice vector
 
Vec b3 () const
 accessor for the third reciprocal lattice vector
 
TorchSize nslip () const
 Total number of slip systems.
 
TorchSize nslip_groups () const
 Number of slip groups.
 
TorchSize nslip_in_group (TorchSize i) const
 Number of slip systems in a given group.
 
const Veccartesian_slip_directions () const
 Accessor for the slip directions.
 
const Veccartesian_slip_planes () const
 Accessor for the slip planes.
 
const Scalarburgers () const
 Accessor for the burgers vector.
 
const R2A () const
 Accessor for the full Schmid tensors.
 
const SR2M () const
 Accessor for the symmetric Schmid tensors.
 
const WR2W () const
 Accessor for the skew-symmetric Schmid tensors.
 
const R2symmetry_operators () const
 Accessor for the crystal class symmetry operators.
 
template<class Derived , typename = typename std::enable_if_t<std::is_base_of_v<BatchTensorBase<Derived>, Derived>>>
Derived slip_slice (const Derived &tensor, TorchSize grp) const
 Slice a BatchTensor to provide only the batch associated with a slip system.
 
- Public Member Functions inherited from Data
 Data (const OptionSet &options)
 Construct a new Data object.
 
const std::vector< Data * > & registered_data () const
 All the registered data objects.
 
- Public Member Functions inherited from NEML2Object
 NEML2Object (const OptionSet &options)
 Construct a new NEML2Object object.
 
virtual ~NEML2Object ()=default
 
const OptionSetinput_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.
 
- Public Member Functions inherited from BufferStore
 BufferStore (const OptionSet &options, NEML2Object *object)
 
const Storage< std::string, TensorValueBase > & named_buffers () const
 
Storage< std::string, TensorValueBase > & named_buffers ()
 
template<typename T , typename = typename std::enable_if_t<std::is_base_of_v<BatchTensorBase<T>, T>>>
T & get_buffer (const std::string &name)
 }@
 

Static Public Member Functions

static OptionSet expected_options ()
 Input options.
 
- Static Public Member Functions inherited from CrystalGeometry
static OptionSet expected_options ()
 Input options.
 
- Static Public Member Functions inherited from Data
static OptionSet expected_options ()
 
- Static Public Member Functions inherited from NEML2Object
static OptionSet expected_options ()
 

Additional Inherited Members

- Protected Member Functions inherited from Data
template<typename T , typename = typename std::enable_if_t<std::is_base_of_v<Data, T>>>
T & register_data (const std::string &name)
 
- Protected Member Functions inherited from BufferStore
virtual void send_buffers_to (const torch::TensorOptions &options)
 Send all buffers to options.
 
template<typename T , typename = typename std::enable_if_t<std::is_base_of_v<BatchTensorBase<T>, T>>>
const T & declare_buffer (const std::string &name, const T &rawval)
 Declare a buffer.
 
template<typename T , typename = typename std::enable_if_t<std::is_base_of_v<BatchTensorBase<T>, T>>>
const T & declare_buffer (const std::string &name, const std::string &input_option_name)
 Declare a buffer.
 
- Protected Attributes inherited from Data
std::vector< Data * > _registered_data
 Registered Data objects.
 

Constructor & Destructor Documentation

◆ CubicCrystal()

Setup from parameter set.

Member Function Documentation

◆ expected_options()

OptionSet expected_options ( )
static

Input options.