1#ifndef XPED_UNIT_CELL_H_
2#define XPED_UNIT_CELL_H_
7#include "yas/serialize.hpp"
8#include "yas/std_types.hpp"
22 explicit UnitCell(
const std::size_t
Lx = 1,
const std::size_t
Ly = 1);
29 template <
typename Ar>
32 ar& YAS_OBJECT_NVP(
"UnitCell", (
"Lx",
Lx), (
"Ly",
Ly), (
"pattern",
pattern));
35 void loadFromMatlab(
const std::filesystem::path& p,
const std::string& root_name);
38 inline std::size_t
size()
const {
return Lx *
Ly; }
40 inline std::size_t
rows()
const {
return Lx; }
41 inline std::size_t
cols()
const {
return Ly; }
46#ifndef XPED_COMPILED_LIB
Definition: Pattern.hpp:18
std::size_t uniqueSize() const
Definition: Pattern.hpp:43
Definition: UnitCell.hpp:15
Pattern pattern
Definition: UnitCell.hpp:27
std::size_t Ly
Definition: UnitCell.hpp:25
std::size_t cols() const
Definition: UnitCell.hpp:41
std::size_t size() const
Definition: UnitCell.hpp:38
std::size_t rows() const
Definition: UnitCell.hpp:40
std::size_t Lx
Definition: UnitCell.hpp:24
UnitCell(const Pattern &pat)
Definition: UnitCell.hpp:16
std::size_t uniqueSize() const
Definition: UnitCell.hpp:37
void serialize(Ar &ar)
Definition: UnitCell.hpp:30
void loadFromMatlab(const std::filesystem::path &p, const std::string &root_name)
Definition: UnitCell.cpp:26