triclinic compatibility
This commit is contained in:
@ -113,11 +113,6 @@ void CommTiled::init()
|
|||||||
int bufextra_old = bufextra;
|
int bufextra_old = bufextra;
|
||||||
init_exchange();
|
init_exchange();
|
||||||
if (bufextra > bufextra_old) grow_send(maxsend+bufextra,2);
|
if (bufextra > bufextra_old) grow_send(maxsend+bufextra,2);
|
||||||
|
|
||||||
// temporary restrictions
|
|
||||||
|
|
||||||
if (triclinic)
|
|
||||||
error->all(FLERR,"Cannot yet use comm_style tiled with triclinic box");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------
|
/* ----------------------------------------------------------------------
|
||||||
@ -132,15 +127,23 @@ void CommTiled::setup()
|
|||||||
// domain properties used in setup method and methods it calls
|
// domain properties used in setup method and methods it calls
|
||||||
|
|
||||||
dimension = domain->dimension;
|
dimension = domain->dimension;
|
||||||
prd = domain->prd;
|
|
||||||
boxlo = domain->boxlo;
|
|
||||||
boxhi = domain->boxhi;
|
|
||||||
sublo = domain->sublo;
|
|
||||||
subhi = domain->subhi;
|
|
||||||
|
|
||||||
int *periodicity = domain->periodicity;
|
int *periodicity = domain->periodicity;
|
||||||
int ntypes = atom->ntypes;
|
int ntypes = atom->ntypes;
|
||||||
|
|
||||||
|
if (triclinic == 0) {
|
||||||
|
prd = domain->prd;
|
||||||
|
boxlo = domain->boxlo;
|
||||||
|
boxhi = domain->boxhi;
|
||||||
|
sublo = domain->sublo;
|
||||||
|
subhi = domain->subhi;
|
||||||
|
} else {
|
||||||
|
prd = domain->prd_lamda;
|
||||||
|
boxlo = domain->boxlo_lamda;
|
||||||
|
boxhi = domain->boxhi_lamda;
|
||||||
|
sublo = domain->sublo_lamda;
|
||||||
|
subhi = domain->subhi_lamda;
|
||||||
|
}
|
||||||
|
|
||||||
// set function pointers
|
// set function pointers
|
||||||
|
|
||||||
if (layout != Comm::LAYOUT_TILED) {
|
if (layout != Comm::LAYOUT_TILED) {
|
||||||
@ -189,6 +192,13 @@ void CommTiled::setup()
|
|||||||
cutghost[1] = cut * length1;
|
cutghost[1] = cut * length1;
|
||||||
length2 = h_inv[2];
|
length2 = h_inv[2];
|
||||||
cutghost[2] = cut * length2;
|
cutghost[2] = cut * length2;
|
||||||
|
if (mode == Comm::MULTI){
|
||||||
|
for (i = 1; i <= ntypes; i++) {
|
||||||
|
cutghostmulti[i][0] *= length0;
|
||||||
|
cutghostmulti[i][1] *= length1;
|
||||||
|
cutghostmulti[i][2] *= length2;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((periodicity[0] && cutghost[0] > prd[0]) ||
|
if ((periodicity[0] && cutghost[0] > prd[0]) ||
|
||||||
@ -347,6 +357,10 @@ void CommTiled::setup()
|
|||||||
pbc_flag[iswap][i] = 1;
|
pbc_flag[iswap][i] = 1;
|
||||||
if (idir == 0) pbc[iswap][i][idim] = 1;
|
if (idir == 0) pbc[iswap][i][idim] = 1;
|
||||||
else pbc[iswap][i][idim] = -1;
|
else pbc[iswap][i][idim] = -1;
|
||||||
|
if (triclinic) {
|
||||||
|
if (idim == 1) pbc[iswap][i][5] = pbc[iswap][i][idim];
|
||||||
|
if (idim == 2) pbc[iswap][i][4] = pbc[iswap][i][3] = pbc[iswap][i][idim];
|
||||||
|
}
|
||||||
sbox[0] = MAX(oboxlo[0],lo2[0]);
|
sbox[0] = MAX(oboxlo[0],lo2[0]);
|
||||||
sbox[1] = MAX(oboxlo[1],lo2[1]);
|
sbox[1] = MAX(oboxlo[1],lo2[1]);
|
||||||
sbox[2] = MAX(oboxlo[2],lo2[2]);
|
sbox[2] = MAX(oboxlo[2],lo2[2]);
|
||||||
@ -397,6 +411,10 @@ void CommTiled::setup()
|
|||||||
pbc_flag[iswap][i] = 1;
|
pbc_flag[iswap][i] = 1;
|
||||||
if (idir == 0) pbc[iswap][i][idim] = 1;
|
if (idir == 0) pbc[iswap][i][idim] = 1;
|
||||||
else pbc[iswap][i][idim] = -1;
|
else pbc[iswap][i][idim] = -1;
|
||||||
|
if (triclinic) {
|
||||||
|
if (idim == 1) pbc[iswap][i][5] = pbc[iswap][i][idim];
|
||||||
|
if (idim == 2) pbc[iswap][i][4] = pbc[iswap][i][3] = pbc[iswap][i][idim];
|
||||||
|
}
|
||||||
sbox[0] = MAX(oboxlo[0],lo2[0]);
|
sbox[0] = MAX(oboxlo[0],lo2[0]);
|
||||||
sbox[1] = MAX(oboxlo[1],lo2[1]);
|
sbox[1] = MAX(oboxlo[1],lo2[1]);
|
||||||
sbox[2] = MAX(oboxlo[2],lo2[2]);
|
sbox[2] = MAX(oboxlo[2],lo2[2]);
|
||||||
|
|||||||
@ -0,0 +1,86 @@
|
|||||||
|
---
|
||||||
|
lammps_version: 21 Jul 2020
|
||||||
|
date_generated: Mon Aug 3 16:06:24 202
|
||||||
|
epsilon: 5e-11
|
||||||
|
prerequisites: ! |
|
||||||
|
pair colloid
|
||||||
|
pre_commands: ! |
|
||||||
|
variable units index lj
|
||||||
|
post_commands: ! |
|
||||||
|
neighbor 1.0 multi
|
||||||
|
comm_style brick
|
||||||
|
comm_modify mode multi
|
||||||
|
change_box all triclinic
|
||||||
|
input_file: in.colloid
|
||||||
|
pair_style: colloid 12.5
|
||||||
|
pair_coeff: ! |
|
||||||
|
1 1 1.0 1.0 5.0 5.0 12.5
|
||||||
|
1 2 5.0 1.0 5.0 0.0 7.0
|
||||||
|
2 2 10.0 1.0 0.0 0.0 2.5
|
||||||
|
extract: ! ""
|
||||||
|
natoms: 27
|
||||||
|
init_vdwl: -0.250265293649414
|
||||||
|
init_coul: 0
|
||||||
|
init_stress: ! |2-
|
||||||
|
1.6693554149342913e+00 1.1752557173260270e+01 1.0084916384631617e+00 -5.5164068587184527e+00 3.4448938909043431e-01 2.8524984331506258e+00
|
||||||
|
init_forces: ! |2
|
||||||
|
1 7.2698902368314056e-02 7.6228314794484775e-02 1.0726717051410484e-01
|
||||||
|
2 -4.1487528743785314e-02 -9.8021436494101673e-03 1.5709289685835706e-01
|
||||||
|
3 -6.4514052467860251e-03 -1.0256365723614392e-03 -6.5497018575823654e-04
|
||||||
|
4 -1.5879716299045554e-02 -1.3313626328419375e-02 -1.1960220488237115e-02
|
||||||
|
5 -3.6475105049685402e-02 -2.2992583864092257e-02 1.6166097759476136e-02
|
||||||
|
6 5.4769180740248721e-04 -2.4426732691233789e-02 -3.6444902428178980e-02
|
||||||
|
7 1.2006858444817004e-03 8.6089326153587114e-04 4.8033026817420977e-05
|
||||||
|
8 6.2576206692511894e-03 1.1942031910109577e-03 8.5598267089392085e-04
|
||||||
|
9 1.8304752931477772e+00 -4.3380838069003760e+00 -1.2763141904695217e+00
|
||||||
|
10 1.0456768773213965e-01 -2.8797785965171453e-02 -1.0768387599117879e-02
|
||||||
|
11 7.4457152913473112e-04 5.3043528596594623e-05 1.1848179655097060e-04
|
||||||
|
12 1.8275344545112628e-04 4.1948901318387846e-04 9.8529270880004928e-05
|
||||||
|
13 -1.1259391902077470e-01 1.6396787556459839e-02 -9.0455786475091124e-04
|
||||||
|
14 -2.4411189619188785e-04 -5.8284002050384879e-05 1.8046434825690733e-05
|
||||||
|
15 -2.9421019290851403e-03 -7.4831176382853144e-04 -1.2326238660052020e-03
|
||||||
|
16 2.2461127490925330e+00 -1.1352527056039741e+00 2.3679980564815386e+00
|
||||||
|
17 -1.8842133286566962e-02 1.7091738246445273e-02 -1.4247568288438442e-02
|
||||||
|
18 1.0304762560041125e-01 7.8062023784307467e-03 1.9257495383127633e-02
|
||||||
|
19 -4.3351162132476757e-02 -2.2995928402219718e-02 -1.1392806036292676e-02
|
||||||
|
20 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||||
|
21 4.2501672350519284e-02 6.8582908647593938e-03 -6.8677246013076107e-02
|
||||||
|
22 -2.2945818607502839e+00 1.1603382884260454e+00 -2.3594708301087310e+00
|
||||||
|
23 2.5606115583434265e-02 -1.0270997331622232e-01 -1.1451933998746673e-01
|
||||||
|
24 -8.0648597970214809e-04 1.1943689027481706e-04 -9.8441554909815322e-04
|
||||||
|
25 6.1663239781204458e-04 -2.9236784591333030e-04 3.5387752678593654e-03
|
||||||
|
26 -1.7197958284241512e+00 4.3707144027711022e+00 1.2977194913045054e+00
|
||||||
|
27 -1.4110864281012736e-01 4.2418795982941855e-02 -6.2606997884263993e-02
|
||||||
|
run_vdwl: 0.0367090517931737
|
||||||
|
run_coul: 0
|
||||||
|
run_stress: ! |2-
|
||||||
|
3.2547164843322691e+00 1.2822272288053391e+01 2.9381904014809663e+00 -6.5755478139675931e+00 2.3052669923975411e+00 1.5140903126232879e+00
|
||||||
|
run_forces: ! |2
|
||||||
|
1 5.8196197291625715e-02 7.7034242946349946e-02 1.0456829776646254e-01
|
||||||
|
2 -4.1552988555246327e-02 -1.1540194679885485e-02 1.5467509805429100e-01
|
||||||
|
3 -6.6558201800471870e-03 -9.8090417095619679e-04 -4.5870088099424396e-04
|
||||||
|
4 -1.6184658518487705e-02 -1.2048418808706472e-02 -1.2190156970179262e-02
|
||||||
|
5 -3.3316803862839438e-02 -2.1131495092834646e-02 1.4963198384123119e-02
|
||||||
|
6 4.7038346343352116e-04 -3.0307837184768524e-02 -4.3608938525025766e-02
|
||||||
|
7 1.0396652127649081e-03 7.5317021954246196e-04 4.1930480907776011e-05
|
||||||
|
8 6.4423457305213877e-03 1.1468835414812518e-03 6.8526191116136061e-04
|
||||||
|
9 1.7585178109228492e+00 -4.3823551563819700e+00 -1.2468505588145766e+00
|
||||||
|
10 1.3392700382201897e-01 -2.9471624976996433e-02 -9.0915578208389906e-03
|
||||||
|
11 7.9839096035526857e-04 6.5881060273478105e-05 1.3840230606223543e-04
|
||||||
|
12 1.8540711169000120e-04 3.9935505493718929e-04 1.2187452986589205e-04
|
||||||
|
13 -1.4075050026169886e-01 1.8204883476184704e-02 -2.0674384501958810e-03
|
||||||
|
14 -2.4452271394244688e-04 -5.7393635529214755e-05 1.6908863929994165e-05
|
||||||
|
15 -3.4577717467029726e-03 -9.3350658134032599e-04 -1.5696623820874889e-03
|
||||||
|
16 5.4762334392971725e+00 -3.3427628201841184e+00 5.8008787111000641e+00
|
||||||
|
17 -1.7123087875076635e-02 1.5861563712562771e-02 -1.3049347364948664e-02
|
||||||
|
18 1.1434938302418582e-01 8.6112942994291432e-03 2.0292892978926169e-02
|
||||||
|
19 -3.8092989065812294e-02 -1.9963855292591683e-02 -9.8568020007968223e-03
|
||||||
|
20 0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00
|
||||||
|
21 4.1446743356056415e-02 8.4986882092498717e-03 -7.1565549648589466e-02
|
||||||
|
22 -5.5269240273286284e+00 3.3665609275390551e+00 -5.7932229791606371e+00
|
||||||
|
23 1.5450935830291834e-02 -1.0557581147017484e-01 -1.1539704280712981e-01
|
||||||
|
24 -7.5222270706101302e-04 1.1318969997713211e-04 -9.2841932954143037e-04
|
||||||
|
25 1.1778375109233736e-03 -7.1254208855308434e-05 3.8035457799329383e-03
|
||||||
|
26 -1.6497221843622811e+00 4.4233264004281976e+00 1.2763820593322663e+00
|
||||||
|
27 -1.3345796635606427e-01 3.6623792481486235e-02 -5.6711027332452084e-02
|
||||||
|
...
|
||||||
Reference in New Issue
Block a user