make Force::special_lj and Force::special_coul accessible through the library interface
This commit is contained in:
@ -297,6 +297,7 @@ TEST_F(LibraryProperties, global)
|
||||
|
||||
std::string input = path_join(INPUT_DIR, "in.fourmol");
|
||||
if (!verbose) ::testing::internal::CaptureStdout();
|
||||
lammps_command(lmp, "special_bonds lj 0.0 0.5 0.8 coul 0.1 0.5 1.0");
|
||||
lammps_file(lmp, input.c_str());
|
||||
lammps_command(lmp, "run 2 post no");
|
||||
if (!verbose) ::testing::internal::GetCapturedStdout();
|
||||
@ -321,6 +322,26 @@ TEST_F(LibraryProperties, global)
|
||||
EXPECT_EQ(lammps_extract_global_datatype(lmp, "dt"), LAMMPS_DOUBLE);
|
||||
double *d_ptr = (double *)lammps_extract_global(lmp, "dt");
|
||||
EXPECT_DOUBLE_EQ((*d_ptr), 0.1);
|
||||
|
||||
EXPECT_EQ(lammps_extract_global_datatype(lmp, "special_lj"), LAMMPS_DOUBLE);
|
||||
EXPECT_EQ(lammps_extract_global_datatype(lmp, "special_coul"), LAMMPS_DOUBLE);
|
||||
double *special_lj = (double *)lammps_extract_global(lmp, "special_lj");
|
||||
double *special_coul= (double *)lammps_extract_global(lmp, "special_coul");
|
||||
EXPECT_DOUBLE_EQ(special_lj[0], 1.0);
|
||||
EXPECT_DOUBLE_EQ(special_lj[1], 0.0);
|
||||
EXPECT_DOUBLE_EQ(special_lj[2], 0.5);
|
||||
EXPECT_DOUBLE_EQ(special_lj[3], 0.8);
|
||||
EXPECT_DOUBLE_EQ(special_coul[0], 1.0);
|
||||
EXPECT_DOUBLE_EQ(special_coul[1], 0.1);
|
||||
EXPECT_DOUBLE_EQ(special_coul[2], 0.5);
|
||||
EXPECT_DOUBLE_EQ(special_coul[3], 1.0);
|
||||
lammps_command(lmp, "special_bonds lj/coul 1.0 1.0 1.0");
|
||||
EXPECT_DOUBLE_EQ(special_lj[1], 1.0);
|
||||
EXPECT_DOUBLE_EQ(special_lj[2], 1.0);
|
||||
EXPECT_DOUBLE_EQ(special_lj[3], 1.0);
|
||||
EXPECT_DOUBLE_EQ(special_coul[1], 1.0);
|
||||
EXPECT_DOUBLE_EQ(special_coul[2], 1.0);
|
||||
EXPECT_DOUBLE_EQ(special_coul[3], 1.0);
|
||||
};
|
||||
|
||||
TEST_F(LibraryProperties, neighlist)
|
||||
|
||||
@ -536,6 +536,7 @@ create_atoms 1 single &
|
||||
def test_extract_global(self):
|
||||
self.lmp.command("region box block -1 1 -2 2 -3 3")
|
||||
self.lmp.command("create_box 1 box")
|
||||
self.lmp.command("special_bonds lj 0.0 0.5 0.8 coul 0.1 0.5 1.0")
|
||||
self.assertEqual(self.lmp.extract_global("units"), "lj")
|
||||
self.assertEqual(self.lmp.extract_global("ntimestep"), 0)
|
||||
self.assertEqual(self.lmp.extract_global("dt"), 0.005)
|
||||
@ -552,10 +553,15 @@ create_atoms 1 single &
|
||||
self.assertEqual(self.lmp.extract_global("subhi"), [1.0, 2.0, 3.0])
|
||||
self.assertEqual(self.lmp.extract_global("periodicity"), [1,1,1])
|
||||
self.assertEqual(self.lmp.extract_global("triclinic"), 0)
|
||||
self.assertEqual(self.lmp.extract_global("special_lj"), [1.0, 0.0, 0.5, 0.8])
|
||||
self.assertEqual(self.lmp.extract_global("special_coul"), [1.0, 0.1, 0.5, 1.0])
|
||||
self.assertEqual(self.lmp.extract_global("sublo_lambda"), None)
|
||||
self.assertEqual(self.lmp.extract_global("subhi_lambda"), None)
|
||||
self.assertEqual(self.lmp.extract_global("respa_levels"), None)
|
||||
self.assertEqual(self.lmp.extract_global("respa_dt"), None)
|
||||
self.lmp.command("special_bonds lj/coul 0.0 1.0 1.0")
|
||||
self.assertEqual(self.lmp.extract_global("special_lj"), [1.0, 0.0, 1.0, 1.0])
|
||||
self.assertEqual(self.lmp.extract_global("special_coul"), [1.0, 0.0, 1.0, 1.0])
|
||||
|
||||
# set and initialize r-RESPA
|
||||
self.lmp.command("run_style respa 3 5 2 pair 2 kspace 3")
|
||||
|
||||
Reference in New Issue
Block a user