Update tests for relocate_BZ_grid_address to compare traditional and GR grids

This commit is contained in:
Atsushi Togo 2023-01-26 21:51:43 +09:00
parent 724427f255
commit f7dae80299
3 changed files with 585 additions and 878 deletions

View File

@ -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

View File

@ -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)