Mechanics of Defect Evolution Library
Loading...
Searching...
No Matches
model::PeriodicLatticeInterpolant< dim > Struct Template Reference

#include <PeriodicLatticeInterpolant.h>

Collaboration diagram for model::PeriodicLatticeInterpolant< dim >:

Public Types

typedef Eigen::Matrix< double, dim, 1 > VectorDim
typedef Eigen::Matrix< size_t, dim, 1 > VectorDimI
typedef Eigen::Matrix< double, dim, dim > MatrixDim
typedef Eigen::Matrix< double, dim, 1 > VectorDim
typedef Eigen::Matrix< size_t, dim, 1 > VectorDimI
typedef Eigen::Matrix< double, dim, dim > MatrixDim

Public Member Functions

Eigen::MatrixXd getSinCosCoeffs (const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > &f) const
std::pair< double, double > sinKXcosKX (const int &r, const VectorDim &x) const
 PeriodicLatticeInterpolant (const MatrixDim &A_in, const Eigen::Matrix< double, Eigen::Dynamic, dim > &waveVectors_in, const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > &f, const int &rotSymm, const std::vector< Eigen::Matrix< double, dim, 1 > > &N)
double operator() (const VectorDim &x) const
Eigen::MatrixXd getSinCosCoeffs (const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > &f) const
std::pair< double, double > sinKXcosKX (const int &r, const VectorDim &x) const
 PeriodicLatticeInterpolant (const MatrixDim &A_in, const Eigen::Matrix< double, Eigen::Dynamic, dim > &waveVectors_in, const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > &f, const int &rotSymm, const std::vector< Eigen::Matrix< double, dim, 1 > > &N)
double operator() (const VectorDim &x) const

Static Public Member Functions

static std::vector< MatrixDim > getSymMatrices (const int &rotSymm, const std::vector< Eigen::Matrix< double, dim, 1 > > &mirSymm)
static std::vector< MatrixDim > getSymMatrices (const int &rotSymm, const std::vector< Eigen::Matrix< double, dim, 1 > > &mirSymm)

Public Attributes

const MatrixDim A
const MatrixDim B
const Eigen::Matrix< double, Eigen::Dynamic, dim > waveVectors
const std::vector< MatrixDim > symMatrices
const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > points
const Eigen::Matrix< double, Eigen::Dynamic, 2 > sinCosCoeffs

Detailed Description

template<int dim>
struct model::PeriodicLatticeInterpolant< dim >

Definition at line 21 of file Lattices/PeriodicLatticeInterpolant.h.

Member Typedef Documentation

◆ MatrixDim [1/2]

template<int dim>
typedef Eigen::Matrix<double,dim,dim> model::PeriodicLatticeInterpolant< dim >::MatrixDim

Definition at line 26 of file Lattices/PeriodicLatticeInterpolant.h.

◆ MatrixDim [2/2]

template<int dim>
typedef Eigen::Matrix<double,dim,dim> model::PeriodicLatticeInterpolant< dim >::MatrixDim

Definition at line 26 of file Lattices_NEW/PeriodicLatticeInterpolant.h.

◆ VectorDim [1/2]

template<int dim>
typedef Eigen::Matrix<double,dim,1> model::PeriodicLatticeInterpolant< dim >::VectorDim

Definition at line 24 of file Lattices/PeriodicLatticeInterpolant.h.

◆ VectorDim [2/2]

template<int dim>
typedef Eigen::Matrix<double,dim,1> model::PeriodicLatticeInterpolant< dim >::VectorDim

Definition at line 24 of file Lattices_NEW/PeriodicLatticeInterpolant.h.

◆ VectorDimI [1/2]

template<int dim>
typedef Eigen::Matrix<size_t,dim,1> model::PeriodicLatticeInterpolant< dim >::VectorDimI

Definition at line 25 of file Lattices/PeriodicLatticeInterpolant.h.

◆ VectorDimI [2/2]

template<int dim>
typedef Eigen::Matrix<size_t,dim,1> model::PeriodicLatticeInterpolant< dim >::VectorDimI

Definition at line 25 of file Lattices_NEW/PeriodicLatticeInterpolant.h.

Constructor & Destructor Documentation

◆ PeriodicLatticeInterpolant() [1/2]

template<int dim>
model::PeriodicLatticeInterpolant< dim >::PeriodicLatticeInterpolant ( const MatrixDim & A_in,
const Eigen::Matrix< double, Eigen::Dynamic, dim > & waveVectors_in,
const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > & f,
const int & rotSymm,
const std::vector< Eigen::Matrix< double, dim, 1 > > & N )
Parameters
[in]A_inthe lattice matrix with lattice basis in column
[in]

