24 #ifndef COM_DAFER45_TBTK_UNIT_CELL
25 #define COM_DAFER45_TBTK_UNIT_CELL
27 #include "TBTK/StateSet.h"
31 class UnitCell :
public StateSet{
34 UnitCell(std::initializer_list<std::initializer_list<double>> latticeVectors,
bool isOwner =
true);
37 UnitCell(
const std::vector<std::vector<double>> &latticeVectors,
bool isOwner =
true);
43 int getNumLatticeVectors()
const;
46 const std::vector<double>& getLatticeVector(
int n)
const;
49 const std::vector<std::vector<double>>& getLatticeVectors()
const;
52 std::vector<std::vector<double>> latticeVectors;
55 inline int UnitCell::getNumLatticeVectors()
const{
56 return latticeVectors.size();
59 inline const std::vector<double>& UnitCell::getLatticeVector(
int n)
const{
60 return latticeVectors.at(n);
63 inline const std::vector<std::vector<double>>& UnitCell::getLatticeVectors()
const{
64 return latticeVectors;