complete tests for extracting and resetting the box

This commit is contained in:
Axel Kohlmeyer
2020-09-14 20:27:29 -04:00
parent 5c7f67201b
commit 1e54a9fcf1

View File

@ -112,8 +112,51 @@ TEST_F(LibraryProperties, box)
EXPECT_EQ(pflags[1], 1);
EXPECT_EQ(pflags[2], 1);
EXPECT_EQ(boxflag, 0);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "vol"), 3375.0);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "density"), 0.12211250945013695);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "cellalpha"), 90.0);
if (!verbose) ::testing::internal::CaptureStdout();
lammps_command(lmp, "change_box all boundary p p f triclinic xy final 0.5");
lammps_command(lmp, "fix box all box/relax x 0.0 y 0.0");
if (!verbose) ::testing::internal::GetCapturedStdout();
lammps_extract_box(lmp, boxlo, boxhi, &xy, &yz, &xz, pflags, &boxflag);
EXPECT_DOUBLE_EQ(boxlo[0], -6.024572);
EXPECT_DOUBLE_EQ(boxlo[1], -7.692866);
EXPECT_DOUBLE_EQ(boxlo[2], -8.086924);
EXPECT_DOUBLE_EQ(boxhi[0], 8.975428);
EXPECT_DOUBLE_EQ(boxhi[1], 7.307134);
EXPECT_DOUBLE_EQ(boxhi[2], 6.913076);
EXPECT_DOUBLE_EQ(xy, 0.5);
EXPECT_DOUBLE_EQ(yz, 0.0);
EXPECT_DOUBLE_EQ(xz, 0.0);
EXPECT_EQ(pflags[0], 1);
EXPECT_EQ(pflags[1], 1);
EXPECT_EQ(pflags[2], 0);
EXPECT_EQ(boxflag, 1);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "vol"), 3375.0);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "density"), 0.12211250945013695);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "cellalpha"), 90.0);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "cellbeta"), 90.0);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "cellgamma"), 88.090847567003621);
boxlo[0] = -6.1;
boxhi[1] = 7.3;
xy = 0.1;
lammps_reset_box(lmp, boxlo, boxhi, xy, yz, xz);
lammps_extract_box(lmp, boxlo, boxhi, &xy, &yz, &xz, pflags, &boxflag);
EXPECT_DOUBLE_EQ(boxlo[0], -6.1);
EXPECT_DOUBLE_EQ(boxlo[1], -7.692866);
EXPECT_DOUBLE_EQ(boxlo[2], -8.086924);
EXPECT_DOUBLE_EQ(boxhi[0], 8.975428);
EXPECT_DOUBLE_EQ(boxhi[1], 7.3);
EXPECT_DOUBLE_EQ(boxhi[2], 6.913076);
EXPECT_DOUBLE_EQ(xy, 0.1);
EXPECT_DOUBLE_EQ(yz, 0.0);
EXPECT_DOUBLE_EQ(xz, 0.0);
EXPECT_EQ(pflags[0], 1);
EXPECT_EQ(pflags[1], 1);
EXPECT_EQ(pflags[2], 0);
EXPECT_EQ(boxflag, 1);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "vol"), 3390.3580784497199);
EXPECT_DOUBLE_EQ(lammps_get_thermo(lmp, "cellgamma"), 89.61785205109274);
};