PSCF v1.3
WaveList.cu
1/*
2* PSCF - Polymer Self-Consistent Field
3*
4* Copyright 2015 - 2025, The Regents of the University of Minnesota
5* Distributed under the terms of the GNU General Public License.
6*/
7
8#include "WaveList.tpp"
9
10namespace Pscf {
11namespace Prdc {
12namespace Cuda {
13
14 using namespace Util;
15
16 #if 0
17 // Explicit specializations
18 template <>
20 { return false; }
21
22 template <>
24 {
25 UTIL_CHECK(unitCell().lattice() != UnitCell<2>::Null);
26 if ((unitCell().lattice() == UnitCell<2>::Oblique) ||
27 (unitCell().lattice() == UnitCell<2>::Rhombic)) {
28 return true;
29 } else {
30 return false;
31 }
32 }
33
34 template <>
36 {
37 UTIL_CHECK(unitCell().lattice() != UnitCell<3>::Null);
38 if ((unitCell().lattice() == UnitCell<3>::Monoclinic) ||
39 (unitCell().lattice() == UnitCell<3>::Triclinic) ||
40 (unitCell().lattice() == UnitCell<3>::Rhombohedral)) {
41 return true;
42 } else {
43 return false;
44 }
45 }
46 #endif
47
48 template class WaveList<1>;
49 template class WaveList<2>;
50 template class WaveList<3>;
51
52} // Cuda
53} // Prdc
54} // Pscf
Class to calculate and store properties of wavevectors.
Base template for UnitCell<D> classes, D=1, 2 or 3.
Definition UnitCell.h:56
#define UTIL_CHECK(condition)
Assertion macro suitable for serial or parallel production code.
Definition global.h:68
Fields, FFTs, and utilities for periodic boundary conditions (CUDA)
Definition Reduce.cpp:14
Periodic fields and crystallography.
Definition CField.cpp:11
PSCF package top-level namespace.
Definition param_pc.dox:1