Merge branch 'develop' into always-exceptions
This commit is contained in:
@ -169,7 +169,7 @@ TEST_F(ComputeGlobalTest, Geometry)
|
||||
command("compute mom1 all momentum");
|
||||
command("compute mom2 allwater momentum");
|
||||
command("compute mop1 all stress/mop x 0.0 total");
|
||||
command("compute mop2 all stress/mop/profile z lower 0.5 kin conf");
|
||||
command("compute mop2 all stress/mop/profile z lower 0.5 kin pair");
|
||||
thermo_style += " c_mu1 c_mu2 c_mop1[*] c_mop2[1][1]";
|
||||
}
|
||||
|
||||
@ -225,9 +225,9 @@ TEST_F(ComputeGlobalTest, Geometry)
|
||||
EXPECT_DOUBLE_EQ(mom2[0], -0.022332069630161717);
|
||||
EXPECT_DOUBLE_EQ(mom2[1], -0.056896553865696115);
|
||||
EXPECT_DOUBLE_EQ(mom2[2], 0.069179891052881484);
|
||||
EXPECT_DOUBLE_EQ(mop1[0], 3522311.3572200728);
|
||||
EXPECT_DOUBLE_EQ(mop1[1], 2871104.9055934539);
|
||||
EXPECT_DOUBLE_EQ(mop1[2], -4136077.5224247416);
|
||||
EXPECT_DOUBLE_EQ(mop1[0], 3536584.0880458541);
|
||||
EXPECT_DOUBLE_EQ(mop1[1], 2887485.033995091);
|
||||
EXPECT_DOUBLE_EQ(mop1[2], -4154145.8952306858);
|
||||
EXPECT_DOUBLE_EQ(mop2[0][0], -8.0869239999999998);
|
||||
EXPECT_DOUBLE_EQ(mop2[0][1], 0.0);
|
||||
EXPECT_DOUBLE_EQ(mop2[0][2], 0.0);
|
||||
@ -294,6 +294,98 @@ TEST_F(ComputeGlobalTest, Reduction)
|
||||
EXPECT_DOUBLE_EQ(rep[2], 26);
|
||||
EXPECT_DOUBLE_EQ(rep[3], max[0]);
|
||||
}
|
||||
|
||||
TEST_F(ComputeGlobalTest, Counts)
|
||||
{
|
||||
if (lammps_get_natoms(lmp) == 0.0) GTEST_SKIP();
|
||||
|
||||
BEGIN_HIDE_OUTPUT();
|
||||
command("pair_style zero 10.0");
|
||||
command("pair_coeff * *");
|
||||
|
||||
command("variable t1 atom type==1");
|
||||
command("variable t2 atom type==2");
|
||||
command("variable t3 atom type==3");
|
||||
command("variable t4 atom type==4");
|
||||
command("variable t5 atom type==5");
|
||||
command("compute tsum all reduce sum v_t1 v_t2 v_t3 v_t4 v_t5");
|
||||
command("compute tcnt all count/type atom");
|
||||
command("compute bcnt all count/type bond");
|
||||
command("compute acnt all count/type angle");
|
||||
command("compute dcnt all count/type dihedral");
|
||||
command("compute icnt all count/type improper");
|
||||
command("thermo_style custom c_tsum[*] c_tcnt[*] c_bcnt[*] c_acnt[*] c_dcnt[*] c_icnt[*]");
|
||||
command("run 0 post no");
|
||||
END_HIDE_OUTPUT();
|
||||
|
||||
auto tsum = get_vector("tsum");
|
||||
auto tcnt = get_vector("tcnt");
|
||||
auto bcnt = get_vector("bcnt");
|
||||
auto bbrk = get_scalar("bcnt");
|
||||
auto acnt = get_vector("acnt");
|
||||
auto dcnt = get_vector("dcnt");
|
||||
auto icnt = get_vector("icnt");
|
||||
|
||||
EXPECT_DOUBLE_EQ(tsum[0], tcnt[0]);
|
||||
EXPECT_DOUBLE_EQ(tsum[1], tcnt[1]);
|
||||
EXPECT_DOUBLE_EQ(tsum[2], tcnt[2]);
|
||||
EXPECT_DOUBLE_EQ(tsum[3], tcnt[3]);
|
||||
EXPECT_DOUBLE_EQ(tsum[4], tcnt[4]);
|
||||
|
||||
EXPECT_DOUBLE_EQ(bbrk, 0.0);
|
||||
|
||||
EXPECT_DOUBLE_EQ(bcnt[0], 3.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[1], 6.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[2], 3.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[3], 2.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[4], 10.0);
|
||||
|
||||
EXPECT_DOUBLE_EQ(acnt[0], 6.0);
|
||||
EXPECT_DOUBLE_EQ(acnt[1], 10.0);
|
||||
EXPECT_DOUBLE_EQ(acnt[2], 5.0);
|
||||
EXPECT_DOUBLE_EQ(acnt[3], 9.0);
|
||||
|
||||
EXPECT_DOUBLE_EQ(dcnt[0], 3.0);
|
||||
EXPECT_DOUBLE_EQ(dcnt[1], 8.0);
|
||||
EXPECT_DOUBLE_EQ(dcnt[2], 3.0);
|
||||
EXPECT_DOUBLE_EQ(dcnt[3], 4.0);
|
||||
EXPECT_DOUBLE_EQ(dcnt[4], 13.0);
|
||||
|
||||
EXPECT_DOUBLE_EQ(icnt[0], 1.0);
|
||||
EXPECT_DOUBLE_EQ(icnt[1], 1.0);
|
||||
|
||||
BEGIN_HIDE_OUTPUT();
|
||||
command("delete_bonds all bond 3 remove");
|
||||
command("run 0 post no");
|
||||
END_HIDE_OUTPUT();
|
||||
|
||||
bcnt = get_vector("bcnt");
|
||||
bbrk = get_scalar("bcnt");
|
||||
acnt = get_vector("acnt");
|
||||
dcnt = get_vector("dcnt");
|
||||
icnt = get_vector("icnt");
|
||||
|
||||
EXPECT_DOUBLE_EQ(bbrk, 0.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[0], 3.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[1], 6.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[2], 0.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[3], 2.0);
|
||||
EXPECT_DOUBLE_EQ(bcnt[4], 10.0);
|
||||
|
||||
EXPECT_DOUBLE_EQ(acnt[0], 6.0);
|
||||
EXPECT_DOUBLE_EQ(acnt[1], 10.0);
|
||||
EXPECT_DOUBLE_EQ(acnt[2], 5.0);
|
||||
EXPECT_DOUBLE_EQ(acnt[3], 9.0);
|
||||
|
||||
EXPECT_DOUBLE_EQ(dcnt[0], 3.0);
|
||||
EXPECT_DOUBLE_EQ(dcnt[1], 8.0);
|
||||
EXPECT_DOUBLE_EQ(dcnt[2], 3.0);
|
||||
EXPECT_DOUBLE_EQ(dcnt[3], 4.0);
|
||||
EXPECT_DOUBLE_EQ(dcnt[4], 13.0);
|
||||
|
||||
EXPECT_DOUBLE_EQ(icnt[0], 1.0);
|
||||
EXPECT_DOUBLE_EQ(icnt[1], 1.0);
|
||||
}
|
||||
} // namespace LAMMPS_NS
|
||||
|
||||
int main(int argc, char **argv)
|
||||
|
||||
Reference in New Issue
Block a user