From fe42698880c2d69a7a44db36954cb8f565f1ef7f Mon Sep 17 00:00:00 2001 From: liiutao <3158793232@qq.com> Date: Thu, 2 Jan 2025 18:51:23 +0800 Subject: [PATCH 1/2] delete test print --- source/module_cell/update_cell.cpp | 6 ------ 1 file changed, 6 deletions(-) diff --git a/source/module_cell/update_cell.cpp b/source/module_cell/update_cell.cpp index 1ea761afba..49f6499871 100644 --- a/source/module_cell/update_cell.cpp +++ b/source/module_cell/update_cell.cpp @@ -384,12 +384,6 @@ void periodic_boundary_adjustment(Atom* atoms, // first adjust direct coordinates, // then update them into cartesian coordinates, //---------------------------------------------- - for (int i=0;ina;j++) { - printf("the taud is %f %f %f\n",atom->taud[j].x,atom->taud[j].y,atom->taud[j].z); - } - } for (int it = 0; it < ntype; it++) { Atom* atom = &atoms[it]; for (int ia = 0; ia < atom->na; ia++) { From 09e5110ec84409fc2000e2a947a319c5bf48af60 Mon Sep 17 00:00:00 2001 From: liiutao <3158793232@qq.com> Date: Thu, 2 Jan 2025 21:30:48 +0800 Subject: [PATCH 2/2] change the boundry condition --- source/module_cell/update_cell.cpp | 32 +++++++++--------------------- 1 file changed, 9 insertions(+), 23 deletions(-) diff --git a/source/module_cell/update_cell.cpp b/source/module_cell/update_cell.cpp index 49f6499871..c4c324ce45 100644 --- a/source/module_cell/update_cell.cpp +++ b/source/module_cell/update_cell.cpp @@ -388,31 +388,17 @@ void periodic_boundary_adjustment(Atom* atoms, Atom* atom = &atoms[it]; for (int ia = 0; ia < atom->na; ia++) { // mohan update 2011-03-21 - if (atom->taud[ia].x < 0) + for (int ik = 0; ik < 3; ik++) { - atom->taud[ia].x += 1.0; - } - if (atom->taud[ia].y < 0) - { - atom->taud[ia].y += 1.0; - } - if (atom->taud[ia].z < 0) - { - atom->taud[ia].z += 1.0; - } - if (atom->taud[ia].x >= 1.0) - { - atom->taud[ia].x -= 1.0; - } - if (atom->taud[ia].y >= 1.0) - { - atom->taud[ia].y -= 1.0; - } - if (atom->taud[ia].z >= 1.0) - { - atom->taud[ia].z -= 1.0; + if (atom->taud[ia][ik] < 0) + { + atom->taud[ia][ik] += 1.0; + } + if (atom->taud[ia][ik] >= 1.0) + { + atom->taud[ia][ik] -= 1.0; + } } - if (atom->taud[ia].x < 0 || atom->taud[ia].y < 0 || atom->taud[ia].z < 0