NEML2 2.0.0
|
Specialized crystal geometry for cubic crystals. More...
Specialized crystal geometry for cubic crystals.
#include <CubicCrystal.h>
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 | |
Size | nslip () const |
Total number of slip systems. | |
Size | nslip_groups () const |
Number of slip groups. | |
Size | nslip_in_group (Size i) const |
Number of slip systems in a given group. | |
const Vec & | cartesian_slip_directions () const |
Accessor for the slip directions. | |
const Vec & | cartesian_slip_planes () const |
Accessor for the slip planes. | |
const Scalar & | burgers () const |
Accessor for the burgers vector. | |
const R2 & | A () const |
Accessor for the full Schmid tensors. | |
const SR2 & | M () const |
Accessor for the symmetric Schmid tensors. | |
const WR2 & | W () const |
Accessor for the skew-symmetric Schmid tensors. | |
const R2 & | symmetry_operators () const |
Accessor for the crystal class symmetry operators. | |
template<class Derived , typename = typename std::enable_if_t<std::is_base_of_v<TensorBase<Derived>, Derived>>> | |
Derived | slip_slice (const Derived &tensor, Size grp) const |
Slice a Tensor 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 ()=delete | |
NEML2Object (NEML2Object &&)=delete | |
NEML2Object (const NEML2Object &)=delete | |
NEML2Object & | operator= (const NEML2Object &)=delete |
NEML2Object & | operator= (NEML2Object &&)=delete |
virtual | ~NEML2Object ()=default |
NEML2Object (const OptionSet &options) | |
Construct a new NEML2Object object. | |
const OptionSet & | input_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 (OptionSet options, NEML2Object *object) | |
BufferStore (const BufferStore &)=delete | |
BufferStore (BufferStore &&)=delete | |
BufferStore & | operator= (const BufferStore &)=delete |
BufferStore & | operator= (BufferStore &&)=delete |
virtual | ~BufferStore ()=default |
const Storage< std::string, TensorValueBase > & | named_buffers () const |
Storage< std::string, TensorValueBase > & | named_buffers () |
TensorValueBase & | get_buffer (const std::string &name) |
}@ | |
const TensorValueBase & | get_buffer (const std::string &name) const |
Get a read-only reference of a buffer. | |
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<TensorBase<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<TensorBase<T>, T>>> | |
const T & | declare_buffer (const std::string &name, const CrossRef< T > &crossref) |
Declare a buffer. | |
template<typename T , typename = typename std::enable_if_t<std::is_base_of_v<TensorBase<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. | |
CubicCrystal | ( | const OptionSet & | options | ) |
Setup from parameter set.
|
static |
Input options.