70 if (geometry.
wellCount != 9) { errorMessage =
"wrong lattice well count";
return false; }
71 if (!close(geometry.
spacing, 2.56, 1.0e-6)) { errorMessage =
"wrong lattice spacing";
return false; }
72 if (!close(geometry.
wellWidth, 1.28, 1.0e-6)) { errorMessage =
"wrong well width";
return false; }
73 if (!close(geometry.
wellDepth, 1.0, 1.0e-9)) { errorMessage =
"wrong well depth";
return false; }
74 if (!close(geometry.
forceX, -0.08, 1.0e-7)) { errorMessage =
"wrong force sign/magnitude";
return false; }
77 const double expected = 2.0 * 3.14159265358979323846 / (0.08 * 2.56);
78 if (!close(period, expected, 1.0e-5)) { errorMessage =
"wrong Bloch period";
return false; }
81 if (!close(edge, 3.14159265358979323846 / 2.56, 1.0e-6)) { errorMessage =
"wrong Brillouin-zone edge";
return false; }
83 const double p0 = 0.0;
87 edge, 1.0e-6)) { errorMessage =
"reduced momentum does not reach zone edge at half period";
return false; }