尝试使用平方和代替绝对值和
This commit is contained in:
4
main.cpp
4
main.cpp
@@ -149,10 +149,10 @@ int main(int argc, const char** argv)
|
||||
i_of_basis_in_primary_cell++
|
||||
)
|
||||
coefficient_at_mode[i_of_unfolded_qpoint] +=
|
||||
(
|
||||
std::sqrt((
|
||||
basis[i_of_unfolded_qpoint][i_of_basis_in_primary_cell].transpose()
|
||||
* input.QPointData[i_of_folded_qpoint].ModeData[i_of_mode].AtomMovement
|
||||
).array().abs().sum();
|
||||
).array().abs2().sum());
|
||||
|
||||
// 归一化
|
||||
auto sum = std::accumulate(coefficient_at_mode.begin(), coefficient_at_mode.end(), 0.);
|
||||
|
||||
Reference in New Issue
Block a user