Definition at line 140 of file Lattices/PeriodicLatticeInterpolant.cpp.

◆ PeriodicLatticeInterpolant() [2/2]

template<int dim>
model::PeriodicLatticeInterpolant< dim >::PeriodicLatticeInterpolant ( const MatrixDim & A_in,
const Eigen::Matrix< double, Eigen::Dynamic, dim > & waveVectors_in,
const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > & f,
const int & rotSymm,
const std::vector< Eigen::Matrix< double, dim, 1 > > & N )

Member Function Documentation

◆ getSinCosCoeffs() [1/2]

template<int dim>
Eigen::MatrixXd model::PeriodicLatticeInterpolant< dim >::getSinCosCoeffs ( const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > & f) const
Parameters
[in]fMatrix of function values in each row. Each row has dim+1 entries with format x1,x2,... f(x1,x2,...)
[in]dfMatrix of function derivatives values in each row. Each row has 2*dim+1 entries with format x1,x2,...d1,d2,... dot(grad(f(x1,x2,...)),d)

Definition at line 52 of file Lattices/PeriodicLatticeInterpolant.cpp.

◆ getSinCosCoeffs() [2/2]

template<int dim>
Eigen::MatrixXd model::PeriodicLatticeInterpolant< dim >::getSinCosCoeffs ( const Eigen::Matrix< double, Eigen::Dynamic, dim+1 > & f) const

◆ getSymMatrices() [1/2]

template<int dim>
std::vector< typename PeriodicLatticeInterpolant< dim >::MatrixDim > model::PeriodicLatticeInterpolant< dim >::getSymMatrices ( const int & rotSymm,
const std::vector< Eigen::Matrix< double, dim, 1 > > & mirSymm )
static

Definition at line 22 of file Lattices/PeriodicLatticeInterpolant.cpp.

◆ getSymMatrices() [2/2]

template<int dim>
std::vector< MatrixDim > model::PeriodicLatticeInterpolant< dim >::getSymMatrices ( const int & rotSymm,
const std::vector< Eigen::Matrix< double, dim, 1 > > & mirSymm )
static

◆ operator()() [1/2]

template<int dim>
double model::PeriodicLatticeInterpolant< dim >::operator() ( const VectorDim & x) const

Definition at line 158 of file Lattices/PeriodicLatticeInterpolant.cpp.

◆ operator()() [2/2]

template<int dim>
double model::PeriodicLatticeInterpolant< dim >::operator() ( const VectorDim & x) const

◆ sinKXcosKX() [1/2]

template<int dim>
std::pair< double, double > model::PeriodicLatticeInterpolant< dim >::sinKXcosKX ( const int & r,
const VectorDim & x ) const

Definition at line 126 of file Lattices/PeriodicLatticeInterpolant.cpp.

◆ sinKXcosKX() [2/2]

template<int dim>
std::pair< double, double > model::PeriodicLatticeInterpolant< dim >::sinKXcosKX ( const int & r,
const VectorDim & x ) const

Member Data Documentation

◆ A

template<int dim>
const MatrixDim model::PeriodicLatticeInterpolant< dim >::A

Definition at line 28 of file Lattices/PeriodicLatticeInterpolant.h.

◆ B

template<int dim>
const MatrixDim model::PeriodicLatticeInterpolant< dim >::B

Definition at line 29 of file Lattices/PeriodicLatticeInterpolant.h.

◆ points

template<int dim>
const Eigen::Matrix<double, Eigen::Dynamic, dim + 1> model::PeriodicLatticeInterpolant< dim >::points

Definition at line 32 of file Lattices/PeriodicLatticeInterpolant.h.

◆ sinCosCoeffs

template<int dim>
const Eigen::Matrix< double, Eigen::Dynamic, 2 > model::PeriodicLatticeInterpolant< dim >::sinCosCoeffs

Definition at line 33 of file Lattices/PeriodicLatticeInterpolant.h.

◆ symMatrices

template<int dim>
const std::vector< MatrixDim > model::PeriodicLatticeInterpolant< dim >::symMatrices

Definition at line 31 of file Lattices/PeriodicLatticeInterpolant.h.

◆ waveVectors

template<int dim>
const Eigen::Matrix< double, Eigen::Dynamic, dim > model::PeriodicLatticeInterpolant< dim >::waveVectors

Definition at line 30 of file Lattices/PeriodicLatticeInterpolant.h.


The documentation for this struct was generated from the following files: