mirror of https://github.com/phonopy/phono3py.git
Update tests for relocate_BZ_grid_address to compare traditional and GR grids
This commit is contained in:
parent
724427f255
commit
f7dae80299
|
@ -698,183 +698,130 @@ TEST(test_gridsys, test_gridsys_get_bz_grid_addresses_FCC) {
|
|||
}
|
||||
|
||||
/**
|
||||
* @brief gridsys_get_bz_grid_addresses by wurtzite (angle 120)
|
||||
* @details Niggli reduction changes (swaps) basis vectors.
|
||||
* @brief gridsys_get_bz_grid_addresses by wurtzite
|
||||
* Return BZ grid addresses
|
||||
*/
|
||||
TEST(test_gridsys, test_gridsys_get_bz_grid_addresses_wurtzite1) {
|
||||
long ref_bz_addresses[155][3] = {
|
||||
{0, 0, 0}, {0, 1, 0}, {0, 2, 0}, {0, -2, 0},
|
||||
{0, -1, 0}, {0, 0, 1}, {0, 1, 1}, {0, 2, 1},
|
||||
{0, -3, 1}, {0, -2, 1}, {0, -1, 1}, {-4, 0, -18},
|
||||
{0, 0, 2}, {-4, 1, -18}, {0, 1, 2}, {1, 1, 2},
|
||||
{5, 1, 22}, {-4, -3, -18}, {0, -3, 2}, {1, 2, 2},
|
||||
{5, 2, 22}, {-4, -2, -18}, {0, -2, 2}, {-4, -1, -18},
|
||||
{0, -1, 2}, {1, 0, 3}, {1, 1, 3}, {1, 2, 3},
|
||||
{1, 3, 3}, {-4, -2, -17}, {1, -1, 3}, {-4, -1, -17},
|
||||
{1, 0, 4}, {1, 1, 4}, {1, 2, 4}, {1, -2, 4},
|
||||
{1, 3, 4}, {1, -1, 4}, {1, 0, 5}, {1, 1, 5},
|
||||
{1, 2, 5}, {1, -2, 5}, {1, -1, 5}, {-3, 0, -14},
|
||||
{1, 0, 6}, {-3, 1, -14}, {1, 1, 6}, {-3, 2, -14},
|
||||
{1, 2, 6}, {-3, -3, -14}, {1, -3, 6}, {-3, -2, -14},
|
||||
{1, -2, 6}, {-3, -1, -14}, {1, -1, 6}, {-3, 0, -13},
|
||||
{-3, 1, -13}, {2, 1, 7}, {-3, -3, -13}, {2, 2, 7},
|
||||
{-3, -2, -13}, {-3, -1, -13}, {2, 0, 8}, {2, 1, 8},
|
||||
{2, 2, 8}, {2, 3, 8}, {-3, -2, -12}, {2, -1, 8},
|
||||
{-3, -1, -12}, {2, 0, 9}, {2, 1, 9}, {2, 2, 9},
|
||||
{2, -2, 9}, {2, 3, 9}, {2, -1, 9}, {-2, 0, -10},
|
||||
{2, 0, 10}, {-2, 1, -10}, {2, 1, 10}, {-2, 2, -10},
|
||||
{2, 2, 10}, {-2, -2, -10}, {2, -2, 10}, {-2, -1, -10},
|
||||
{2, -1, 10}, {-2, 0, -9}, {-2, 1, -9}, {-2, 2, -9},
|
||||
{-2, -3, -9}, {-2, -2, -9}, {-2, -1, -9}, {-2, 0, -8},
|
||||
{-2, 1, -8}, {3, 1, 12}, {-2, -3, -8}, {3, 2, 12},
|
||||
{-2, -2, -8}, {-2, -1, -8}, {3, 0, 13}, {3, 1, 13},
|
||||
{3, 2, 13}, {3, 3, 13}, {-2, -2, -7}, {3, -1, 13},
|
||||
{-2, -1, -7}, {-1, 0, -6}, {3, 0, 14}, {-1, 1, -6},
|
||||
{3, 1, 14}, {-1, 2, -6}, {3, 2, 14}, {-1, -2, -6},
|
||||
{3, -2, 14}, {-1, 3, -6}, {3, 3, 14}, {-1, -1, -6},
|
||||
{3, -1, 14}, {-1, 0, -5}, {-1, 1, -5}, {-1, 2, -5},
|
||||
{-1, -2, -5}, {-1, -1, -5}, {-1, 0, -4}, {-1, 1, -4},
|
||||
{-1, 2, -4}, {-1, -3, -4}, {-1, -2, -4}, {-1, -1, -4},
|
||||
{-1, 0, -3}, {-1, 1, -3}, {4, 1, 17}, {-1, -3, -3},
|
||||
{4, 2, 17}, {-1, -2, -3}, {-1, -1, -3}, {0, 0, -2},
|
||||
{4, 0, 18}, {0, 1, -2}, {4, 1, 18}, {0, 2, -2},
|
||||
{4, 2, 18}, {0, 3, -2}, {4, 3, 18}, {-5, -2, -22},
|
||||
{-1, -2, -2}, {0, -1, -2}, {4, -1, 18}, {-5, -1, -22},
|
||||
{-1, -1, -2}, {0, 0, -1}, {0, 1, -1}, {0, 2, -1},
|
||||
{0, -2, -1}, {0, 3, -1}, {0, -1, -1}};
|
||||
long ref_bz_map[101] = {
|
||||
0, 1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 13, 17,
|
||||
21, 23, 25, 26, 27, 28, 30, 32, 33, 34, 35, 37, 38,
|
||||
39, 40, 41, 42, 43, 45, 47, 51, 53, 55, 56, 58, 60,
|
||||
61, 62, 63, 64, 65, 67, 69, 70, 71, 72, 74, 75, 77,
|
||||
79, 81, 83, 85, 86, 87, 89, 90, 91, 92, 94, 96, 97,
|
||||
98, 99, 100, 101, 103, 105, 107, 109, 111, 115, 117, 118, 119,
|
||||
120, 121, 122, 123, 124, 126, 127, 128, 129, 131, 133, 134, 135,
|
||||
137, 139, 141, 145, 149, 150, 151, 152, 154, 155};
|
||||
long ref_bzg2grg[155] = {
|
||||
0, 1, 2, 3, 4, 5, 6, 7, 7, 8, 9, 10, 10, 11, 11, 11, 11, 12,
|
||||
12, 12, 12, 13, 13, 14, 14, 15, 16, 17, 18, 18, 19, 19, 20, 21, 22, 23,
|
||||
23, 24, 25, 26, 27, 28, 29, 30, 30, 31, 31, 32, 32, 32, 32, 33, 33, 34,
|
||||
34, 35, 36, 36, 37, 37, 38, 39, 40, 41, 42, 43, 43, 44, 44, 45, 46, 47,
|
||||
48, 48, 49, 50, 50, 51, 51, 52, 52, 53, 53, 54, 54, 55, 56, 57, 57, 58,
|
||||
59, 60, 61, 61, 62, 62, 63, 64, 65, 66, 67, 68, 68, 69, 69, 70, 70, 71,
|
||||
71, 72, 72, 73, 73, 73, 73, 74, 74, 75, 76, 77, 78, 79, 80, 81, 82, 82,
|
||||
83, 84, 85, 86, 86, 87, 87, 88, 89, 90, 90, 91, 91, 92, 92, 93, 93, 93,
|
||||
93, 94, 94, 94, 94, 95, 96, 97, 98, 98, 99};
|
||||
double rec_lattice[3][3] = {
|
||||
{3.111, -1.5555, 0}, {0, 2.694205031173388, 0}, {0, 0, 4.978}};
|
||||
long PS[3] = {0, 0, 0};
|
||||
long D_diag[3] = {1, 5, 20}; // [5, 5, 4]
|
||||
long Q[3][3] = {{-1, 0, 4}, {0, -1, 0}, {-1, 0, 5}};
|
||||
long bz_grid_addresses[180][3];
|
||||
long bz_map[101];
|
||||
long bzg2grg[180];
|
||||
long bz_size, i, j;
|
||||
|
||||
bz_size = gridsys_get_bz_grid_addresses(bz_grid_addresses, bz_map, bzg2grg,
|
||||
D_diag, Q, PS, rec_lattice, 2);
|
||||
ASSERT_EQ(155, bz_size);
|
||||
for (i = 0; i < 155; i++) {
|
||||
for (j = 0; j < 3; j++) {
|
||||
ASSERT_EQ(ref_bz_addresses[i][j], bz_grid_addresses[i][j]);
|
||||
}
|
||||
}
|
||||
for (i = 0; i < 101; i++) {
|
||||
ASSERT_EQ(ref_bz_map[i], bz_map[i]);
|
||||
}
|
||||
for (i = 0; i < 155; i++) {
|
||||
ASSERT_EQ(ref_bzg2grg[i], bzg2grg[i]);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* @brief gridsys_get_bz_grid_addresses by wurtzite (angle 60)
|
||||
* @details Niggli reduction doesn't change (swap) basis vectors.
|
||||
* Return BZ grid addresses
|
||||
*/
|
||||
TEST(test_gridsys, test_gridsys_get_bz_grid_addresses_wurtzite2) {
|
||||
long ref_bz_addresses[155][3] = {
|
||||
{0, 0, 0}, {0, 1, 0}, {0, 2, 0}, {0, -2, 0},
|
||||
{0, -1, 0}, {0, 0, 1}, {0, 1, 1}, {0, 2, 1},
|
||||
{0, -2, 1}, {0, 3, 1}, {0, -1, 1}, {-4, 0, -18},
|
||||
{0, 0, 2}, {-4, 1, -18}, {0, 1, 2}, {-4, 2, -18},
|
||||
{0, 2, 2}, {-4, 3, -18}, {1, -2, 2}, {0, 3, 2},
|
||||
{5, -2, 22}, {-4, -1, -18}, {1, -1, 2}, {0, -1, 2},
|
||||
{5, -1, 22}, {1, 0, 3}, {1, 1, 3}, {-4, 1, -17},
|
||||
{1, -3, 3}, {-4, 2, -17}, {1, -2, 3}, {1, -1, 3},
|
||||
{1, 0, 4}, {1, 1, 4}, {1, 2, 4}, {1, -3, 4},
|
||||
{1, -2, 4}, {1, -1, 4}, {1, 0, 5}, {1, 1, 5},
|
||||
{1, 2, 5}, {1, -2, 5}, {1, -1, 5}, {-3, 0, -14},
|
||||
{1, 0, 6}, {-3, 1, -14}, {1, 1, 6}, {-3, 2, -14},
|
||||
{1, 2, 6}, {-3, -2, -14}, {-3, 3, -14}, {1, -2, 6},
|
||||
{1, 3, 6}, {-3, -1, -14}, {1, -1, 6}, {-3, 0, -13},
|
||||
{-3, 1, -13}, {-3, 2, -13}, {-3, 3, -13}, {2, -2, 7},
|
||||
{-3, -1, -13}, {2, -1, 7}, {2, 0, 8}, {2, 1, 8},
|
||||
{-3, 1, -12}, {2, -3, 8}, {-3, 2, -12}, {2, -2, 8},
|
||||
{2, -1, 8}, {2, 0, 9}, {2, 1, 9}, {2, 2, 9},
|
||||
{2, -3, 9}, {2, -2, 9}, {2, -1, 9}, {-2, 0, -10},
|
||||
{2, 0, 10}, {-2, 1, -10}, {2, 1, 10}, {-2, 2, -10},
|
||||
{2, 2, 10}, {-2, -2, -10}, {2, -2, 10}, {-2, -1, -10},
|
||||
{2, -1, 10}, {-2, 0, -9}, {-2, 1, -9}, {-2, 2, -9},
|
||||
{-2, -2, -9}, {-2, 3, -9}, {-2, -1, -9}, {-2, 0, -8},
|
||||
{-2, 1, -8}, {-2, 2, -8}, {-2, 3, -8}, {3, -2, 12},
|
||||
{-2, -1, -8}, {3, -1, 12}, {3, 0, 13}, {3, 1, 13},
|
||||
{-2, 1, -7}, {3, -3, 13}, {-2, 2, -7}, {3, -2, 13},
|
||||
{3, -1, 13}, {-1, 0, -6}, {3, 0, 14}, {-1, 1, -6},
|
||||
{3, 1, 14}, {-1, 2, -6}, {-1, -3, -6}, {3, 2, 14},
|
||||
{3, -3, 14}, {-1, -2, -6}, {3, -2, 14}, {-1, -1, -6},
|
||||
{3, -1, 14}, {-1, 0, -5}, {-1, 1, -5}, {-1, 2, -5},
|
||||
{-1, -2, -5}, {-1, -1, -5}, {-1, 0, -4}, {-1, 1, -4},
|
||||
{-1, 2, -4}, {-1, -2, -4}, {-1, 3, -4}, {-1, -1, -4},
|
||||
{-1, 0, -3}, {-1, 1, -3}, {-1, 2, -3}, {-1, 3, -3},
|
||||
{4, -2, 17}, {-1, -1, -3}, {4, -1, 17}, {0, 0, -2},
|
||||
{4, 0, 18}, {0, 1, -2}, {-5, 1, -22}, {4, 1, 18},
|
||||
{-1, 1, -2}, {0, -3, -2}, {-5, 2, -22}, {4, -3, 18},
|
||||
{-1, 2, -2}, {0, -2, -2}, {4, -2, 18}, {0, -1, -2},
|
||||
{4, -1, 18}, {0, 0, -1}, {0, 1, -1}, {0, 2, -1},
|
||||
{0, -3, -1}, {0, -2, -1}, {0, -1, -1}};
|
||||
long ref_bz_map[101] = {
|
||||
0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13, 15,
|
||||
17, 21, 25, 26, 28, 30, 31, 32, 33, 34, 36, 37, 38,
|
||||
39, 40, 41, 42, 43, 45, 47, 49, 53, 55, 56, 57, 58,
|
||||
60, 62, 63, 65, 67, 68, 69, 70, 71, 73, 74, 75, 77,
|
||||
79, 81, 83, 85, 86, 87, 88, 90, 91, 92, 93, 94, 96,
|
||||
98, 99, 101, 103, 104, 105, 107, 109, 113, 115, 117, 118, 119,
|
||||
120, 121, 122, 123, 124, 125, 127, 128, 129, 130, 131, 133, 135,
|
||||
137, 141, 145, 147, 149, 150, 151, 153, 154, 155};
|
||||
long ref_bzg2grg[155] = {
|
||||
0, 1, 2, 3, 4, 5, 6, 7, 8, 8, 9, 10, 10, 11, 11, 12, 12, 13,
|
||||
13, 13, 13, 14, 14, 14, 14, 15, 16, 16, 17, 17, 18, 19, 20, 21, 22, 22,
|
||||
23, 24, 25, 26, 27, 28, 29, 30, 30, 31, 31, 32, 32, 33, 33, 33, 33, 34,
|
||||
34, 35, 36, 37, 38, 38, 39, 39, 40, 41, 41, 42, 42, 43, 44, 45, 46, 47,
|
||||
47, 48, 49, 50, 50, 51, 51, 52, 52, 53, 53, 54, 54, 55, 56, 57, 58, 58,
|
||||
59, 60, 61, 62, 63, 63, 64, 64, 65, 66, 66, 67, 67, 68, 69, 70, 70, 71,
|
||||
71, 72, 72, 72, 72, 73, 73, 74, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
|
||||
83, 84, 85, 86, 87, 88, 88, 89, 89, 90, 90, 91, 91, 91, 91, 92, 92, 92,
|
||||
92, 93, 93, 94, 94, 95, 96, 97, 97, 98, 99};
|
||||
TEST(test_gridsys, test_gridsys_get_bz_grid_addresses_wurtzite_553) {
|
||||
long ref_bz_addresses[93][3] = {
|
||||
{0, 0, 0}, {1, 0, 0}, {2, 0, 0}, {-2, 0, 0}, {-1, 0, 0},
|
||||
{0, 1, 0}, {1, 1, 0}, {2, 1, 0}, {-3, 1, 0}, {-2, 1, 0},
|
||||
{-1, 1, 0}, {0, 2, 0}, {1, 2, 0}, {1, -3, 0}, {2, -3, 0},
|
||||
{-3, 2, 0}, {-2, 2, 0}, {-1, 2, 0}, {0, -2, 0}, {1, -2, 0},
|
||||
{2, -2, 0}, {-2, 3, 0}, {3, -2, 0}, {-1, -2, 0}, {-1, 3, 0},
|
||||
{0, -1, 0}, {1, -1, 0}, {2, -1, 0}, {-2, -1, 0}, {3, -1, 0},
|
||||
{-1, -1, 0}, {0, 0, 1}, {1, 0, 1}, {2, 0, 1}, {-2, 0, 1},
|
||||
{-1, 0, 1}, {0, 1, 1}, {1, 1, 1}, {2, 1, 1}, {-3, 1, 1},
|
||||
{-2, 1, 1}, {-1, 1, 1}, {0, 2, 1}, {1, 2, 1}, {1, -3, 1},
|
||||
{2, -3, 1}, {-3, 2, 1}, {-2, 2, 1}, {-1, 2, 1}, {0, -2, 1},
|
||||
{1, -2, 1}, {2, -2, 1}, {-2, 3, 1}, {3, -2, 1}, {-1, -2, 1},
|
||||
{-1, 3, 1}, {0, -1, 1}, {1, -1, 1}, {2, -1, 1}, {-2, -1, 1},
|
||||
{3, -1, 1}, {-1, -1, 1}, {0, 0, -1}, {1, 0, -1}, {2, 0, -1},
|
||||
{-2, 0, -1}, {-1, 0, -1}, {0, 1, -1}, {1, 1, -1}, {2, 1, -1},
|
||||
{-3, 1, -1}, {-2, 1, -1}, {-1, 1, -1}, {0, 2, -1}, {1, 2, -1},
|
||||
{1, -3, -1}, {2, -3, -1}, {-3, 2, -1}, {-2, 2, -1}, {-1, 2, -1},
|
||||
{0, -2, -1}, {1, -2, -1}, {2, -2, -1}, {-2, 3, -1}, {3, -2, -1},
|
||||
{-1, -2, -1}, {-1, 3, -1}, {0, -1, -1}, {1, -1, -1}, {2, -1, -1},
|
||||
{-2, -1, -1}, {3, -1, -1}, {-1, -1, -1}};
|
||||
long ref_bz_map[76] = {0, 1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 14,
|
||||
16, 17, 18, 19, 20, 21, 23, 25, 26, 27, 28, 30, 31,
|
||||
32, 33, 34, 35, 36, 37, 38, 40, 41, 42, 43, 45, 47,
|
||||
48, 49, 50, 51, 52, 54, 56, 57, 58, 59, 61, 62, 63,
|
||||
64, 65, 66, 67, 68, 69, 71, 72, 73, 74, 76, 78, 79,
|
||||
80, 81, 82, 83, 85, 87, 88, 89, 90, 92, 93};
|
||||
long ref_bzg2grg[93] = {
|
||||
0, 1, 2, 3, 4, 5, 6, 7, 7, 8, 9, 10, 11, 11, 12, 12,
|
||||
13, 14, 15, 16, 17, 18, 18, 19, 19, 20, 21, 22, 23, 23, 24, 25,
|
||||
26, 27, 28, 29, 30, 31, 32, 32, 33, 34, 35, 36, 36, 37, 37, 38,
|
||||
39, 40, 41, 42, 43, 43, 44, 44, 45, 46, 47, 48, 48, 49, 50, 51,
|
||||
52, 53, 54, 55, 56, 57, 57, 58, 59, 60, 61, 61, 62, 62, 63, 64,
|
||||
65, 66, 67, 68, 68, 69, 69, 70, 71, 72, 73, 73, 74};
|
||||
double rec_lattice[3][3] = {{0.3214400514304082, 0.0, 0.0},
|
||||
{0.1855835002216734, 0.3711670004433468, 0.0},
|
||||
{0.0, 0.0, 0.20088388911209323}};
|
||||
long PS[3] = {0, 0, 0};
|
||||
long D_diag[3] = {1, 5, 20}; // [5, 5, 4]
|
||||
long Q[3][3] = {{-1, 0, 4}, {0, -1, 0}, {-1, 0, 5}};
|
||||
long bz_grid_addresses[180][3];
|
||||
long bz_map[101];
|
||||
long bzg2grg[180];
|
||||
long D_diag[3] = {5, 5, 3};
|
||||
long Q[3][3] = {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}};
|
||||
long bz_grid_addresses[144][3];
|
||||
long bz_map[76];
|
||||
long bzg2grg[144];
|
||||
long bz_size, i, j;
|
||||
|
||||
bz_size = gridsys_get_bz_grid_addresses(bz_grid_addresses, bz_map, bzg2grg,
|
||||
D_diag, Q, PS, rec_lattice, 2);
|
||||
ASSERT_EQ(155, bz_size);
|
||||
for (i = 0; i < 155; i++) {
|
||||
ASSERT_EQ(93, bz_size);
|
||||
for (i = 0; i < 93; i++) {
|
||||
for (j = 0; j < 3; j++) {
|
||||
ASSERT_EQ(ref_bz_addresses[i][j], bz_grid_addresses[i][j]);
|
||||
}
|
||||
}
|
||||
for (i = 0; i < 101; i++) {
|
||||
for (i = 0; i < 76; i++) {
|
||||
ASSERT_EQ(ref_bz_map[i], bz_map[i]);
|
||||
}
|
||||
for (i = 0; i < 155; i++) {
|
||||
for (i = 0; i < 93; i++) {
|
||||
ASSERT_EQ(ref_bzg2grg[i], bzg2grg[i]);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief gridsys_get_bz_grid_addresses by wurtzite in GR-grid
|
||||
*/
|
||||
TEST(test_gridsys, test_gridsys_get_bz_grid_addresses_wurtzite_grg) {
|
||||
long ref_bz_addresses[93][3] = {
|
||||
{0, 0, 0}, {0, 1, 0}, {0, 2, 0}, {0, -2, 0}, {0, -1, 0},
|
||||
{0, 0, 1}, {0, 1, 1}, {5, 1, -14}, {0, -3, 1}, {5, 2, -14},
|
||||
{0, -2, 1}, {0, -1, 1}, {-1, 0, 2}, {-1, 1, 2}, {-1, 2, 2},
|
||||
{-1, -2, 2}, {-1, 3, 2}, {-1, -1, 2}, {-1, 0, 3}, {-1, 1, 3},
|
||||
{-1, 2, 3}, {-1, -3, 3}, {-1, -2, 3}, {-1, -1, 3}, {4, 0, -11},
|
||||
{4, 1, -11}, {4, 2, -11}, {4, 3, -11}, {-1, -2, 4}, {4, -1, -11},
|
||||
{-1, -1, 4}, {-2, 0, 5}, {-2, 1, 5}, {-2, 2, 5}, {-2, -2, 5},
|
||||
{-2, -1, 5}, {-2, 0, 6}, {-2, 1, 6}, {3, 1, -9}, {-2, -3, 6},
|
||||
{3, 2, -9}, {-2, -2, 6}, {-2, -1, 6}, {3, 0, -8}, {3, 1, -8},
|
||||
{3, 2, -8}, {3, -2, -8}, {3, 3, -8}, {3, -1, -8}, {-3, 0, 8},
|
||||
{-3, 1, 8}, {-3, 2, 8}, {-3, -3, 8}, {-3, -2, 8}, {-3, -1, 8},
|
||||
{2, 0, -6}, {2, 1, -6}, {2, 2, -6}, {2, 3, -6}, {-3, -2, 9},
|
||||
{2, -1, -6}, {-3, -1, 9}, {2, 0, -5}, {2, 1, -5}, {2, 2, -5},
|
||||
{2, -2, -5}, {2, -1, -5}, {-4, 0, 11}, {-4, 1, 11}, {1, 1, -4},
|
||||
{-4, -3, 11}, {1, 2, -4}, {-4, -2, 11}, {-4, -1, 11}, {1, 0, -3},
|
||||
{1, 1, -3}, {1, 2, -3}, {1, -2, -3}, {1, 3, -3}, {1, -1, -3},
|
||||
{1, 0, -2}, {1, 1, -2}, {1, 2, -2}, {1, -3, -2}, {1, -2, -2},
|
||||
{1, -1, -2}, {0, 0, -1}, {0, 1, -1}, {0, 2, -1}, {0, 3, -1},
|
||||
{-5, -2, 14}, {0, -1, -1}, {-5, -1, 14}};
|
||||
long ref_bz_map[76] = {0, 1, 2, 3, 4, 5, 6, 8, 10, 11, 12, 13, 14,
|
||||
15, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27, 29, 31,
|
||||
32, 33, 34, 35, 36, 37, 39, 41, 42, 43, 44, 45, 46,
|
||||
48, 49, 50, 51, 53, 54, 55, 56, 57, 58, 60, 62, 63,
|
||||
64, 65, 66, 67, 68, 70, 72, 73, 74, 75, 76, 77, 79,
|
||||
80, 81, 82, 84, 85, 86, 87, 88, 89, 91, 93};
|
||||
long ref_bzg2grg[93] = {
|
||||
0, 1, 2, 3, 4, 5, 6, 6, 7, 7, 8, 9, 10, 11, 12, 13,
|
||||
13, 14, 15, 16, 17, 17, 18, 19, 20, 21, 22, 23, 23, 24, 24, 25,
|
||||
26, 27, 28, 29, 30, 31, 31, 32, 32, 33, 34, 35, 36, 37, 38, 38,
|
||||
39, 40, 41, 42, 42, 43, 44, 45, 46, 47, 48, 48, 49, 49, 50, 51,
|
||||
52, 53, 54, 55, 56, 56, 57, 57, 58, 59, 60, 61, 62, 63, 63, 64,
|
||||
65, 66, 67, 67, 68, 69, 70, 71, 72, 73, 73, 74, 74};
|
||||
double rec_lattice[3][3] = {{0.3214400514304082, 0.0, 0.0},
|
||||
{0.1855835002216734, 0.3711670004433468, 0.0},
|
||||
{0.0, 0.0, 0.20088388911209323}};
|
||||
long PS[3] = {0, 0, 0};
|
||||
long D_diag[3] = {1, 5, 15};
|
||||
long Q[3][3] = {{-1, 0, -6}, {0, -1, 0}, {-1, 0, -5}};
|
||||
long bz_grid_addresses[144][3];
|
||||
long bz_map[76];
|
||||
long bzg2grg[144];
|
||||
long bz_size, i, j;
|
||||
|
||||
bz_size = gridsys_get_bz_grid_addresses(bz_grid_addresses, bz_map, bzg2grg,
|
||||
D_diag, Q, PS, rec_lattice, 2);
|
||||
ASSERT_EQ(93, bz_size);
|
||||
for (i = 0; i < 93; i++) {
|
||||
for (j = 0; j < 3; j++) {
|
||||
ASSERT_EQ(ref_bz_addresses[i][j], bz_grid_addresses[i][j]);
|
||||
}
|
||||
}
|
||||
for (i = 0; i < 76; i++) {
|
||||
ASSERT_EQ(ref_bz_map[i], bz_map[i]);
|
||||
}
|
||||
for (i = 0; i < 93; i++) {
|
||||
ASSERT_EQ(ref_bzg2grg[i], bzg2grg[i]);
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1330,3 +1330,19 @@ def test_get_BZ_triplets_at_q(aln_cell: PhonopyAtoms, params):
|
|||
np.testing.assert_equal(ref_triplets[params[3]], triplets)
|
||||
np.testing.assert_equal(ref_ir_weights[params[3]], ir_weights)
|
||||
print(np.linalg.inv(ph.primitive.cell).tolist())
|
||||
|
||||
|
||||
def test_test(aln_cell: PhonopyAtoms):
|
||||
mesh = 13
|
||||
ph = Phonopy(aln_cell, supercell_matrix=[1, 1, 1], primitive_matrix="auto")
|
||||
bzgrid = BZGrid(
|
||||
mesh,
|
||||
lattice=ph.primitive.cell,
|
||||
symmetry_dataset=ph.primitive_symmetry.dataset,
|
||||
use_grg=True,
|
||||
force_SNF=True,
|
||||
is_time_reversal=False,
|
||||
)
|
||||
print(np.linalg.inv(ph.primitive.cell))
|
||||
print(bzgrid.D_diag)
|
||||
print(bzgrid.Q)
|
||||
|
|
Loading…
Reference in New Issue