Merge branch 'lammps-icms' into lammps-colvars
This commit is contained in:
@ -419,25 +419,26 @@ potentials. Click on the style itself for a full description:
|
||||
<DIV ALIGN=center><TABLE BORDER=1 >
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_none.html">none</A></TD><TD ><A HREF = "pair_hybrid.html">hybrid</A></TD><TD ><A HREF = "pair_hybrid.html">hybrid/overlay</A></TD><TD ><A HREF = "pair_adp.html">adp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_airebo.html">airebo</A></TD><TD ><A HREF = "pair_beck.html">beck</A></TD><TD ><A HREF = "pair_bop.html">bop</A></TD><TD ><A HREF = "pair_born.html">born</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/coul/long</A></TD><TD ><A HREF = "pair_born.html">born/coul/wolf</A></TD><TD ><A HREF = "pair_brownian.html">brownian</A></TD><TD ><A HREF = "pair_brownian.html">brownian/poly</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long</A></TD><TD ><A HREF = "pair_buck_long.html">buck/long/coul/long</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_colloid.html">colloid</A></TD><TD ><A HREF = "pair_comb.html">comb</A></TD><TD ><A HREF = "pair_coul.html">coul/cut</A></TD><TD ><A HREF = "pair_coul.html">coul/debye</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/dsf</A></TD><TD ><A HREF = "pair_coul.html">coul/long</A></TD><TD ><A HREF = "pair_coul.html">coul/wolf</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_dpd.html">dpd</A></TD><TD ><A HREF = "pair_dpd.html">dpd/tstat</A></TD><TD ><A HREF = "pair_dsmc.html">dsmc</A></TD><TD ><A HREF = "pair_eam.html">eam</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/alloy</A></TD><TD ><A HREF = "pair_eam.html">eam/fs</A></TD><TD ><A HREF = "pair_eim.html">eim</A></TD><TD ><A HREF = "pair_gauss.html">gauss</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gayberne.html">gayberne</A></TD><TD ><A HREF = "pair_gran.html">gran/hertz/history</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/history</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/lj</A></TD><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/morse</A></TD><TD ><A HREF = "pair_kim.html">kim</A></TD><TD ><A HREF = "pair_lcbop.html">lcbop</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_line_lj.html">line/lj</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/coul/long</A></TD><TD ><A HREF = "pair_born.html">born/coul/msm</A></TD><TD ><A HREF = "pair_born.html">born/coul/wolf</A></TD><TD ><A HREF = "pair_brownian.html">brownian</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_brownian.html">brownian/poly</A></TD><TD ><A HREF = "pair_buck.html">buck</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/coul/msm</A></TD><TD ><A HREF = "pair_buck_long.html">buck/long/coul/long</A></TD><TD ><A HREF = "pair_colloid.html">colloid</A></TD><TD ><A HREF = "pair_comb.html">comb</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/cut</A></TD><TD ><A HREF = "pair_coul.html">coul/debye</A></TD><TD ><A HREF = "pair_coul.html">coul/dsf</A></TD><TD ><A HREF = "pair_coul.html">coul/long</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/msm</A></TD><TD ><A HREF = "pair_coul.html">coul/wolf</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut</A></TD><TD ><A HREF = "pair_dpd.html">dpd</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_dpd.html">dpd/tstat</A></TD><TD ><A HREF = "pair_dsmc.html">dsmc</A></TD><TD ><A HREF = "pair_eam.html">eam</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/fs</A></TD><TD ><A HREF = "pair_eim.html">eim</A></TD><TD ><A HREF = "pair_gauss.html">gauss</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gran.html">gran/hertz/history</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/history</A></TD><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/lj</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/morse</A></TD><TD ><A HREF = "pair_kim.html">kim</A></TD><TD ><A HREF = "pair_lcbop.html">lcbop</A></TD><TD ><A HREF = "pair_line_lj.html">line/lj</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/msm</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/dsf</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj_long.html">lj/long/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/tip4p/long</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gromacs.html">lj/gromacs</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth</A></TD><TD ><A HREF = "pair_lj_smooth_linear.html">lj/smooth/linear</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj96.html">lj96/cut</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate/poly</A></TD><TD ><A HREF = "pair_lubricateU.html">lubricateU</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lubricateU.html">lubricateU/poly</A></TD><TD ><A HREF = "pair_meam.html">meam</A></TD><TD ><A HREF = "pair_mie.html">mie/cut</A></TD><TD ><A HREF = "pair_morse.html">morse</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_peri.html">peri/lps</A></TD><TD ><A HREF = "pair_peri.html">peri/pmb</A></TD><TD ><A HREF = "pair_reax.html">reax</A></TD><TD ><A HREF = "pair_airebo.html">rebo</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_resquared.html">resquared</A></TD><TD ><A HREF = "pair_soft.html">soft</A></TD><TD ><A HREF = "pair_sw.html">sw</A></TD><TD ><A HREF = "pair_table.html">table</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_tersoff.html">tersoff</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl</A></TD><TD ><A HREF = "pair_tri_lj.html">tri/lj</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid</A>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/msm</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/coul/long</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/tip4p/long</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj_expand.html">lj/expand</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj_smooth_linear.html">lj/smooth/linear</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate/poly</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lubricateU.html">lubricateU</A></TD><TD ><A HREF = "pair_lubricateU.html">lubricateU/poly</A></TD><TD ><A HREF = "pair_meam.html">meam</A></TD><TD ><A HREF = "pair_mie.html">mie/cut</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_morse.html">morse</A></TD><TD ><A HREF = "pair_peri.html">peri/lps</A></TD><TD ><A HREF = "pair_peri.html">peri/pmb</A></TD><TD ><A HREF = "pair_reax.html">reax</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_airebo.html">rebo</A></TD><TD ><A HREF = "pair_resquared.html">resquared</A></TD><TD ><A HREF = "pair_soft.html">soft</A></TD><TD ><A HREF = "pair_sw.html">sw</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_table.html">table</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl</A></TD><TD ><A HREF = "pair_tri_lj.html">tri/lj</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_yukawa.html">yukawa</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid</A>
|
||||
</TD></TR></TABLE></DIV>
|
||||
|
||||
<P>These are pair styles contributed by users, which can be used if
|
||||
@ -458,42 +459,42 @@ package</A>.
|
||||
</P>
|
||||
<DIV ALIGN=center><TABLE BORDER=1 >
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_adp.html">adp/omp</A></TD><TD ><A HREF = "pair_airebo.html">airebo/omp</A></TD><TD ><A HREF = "pair_beck.html">beck/omp</A></TD><TD ><A HREF = "pair_born.html">born/coul/long/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/coul/long/gpu</A></TD><TD ><A HREF = "pair_born.html">born/coul/long/omp</A></TD><TD ><A HREF = "pair_born.html">born/coul/wolf/gpu</A></TD><TD ><A HREF = "pair_born.html">born/coul/wolf/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/gpu</A></TD><TD ><A HREF = "pair_born.html">born/omp</A></TD><TD ><A HREF = "pair_brownian.html">brownian/omp</A></TD><TD ><A HREF = "pair_brownian.html">brownian/poly/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/coul/cut/cuda</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut/omp</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/coul/long/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long/omp</A></TD><TD ><A HREF = "pair_buck.html">buck/cuda</A></TD><TD ><A HREF = "pair_buck_long.html">buck/long/coul/long/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/omp</A></TD><TD ><A HREF = "pair_colloid.html">colloid/gpu</A></TD><TD ><A HREF = "pair_colloid.html">colloid/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_comb.html">comb/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/cut/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/debye/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/dsf/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/long/gpu</A></TD><TD ><A HREF = "pair_coul.html">coul/long/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/wolf</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_dipole.html">dipole/cut/omp</A></TD><TD ><A HREF = "pair_dipole.html">dipole/sf/gpu</A></TD><TD ><A HREF = "pair_dipole.html">dipole/sf/omp</A></TD><TD ><A HREF = "pair_dpd.html">dpd/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_dpd.html">dpd/tstat/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/cuda</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/gpu</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/alloy/opt</A></TD><TD ><A HREF = "pair_eam.html">eam/cd/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/cuda</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/fs/gpu</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/opt</A></TD><TD ><A HREF = "pair_eam.html">eam/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/opt</A></TD><TD ><A HREF = "pair_edip.html">edip/omp</A></TD><TD ><A HREF = "pair_eim.html">eim/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gauss.html">gauss/gpu</A></TD><TD ><A HREF = "pair_gauss.html">gauss/omp</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne/gpu</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gran.html">gran/hertz/history/omp</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/cuda</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/history/omp</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/lj/omp</A></TD><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/morse/omp</A></TD><TD ><A HREF = "pair_line_lj.html">line/lj/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit/cuda</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/gpu</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/opt</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/pppm/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut/omp</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2/coul/pppm/omp</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/omp</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2/omp</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/coul/long/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/dsf/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/pppm/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/experimental/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long/opt</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand/cuda</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand/gpu</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs/cuda</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs/omp</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/cuda</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_sdk.html">lj/sdk/gpu</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/omp</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/coul/long/gpu</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/coul/long/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj_sf.html">lj/sf/omp</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth/cuda</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth/omp</A></TD><TD ><A HREF = "pair_lj_smooth_linear.html">lj/smooth/linear/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj96.html">lj96/cut/cuda</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut/gpu</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut/omp</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lubricate.html">lubricate/poly/omp</A></TD><TD ><A HREF = "pair_meam_spline.html">meam/spline/omp</A></TD><TD ><A HREF = "pair_morse.html">morse/cuda</A></TD><TD ><A HREF = "pair_morse.html">morse/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_morse.html">morse/omp</A></TD><TD ><A HREF = "pair_morse.html">morse/opt</A></TD><TD ><A HREF = "pair_peri.html">peri/lps/omp</A></TD><TD ><A HREF = "pair_peri.html">peri/pmb/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_airebo.html">rebo/omp</A></TD><TD ><A HREF = "pair_resquared.html">resquared/gpu</A></TD><TD ><A HREF = "pair_resquared.html">resquared/omp</A></TD><TD ><A HREF = "pair_soft.html">soft/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_sw.html">sw/cuda</A></TD><TD ><A HREF = "pair_sw.html">sw/omp</A></TD><TD ><A HREF = "pair_table.html">table/gpu</A></TD><TD ><A HREF = "pair_table.html">table/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_tersoff.html">tersoff/cuda</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff/omp</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff/table/omp</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_tri_lj.html">tri/lj/omp</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa/gpu</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa/omp</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid/omp</A>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/coul/long/gpu</A></TD><TD ><A HREF = "pair_born.html">born/coul/long/omp</A></TD><TD ><A HREF = "pair_born.html">born/coul/msm/omp</A></TD><TD ><A HREF = "pair_born.html">born/coul/wolf/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_born.html">born/coul/wolf/omp</A></TD><TD ><A HREF = "pair_born.html">born/gpu</A></TD><TD ><A HREF = "pair_born.html">born/omp</A></TD><TD ><A HREF = "pair_brownian.html">brownian/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_brownian.html">brownian/poly/omp</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut/cuda</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/cut/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/coul/long/cuda</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/long/omp</A></TD><TD ><A HREF = "pair_buck.html">buck/coul/msm/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_buck.html">buck/cuda</A></TD><TD ><A HREF = "pair_buck_long.html">buck/long/coul/long/omp</A></TD><TD ><A HREF = "pair_buck.html">buck/gpu</A></TD><TD ><A HREF = "pair_buck.html">buck/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_colloid.html">colloid/gpu</A></TD><TD ><A HREF = "pair_colloid.html">colloid/omp</A></TD><TD ><A HREF = "pair_comb.html">comb/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/cut/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/debye/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/dsf/gpu</A></TD><TD ><A HREF = "pair_coul.html">coul/long/gpu</A></TD><TD ><A HREF = "pair_coul.html">coul/long/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_coul.html">coul/msm/omp</A></TD><TD ><A HREF = "pair_coul.html">coul/wolf</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut/gpu</A></TD><TD ><A HREF = "pair_dipole.html">dipole/cut/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_dipole.html">dipole/sf/gpu</A></TD><TD ><A HREF = "pair_dipole.html">dipole/sf/omp</A></TD><TD ><A HREF = "pair_dpd.html">dpd/omp</A></TD><TD ><A HREF = "pair_dpd.html">dpd/tstat/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/alloy/cuda</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/gpu</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/alloy/opt</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/cd/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/cuda</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/cuda</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/fs/omp</A></TD><TD ><A HREF = "pair_eam.html">eam/fs/opt</A></TD><TD ><A HREF = "pair_eam.html">eam/gpu</A></TD><TD ><A HREF = "pair_eam.html">eam/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_eam.html">eam/opt</A></TD><TD ><A HREF = "pair_edip.html">edip/omp</A></TD><TD ><A HREF = "pair_eim.html">eim/omp</A></TD><TD ><A HREF = "pair_gauss.html">gauss/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gauss.html">gauss/omp</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne/gpu</A></TD><TD ><A HREF = "pair_gayberne.html">gayberne/omp</A></TD><TD ><A HREF = "pair_gran.html">gran/hertz/history/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gran.html">gran/hooke/cuda</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/history/omp</A></TD><TD ><A HREF = "pair_gran.html">gran/hooke/omp</A></TD><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/lj/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_hbond_dreiding.html">hbond/dreiding/morse/omp</A></TD><TD ><A HREF = "pair_line_lj.html">line/lj/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/cuda</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit/cuda</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/charmm/implicit/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/cuda</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/omp</A></TD><TD ><A HREF = "pair_charmm.html">lj/charmm/coul/long/opt</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/cut/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/gpu</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/long/omp</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/coul/msm/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_class2.html">lj/class2/cuda</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/gpu</A></TD><TD ><A HREF = "pair_class2.html">lj/class2/omp</A></TD><TD ><A HREF = "pair_lj_long.html">lj/long/coul/long/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/cut/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/debye/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/dsf/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/long/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/coul/msm/opt</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/experimental/cuda</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/gpu</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj.html">lj/cut/opt</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long/omp</A></TD><TD ><A HREF = "pair_lj.html">lj/cut/tip4p/long/opt</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj_expand.html">lj/expand/gpu</A></TD><TD ><A HREF = "pair_lj_expand.html">lj/expand/omp</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs/cuda</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/coul/gromacs/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_gromacs.html">lj/gromacs/cuda</A></TD><TD ><A HREF = "pair_gromacs.html">lj/gromacs/omp</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/gpu</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_sdk.html">lj/sdk/coul/long/gpu</A></TD><TD ><A HREF = "pair_sdk.html">lj/sdk/coul/long/omp</A></TD><TD ><A HREF = "pair_lj_sf.html">lj/sf/omp</A></TD><TD ><A HREF = "pair_lj_smooth.html">lj/smooth/cuda</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj_smooth.html">lj/smooth/omp</A></TD><TD ><A HREF = "pair_lj_smooth_linear.html">lj/smooth/linear/omp</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut/cuda</A></TD><TD ><A HREF = "pair_lj96.html">lj96/cut/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_lj96.html">lj96/cut/omp</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate/omp</A></TD><TD ><A HREF = "pair_lubricate.html">lubricate/poly/omp</A></TD><TD ><A HREF = "pair_meam_spline.html">meam/spline/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_morse.html">morse/cuda</A></TD><TD ><A HREF = "pair_morse.html">morse/gpu</A></TD><TD ><A HREF = "pair_morse.html">morse/omp</A></TD><TD ><A HREF = "pair_morse.html">morse/opt</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_peri.html">peri/lps/omp</A></TD><TD ><A HREF = "pair_peri.html">peri/pmb/omp</A></TD><TD ><A HREF = "pair_airebo.html">rebo/omp</A></TD><TD ><A HREF = "pair_resquared.html">resquared/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_resquared.html">resquared/omp</A></TD><TD ><A HREF = "pair_soft.html">soft/omp</A></TD><TD ><A HREF = "pair_sw.html">sw/cuda</A></TD><TD ><A HREF = "pair_sw.html">sw/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_table.html">table/gpu</A></TD><TD ><A HREF = "pair_table.html">table/omp</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff/cuda</A></TD><TD ><A HREF = "pair_tersoff.html">tersoff/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_tersoff.html">tersoff/table/omp</A></TD><TD ><A HREF = "pair_tersoff_zbl.html">tersoff/zbl/omp</A></TD><TD ><A HREF = "pair_tri_lj.html">tri/lj/omp</A></TD><TD ><A HREF = "pair_yukawa.html">yukawa/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "pair_yukawa.html">yukawa/omp</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid/gpu</A></TD><TD ><A HREF = "pair_yukawa_colloid.html">yukawa/colloid/omp</A>
|
||||
</TD></TR></TABLE></DIV>
|
||||
|
||||
<HR>
|
||||
@ -637,8 +638,8 @@ built with the <A HREF = "Section_accelerate.html">appropriate accelerated
|
||||
package</A>.
|
||||
</P>
|
||||
<DIV ALIGN=center><TABLE BORDER=1 >
|
||||
<TR ALIGN="center"><TD ><A HREF = "kspace_style.html">ewald/omp</A></TD><TD ><A HREF = "kspace_style.html">pppm/cuda</A></TD><TD ><A HREF = "kspace_style.html">pppm/gpu</A></TD><TD ><A HREF = "kspace_style.html">pppm/omp</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "kspace_style.html">pppm/cg/omp</A></TD><TD ><A HREF = "kspace_style.html">pppm/tip4p/omp</A>
|
||||
<TR ALIGN="center"><TD ><A HREF = "kspace_style.html">ewald/omp</A></TD><TD ><A HREF = "kspace_style.html">msm/omp</A></TD><TD ><A HREF = "kspace_style.html">pppm/cuda</A></TD><TD ><A HREF = "kspace_style.html">pppm/gpu</A></TD></TR>
|
||||
<TR ALIGN="center"><TD ><A HREF = "kspace_style.html">pppm/omp</A></TD><TD ><A HREF = "kspace_style.html">pppm/cg/omp</A></TD><TD ><A HREF = "kspace_style.html">pppm/tip4p/omp</A>
|
||||
</TD></TR></TABLE></DIV>
|
||||
|
||||
</HTML>
|
||||
|
||||
@ -636,12 +636,14 @@ potentials. Click on the style itself for a full description:
|
||||
"bop"_pair_bop.html,
|
||||
"born"_pair_born.html,
|
||||
"born/coul/long"_pair_born.html,
|
||||
"born/coul/msm"_pair_born.html,
|
||||
"born/coul/wolf"_pair_born.html,
|
||||
"brownian"_pair_brownian.html,
|
||||
"brownian/poly"_pair_brownian.html,
|
||||
"buck"_pair_buck.html,
|
||||
"buck/coul/cut"_pair_buck.html,
|
||||
"buck/coul/long"_pair_buck.html,
|
||||
"buck/coul/msm"_pair_buck.html,
|
||||
"buck/long/coul/long"_pair_buck_long.html,
|
||||
"colloid"_pair_colloid.html,
|
||||
"comb"_pair_comb.html,
|
||||
@ -649,6 +651,7 @@ potentials. Click on the style itself for a full description:
|
||||
"coul/debye"_pair_coul.html,
|
||||
"coul/dsf"_pair_coul.html,
|
||||
"coul/long"_pair_coul.html,
|
||||
"coul/msm"_pair_coul.html,
|
||||
"coul/wolf"_pair_coul.html,
|
||||
"dipole/cut"_pair_dipole.html,
|
||||
"dpd"_pair_dpd.html,
|
||||
@ -671,6 +674,7 @@ potentials. Click on the style itself for a full description:
|
||||
"lj/charmm/coul/charmm"_pair_charmm.html,
|
||||
"lj/charmm/coul/charmm/implicit"_pair_charmm.html,
|
||||
"lj/charmm/coul/long"_pair_charmm.html,
|
||||
"lj/charmm/coul/msm"_pair_charmm.html,
|
||||
"lj/class2"_pair_class2.html,
|
||||
"lj/class2/coul/cut"_pair_class2.html,
|
||||
"lj/class2/coul/long"_pair_class2.html,
|
||||
@ -679,6 +683,7 @@ potentials. Click on the style itself for a full description:
|
||||
"lj/cut/coul/debye"_pair_lj.html,
|
||||
"lj/cut/coul/dsf"_pair_lj.html,
|
||||
"lj/cut/coul/long"_pair_lj.html,
|
||||
"lj/cut/coul/msm"_pair_lj.html,
|
||||
"lj/long/coul/long"_pair_lj_long.html,
|
||||
"lj/cut/tip4p/long"_pair_lj.html,
|
||||
"lj/long/tip4p/long"_pair_lj_long.html,
|
||||
@ -744,6 +749,7 @@ package"_Section_accelerate.html.
|
||||
"born/coul/long/cuda"_pair_born.html,
|
||||
"born/coul/long/gpu"_pair_born.html,
|
||||
"born/coul/long/omp"_pair_born.html,
|
||||
"born/coul/msm/omp"_pair_born.html,
|
||||
"born/coul/wolf/gpu"_pair_born.html,
|
||||
"born/coul/wolf/omp"_pair_born.html,
|
||||
"born/gpu"_pair_born.html,
|
||||
@ -756,6 +762,7 @@ package"_Section_accelerate.html.
|
||||
"buck/coul/long/cuda"_pair_buck.html,
|
||||
"buck/coul/long/gpu"_pair_buck.html,
|
||||
"buck/coul/long/omp"_pair_buck.html,
|
||||
"buck/coul/msm/omp"_pair_buck.html,
|
||||
"buck/cuda"_pair_buck.html,
|
||||
"buck/long/coul/long/omp"_pair_buck_long.html,
|
||||
"buck/gpu"_pair_buck.html,
|
||||
@ -768,6 +775,7 @@ package"_Section_accelerate.html.
|
||||
"coul/dsf/gpu"_pair_coul.html,
|
||||
"coul/long/gpu"_pair_coul.html,
|
||||
"coul/long/omp"_pair_coul.html,
|
||||
"coul/msm/omp"_pair_coul.html,
|
||||
"coul/wolf"_pair_coul.html,
|
||||
"dipole/cut/gpu"_pair_dipole.html,
|
||||
"dipole/cut/omp"_pair_dipole.html,
|
||||
@ -809,13 +817,12 @@ package"_Section_accelerate.html.
|
||||
"lj/charmm/coul/long/gpu"_pair_charmm.html,
|
||||
"lj/charmm/coul/long/omp"_pair_charmm.html,
|
||||
"lj/charmm/coul/long/opt"_pair_charmm.html,
|
||||
"lj/charmm/coul/pppm/omp"_pair_charmm.html,
|
||||
"lj/class2/coul/cut/cuda"_pair_class2.html,
|
||||
"lj/class2/coul/cut/omp"_pair_class2.html,
|
||||
"lj/class2/coul/long/cuda"_pair_class2.html,
|
||||
"lj/class2/coul/long/gpu"_pair_class2.html,
|
||||
"lj/class2/coul/pppm/omp"_pair_class2.html,
|
||||
"lj/class2/coul/long/omp"_pair_class2.html,
|
||||
"lj/class2/coul/msm/omp"_pair_class2.html,
|
||||
"lj/class2/cuda"_pair_class2.html,
|
||||
"lj/class2/gpu"_pair_class2.html,
|
||||
"lj/class2/omp"_pair_class2.html,
|
||||
@ -831,7 +838,7 @@ package"_Section_accelerate.html.
|
||||
"lj/cut/coul/long/gpu"_pair_lj.html,
|
||||
"lj/cut/coul/long/omp"_pair_lj.html,
|
||||
"lj/cut/coul/long/opt"_pair_lj.html,
|
||||
"lj/cut/coul/pppm/omp"_pair_lj.html,
|
||||
"lj/cut/coul/msm/opt"_pair_lj.html,
|
||||
"lj/cut/cuda"_pair_lj.html,
|
||||
"lj/cut/experimental/cuda"_pair_lj.html,
|
||||
"lj/cut/gpu"_pair_lj.html,
|
||||
@ -1065,6 +1072,7 @@ built with the "appropriate accelerated
|
||||
package"_Section_accelerate.html.
|
||||
|
||||
"ewald/omp"_kspace_style.html,
|
||||
"msm/omp"_kspace_style.html,
|
||||
"pppm/cuda"_kspace_style.html,
|
||||
"pppm/gpu"_kspace_style.html,
|
||||
"pppm/omp"_kspace_style.html,
|
||||
|
||||
@ -54,6 +54,7 @@ own sub-directories with their own Makefiles.
|
||||
<LI><A HREF = "#eff">eff</A>
|
||||
<LI><A HREF = "#emacs">emacs</A>
|
||||
<LI><A HREF = "#ipp">ipp</A>
|
||||
<LI><A HREF = "#kate">kate</A>
|
||||
<LI><A HREF = "#arc">lmp2arc</A>
|
||||
<LI><A HREF = "#cfg">lmp2cfg</A>
|
||||
<LI><A HREF = "#vmd">lmp2vmd</A>
|
||||
@ -224,6 +225,17 @@ tools/createatoms tool's input file.
|
||||
</P>
|
||||
<HR>
|
||||
|
||||
<H4><A NAME = "kate"></A>kate tool
|
||||
</H4>
|
||||
<P>The file in the tools/kate directory is an add-on to the Kate editor
|
||||
in the KDE suite that allow syntax highlighting of LAMMPS input
|
||||
scripts. See the README.txt file for details.
|
||||
</P>
|
||||
<P>The file was provided by Alessandro Luigi Sellerio
|
||||
(alessandro.sellerio at ieni.cnr.it).
|
||||
</P>
|
||||
<HR>
|
||||
|
||||
<H4><A NAME = "arc"></A>lmp2arc tool
|
||||
</H4>
|
||||
<P>The lmp2arc sub-directory contains a tool for converting LAMMPS output
|
||||
|
||||
@ -50,6 +50,7 @@ own sub-directories with their own Makefiles.
|
||||
"eff"_#eff
|
||||
"emacs"_#emacs
|
||||
"ipp"_#ipp
|
||||
"kate"_#kate
|
||||
"lmp2arc"_#arc
|
||||
"lmp2cfg"_#cfg
|
||||
"lmp2vmd"_#vmd
|
||||
@ -220,6 +221,17 @@ tools/createatoms tool's input file.
|
||||
|
||||
:line
|
||||
|
||||
kate tool :h4,link(kate)
|
||||
|
||||
The file in the tools/kate directory is an add-on to the Kate editor
|
||||
in the KDE suite that allow syntax highlighting of LAMMPS input
|
||||
scripts. See the README.txt file for details.
|
||||
|
||||
The file was provided by Alessandro Luigi Sellerio
|
||||
(alessandro.sellerio at ieni.cnr.it).
|
||||
|
||||
:line
|
||||
|
||||
lmp2arc tool :h4,link(arc)
|
||||
|
||||
The lmp2arc sub-directory contains a tool for converting LAMMPS output
|
||||
|
||||
@ -42,9 +42,8 @@
|
||||
|
||||
<PRE> <I>scale</I> value = <I>no</I> or <I>yes</I>
|
||||
<I>no</I> = the variable value is the new setting
|
||||
<I>yes</I> = the variable value multiplies the original setting
|
||||
</PRE>
|
||||
<PRE> <I>reset</I> value = <I>no</I> or <I>yes</I>
|
||||
<I>yes</I> = the variable value multiplies the original setting
|
||||
<I>reset</I> value = <I>no</I> or <I>yes</I>
|
||||
<I>no</I> = values will remain altered at the end of a run
|
||||
<I>yes</I> = reset altered values to their original values at the end of a run
|
||||
</PRE>
|
||||
@ -65,7 +64,11 @@ attributes which can be varied by this fix are discussed below. Many
|
||||
other fixes can also be used to time-vary simulation parameters,
|
||||
e.g. the "fix deform" command will change the simulation box
|
||||
size/shape and the "fix move" command will change atom positions and
|
||||
velocities in a prescribed manner.
|
||||
velocities in a prescribed manner. Also note that many commands allow
|
||||
variables as arguments for specific parameters, if described in that
|
||||
manner on their doc pages. An equal-style variable can calculate a
|
||||
time-dependent quantity, so this is another way to vary a simulation
|
||||
parameter over time.
|
||||
</P>
|
||||
<P>If <I>N</I> is specified as 0, the specified attributes are only changed
|
||||
once, before the simulation begins. This is all that is needed if the
|
||||
|
||||
@ -31,7 +31,7 @@ zero or more keyword/value pairs may be appended :l
|
||||
keyword = {scale} or {reset} :l
|
||||
{scale} value = {no} or {yes}
|
||||
{no} = the variable value is the new setting
|
||||
{yes} = the variable value multiplies the original setting :pre
|
||||
{yes} = the variable value multiplies the original setting
|
||||
{reset} value = {no} or {yes}
|
||||
{no} = values will remain altered at the end of a run
|
||||
{yes} = reset altered values to their original values at the end of a run :pre
|
||||
@ -52,7 +52,11 @@ attributes which can be varied by this fix are discussed below. Many
|
||||
other fixes can also be used to time-vary simulation parameters,
|
||||
e.g. the "fix deform" command will change the simulation box
|
||||
size/shape and the "fix move" command will change atom positions and
|
||||
velocities in a prescribed manner.
|
||||
velocities in a prescribed manner. Also note that many commands allow
|
||||
variables as arguments for specific parameters, if described in that
|
||||
manner on their doc pages. An equal-style variable can calculate a
|
||||
time-dependent quantity, so this is another way to vary a simulation
|
||||
parameter over time.
|
||||
|
||||
If {N} is specified as 0, the specified attributes are only changed
|
||||
once, before the simulation begins. This is all that is needed if the
|
||||
|
||||
@ -29,14 +29,18 @@
|
||||
|
||||
<LI>face = <I>xlo</I> or <I>xhi</I> or <I>ylo</I> or <I>yhi</I> or <I>zlo</I> or <I>zhi</I>
|
||||
|
||||
<PRE> args = coord epsilon sigma cutoff
|
||||
<LI> args = coord epsilon sigma cutoff
|
||||
coord = position of wall = EDGE or constant or variable
|
||||
EDGE = current lo or hi edge of simulation box
|
||||
constant = number like 0.0 or -30.0 (distance units)
|
||||
variable = <A HREF = "variable.html">equal-style variable</A> like v_x or v_wiggle
|
||||
epsilon = strength factor for wall-particle interaction (energy or energy/distance^2 units)
|
||||
sigma = size factor for wall-particle interaction (distance units)
|
||||
cutoff = distance from wall at which wall-particle interaction is cut off (distance units)
|
||||
epsilon can be a variable (see below)
|
||||
|
||||
<LI> sigma = size factor for wall-particle interaction (distance units)
|
||||
sigma can be a variable (see below)
|
||||
|
||||
<PRE> cutoff = distance from wall at which wall-particle interaction is cut off (distance units)
|
||||
</PRE>
|
||||
<LI>zero or more keyword/value pairs may be appended
|
||||
|
||||
@ -47,9 +51,8 @@
|
||||
<I>box</I> = the wall position is defined in simulation box units
|
||||
<I>fld</I> value = <I>yes</I> or <I>no</I>
|
||||
<I>yes</I> = invoke the wall constraint to be compatible with implicit FLD
|
||||
<I>no</I> = invoke the wall constraint in the normal way
|
||||
</PRE>
|
||||
<PRE> <I>pbc</I> value = <I>yes</I> or <I>no</I>
|
||||
<I>no</I> = invoke the wall constraint in the normal way
|
||||
<I>pbc</I> value = <I>yes</I> or <I>no</I>
|
||||
<I>yes</I> = allow periodic boundary in a wall dimension
|
||||
<I>no</I> = require non-perioidic boundaries in any wall dimension
|
||||
</PRE>
|
||||
@ -144,6 +147,16 @@ constant K, and has units (energy/distance^2). The input parameter
|
||||
spring is at the <I>cutoff</I>. This is a repulsive-only spring since the
|
||||
interaction is truncated at the <I>cutoff</I>
|
||||
</P>
|
||||
<P>For any wall, the <I>epsilon</I> and/or <I>sigma</I> parameter can be specified
|
||||
as an <A HREF = "variable.html">equal-style variable</A>, in which case it should be
|
||||
specified as v_name, where name is the variable name. As with a
|
||||
variable wall position, the variable is evaluated each timestep and
|
||||
the result becomes the current epsilon or sigma of the wall.
|
||||
Equal-style variables can specify formulas with various mathematical
|
||||
functions, and include <A HREF = "thermo_style.html">thermo_style</A> command
|
||||
keywords for the simulation box parameters and timestep and elapsed
|
||||
time. Thus it is easy to specify a time-dependent wall interaction.
|
||||
</P>
|
||||
<P>IMPORTANT NOTE: For all of the styles, you must insure that r is
|
||||
always > 0 for all particles in the group, or LAMMPS will generate an
|
||||
error. This means you cannot start your simulation with particles at
|
||||
@ -194,7 +207,8 @@ want.
|
||||
|
||||
<P>Here are examples of variable definitions that move the wall position
|
||||
in a time-dependent fashion using equal-style
|
||||
<A HREF = "variable.html">variables</A>.
|
||||
<A HREF = "variable.html">variables</A>. The wall interaction parameters (epsilon,
|
||||
sigma) could be varied with additional variable definitions.
|
||||
</P>
|
||||
<PRE>variable ramp equal ramp(0,10)
|
||||
fix 1 all wall xlo v_ramp 1.0 1.0 2.5
|
||||
|
||||
@ -25,7 +25,9 @@ face = {xlo} or {xhi} or {ylo} or {yhi} or {zlo} or {zhi} :l
|
||||
constant = number like 0.0 or -30.0 (distance units)
|
||||
variable = "equal-style variable"_variable.html like v_x or v_wiggle
|
||||
epsilon = strength factor for wall-particle interaction (energy or energy/distance^2 units)
|
||||
epsilon can be a variable (see below) :l
|
||||
sigma = size factor for wall-particle interaction (distance units)
|
||||
sigma can be a variable (see below) :l
|
||||
cutoff = distance from wall at which wall-particle interaction is cut off (distance units) :pre
|
||||
zero or more keyword/value pairs may be appended :l
|
||||
keyword = {units} or {fld} :l
|
||||
@ -34,7 +36,7 @@ keyword = {units} or {fld} :l
|
||||
{box} = the wall position is defined in simulation box units
|
||||
{fld} value = {yes} or {no}
|
||||
{yes} = invoke the wall constraint to be compatible with implicit FLD
|
||||
{no} = invoke the wall constraint in the normal way :pre
|
||||
{no} = invoke the wall constraint in the normal way
|
||||
{pbc} value = {yes} or {no}
|
||||
{yes} = allow periodic boundary in a wall dimension
|
||||
{no} = require non-perioidic boundaries in any wall dimension :pre
|
||||
@ -129,6 +131,16 @@ constant K, and has units (energy/distance^2). The input parameter
|
||||
spring is at the {cutoff}. This is a repulsive-only spring since the
|
||||
interaction is truncated at the {cutoff}
|
||||
|
||||
For any wall, the {epsilon} and/or {sigma} parameter can be specified
|
||||
as an "equal-style variable"_variable.html, in which case it should be
|
||||
specified as v_name, where name is the variable name. As with a
|
||||
variable wall position, the variable is evaluated each timestep and
|
||||
the result becomes the current epsilon or sigma of the wall.
|
||||
Equal-style variables can specify formulas with various mathematical
|
||||
functions, and include "thermo_style"_thermo_style.html command
|
||||
keywords for the simulation box parameters and timestep and elapsed
|
||||
time. Thus it is easy to specify a time-dependent wall interaction.
|
||||
|
||||
IMPORTANT NOTE: For all of the styles, you must insure that r is
|
||||
always > 0 for all particles in the group, or LAMMPS will generate an
|
||||
error. This means you cannot start your simulation with particles at
|
||||
@ -179,7 +191,8 @@ want.
|
||||
|
||||
Here are examples of variable definitions that move the wall position
|
||||
in a time-dependent fashion using equal-style
|
||||
"variables"_variable.html.
|
||||
"variables"_variable.html. The wall interaction parameters (epsilon,
|
||||
sigma) could be varied with additional variable definitions.
|
||||
|
||||
variable ramp equal ramp(0,10)
|
||||
fix 1 all wall xlo v_ramp 1.0 1.0 2.5 :pre
|
||||
|
||||
@ -15,7 +15,7 @@
|
||||
</P>
|
||||
<PRE>kspace_style style value
|
||||
</PRE>
|
||||
<UL><LI>style = <I>none</I> or <I>ewald</I> or <I>ewald/disp</I> or <I>ewald/omp</I> or <I>pppm</I> or <I>pppm/cg</I> or <I>pppm/disp</I> or <I>pppm/tip4p</I> or <I>pppm/disp/tip4p</I> or <I>pppm/gpu</I> or <I>pppm/omp</I> or <I>pppm/cg/omp</I> or <I>pppm/tip4p/omp</I> or <I>msm</I>
|
||||
<UL><LI>style = <I>none</I> or <I>ewald</I> or <I>ewald/disp</I> or <I>ewald/omp</I> or <I>pppm</I> or <I>pppm/cg</I> or <I>pppm/disp</I> or <I>pppm/tip4p</I> or <I>pppm/disp/tip4p</I> or <I>pppm/gpu</I> or <I>pppm/omp</I> or <I>pppm/cg/omp</I> or <I>pppm/tip4p/omp</I> or <I>msm</I> or <I>msm/omp</I>
|
||||
|
||||
<PRE> <I>none</I> value = none
|
||||
<I>ewald</I> value = accuracy
|
||||
@ -44,6 +44,8 @@
|
||||
<I>pppm/tip4p/omp</I> value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
<I>msm</I> value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
<I>msm/omp</I> value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
</PRE>
|
||||
|
||||
|
||||
@ -12,7 +12,7 @@ kspace_style command :h3
|
||||
|
||||
kspace_style style value :pre
|
||||
|
||||
style = {none} or {ewald} or {ewald/disp} or {ewald/omp} or {pppm} or {pppm/cg} or {pppm/disp} or {pppm/tip4p} or {pppm/disp/tip4p} or {pppm/gpu} or {pppm/omp} or {pppm/cg/omp} or {pppm/tip4p/omp} or {msm} :ulb,l
|
||||
style = {none} or {ewald} or {ewald/disp} or {ewald/omp} or {pppm} or {pppm/cg} or {pppm/disp} or {pppm/tip4p} or {pppm/disp/tip4p} or {pppm/gpu} or {pppm/omp} or {pppm/cg/omp} or {pppm/tip4p/omp} or {msm} or {msm/omp} :ulb,l
|
||||
{none} value = none
|
||||
{ewald} value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
@ -40,6 +40,8 @@ style = {none} or {ewald} or {ewald/disp} or {ewald/omp} or {pppm} or {pppm/cg}
|
||||
{pppm/tip4p/omp} value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
{msm} value = accuracy
|
||||
accuracy = desired relative error in forces
|
||||
{msm/omp} value = accuracy
|
||||
accuracy = desired relative error in forces :pre
|
||||
:ule
|
||||
|
||||
|
||||
@ -23,6 +23,10 @@
|
||||
</H3>
|
||||
<H3>pair_style born/coul/long/omp command
|
||||
</H3>
|
||||
<H3>pair_style born/coul/msm command
|
||||
</H3>
|
||||
<H3>pair_style born/coul/msm/omp command
|
||||
</H3>
|
||||
<H3>pair_style born/coul/wolf command
|
||||
</H3>
|
||||
<H3>pair_style born/coul/wolf/gpu command
|
||||
@ -33,7 +37,7 @@
|
||||
</P>
|
||||
<PRE>pair_style style args
|
||||
</PRE>
|
||||
<UL><LI>style = <I>born</I> or <I>born/coul/long</I> or <I>born/coul/wolf</I>
|
||||
<UL><LI>style = <I>born</I> or <I>born/coul/long</I> or <I>born/coul/msm</I> or <I>born/coul/wolf</I>
|
||||
<LI>args = list of arguments for a particular style
|
||||
</UL>
|
||||
<PRE> <I>born</I> args = cutoff
|
||||
@ -41,6 +45,9 @@
|
||||
<I>born/coul/long</I> args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
<I>born/coul/msm</I> args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
<I>born/coul/wolf</I> args = alpha cutoff (cutoff2)
|
||||
alpha = damping parameter (inverse distance units)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
@ -57,6 +64,11 @@ pair_style born/coul/long 10.0 8.0
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51
|
||||
</PRE>
|
||||
<PRE>pair_style born/coul/msm 10.0
|
||||
pair_style born/coul/msm 10.0 8.0
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51
|
||||
</PRE>
|
||||
<PRE>pair_style born/coul/wolf 0.25 10.0
|
||||
pair_style born/coul/wolf 0.25 10.0 9.0
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
@ -72,27 +84,24 @@ potential described in <A HREF = "#FumiTosi">(Fumi and Tosi)</A>, given by
|
||||
<P>where sigma is an interaction-dependent length parameter, rho is an
|
||||
ionic-pair dependent length parameter, and Rc is the cutoff.
|
||||
</P>
|
||||
<P>The <I>born/coul/long</I> style adds a Coulombic term as described for the
|
||||
<A HREF = "pair_coul.html">coul/long</A> pair style. An additional damping factor
|
||||
is applied to the Coulombic term so it can be used in conjunction with
|
||||
the <A HREF = "kspace_style.html">kspace_style</A> command and its <I>ewald</I> or <I>pppm</I>
|
||||
option. The Coulombic cutoff specified for this style means that
|
||||
pairwise interactions within this distance are computed directly;
|
||||
interactions outside that distance are computed in reciprocal space.
|
||||
<P>The styles with <I>coul/long</I> or <I>coul/msm</I> add a Coulombic term as
|
||||
described for the <A HREF = "pair_lj.html">lj/cut</A> pair styles. An additional
|
||||
damping factor is applied to the Coulombic term so it can be used in
|
||||
conjunction with the <A HREF = "kspace_style.html">kspace_style</A> command and its
|
||||
<I>ewald</I> or <I>pppm</I> of <I>msm</I> option. The Coulombic cutoff specified for
|
||||
this style means that pairwise interactions within this distance are
|
||||
computed directly; interactions outside that distance are computed in
|
||||
reciprocal space.
|
||||
</P>
|
||||
<P>If one cutoff is specified for the <I>born/coul/long</I> style, it is used
|
||||
for both the A,C,D and Coulombic terms. If two cutoffs are specified,
|
||||
the first is used as the cutoff for the A,C,D terms, and the second is
|
||||
the cutoff for the Coulombic term.
|
||||
<P>If one cutoff is specified for the <I>born/coul/long</I> and
|
||||
<I>born/coul/msm</I> style, it is used for both the A,C,D and Coulombic
|
||||
terms. If two cutoffs are specified, the first is used as the cutoff
|
||||
for the A,C,D terms, and the second is the cutoff for the Coulombic
|
||||
term.
|
||||
</P>
|
||||
<P>The <I>born/coul/wolf</I> style adds a Coulombic term as described for the
|
||||
Wolf potential in the <A HREF = "pair_coul.html">coul/wolf</A> pair style.
|
||||
</P>
|
||||
<P>If one cutoff is specified for the <I>born/coulk/long</I> style, it is used
|
||||
for both the A,C,D and Coulombic terms. If two cutoffs are specified,
|
||||
the first is used as the cutoff for the A,C,D terms, and the second is
|
||||
the cutoff for the Coulombic term.
|
||||
</P>
|
||||
<P>Note that these potentials are related to the <A HREF = "pair_born.html">Buckingham
|
||||
potential</A>.
|
||||
</P>
|
||||
|
||||
@ -14,6 +14,8 @@ pair_style born/coul/long command :h3
|
||||
pair_style born/coul/long/cuda command :h3
|
||||
pair_style born/coul/long/gpu command :h3
|
||||
pair_style born/coul/long/omp command :h3
|
||||
pair_style born/coul/msm command :h3
|
||||
pair_style born/coul/msm/omp command :h3
|
||||
pair_style born/coul/wolf command :h3
|
||||
pair_style born/coul/wolf/gpu command :h3
|
||||
pair_style born/coul/wolf/omp command :h3
|
||||
@ -22,13 +24,16 @@ pair_style born/coul/wolf/omp command :h3
|
||||
|
||||
pair_style style args :pre
|
||||
|
||||
style = {born} or {born/coul/long} or {born/coul/wolf}
|
||||
style = {born} or {born/coul/long} or {born/coul/msm} or {born/coul/wolf}
|
||||
args = list of arguments for a particular style :ul
|
||||
{born} args = cutoff
|
||||
cutoff = global cutoff for non-Coulombic interactions (distance units)
|
||||
{born/coul/long} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{born/coul/msm} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{born/coul/wolf} args = alpha cutoff (cutoff2)
|
||||
alpha = damping parameter (inverse distance units)
|
||||
cutoff = global cutoff for non-Coulombic (and Coulombic if only 1 arg) (distance units)
|
||||
@ -45,6 +50,11 @@ pair_style born/coul/long 10.0 8.0
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
|
||||
|
||||
pair_style born/coul/msm 10.0
|
||||
pair_style born/coul/msm 10.0 8.0
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 :pre
|
||||
|
||||
pair_style born/coul/wolf 0.25 10.0
|
||||
pair_style born/coul/wolf 0.25 10.0 9.0
|
||||
pair_coeff * * 6.08 0.317 2.340 24.18 11.51
|
||||
@ -60,27 +70,24 @@ potential described in "(Fumi and Tosi)"_#FumiTosi, given by
|
||||
where sigma is an interaction-dependent length parameter, rho is an
|
||||
ionic-pair dependent length parameter, and Rc is the cutoff.
|
||||
|
||||
The {born/coul/long} style adds a Coulombic term as described for the
|
||||
"coul/long"_pair_coul.html pair style. An additional damping factor
|
||||
is applied to the Coulombic term so it can be used in conjunction with
|
||||
the "kspace_style"_kspace_style.html command and its {ewald} or {pppm}
|
||||
option. The Coulombic cutoff specified for this style means that
|
||||
pairwise interactions within this distance are computed directly;
|
||||
interactions outside that distance are computed in reciprocal space.
|
||||
The styles with {coul/long} or {coul/msm} add a Coulombic term as
|
||||
described for the "lj/cut"_pair_lj.html pair styles. An additional
|
||||
damping factor is applied to the Coulombic term so it can be used in
|
||||
conjunction with the "kspace_style"_kspace_style.html command and its
|
||||
{ewald} or {pppm} of {msm} option. The Coulombic cutoff specified for
|
||||
this style means that pairwise interactions within this distance are
|
||||
computed directly; interactions outside that distance are computed in
|
||||
reciprocal space.
|
||||
|
||||
If one cutoff is specified for the {born/coul/long} style, it is used
|
||||
for both the A,C,D and Coulombic terms. If two cutoffs are specified,
|
||||
the first is used as the cutoff for the A,C,D terms, and the second is
|
||||
the cutoff for the Coulombic term.
|
||||
If one cutoff is specified for the {born/coul/long} and
|
||||
{born/coul/msm} style, it is used for both the A,C,D and Coulombic
|
||||
terms. If two cutoffs are specified, the first is used as the cutoff
|
||||
for the A,C,D terms, and the second is the cutoff for the Coulombic
|
||||
term.
|
||||
|
||||
The {born/coul/wolf} style adds a Coulombic term as described for the
|
||||
Wolf potential in the "coul/wolf"_pair_coul.html pair style.
|
||||
|
||||
If one cutoff is specified for the {born/coulk/long} style, it is used
|
||||
for both the A,C,D and Coulombic terms. If two cutoffs are specified,
|
||||
the first is used as the cutoff for the A,C,D terms, and the second is
|
||||
the cutoff for the Coulombic term.
|
||||
|
||||
Note that these potentials are related to the "Buckingham
|
||||
potential"_pair_born.html.
|
||||
|
||||
|
||||
@ -33,11 +33,15 @@
|
||||
</H3>
|
||||
<H3>pair_style buck/coul/long/omp command
|
||||
</H3>
|
||||
<H3>pair_style buck/coul/msm command
|
||||
</H3>
|
||||
<H3>pair_style buck/coul/msm/omp command
|
||||
</H3>
|
||||
<P><B>Syntax:</B>
|
||||
</P>
|
||||
<PRE>pair_style style args
|
||||
</PRE>
|
||||
<UL><LI>style = <I>buck</I> or <I>buck/coul/cut</I> or <I>buck/coul/long</I>
|
||||
<UL><LI>style = <I>buck</I> or <I>buck/coul/cut</I> or <I>buck/coul/long</I> or <I>buck/coul/msm</I>
|
||||
<LI>args = list of arguments for a particular style
|
||||
</UL>
|
||||
<PRE> <I>buck</I> args = cutoff
|
||||
@ -46,6 +50,9 @@
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
<I>buck/coul/long</I> args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
<I>buck/coul/msm</I> args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
</PRE>
|
||||
@ -66,6 +73,11 @@ pair_style buck/coul/long 10.0 8.0
|
||||
pair_coeff * * 100.0 1.5 200.0
|
||||
pair_coeff 1 1 100.0 1.5 200.0 9.0
|
||||
</PRE>
|
||||
<PRE>pair_style buck/coul/msm 10.0
|
||||
pair_style buck/coul/msm 10.0 8.0
|
||||
pair_coeff * * 100.0 1.5 200.0
|
||||
pair_coeff 1 1 100.0 1.5 200.0 9.0
|
||||
</PRE>
|
||||
<P><B>Description:</B>
|
||||
</P>
|
||||
<P>The <I>buck</I> style computes a Buckingham potential (exp/6 instead of
|
||||
@ -76,20 +88,20 @@ Lennard-Jones 12/6) given by
|
||||
<P>where rho is an ionic-pair dependent length parameter, and Rc is the
|
||||
cutoff.
|
||||
</P>
|
||||
<P>The <I>buck/coul/cut</I> and <I>buck/coul/long</I> styles add a Coulombic term
|
||||
as described for the <A HREF = "pair_lj.html">lj/cut</A> pair styles. For
|
||||
<I>buck/coul/long</I>, an additional damping factor is applied to the
|
||||
Coulombic term so it can be used in conjunction with the
|
||||
<A HREF = "kspace_style.html">kspace_style</A> command and its <I>ewald</I> or <I>pppm</I>
|
||||
option. The Coulombic cutoff specified for this style means that
|
||||
pairwise interactions within this distance are computed directly;
|
||||
<P>The styles with <I>coul/cut</I> or <I>coul/long</I> or <I>coul/msm</I> add a
|
||||
Coulombic term as described for the <A HREF = "pair_lj.html">lj/cut</A> pair styles.
|
||||
For <I>buck/coul/long</I> and <I>buc/coul/msm</I>, an additional damping factor
|
||||
is applied to the Coulombic term so it can be used in conjunction with
|
||||
the <A HREF = "kspace_style.html">kspace_style</A> command and its <I>ewald</I> or <I>pppm</I>
|
||||
or <I>msm</I> option. The Coulombic cutoff specified for this style means
|
||||
that pairwise interactions within this distance are computed directly;
|
||||
interactions outside that distance are computed in reciprocal space.
|
||||
</P>
|
||||
<P>If one cutoff is specified for the <I>born/coul/cut</I> and
|
||||
<I>born/coulk/long</I> styles, it is used for both the A,C and Coulombic
|
||||
terms. If two cutoffs are specified, the first is used as the cutoff
|
||||
for the A,C terms, and the second is the cutoff for the Coulombic
|
||||
term.
|
||||
<I>born/coul/long</I> and <I>born/coul/msm</I> styles, it is used for both the
|
||||
A,C and Coulombic terms. If two cutoffs are specified, the first is
|
||||
used as the cutoff for the A,C terms, and the second is the cutoff for
|
||||
the Coulombic term.
|
||||
</P>
|
||||
<P>Note that these potentials are related to the <A HREF = "pair_born.html">Born-Mayer-Huggins
|
||||
potential</A>.
|
||||
|
||||
@ -18,12 +18,14 @@ pair_style buck/coul/long command :h3
|
||||
pair_style buck/coul/long/cuda command :h3
|
||||
pair_style buck/coul/long/gpu command :h3
|
||||
pair_style buck/coul/long/omp command :h3
|
||||
pair_style buck/coul/msm command :h3
|
||||
pair_style buck/coul/msm/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
pair_style style args :pre
|
||||
|
||||
style = {buck} or {buck/coul/cut} or {buck/coul/long}
|
||||
style = {buck} or {buck/coul/cut} or {buck/coul/long} or {buck/coul/msm}
|
||||
args = list of arguments for a particular style :ul
|
||||
{buck} args = cutoff
|
||||
cutoff = global cutoff for Buckingham interactions (distance units)
|
||||
@ -31,6 +33,9 @@ args = list of arguments for a particular style :ul
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{buck/coul/long} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{buck/coul/msm} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for Buckingham (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units) :pre
|
||||
|
||||
@ -51,6 +56,11 @@ pair_style buck/coul/long 10.0 8.0
|
||||
pair_coeff * * 100.0 1.5 200.0
|
||||
pair_coeff 1 1 100.0 1.5 200.0 9.0 :pre
|
||||
|
||||
pair_style buck/coul/msm 10.0
|
||||
pair_style buck/coul/msm 10.0 8.0
|
||||
pair_coeff * * 100.0 1.5 200.0
|
||||
pair_coeff 1 1 100.0 1.5 200.0 9.0 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The {buck} style computes a Buckingham potential (exp/6 instead of
|
||||
@ -61,20 +71,20 @@ Lennard-Jones 12/6) given by
|
||||
where rho is an ionic-pair dependent length parameter, and Rc is the
|
||||
cutoff.
|
||||
|
||||
The {buck/coul/cut} and {buck/coul/long} styles add a Coulombic term
|
||||
as described for the "lj/cut"_pair_lj.html pair styles. For
|
||||
{buck/coul/long}, an additional damping factor is applied to the
|
||||
Coulombic term so it can be used in conjunction with the
|
||||
"kspace_style"_kspace_style.html command and its {ewald} or {pppm}
|
||||
option. The Coulombic cutoff specified for this style means that
|
||||
pairwise interactions within this distance are computed directly;
|
||||
The styles with {coul/cut} or {coul/long} or {coul/msm} add a
|
||||
Coulombic term as described for the "lj/cut"_pair_lj.html pair styles.
|
||||
For {buck/coul/long} and {buc/coul/msm}, an additional damping factor
|
||||
is applied to the Coulombic term so it can be used in conjunction with
|
||||
the "kspace_style"_kspace_style.html command and its {ewald} or {pppm}
|
||||
or {msm} option. The Coulombic cutoff specified for this style means
|
||||
that pairwise interactions within this distance are computed directly;
|
||||
interactions outside that distance are computed in reciprocal space.
|
||||
|
||||
If one cutoff is specified for the {born/coul/cut} and
|
||||
{born/coulk/long} styles, it is used for both the A,C and Coulombic
|
||||
terms. If two cutoffs are specified, the first is used as the cutoff
|
||||
for the A,C terms, and the second is the cutoff for the Coulombic
|
||||
term.
|
||||
{born/coul/long} and {born/coul/msm} styles, it is used for both the
|
||||
A,C and Coulombic terms. If two cutoffs are specified, the first is
|
||||
used as the cutoff for the A,C terms, and the second is the cutoff for
|
||||
the Coulombic term.
|
||||
|
||||
Note that these potentials are related to the "Born-Mayer-Huggins
|
||||
potential"_pair_born.html.
|
||||
|
||||
@ -31,11 +31,15 @@
|
||||
</H3>
|
||||
<H3>pair_style lj/charmm/coul/long/omp command
|
||||
</H3>
|
||||
<H3>pair_style lj/charmm/coul/msm command
|
||||
</H3>
|
||||
<H3>pair_style lj/charmm/coul/msm/omp command
|
||||
</H3>
|
||||
<P><B>Syntax:</B>
|
||||
</P>
|
||||
<PRE>pair_style style args
|
||||
</PRE>
|
||||
<UL><LI>style = <I>lj/charmm/coul/charmm</I> or <I>lj/charmm/coul/charmm/implicit</I> or <I>lj/charmm/coul/long</I>
|
||||
<UL><LI>style = <I>lj/charmm/coul/charmm</I> or <I>lj/charmm/coul/charmm/implicit</I> or <I>lj/charmm/coul/long</I> or <I>lj/charmm/coul/msm</I>
|
||||
<LI>args = list of arguments for a particular style
|
||||
</UL>
|
||||
<PRE> <I>lj/charmm/coul/charmm</I> args = inner outer (inner2) (outer2)
|
||||
@ -45,6 +49,9 @@
|
||||
inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
|
||||
inner2, outer2 = global switching cutoffs for Coulombic (optional)
|
||||
<I>lj/charmm/coul/long</I> args = inner outer (cutoff)
|
||||
inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
|
||||
cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args)
|
||||
<I>lj/charmm/coul/msm</I> args = inner outer (cutoff)
|
||||
inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
|
||||
cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args)
|
||||
</PRE>
|
||||
@ -65,6 +72,11 @@ pair_style lj/charmm/coul/long 8.0 10.0 9.0
|
||||
pair_coeff * * 100.0 2.0
|
||||
pair_coeff 1 1 100.0 2.0 150.0 3.5
|
||||
</PRE>
|
||||
<PRE>pair_style lj/charmm/coul/msm 8.0 10.0
|
||||
pair_style lj/charmm/coul/msm 8.0 10.0 9.0
|
||||
pair_coeff * * 100.0 2.0
|
||||
pair_coeff 1 1 100.0 2.0 150.0 3.5
|
||||
</PRE>
|
||||
<P><B>Description:</B>
|
||||
</P>
|
||||
<P>The <I>lj/charmm</I> styles compute LJ and Coulombic interactions with an
|
||||
@ -91,13 +103,13 @@ which is a simple model for an implicit solvent with additional
|
||||
screening. It is designed for use in a simulation of an unsolvated
|
||||
biomolecule (no explicit water molecules).
|
||||
</P>
|
||||
<P>Styles <I>lj/charmm/coul/long</I> computes the same formulas as style
|
||||
<I>lj/charmm/coul/charmm</I> except that an additional damping factor is
|
||||
applied to the Coulombic term, as in the discussion for pair style
|
||||
<I>lj/cut/coul/long</I>. Only one Coulombic cutoff is specified for
|
||||
<I>lj/charmm/coul/long</I>; if only 2 arguments are used in the pair_style
|
||||
command, then the outer LJ cutoff is used as the single Coulombic
|
||||
cutoff.
|
||||
<P>Styles <I>lj/charmm/coul/long</I> and <I>lj/charmm/coul/msm</I> compute the same
|
||||
formulas as style <I>lj/charmm/coul/charmm</I> except that an additional
|
||||
damping factor is applied to the Coulombic term, as described for the
|
||||
<A HREF = "pair_lj.html">lj/cut</A> pair styles. Only one Coulombic cutoff is
|
||||
specified for <I>lj/charmm/coul/long</I> and <I>lj/charmm/coul/msm</I>; if only
|
||||
2 arguments are used in the pair_style command, then the outer LJ
|
||||
cutoff is used as the single Coulombic cutoff.
|
||||
</P>
|
||||
<P>The following coefficients must be defined for each pair of atoms
|
||||
types via the <A HREF = "pair_coeff.html">pair_coeff</A> command as in the examples
|
||||
|
||||
@ -17,12 +17,14 @@ pair_style lj/charmm/coul/long/cuda command :h3
|
||||
pair_style lj/charmm/coul/long/gpu command :h3
|
||||
pair_style lj/charmm/coul/long/opt command :h3
|
||||
pair_style lj/charmm/coul/long/omp command :h3
|
||||
pair_style lj/charmm/coul/msm command :h3
|
||||
pair_style lj/charmm/coul/msm/omp command :h3
|
||||
|
||||
[Syntax:]
|
||||
|
||||
pair_style style args :pre
|
||||
|
||||
style = {lj/charmm/coul/charmm} or {lj/charmm/coul/charmm/implicit} or {lj/charmm/coul/long}
|
||||
style = {lj/charmm/coul/charmm} or {lj/charmm/coul/charmm/implicit} or {lj/charmm/coul/long} or {lj/charmm/coul/msm}
|
||||
args = list of arguments for a particular style :ul
|
||||
{lj/charmm/coul/charmm} args = inner outer (inner2) (outer2)
|
||||
inner, outer = global switching cutoffs for Lennard Jones (and Coulombic if only 2 args)
|
||||
@ -31,6 +33,9 @@ args = list of arguments for a particular style :ul
|
||||
inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
|
||||
inner2, outer2 = global switching cutoffs for Coulombic (optional)
|
||||
{lj/charmm/coul/long} args = inner outer (cutoff)
|
||||
inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
|
||||
cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args)
|
||||
{lj/charmm/coul/msm} args = inner outer (cutoff)
|
||||
inner, outer = global switching cutoffs for LJ (and Coulombic if only 2 args)
|
||||
cutoff = global cutoff for Coulombic (optional, outer is Coulombic cutoff if only 2 args) :pre
|
||||
|
||||
@ -51,6 +56,11 @@ pair_style lj/charmm/coul/long 8.0 10.0 9.0
|
||||
pair_coeff * * 100.0 2.0
|
||||
pair_coeff 1 1 100.0 2.0 150.0 3.5 :pre
|
||||
|
||||
pair_style lj/charmm/coul/msm 8.0 10.0
|
||||
pair_style lj/charmm/coul/msm 8.0 10.0 9.0
|
||||
pair_coeff * * 100.0 2.0
|
||||
pair_coeff 1 1 100.0 2.0 150.0 3.5 :pre
|
||||
|
||||
[Description:]
|
||||
|
||||
The {lj/charmm} styles compute LJ and Coulombic interactions with an
|
||||
@ -77,13 +87,13 @@ which is a simple model for an implicit solvent with additional
|
||||
screening. It is designed for use in a simulation of an unsolvated
|
||||
biomolecule (no explicit water molecules).
|
||||
|
||||
Styles {lj/charmm/coul/long} computes the same formulas as style
|
||||
{lj/charmm/coul/charmm} except that an additional damping factor is
|
||||
applied to the Coulombic term, as in the discussion for pair style
|
||||
{lj/cut/coul/long}. Only one Coulombic cutoff is specified for
|
||||
{lj/charmm/coul/long}; if only 2 arguments are used in the pair_style
|
||||
command, then the outer LJ cutoff is used as the single Coulombic
|
||||
cutoff.
|
||||
Styles {lj/charmm/coul/long} and {lj/charmm/coul/msm} compute the same
|
||||
formulas as style {lj/charmm/coul/charmm} except that an additional
|
||||
damping factor is applied to the Coulombic term, as described for the
|
||||
"lj/cut"_pair_lj.html pair styles. Only one Coulombic cutoff is
|
||||
specified for {lj/charmm/coul/long} and {lj/charmm/coul/msm}; if only
|
||||
2 arguments are used in the pair_style command, then the outer LJ
|
||||
cutoff is used as the single Coulombic cutoff.
|
||||
|
||||
The following coefficients must be defined for each pair of atoms
|
||||
types via the "pair_coeff"_pair_coeff.html command as in the examples
|
||||
|
||||
@ -27,6 +27,10 @@
|
||||
</H3>
|
||||
<H3>pair_style coul/long/gpu command
|
||||
</H3>
|
||||
<H3>pair_style coul/msm command
|
||||
</H3>
|
||||
<H3>pair_style coul/msm/omp command
|
||||
</H3>
|
||||
<H3>pair_style coul/wolf command
|
||||
</H3>
|
||||
<H3>pair_style coul/wolf/omp command
|
||||
@ -60,6 +64,9 @@ pair_coeff * *
|
||||
<PRE>pair_style coul/long 10.0
|
||||
pair_coeff * *
|
||||
</PRE>
|
||||
<PRE>pair_style coul/msm 10.0
|
||||
pair_coeff * *
|
||||
</PRE>
|
||||
<PRE>pair_style coul/wolf 0.2 9.0
|
||||
pair_coeff * *
|
||||
</PRE>
|
||||
@ -112,13 +119,13 @@ forces calcluated by the Wolf summation method approach those of the
|
||||
Ewald sum. So it is a means of getting effective long-range
|
||||
interactions with a short-range potential.
|
||||
</P>
|
||||
<P>Style <I>coul/long</I> computes the same Coulombic interactions as style
|
||||
<I>coul/cut</I> except that an additional damping factor is applied so it
|
||||
can be used in conjunction with the <A HREF = "kspace_style.html">kspace_style</A>
|
||||
command and its <I>ewald</I> or <I>pppm</I> option. The Coulombic cutoff
|
||||
specified for this style means that pairwise interactions within this
|
||||
distance are computed directly; interactions outside that distance are
|
||||
computed in reciprocal space.
|
||||
<P>Styles <I>coul/long</I> and <I>coul/msm</I> compute the same Coulombic
|
||||
interactions as style <I>coul/cut</I> except that an additional damping
|
||||
factor is applied so it can be used in conjunction with the
|
||||
<A HREF = "kspace_style.html">kspace_style</A> command and its <I>ewald</I> or <I>pppm</I>
|
||||
option. The Coulombic cutoff specified for this style means that
|
||||
pairwise interactions within this distance are computed directly;
|
||||
interactions outside that distance are computed in reciprocal space.
|
||||
</P>
|
||||
<P>These potentials are designed to be combined with other pair
|
||||
potentials via the <A HREF = "pair_hybrid.html">pair_style hybrid/overlay</A>
|
||||
@ -138,9 +145,10 @@ commands, or by mixing as described below:
|
||||
If it is not used (as in some of the examples above), the default
|
||||
global value specified in the pair_style command is used.
|
||||
</P>
|
||||
<P>For <I>coul/long</I> no cutoff can be specified for an individual I,J type
|
||||
pair via the pair_coeff command. All type pairs use the same global
|
||||
Coulombic cutoff specified in the pair_style command.
|
||||
<P>For <I>coul/long</I> and <I>coul/msm</I> no cutoff can be specified for an
|
||||
individual I,J type pair via the pair_coeff command. All type pairs
|
||||
use the same global Coulombic cutoff specified in the pair_style
|
||||
command.
|
||||
</P>
|
||||
<HR>
|
||||
|
||||
|
||||
@ -15,6 +15,8 @@ pair_style coul/dsf/gpu command :h3
|
||||
pair_style coul/long command :h3
|
||||
pair_style coul/long/omp command :h3
|
||||
pair_style coul/long/gpu command :h3
|
||||
pair_style coul/msm command :h3
|
||||
pair_style coul/msm/omp command :h3
|
||||
pair_style coul/wolf command :h3
|
||||
pair_style coul/wolf/omp command :h3
|
||||
|
||||
@ -47,6 +49,9 @@ pair_coeff * * :pre
|
||||
pair_style coul/long 10.0
|
||||
pair_coeff * * :pre
|
||||
|
||||
pair_style coul/msm 10.0
|
||||
pair_coeff * * :pre
|
||||
|
||||
pair_style coul/wolf 0.2 9.0
|
||||
pair_coeff * * :pre
|
||||
|
||||
@ -99,13 +104,13 @@ forces calcluated by the Wolf summation method approach those of the
|
||||
Ewald sum. So it is a means of getting effective long-range
|
||||
interactions with a short-range potential.
|
||||
|
||||
Style {coul/long} computes the same Coulombic interactions as style
|
||||
{coul/cut} except that an additional damping factor is applied so it
|
||||
can be used in conjunction with the "kspace_style"_kspace_style.html
|
||||
command and its {ewald} or {pppm} option. The Coulombic cutoff
|
||||
specified for this style means that pairwise interactions within this
|
||||
distance are computed directly; interactions outside that distance are
|
||||
computed in reciprocal space.
|
||||
Styles {coul/long} and {coul/msm} compute the same Coulombic
|
||||
interactions as style {coul/cut} except that an additional damping
|
||||
factor is applied so it can be used in conjunction with the
|
||||
"kspace_style"_kspace_style.html command and its {ewald} or {pppm}
|
||||
option. The Coulombic cutoff specified for this style means that
|
||||
pairwise interactions within this distance are computed directly;
|
||||
interactions outside that distance are computed in reciprocal space.
|
||||
|
||||
These potentials are designed to be combined with other pair
|
||||
potentials via the "pair_style hybrid/overlay"_pair_hybrid.html
|
||||
@ -125,9 +130,10 @@ For {coul/cut} and {coul/debye}, the cutoff coefficient is optional.
|
||||
If it is not used (as in some of the examples above), the default
|
||||
global value specified in the pair_style command is used.
|
||||
|
||||
For {coul/long} no cutoff can be specified for an individual I,J type
|
||||
pair via the pair_coeff command. All type pairs use the same global
|
||||
Coulombic cutoff specified in the pair_style command.
|
||||
For {coul/long} and {coul/msm} no cutoff can be specified for an
|
||||
individual I,J type pair via the pair_coeff command. All type pairs
|
||||
use the same global Coulombic cutoff specified in the pair_style
|
||||
command.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -51,6 +51,10 @@
|
||||
</H3>
|
||||
<H3>pair_style lj/cut/coul/long/omp command
|
||||
</H3>
|
||||
<H3>pair_style lj/cut/coul/msm command
|
||||
</H3>
|
||||
<H3>pair_style lj/cut/coul/msm/omp command
|
||||
</H3>
|
||||
<H3>pair_style lj/cut/tip4p/long command
|
||||
</H3>
|
||||
<H3>pair_style lj/cut/tip4p/long/omp command
|
||||
@ -61,7 +65,7 @@
|
||||
</P>
|
||||
<PRE>pair_style style args
|
||||
</PRE>
|
||||
<UL><LI>style = <I>lj/cut</I> or <I>lj/cut/coul/cut</I> or <I>lj/cut/coul/debye</I> or <I>lj/cut/coul/dsf</I> or <I>lj/cut/coul/long</I> or <I>lj/cut/tip4p/long</I>
|
||||
<UL><LI>style = <I>lj/cut</I> or <I>lj/cut/coul/cut</I> or <I>lj/cut/coul/debye</I> or <I>lj/cut/coul/dsf</I> or <I>lj/cut/coul/long</I> or <I>lj/cut/coul/msm</I> or <I>lj/cut/tip4p/long</I>
|
||||
<LI>args = list of arguments for a particular style
|
||||
</UL>
|
||||
<PRE> <I>lj/cut</I> args = cutoff
|
||||
@ -80,6 +84,9 @@
|
||||
<I>lj/cut/coul/long</I> args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
<I>lj/cut/coul/msm</I> args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
<I>lj/cut/tip4p/long</I> args = otype htype btype atype qdist cutoff (cutoff2)
|
||||
otype,htype = atom types for TIP4P O and H
|
||||
btype,atype = bond and angle types for TIP4P waters
|
||||
@ -114,6 +121,11 @@ pair_style lj/cut/coul/long 10.0 8.0
|
||||
pair_coeff * * 100.0 3.0
|
||||
pair_coeff 1 1 100.0 3.5 9.0
|
||||
</PRE>
|
||||
<PRE>pair_style lj/cut/coul/msm 10.0
|
||||
pair_style lj/cut/coul/msm 10.0 8.0
|
||||
pair_coeff * * 100.0 3.0
|
||||
pair_coeff 1 1 100.0 3.5 9.0
|
||||
</PRE>
|
||||
<PRE>pair_style lj/cut/tip4p/long 1 2 7 8 0.15 12.0
|
||||
pair_style lj/cut/tip4p/long 1 2 7 8 0.15 12.0 10.0
|
||||
pair_coeff * * 100.0 3.0
|
||||
@ -164,13 +176,14 @@ is enforced by shifting the potential through placement of image
|
||||
charges on the cutoff sphere. Convergence can often be improved by
|
||||
setting <I>alpha</I> to a small non-zero value.
|
||||
</P>
|
||||
<P>Style <I>lj/cut/coul/long</I> computes the same Coulombic interactions as
|
||||
style <I>lj/cut/coul/cut</I> except that an additional damping factor is
|
||||
applied to the Coulombic term so it can be used in conjunction with
|
||||
the <A HREF = "kspace_style.html">kspace_style</A> command and its <I>ewald</I> or <I>pppm</I>
|
||||
option. The Coulombic cutoff specified for this style means that
|
||||
pairwise interactions within this distance are computed directly;
|
||||
interactions outside that distance are computed in reciprocal space.
|
||||
<P>Styles <I>lj/cut/coul/long</I> and <I>lj/cut/coul/msm</I> compute the same
|
||||
Coulombic interactions as style <I>lj/cut/coul/cut</I> except that an
|
||||
additional damping factor is applied to the Coulombic term so it can
|
||||
be used in conjunction with the <A HREF = "kspace_style.html">kspace_style</A>
|
||||
command and its <I>ewald</I> or <I>pppm</I> option. The Coulombic cutoff
|
||||
specified for this style means that pairwise interactions within this
|
||||
distance are computed directly; interactions outside that distance are
|
||||
computed in reciprocal space.
|
||||
</P>
|
||||
<P>Style <I>lj/cut/tip4p/long</I> implements the TIP4P water model of
|
||||
<A HREF = "#Jorgensen">(Jorgensen)</A>, which introduces a massless site located a
|
||||
@ -218,10 +231,10 @@ are specified, they are used as the LJ and Coulombic cutoffs for this
|
||||
type pair. You cannot specify 2 cutoffs for style <I>lj/cut</I>, since it
|
||||
has no Coulombic terms.
|
||||
</P>
|
||||
<P>For <I>lj/cut/coul/long</I> and <I>lj/cut/tip4p/long</I> only the LJ cutoff
|
||||
can be specified since a Coulombic cutoff cannot be specified for an
|
||||
individual I,J type pair. All type pairs use the same global
|
||||
Coulombic cutoff specified in the pair_style command.
|
||||
<P>For <I>lj/cut/coul/long</I> and <I>lj/cut/coul/msm</I> and <I>lj/cut/tip4p/long</I>
|
||||
only the LJ cutoff can be specified since a Coulombic cutoff cannot be
|
||||
specified for an individual I,J type pair. All type pairs use the
|
||||
same global Coulombic cutoff specified in the pair_style command.
|
||||
</P>
|
||||
<HR>
|
||||
|
||||
|
||||
@ -27,6 +27,8 @@ pair_style lj/cut/coul/long/cuda command :h3
|
||||
pair_style lj/cut/coul/long/gpu command :h3
|
||||
pair_style lj/cut/coul/long/opt command :h3
|
||||
pair_style lj/cut/coul/long/omp command :h3
|
||||
pair_style lj/cut/coul/msm command :h3
|
||||
pair_style lj/cut/coul/msm/omp command :h3
|
||||
pair_style lj/cut/tip4p/long command :h3
|
||||
pair_style lj/cut/tip4p/long/omp command :h3
|
||||
pair_style lj/cut/tip4p/long/opt command :h3
|
||||
@ -35,7 +37,7 @@ pair_style lj/cut/tip4p/long/opt command :h3
|
||||
|
||||
pair_style style args :pre
|
||||
|
||||
style = {lj/cut} or {lj/cut/coul/cut} or {lj/cut/coul/debye} or {lj/cut/coul/dsf} or {lj/cut/coul/long} or {lj/cut/tip4p/long}
|
||||
style = {lj/cut} or {lj/cut/coul/cut} or {lj/cut/coul/debye} or {lj/cut/coul/dsf} or {lj/cut/coul/long} or {lj/cut/coul/msm} or {lj/cut/tip4p/long}
|
||||
args = list of arguments for a particular style :ul
|
||||
{lj/cut} args = cutoff
|
||||
cutoff = global cutoff for Lennard Jones interactions (distance units)
|
||||
@ -53,6 +55,9 @@ args = list of arguments for a particular style :ul
|
||||
{lj/cut/coul/long} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{lj/cut/coul/msm} args = cutoff (cutoff2)
|
||||
cutoff = global cutoff for LJ (and Coulombic if only 1 arg) (distance units)
|
||||
cutoff2 = global cutoff for Coulombic (optional) (distance units)
|
||||
{lj/cut/tip4p/long} args = otype htype btype atype qdist cutoff (cutoff2)
|
||||
otype,htype = atom types for TIP4P O and H
|
||||
btype,atype = bond and angle types for TIP4P waters
|
||||
@ -87,6 +92,11 @@ pair_style lj/cut/coul/long 10.0 8.0
|
||||
pair_coeff * * 100.0 3.0
|
||||
pair_coeff 1 1 100.0 3.5 9.0 :pre
|
||||
|
||||
pair_style lj/cut/coul/msm 10.0
|
||||
pair_style lj/cut/coul/msm 10.0 8.0
|
||||
pair_coeff * * 100.0 3.0
|
||||
pair_coeff 1 1 100.0 3.5 9.0 :pre
|
||||
|
||||
pair_style lj/cut/tip4p/long 1 2 7 8 0.15 12.0
|
||||
pair_style lj/cut/tip4p/long 1 2 7 8 0.15 12.0 10.0
|
||||
pair_coeff * * 100.0 3.0
|
||||
@ -137,13 +147,14 @@ is enforced by shifting the potential through placement of image
|
||||
charges on the cutoff sphere. Convergence can often be improved by
|
||||
setting {alpha} to a small non-zero value.
|
||||
|
||||
Style {lj/cut/coul/long} computes the same Coulombic interactions as
|
||||
style {lj/cut/coul/cut} except that an additional damping factor is
|
||||
applied to the Coulombic term so it can be used in conjunction with
|
||||
the "kspace_style"_kspace_style.html command and its {ewald} or {pppm}
|
||||
option. The Coulombic cutoff specified for this style means that
|
||||
pairwise interactions within this distance are computed directly;
|
||||
interactions outside that distance are computed in reciprocal space.
|
||||
Styles {lj/cut/coul/long} and {lj/cut/coul/msm} compute the same
|
||||
Coulombic interactions as style {lj/cut/coul/cut} except that an
|
||||
additional damping factor is applied to the Coulombic term so it can
|
||||
be used in conjunction with the "kspace_style"_kspace_style.html
|
||||
command and its {ewald} or {pppm} option. The Coulombic cutoff
|
||||
specified for this style means that pairwise interactions within this
|
||||
distance are computed directly; interactions outside that distance are
|
||||
computed in reciprocal space.
|
||||
|
||||
Style {lj/cut/tip4p/long} implements the TIP4P water model of
|
||||
"(Jorgensen)"_#Jorgensen, which introduces a massless site located a
|
||||
@ -191,10 +202,10 @@ are specified, they are used as the LJ and Coulombic cutoffs for this
|
||||
type pair. You cannot specify 2 cutoffs for style {lj/cut}, since it
|
||||
has no Coulombic terms.
|
||||
|
||||
For {lj/cut/coul/long} and {lj/cut/tip4p/long} only the LJ cutoff
|
||||
can be specified since a Coulombic cutoff cannot be specified for an
|
||||
individual I,J type pair. All type pairs use the same global
|
||||
Coulombic cutoff specified in the pair_style command.
|
||||
For {lj/cut/coul/long} and {lj/cut/coul/msm} and {lj/cut/tip4p/long}
|
||||
only the LJ cutoff can be specified since a Coulombic cutoff cannot be
|
||||
specified for an individual I,J type pair. All type pairs use the
|
||||
same global Coulombic cutoff specified in the pair_style command.
|
||||
|
||||
:line
|
||||
|
||||
|
||||
@ -31,6 +31,7 @@
|
||||
dim = <I>x</I> or <I>y</I> or <I>z</I> = axis of cylinder
|
||||
c1,c2 = coords of cylinder axis in other 2 dimensions (distance units)
|
||||
radius = cylinder radius (distance units)
|
||||
radius can be a variable (see below)
|
||||
lo,hi = bounds of cylinder in dim (distance units)
|
||||
<I>plane</I> args = px py pz nx ny nz
|
||||
px,py,pz = point on the plane (distance units)
|
||||
@ -43,6 +44,7 @@
|
||||
<I>sphere</I> args = x y z radius
|
||||
x,y,z = center of sphere (distance units)
|
||||
radius = radius of sphere (distance units)
|
||||
radius can be a variable (see below)
|
||||
<I>union</I> args = N reg-ID1 reg-ID2 ...
|
||||
N = # of regions to follow, must be 2 or greater
|
||||
reg-ID1,reg-ID2, ... = IDs of regions to join together
|
||||
@ -175,6 +177,17 @@ since if the maximum tilt factor is 5 (as in this example), then
|
||||
configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all
|
||||
geometrically equivalent.
|
||||
</P>
|
||||
<P>The <I>radius</I> value for style <I>sphere</I> and <I>cylinder</I> can be specified
|
||||
as an equal-style <A HREF = "variable.html">variable</A>. If the value is a
|
||||
variable, it should be specified as v_name, where name is the variable
|
||||
name. In this case, the variable will be evaluated each timestep, and
|
||||
its value used to determine the radius of the region.
|
||||
</P>
|
||||
<P>Equal-style variables can specify formulas with various mathematical
|
||||
functions, and include <A HREF = "thermo_style.html">thermo_style</A> command
|
||||
keywords for the simulation box parameters and timestep and elapsed
|
||||
time. Thus it is easy to specify a time-dependent radius.
|
||||
</P>
|
||||
<P>See <A HREF = "Section_howto.html#howto_12">Section_howto 12</A> of the doc pages
|
||||
for a geometric description of triclinic boxes, as defined by LAMMPS,
|
||||
and how to transform these parameters to and from other commonly used
|
||||
|
||||
@ -26,6 +26,7 @@ style = {delete} or {block} or {cone} or {cylinder} or {plane} or {prism} or {sp
|
||||
dim = {x} or {y} or {z} = axis of cylinder
|
||||
c1,c2 = coords of cylinder axis in other 2 dimensions (distance units)
|
||||
radius = cylinder radius (distance units)
|
||||
radius can be a variable (see below)
|
||||
lo,hi = bounds of cylinder in dim (distance units)
|
||||
{plane} args = px py pz nx ny nz
|
||||
px,py,pz = point on the plane (distance units)
|
||||
@ -38,6 +39,7 @@ style = {delete} or {block} or {cone} or {cylinder} or {plane} or {prism} or {sp
|
||||
{sphere} args = x y z radius
|
||||
x,y,z = center of sphere (distance units)
|
||||
radius = radius of sphere (distance units)
|
||||
radius can be a variable (see below)
|
||||
{union} args = N reg-ID1 reg-ID2 ...
|
||||
N = # of regions to follow, must be 2 or greater
|
||||
reg-ID1,reg-ID2, ... = IDs of regions to join together
|
||||
@ -166,6 +168,17 @@ since if the maximum tilt factor is 5 (as in this example), then
|
||||
configurations with tilt = ..., -15, -5, 5, 15, 25, ... are all
|
||||
geometrically equivalent.
|
||||
|
||||
The {radius} value for style {sphere} and {cylinder} can be specified
|
||||
as an equal-style "variable"_variable.html. If the value is a
|
||||
variable, it should be specified as v_name, where name is the variable
|
||||
name. In this case, the variable will be evaluated each timestep, and
|
||||
its value used to determine the radius of the region.
|
||||
|
||||
Equal-style variables can specify formulas with various mathematical
|
||||
functions, and include "thermo_style"_thermo_style.html command
|
||||
keywords for the simulation box parameters and timestep and elapsed
|
||||
time. Thus it is easy to specify a time-dependent radius.
|
||||
|
||||
See "Section_howto 12"_Section_howto.html#howto_12 of the doc pages
|
||||
for a geometric description of triclinic boxes, as defined by LAMMPS,
|
||||
and how to transform these parameters to and from other commonly used
|
||||
|
||||
@ -115,8 +115,8 @@ void PairBrownian::compute(int eflag, int vflag)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -503,7 +503,7 @@ void PairBrownian::init_style()
|
||||
flagdeform = 1;
|
||||
else if (strstr(modify->fix[i]->style,"wall") != NULL){
|
||||
flagwall = 1; // Walls exist
|
||||
if (((FixWall *) modify->fix[i])->varflag ) {
|
||||
if (((FixWall *) modify->fix[i])->xflag ) {
|
||||
flagwall = 2; // Moving walls exist
|
||||
wallfix = (FixWall *) modify->fix[i];
|
||||
}
|
||||
@ -523,10 +523,10 @@ void PairBrownian::init_style()
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallfix->varindex[m] = input->variable->find(wallfix->varstr[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallfix->xindex[m] = input->variable->find(wallfix->xstr[m]);
|
||||
// Since fix->wall->init happens after pair->init_style
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
|
||||
@ -101,8 +101,8 @@ void PairBrownianPoly::compute(int eflag, int vflag)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -363,10 +363,10 @@ void PairBrownianPoly::init_style()
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallfix->varindex[m] = input->variable->find(wallfix->varstr[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallfix->xindex[m] = input->variable->find(wallfix->xstr[m]);
|
||||
// Since fix->wall->init happens after pair->init_style
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
|
||||
@ -181,8 +181,8 @@ void PairLubricate::compute(int eflag, int vflag)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -597,7 +597,7 @@ void PairLubricate::init_style()
|
||||
}
|
||||
if (strstr(modify->fix[i]->style,"wall") != NULL){
|
||||
flagwall = 1; // Walls exist
|
||||
if (((FixWall *) modify->fix[i])->varflag ) {
|
||||
if (((FixWall *) modify->fix[i])->xflag ) {
|
||||
flagwall = 2; // Moving walls exist
|
||||
wallfix = (FixWall *) modify->fix[i];
|
||||
}
|
||||
@ -619,10 +619,10 @@ void PairLubricate::init_style()
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallfix->varindex[m] = input->variable->find(wallfix->varstr[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallfix->xindex[m] = input->variable->find(wallfix->xstr[m]);
|
||||
//Since fix->wall->init happens after pair->init_style
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
|
||||
@ -627,8 +627,8 @@ void PairLubricateU::compute_Fh(double **x)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -866,8 +866,8 @@ void PairLubricateU::compute_RU()
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -1143,8 +1143,8 @@ void PairLubricateU::compute_RU(double **x)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -1879,7 +1879,7 @@ void PairLubricateU::init_style()
|
||||
flagdeform = 1;
|
||||
else if (strstr(modify->fix[i]->style,"wall") != NULL){
|
||||
flagwall = 1; // Walls exist
|
||||
if (((FixWall *) modify->fix[i])->varflag ) {
|
||||
if (((FixWall *) modify->fix[i])->xflag ) {
|
||||
flagwall = 2; // Moving walls exist
|
||||
wallfix = (FixWall *) modify->fix[i];
|
||||
}
|
||||
@ -1899,10 +1899,10 @@ void PairLubricateU::init_style()
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallfix->varindex[m] = input->variable->find(wallfix->varstr[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallfix->xindex[m] = input->variable->find(wallfix->xstr[m]);
|
||||
//Since fix->wall->init happens after pair->init_style
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
|
||||
@ -379,8 +379,8 @@ void PairLubricateUPoly::compute_Fh(double **x)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -660,8 +660,8 @@ void PairLubricateUPoly::compute_RU(double **x)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -1212,7 +1212,7 @@ void PairLubricateUPoly::init_style()
|
||||
flagdeform = 1;
|
||||
else if (strstr(modify->fix[i]->style,"wall") != NULL){
|
||||
flagwall = 1; // Walls exist
|
||||
if (((FixWall *) modify->fix[i])->varflag ) {
|
||||
if (((FixWall *) modify->fix[i])->xflag ) {
|
||||
flagwall = 2; // Moving walls exist
|
||||
wallfix = (FixWall *) modify->fix[i];
|
||||
}
|
||||
@ -1233,10 +1233,10 @@ void PairLubricateUPoly::init_style()
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallfix->varindex[m] = input->variable->find(wallfix->varstr[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallfix->xindex[m] = input->variable->find(wallfix->xstr[m]);
|
||||
//Since fix->wall->init happens after pair->init_style
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
|
||||
@ -165,8 +165,8 @@ void PairLubricatePoly::compute(int eflag, int vflag)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
@ -492,7 +492,7 @@ void PairLubricatePoly::init_style()
|
||||
}
|
||||
if (strstr(modify->fix[i]->style,"wall") != NULL){
|
||||
flagwall = 1; // Walls exist
|
||||
if (((FixWall *) modify->fix[i])->varflag ) {
|
||||
if (((FixWall *) modify->fix[i])->xflag ) {
|
||||
flagwall = 2; // Moving walls exist
|
||||
wallfix = (FixWall *) modify->fix[i];
|
||||
}
|
||||
@ -511,10 +511,10 @@ void PairLubricatePoly::init_style()
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallfix->varindex[m] = input->variable->find(wallfix->varstr[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallfix->xindex[m] = input->variable->find(wallfix->xstr[m]);
|
||||
//Since fix->wall->init happens after pair->init_style
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
|
||||
|
||||
@ -91,8 +91,8 @@ void PairBrownianOMP::compute(int eflag, int vflag)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
|
||||
@ -91,8 +91,8 @@ void PairBrownianPolyOMP::compute(int eflag, int vflag)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
|
||||
@ -85,8 +85,8 @@ void PairLubricateOMP::compute(int eflag, int vflag)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
|
||||
@ -86,8 +86,8 @@ void PairLubricatePolyOMP::compute(int eflag, int vflag)
|
||||
for (int m = 0; m < wallfix->nwall; m++){
|
||||
int dim = wallfix->wallwhich[m] / 2;
|
||||
int side = wallfix->wallwhich[m] % 2;
|
||||
if (wallfix->wallstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->varindex[m]);
|
||||
if (wallfix->xstyle[m] == VARIABLE){
|
||||
wallcoord = input->variable->compute_equal(wallfix->xindex[m]);
|
||||
}
|
||||
else wallcoord = wallfix->coord0[m];
|
||||
if (side == 0) walllo[dim] = wallcoord;
|
||||
|
||||
112
src/fix_wall.cpp
112
src/fix_wall.cpp
@ -49,6 +49,8 @@ FixWall::FixWall(LAMMPS *lmp, int narg, char **arg) :
|
||||
fldflag = 0;
|
||||
int pbcflag = 0;
|
||||
|
||||
for (int i = 0; i < 6; i++) xstr[i] = estr[i] = sstr[i] = NULL;
|
||||
|
||||
int iarg = 3;
|
||||
while (iarg < narg) {
|
||||
if ((strcmp(arg[iarg],"xlo") == 0) || (strcmp(arg[iarg],"xhi") == 0) ||
|
||||
@ -70,23 +72,41 @@ FixWall::FixWall(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
wallwhich[nwall] = newwall;
|
||||
if (strcmp(arg[iarg+1],"EDGE") == 0) {
|
||||
wallstyle[nwall] = EDGE;
|
||||
xstyle[nwall] = EDGE;
|
||||
int dim = wallwhich[nwall] / 2;
|
||||
int side = wallwhich[nwall] % 2;
|
||||
if (side == 0) coord0[nwall] = domain->boxlo[dim];
|
||||
else coord0[nwall] = domain->boxhi[dim];
|
||||
} else if (strstr(arg[iarg+1],"v_") == arg[iarg+1]) {
|
||||
wallstyle[nwall] = VARIABLE;
|
||||
xstyle[nwall] = VARIABLE;
|
||||
int n = strlen(&arg[iarg+1][2]) + 1;
|
||||
varstr[nwall] = new char[n];
|
||||
strcpy(varstr[nwall],&arg[iarg+1][2]);
|
||||
xstr[nwall] = new char[n];
|
||||
strcpy(xstr[nwall],&arg[iarg+1][2]);
|
||||
} else {
|
||||
wallstyle[nwall] = CONSTANT;
|
||||
xstyle[nwall] = CONSTANT;
|
||||
coord0[nwall] = atof(arg[iarg+1]);
|
||||
}
|
||||
|
||||
epsilon[nwall] = atof(arg[iarg+2]);
|
||||
sigma[nwall] = atof(arg[iarg+3]);
|
||||
if (strstr(arg[iarg+2],"v_") == arg[iarg+2]) {
|
||||
int n = strlen(&arg[iarg+2][2]) + 1;
|
||||
estr[nwall] = new char[n];
|
||||
strcpy(estr[nwall],&arg[iarg+2][2]);
|
||||
estyle[nwall] = VARIABLE;
|
||||
} else {
|
||||
epsilon[nwall] = atof(arg[iarg+2]);
|
||||
estyle[nwall] = CONSTANT;
|
||||
}
|
||||
|
||||
if (strstr(arg[iarg+3],"v_") == arg[iarg+3]) {
|
||||
int n = strlen(&arg[iarg+3][2]) + 1;
|
||||
sstr[nwall] = new char[n];
|
||||
strcpy(sstr[nwall],&arg[iarg+3][2]);
|
||||
sstyle[nwall] = VARIABLE;
|
||||
} else {
|
||||
sigma[nwall] = atof(arg[iarg+3]);
|
||||
sstyle[nwall] = CONSTANT;
|
||||
}
|
||||
|
||||
cutoff[nwall] = atof(arg[iarg+4]);
|
||||
nwall++;
|
||||
iarg += 5;
|
||||
@ -136,11 +156,11 @@ FixWall::FixWall(LAMMPS *lmp, int narg, char **arg) :
|
||||
}
|
||||
}
|
||||
|
||||
// scale factors for CONSTANT and VARIABLE walls
|
||||
// scale factors for wall position for CONSTANT and VARIABLE walls
|
||||
|
||||
int flag = 0;
|
||||
for (int m = 0; m < nwall; m++)
|
||||
if (wallstyle[m] != EDGE) flag = 1;
|
||||
if (xstyle[m] != EDGE) flag = 1;
|
||||
|
||||
if (flag) {
|
||||
if (scaleflag && domain->lattice == NULL)
|
||||
@ -154,18 +174,24 @@ FixWall::FixWall(LAMMPS *lmp, int narg, char **arg) :
|
||||
else xscale = yscale = zscale = 1.0;
|
||||
|
||||
for (int m = 0; m < nwall; m++) {
|
||||
if (wallstyle[m] != CONSTANT) continue;
|
||||
if (xstyle[m] != CONSTANT) continue;
|
||||
if (wallwhich[m] < YLO) coord0[m] *= xscale;
|
||||
else if (wallwhich[m] < ZLO) coord0[m] *= yscale;
|
||||
else coord0[m] *= zscale;
|
||||
}
|
||||
}
|
||||
|
||||
// set varflag if any wall positions are variable
|
||||
// set xflag if any wall positions are variable
|
||||
// set vflag if any wall positions are variable
|
||||
// set wstyle to VARIABLE if either epsilon or sigma is a variable
|
||||
|
||||
varflag = 0;
|
||||
for (int m = 0; m < nwall; m++)
|
||||
if (wallstyle[m] == VARIABLE) varflag = 1;
|
||||
vflag = xflag = 0;
|
||||
for (int m = 0; m < nwall; m++) {
|
||||
if (xstyle[m] == VARIABLE) xflag = 1;
|
||||
if (xflag || estyle[m] == VARIABLE || sstyle[m] == VARIABLE) vflag = 1;
|
||||
if (estyle[m] == VARIABLE || sstyle[m] == VARIABLE) wstyle[m] = VARIABLE;
|
||||
else wstyle[m] = CONSTANT;
|
||||
}
|
||||
|
||||
eflag = 0;
|
||||
for (int m = 0; m <= nwall; m++) ewall[m] = 0.0;
|
||||
@ -175,8 +201,11 @@ FixWall::FixWall(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
FixWall::~FixWall()
|
||||
{
|
||||
for (int m = 0; m < nwall; m++)
|
||||
if (wallstyle[m] == VARIABLE) delete [] varstr[m];
|
||||
for (int m = 0; m < nwall; m++) {
|
||||
delete [] xstr[m];
|
||||
delete [] estr[m];
|
||||
delete [] sstr[m];
|
||||
}
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -203,12 +232,27 @@ void FixWall::init()
|
||||
dt = update->dt;
|
||||
|
||||
for (int m = 0; m < nwall; m++) {
|
||||
if (wallstyle[m] != VARIABLE) continue;
|
||||
varindex[m] = input->variable->find(varstr[m]);
|
||||
if (varindex[m] < 0)
|
||||
error->all(FLERR,"Variable name for fix wall does not exist");
|
||||
if (!input->variable->equalstyle(varindex[m]))
|
||||
error->all(FLERR,"Variable for fix wall is invalid style");
|
||||
if (xstyle[m] == VARIABLE) {
|
||||
xindex[m] = input->variable->find(xstr[m]);
|
||||
if (xindex[m] < 0)
|
||||
error->all(FLERR,"Variable name for fix wall does not exist");
|
||||
if (!input->variable->equalstyle(xindex[m]))
|
||||
error->all(FLERR,"Variable for fix wall is invalid style");
|
||||
}
|
||||
if (estyle[m] == VARIABLE) {
|
||||
eindex[m] = input->variable->find(estr[m]);
|
||||
if (eindex[m] < 0)
|
||||
error->all(FLERR,"Variable name for fix wall does not exist");
|
||||
if (!input->variable->equalstyle(eindex[m]))
|
||||
error->all(FLERR,"Variable for fix wall is invalid style");
|
||||
}
|
||||
if (sstyle[m] == VARIABLE) {
|
||||
sindex[m] = input->variable->find(sstr[m]);
|
||||
if (sindex[m] < 0)
|
||||
error->all(FLERR,"Variable name for fix wall does not exist");
|
||||
if (!input->variable->equalstyle(sindex[m]))
|
||||
error->all(FLERR,"Variable for fix wall is invalid style");
|
||||
}
|
||||
}
|
||||
|
||||
// setup coefficients
|
||||
@ -256,23 +300,37 @@ void FixWall::post_force(int vflag)
|
||||
for (int m = 0; m <= nwall; m++) ewall[m] = 0.0;
|
||||
|
||||
// coord = current position of wall
|
||||
// evaluate variable if necessary, wrap with clear/add
|
||||
// evaluate variables if necessary, wrap with clear/add
|
||||
// for epsilon/sigma variables need to re-invoke precompute()
|
||||
|
||||
if (varflag) modify->clearstep_compute();
|
||||
if (vflag) modify->clearstep_compute();
|
||||
|
||||
double coord;
|
||||
for (int m = 0; m < nwall; m++) {
|
||||
if (wallstyle[m] == VARIABLE) {
|
||||
coord = input->variable->compute_equal(varindex[m]);
|
||||
if (xstyle[m] == VARIABLE) {
|
||||
coord = input->variable->compute_equal(xindex[m]);
|
||||
if (wallwhich[m] < YLO) coord *= xscale;
|
||||
else if (wallwhich[m] < ZLO) coord *= yscale;
|
||||
else coord *= zscale;
|
||||
} else coord = coord0[m];
|
||||
if (wstyle[m] == VARIABLE) {
|
||||
if (estyle[m] == VARIABLE) {
|
||||
epsilon[m] = input->variable->compute_equal(eindex[m]);
|
||||
if (epsilon[m] < 0.0)
|
||||
error->all(FLERR,"Variable evaluation in fix wall gave bad value");
|
||||
}
|
||||
if (sstyle[m] == VARIABLE) {
|
||||
sigma[m] = input->variable->compute_equal(sindex[m]);
|
||||
if (sigma[m] < 0.0)
|
||||
error->all(FLERR,"Variable evaluation in fix wall gave bad value");
|
||||
}
|
||||
precompute(m);
|
||||
}
|
||||
|
||||
wall_particle(m,wallwhich[m],coord);
|
||||
}
|
||||
|
||||
if (varflag) modify->addstep_compute(update->ntimestep + 1);
|
||||
if (vflag) modify->addstep_compute(update->ntimestep + 1);
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
@ -20,6 +20,14 @@ namespace LAMMPS_NS {
|
||||
|
||||
class FixWall : public Fix {
|
||||
public:
|
||||
int nwall;
|
||||
int wallwhich[6];
|
||||
double coord0[6];
|
||||
int xflag; // 1 if any wall position is a variable
|
||||
int xstyle[6];
|
||||
int xindex[6];
|
||||
char *xstr[6];
|
||||
|
||||
FixWall(class LAMMPS *, int, char **);
|
||||
virtual ~FixWall();
|
||||
int setmask();
|
||||
@ -36,20 +44,15 @@ class FixWall : public Fix {
|
||||
virtual void precompute(int) = 0;
|
||||
virtual void wall_particle(int, int, double) = 0;
|
||||
|
||||
int nwall;
|
||||
int wallwhich[6];
|
||||
double coord0[6];
|
||||
int varflag;
|
||||
int wallstyle[6];
|
||||
int varindex[6];
|
||||
char *varstr[6];
|
||||
|
||||
|
||||
protected:
|
||||
double epsilon[6],sigma[6],cutoff[6];
|
||||
double ewall[7],ewall_all[7];
|
||||
double xscale,yscale,zscale;
|
||||
int eflag;
|
||||
int estyle[6],sstyle[6],wstyle[6];
|
||||
int eindex[6],sindex[6];
|
||||
char *estr[6],*sstr[6];
|
||||
int vflag; // 1 if any wall position,epsilon,sigma is a var
|
||||
int eflag; // per-wall flag for energy summation
|
||||
int nlevels_respa;
|
||||
double dt;
|
||||
int fldflag;
|
||||
|
||||
@ -36,9 +36,10 @@ Region::Region(LAMMPS *lmp, int narg, char **arg) : Pointers(lmp)
|
||||
style = new char[n];
|
||||
strcpy(style,arg[1]);
|
||||
|
||||
varshape = 0;
|
||||
xstr = ystr = zstr = tstr = NULL;
|
||||
dx = dy = dz = 0.0;
|
||||
laststep = -1;
|
||||
lastshape = lastdynamic = -1;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
@ -100,23 +101,35 @@ int Region::dynamic_check()
|
||||
XOR computes 0 if 2 args are the same, 1 if different
|
||||
note that inside() returns 1 for points on surface of region
|
||||
thus point on surface of exterior region will not match
|
||||
if region has variable shape, invoke shape_update() once per timestep
|
||||
if region is dynamic, apply inverse transform to x,y,z
|
||||
unmove first, then unrotate, so don't have to change rotation point
|
||||
caller is responsible for wrapping this call with
|
||||
modify->clearstep_compute() and modify->addstep_compute() if needed
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int Region::match(double x, double y, double z)
|
||||
{
|
||||
if (dynamic) inverse_transform(x,y,z);
|
||||
if (varshape && update->ntimestep != lastshape) {
|
||||
shape_update();
|
||||
lastshape = update->ntimestep;
|
||||
}
|
||||
|
||||
if (dynamic && update->ntimestep) inverse_transform(x,y,z);
|
||||
|
||||
return !(inside(x,y,z) ^ interior);
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
generate list of contact points for interior or exterior regions
|
||||
if region has variable shape, invoke shape_update() once per timestep
|
||||
if region is dynamic:
|
||||
before: inverse transform x,y,z (unmove, then unrotate)
|
||||
after: forward transform contact point xs,yx,zs (rotate, then move),
|
||||
then reset contact delx,dely,delz based on new contact point
|
||||
no need to do this if no rotation since delxyz doesn't change
|
||||
caller is responsible for wrapping this call with
|
||||
modify->clearstep_compute() and modify->addstep_compute() if needed
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
int Region::surface(double x, double y, double z, double cutoff)
|
||||
@ -125,6 +138,11 @@ int Region::surface(double x, double y, double z, double cutoff)
|
||||
double xs,ys,zs;
|
||||
double xnear[3],xorig[3];
|
||||
|
||||
if (varshape && update->ntimestep != lastshape) {
|
||||
shape_update();
|
||||
lastshape = update->ntimestep;
|
||||
}
|
||||
|
||||
if (dynamic) {
|
||||
xorig[0] = x;
|
||||
xorig[1] = y;
|
||||
@ -179,13 +197,13 @@ void Region::add_contact(int n, double *x, double xp, double yp, double zp)
|
||||
void Region::forward_transform(double &x, double &y, double &z)
|
||||
{
|
||||
if (rotateflag) {
|
||||
if (update->ntimestep != laststep)
|
||||
if (update->ntimestep != lastdynamic)
|
||||
theta = input->variable->compute_equal(tvar);
|
||||
rotate(x,y,z,theta);
|
||||
}
|
||||
|
||||
if (moveflag) {
|
||||
if (update->ntimestep != laststep) {
|
||||
if (update->ntimestep != lastdynamic) {
|
||||
if (xstr) dx = input->variable->compute_equal(xvar);
|
||||
if (ystr) dy = input->variable->compute_equal(yvar);
|
||||
if (zstr) dz = input->variable->compute_equal(zvar);
|
||||
@ -195,7 +213,7 @@ void Region::forward_transform(double &x, double &y, double &z)
|
||||
z += dz;
|
||||
}
|
||||
|
||||
laststep = update->ntimestep;
|
||||
lastdynamic = update->ntimestep;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
@ -206,7 +224,7 @@ void Region::forward_transform(double &x, double &y, double &z)
|
||||
void Region::inverse_transform(double &x, double &y, double &z)
|
||||
{
|
||||
if (moveflag) {
|
||||
if (update->ntimestep != laststep) {
|
||||
if (update->ntimestep != lastdynamic) {
|
||||
if (xstr) dx = input->variable->compute_equal(xvar);
|
||||
if (ystr) dy = input->variable->compute_equal(yvar);
|
||||
if (zstr) dz = input->variable->compute_equal(zvar);
|
||||
@ -217,12 +235,12 @@ void Region::inverse_transform(double &x, double &y, double &z)
|
||||
}
|
||||
|
||||
if (rotateflag) {
|
||||
if (update->ntimestep != laststep)
|
||||
if (update->ntimestep != lastdynamic)
|
||||
theta = input->variable->compute_equal(tvar);
|
||||
rotate(x,y,z,-theta);
|
||||
}
|
||||
|
||||
laststep = update->ntimestep;
|
||||
lastdynamic = update->ntimestep;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
|
||||
16
src/region.h
16
src/region.h
@ -28,6 +28,7 @@ class Region : protected Pointers {
|
||||
double extent_ylo,extent_yhi;
|
||||
double extent_zlo,extent_zhi;
|
||||
int bboxflag; // 1 if bounding box is computable
|
||||
int varshape; // 1 if region shape changes over time
|
||||
|
||||
// contact = particle near region surface
|
||||
|
||||
@ -40,27 +41,34 @@ class Region : protected Pointers {
|
||||
|
||||
Region(class LAMMPS *, int, char **);
|
||||
virtual ~Region();
|
||||
void init();
|
||||
virtual void init();
|
||||
virtual int dynamic_check();
|
||||
|
||||
// called by other classes to check point versus region
|
||||
|
||||
int match(double, double, double);
|
||||
int surface(double, double, double, double);
|
||||
|
||||
// implemented by each region, not called by other classes
|
||||
|
||||
virtual int inside(double, double, double) = 0;
|
||||
virtual int surface_interior(double *, double) = 0;
|
||||
virtual int surface_exterior(double *, double) = 0;
|
||||
virtual void shape_update() {}
|
||||
|
||||
protected:
|
||||
void add_contact(int, double *, double, double, double);
|
||||
void options(int, char **);
|
||||
|
||||
private:
|
||||
int dynamic; // 1 if region changes over time
|
||||
int moveflag,rotateflag;
|
||||
int dynamic; // 1 if region position/orientation changes over time
|
||||
int moveflag,rotateflag; // 1 if position/orientation changes
|
||||
|
||||
double point[3],axis[3],runit[3];
|
||||
char *xstr,*ystr,*zstr,*tstr;
|
||||
int xvar,yvar,zvar,tvar;
|
||||
double dx,dy,dz,theta;
|
||||
bigint laststep;
|
||||
bigint lastshape,lastdynamic;
|
||||
|
||||
void forward_transform(double &, double &, double &);
|
||||
void inverse_transform(double &, double &, double &);
|
||||
|
||||
@ -15,12 +15,16 @@
|
||||
#include "stdlib.h"
|
||||
#include "string.h"
|
||||
#include "region_cylinder.h"
|
||||
#include "update.h"
|
||||
#include "domain.h"
|
||||
#include "input.h"
|
||||
#include "variable.h"
|
||||
#include "error.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
#define BIG 1.0e20
|
||||
enum{CONSTANT,VARIABLE};
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
@ -36,15 +40,29 @@ RegCylinder::RegCylinder(LAMMPS *lmp, int narg, char **arg) :
|
||||
if (axis == 'x') {
|
||||
c1 = yscale*atof(arg[3]);
|
||||
c2 = zscale*atof(arg[4]);
|
||||
radius = yscale*atof(arg[5]);
|
||||
} else if (axis == 'y') {
|
||||
c1 = xscale*atof(arg[3]);
|
||||
c2 = zscale*atof(arg[4]);
|
||||
radius = xscale*atof(arg[5]);
|
||||
} else if (axis == 'z') {
|
||||
c1 = xscale*atof(arg[3]);
|
||||
c2 = yscale*atof(arg[4]);
|
||||
radius = xscale*atof(arg[5]);
|
||||
}
|
||||
|
||||
rstr = NULL;
|
||||
if (strstr(arg[5],"v_") == arg[5]) {
|
||||
int n = strlen(&arg[5][2]) + 1;
|
||||
rstr = new char[n];
|
||||
strcpy(rstr,&arg[5][2]);
|
||||
radius = 0.0;
|
||||
rstyle = VARIABLE;
|
||||
varshape = 1;
|
||||
variable_check();
|
||||
shape_update();
|
||||
} else {
|
||||
radius = atof(arg[5]);
|
||||
if (axis == 'x') radius *= xscale;
|
||||
else radius *= xscale;
|
||||
rstyle = CONSTANT;
|
||||
}
|
||||
|
||||
if (strcmp(arg[6],"INF") == 0 || strcmp(arg[6],"EDGE") == 0) {
|
||||
@ -100,6 +118,7 @@ RegCylinder::RegCylinder(LAMMPS *lmp, int narg, char **arg) :
|
||||
if (radius <= 0.0) error->all(FLERR,"Illegal region cylinder command");
|
||||
|
||||
// extent of cylinder
|
||||
// for variable radius, uses initial radius
|
||||
|
||||
if (interior) {
|
||||
bboxflag = 1;
|
||||
@ -139,9 +158,18 @@ RegCylinder::RegCylinder(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
RegCylinder::~RegCylinder()
|
||||
{
|
||||
delete [] rstr;
|
||||
delete [] contact;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void RegCylinder::init()
|
||||
{
|
||||
Region::init();
|
||||
if (rstr) variable_check();
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
inside = 1 if x,y,z is inside or on surface
|
||||
inside = 0 if x,y,z is outside and not on surface
|
||||
@ -400,3 +428,29 @@ int RegCylinder::surface_exterior(double *x, double cutoff)
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
change region shape via variable evaluation
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void RegCylinder::shape_update()
|
||||
{
|
||||
radius = input->variable->compute_equal(rvar);
|
||||
if (radius < 0.0)
|
||||
error->one(FLERR,"Variable evaluation in region gave bad value");
|
||||
if (axis == 'x') radius *= xscale;
|
||||
else radius *= xscale;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
error check on existence of variable
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void RegCylinder::variable_check()
|
||||
{
|
||||
rvar = input->variable->find(rstr);
|
||||
if (rvar < 0)
|
||||
error->all(FLERR,"Variable name for region cylinder does not exist");
|
||||
if (!input->variable->equalstyle(rvar))
|
||||
error->all(FLERR,"Variable for region cylinder is invalid style");
|
||||
}
|
||||
|
||||
@ -30,15 +30,22 @@ class RegCylinder : public Region {
|
||||
public:
|
||||
RegCylinder(class LAMMPS *, int, char **);
|
||||
~RegCylinder();
|
||||
void init();
|
||||
int inside(double, double, double);
|
||||
int surface_interior(double *, double);
|
||||
int surface_exterior(double *, double);
|
||||
void shape_update();
|
||||
|
||||
private:
|
||||
char axis;
|
||||
double c1,c2;
|
||||
double radius;
|
||||
double lo,hi;
|
||||
int rstyle,rvar;
|
||||
char *rstr;
|
||||
|
||||
void variable_check();
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@ -37,14 +37,19 @@ RegIntersect::RegIntersect(LAMMPS *lmp, int narg, char **arg) :
|
||||
int iregion;
|
||||
for (int iarg = 0; iarg < n; iarg++) {
|
||||
iregion = domain->find_region(arg[iarg+3]);
|
||||
if (iregion == -1) error->all(FLERR,"Region intersect region ID does not exist");
|
||||
if (iregion == -1)
|
||||
error->all(FLERR,"Region intersect region ID does not exist");
|
||||
list[nregion++] = iregion;
|
||||
}
|
||||
|
||||
// extent of intersection of regions
|
||||
// has bounding box if interior and any sub-region has bounding box
|
||||
// this region is variable shape if any of sub-regions are
|
||||
|
||||
Region **regions = domain->regions;
|
||||
for (int ilist = 0; ilist < nregion; ilist++)
|
||||
if (regions[list[ilist]]->varshape) varshape = 1;
|
||||
|
||||
// extent of intersection of regions
|
||||
// has bounding box if interior and any sub-region has bounding box
|
||||
|
||||
bboxflag = 0;
|
||||
for (int ilist = 0; ilist < nregion; ilist++)
|
||||
@ -90,6 +95,16 @@ RegIntersect::~RegIntersect()
|
||||
delete [] contact;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void RegIntersect::init()
|
||||
{
|
||||
Region::init();
|
||||
Region **regions = domain->regions;
|
||||
for (int ilist = 0; ilist < nregion; ilist++)
|
||||
regions[list[ilist]]->init();
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
return 1 if region is dynamic, 0 if static
|
||||
dynamic if any sub-region is dynamic, else static
|
||||
@ -205,3 +220,14 @@ int RegIntersect::surface_exterior(double *x, double cutoff)
|
||||
|
||||
return n;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
change region shape of all sub-regions
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void RegIntersect::shape_update()
|
||||
{
|
||||
Region **regions = domain->regions;
|
||||
for (int ilist = 0; ilist < nregion; ilist++)
|
||||
regions[list[ilist]]->shape_update();
|
||||
}
|
||||
|
||||
@ -28,10 +28,12 @@ class RegIntersect : public Region {
|
||||
public:
|
||||
RegIntersect(class LAMMPS *, int, char **);
|
||||
~RegIntersect();
|
||||
void init();
|
||||
int dynamic_check();
|
||||
int inside(double, double, double);
|
||||
int surface_interior(double *, double);
|
||||
int surface_exterior(double *, double);
|
||||
void shape_update();
|
||||
|
||||
private:
|
||||
int nregion;
|
||||
|
||||
@ -15,10 +15,15 @@
|
||||
#include "stdlib.h"
|
||||
#include "string.h"
|
||||
#include "region_sphere.h"
|
||||
#include "update.h"
|
||||
#include "input.h"
|
||||
#include "variable.h"
|
||||
#include "error.h"
|
||||
|
||||
using namespace LAMMPS_NS;
|
||||
|
||||
enum{CONSTANT,VARIABLE};
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
RegSphere::RegSphere(LAMMPS *lmp, int narg, char **arg) :
|
||||
@ -29,13 +34,28 @@ RegSphere::RegSphere(LAMMPS *lmp, int narg, char **arg) :
|
||||
xc = xscale*atof(arg[2]);
|
||||
yc = yscale*atof(arg[3]);
|
||||
zc = zscale*atof(arg[4]);
|
||||
radius = xscale*atof(arg[5]);
|
||||
|
||||
rstr = NULL;
|
||||
if (strstr(arg[5],"v_") == arg[5]) {
|
||||
int n = strlen(&arg[5][2]) + 1;
|
||||
rstr = new char[n];
|
||||
strcpy(rstr,&arg[5][2]);
|
||||
radius = 0.0;
|
||||
rstyle = VARIABLE;
|
||||
varshape = 1;
|
||||
variable_check();
|
||||
shape_update();
|
||||
} else {
|
||||
radius = xscale*atof(arg[5]);
|
||||
rstyle = CONSTANT;
|
||||
}
|
||||
|
||||
// error check
|
||||
|
||||
if (radius < 0.0) error->all(FLERR,"Illegal region sphere command");
|
||||
|
||||
// extent of sphere
|
||||
// for variable radius, uses initial radius
|
||||
|
||||
if (interior) {
|
||||
bboxflag = 1;
|
||||
@ -55,9 +75,18 @@ RegSphere::RegSphere(LAMMPS *lmp, int narg, char **arg) :
|
||||
|
||||
RegSphere::~RegSphere()
|
||||
{
|
||||
delete [] rstr;
|
||||
delete [] contact;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void RegSphere::init()
|
||||
{
|
||||
Region::init();
|
||||
if (rstr) variable_check();
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
inside = 1 if x,y,z is inside or on surface
|
||||
inside = 0 if x,y,z is outside and not on surface
|
||||
@ -124,3 +153,27 @@ int RegSphere::surface_exterior(double *x, double cutoff)
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
change region shape via variable evaluation
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void RegSphere::shape_update()
|
||||
{
|
||||
radius = xscale * input->variable->compute_equal(rvar);
|
||||
if (radius < 0.0)
|
||||
error->one(FLERR,"Variable evaluation in region gave bad value");
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
error check on existence of variable
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void RegSphere::variable_check()
|
||||
{
|
||||
rvar = input->variable->find(rstr);
|
||||
if (rvar < 0)
|
||||
error->all(FLERR,"Variable name for region sphere does not exist");
|
||||
if (!input->variable->equalstyle(rvar))
|
||||
error->all(FLERR,"Variable for region sphere is invalid style");
|
||||
}
|
||||
|
||||
@ -28,13 +28,19 @@ class RegSphere : public Region {
|
||||
public:
|
||||
RegSphere(class LAMMPS *, int, char **);
|
||||
~RegSphere();
|
||||
void init();
|
||||
int inside(double, double, double);
|
||||
int surface_interior(double *, double);
|
||||
int surface_exterior(double *, double);
|
||||
void shape_update();
|
||||
|
||||
private:
|
||||
double xc,yc,zc;
|
||||
double radius;
|
||||
int rstyle,rvar;
|
||||
char *rstr;
|
||||
|
||||
void variable_check();
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
@ -38,14 +38,19 @@ RegUnion::RegUnion(LAMMPS *lmp, int narg, char **arg) : Region(lmp, narg, arg)
|
||||
int iregion;
|
||||
for (int iarg = 0; iarg < n; iarg++) {
|
||||
iregion = domain->find_region(arg[iarg+3]);
|
||||
if (iregion == -1) error->all(FLERR,"Region union region ID does not exist");
|
||||
if (iregion == -1)
|
||||
error->all(FLERR,"Region union region ID does not exist");
|
||||
list[nregion++] = iregion;
|
||||
}
|
||||
|
||||
// extent of union of regions
|
||||
// has bounding box if interior and all sub-regions have bounding box
|
||||
// this region is variable shape if any of sub-regions are
|
||||
|
||||
Region **regions = domain->regions;
|
||||
for (int ilist = 0; ilist < nregion; ilist++)
|
||||
if (regions[list[ilist]]->varshape) varshape = 1;
|
||||
|
||||
// extent of union of regions
|
||||
// has bounding box if interior and all sub-regions have bounding box
|
||||
|
||||
bboxflag = 1;
|
||||
for (int ilist = 0; ilist < nregion; ilist++)
|
||||
@ -82,6 +87,16 @@ RegUnion::~RegUnion()
|
||||
delete [] contact;
|
||||
}
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
void RegUnion::init()
|
||||
{
|
||||
Region::init();
|
||||
Region **regions = domain->regions;
|
||||
for (int ilist = 0; ilist < nregion; ilist++)
|
||||
regions[list[ilist]]->init();
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
return 1 if region is dynamic, 0 if static
|
||||
dynamic if any sub-region is dynamic, else static
|
||||
@ -197,3 +212,14 @@ int RegUnion::surface_exterior(double *x, double cutoff)
|
||||
|
||||
return n;
|
||||
}
|
||||
|
||||
/* ----------------------------------------------------------------------
|
||||
change region shape of all sub-regions
|
||||
------------------------------------------------------------------------- */
|
||||
|
||||
void RegUnion::shape_update()
|
||||
{
|
||||
Region **regions = domain->regions;
|
||||
for (int ilist = 0; ilist < nregion; ilist++)
|
||||
regions[list[ilist]]->shape_update();
|
||||
}
|
||||
|
||||
@ -28,10 +28,12 @@ class RegUnion : public Region {
|
||||
public:
|
||||
RegUnion(class LAMMPS *, int, char **);
|
||||
~RegUnion();
|
||||
void init();
|
||||
int dynamic_check();
|
||||
int inside(double, double, double);
|
||||
int surface_interior(double *, double);
|
||||
int surface_exterior(double *, double);
|
||||
void shape_update();
|
||||
|
||||
private:
|
||||
int nregion;
|
||||
|
||||
@ -2159,17 +2159,17 @@ double Variable::eval_tree(Tree *tree, int i)
|
||||
}
|
||||
|
||||
if (tree->type == RMASK) {
|
||||
if (domain->regions[tree->ivalue1]->inside(atom->x[i][0],
|
||||
atom->x[i][1],
|
||||
atom->x[i][2])) return 1.0;
|
||||
if (domain->regions[tree->ivalue1]->match(atom->x[i][0],
|
||||
atom->x[i][1],
|
||||
atom->x[i][2])) return 1.0;
|
||||
else return 0.0;
|
||||
}
|
||||
|
||||
if (tree->type == GRMASK) {
|
||||
if ((atom->mask[i] & tree->ivalue1) &&
|
||||
(domain->regions[tree->ivalue2]->inside(atom->x[i][0],
|
||||
atom->x[i][1],
|
||||
atom->x[i][2]))) return 1.0;
|
||||
(domain->regions[tree->ivalue2]->match(atom->x[i][0],
|
||||
atom->x[i][1],
|
||||
atom->x[i][2]))) return 1.0;
|
||||
else return 0.0;
|
||||
}
|
||||
|
||||
|
||||
@ -1 +1 @@
|
||||
#define LAMMPS_VERSION "19 Jan 2013"
|
||||
#define LAMMPS_VERSION "21 Jan 2013"
|
||||
|
||||
6
tools/kate/README.txt
Normal file
6
tools/kate/README.txt
Normal file
@ -0,0 +1,6 @@
|
||||
The lammps.xml file in this dir is for use with the Kate editor
|
||||
in the KDE suite, to do syntax highlighting for LAMMPS input
|
||||
scripts.
|
||||
|
||||
The author is Alessandro Luigi Sellerio <alessandro.sellerio@ieni.cnr.it>.
|
||||
Please contact him with questions.
|
||||
878
tools/kate/lammps.xml
Normal file
878
tools/kate/lammps.xml
Normal file
@ -0,0 +1,878 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Lammps Syntax Highlighting definitions for KDE-Kate editor
|
||||
First version October 2011 by Alessandro L. Sellerio
|
||||
Version 1.0 dated 09/01/2012 by Alessandro L. Sellerio
|
||||
Contact the original author at alessandro.sellerio@ieni.cnr.it
|
||||
Inspired by original KDE file: bash.xml
|
||||
Put this file in ~.kde/share/apps/katepart/syntax
|
||||
-->
|
||||
|
||||
<!DOCTYPE language SYSTEM "language.dtd"
|
||||
[
|
||||
<!ENTITY varname "[A-Za-z_][A-Za-z0-9_]*">
|
||||
]>
|
||||
|
||||
<language version="1.0" kateversion="3.9.4"
|
||||
author="Alessandro L. Sellerio" license="GPL v.3 or greater"
|
||||
name="Lammps" section="Scientific" extensions="*.lgg;*.lmp;*.lammps;*.liggghts" casesensitive="FALSE"
|
||||
priority="9">
|
||||
|
||||
<highlighting>
|
||||
<list name="kw_commands">
|
||||
<item>angle_coeff</item>
|
||||
<item>angle_style</item>
|
||||
<item>atom_modify</item>
|
||||
<item>atom_style</item>
|
||||
<item>balance</item>
|
||||
<item>bond_coeff</item>
|
||||
<item>bond_style</item>
|
||||
<item>boundary</item>
|
||||
<item>box</item>
|
||||
<item>change_box</item>
|
||||
<item>clear</item>
|
||||
<item>communicate</item>
|
||||
<item>compute</item>
|
||||
<item>compute_modify</item>
|
||||
<item>create_atoms</item>
|
||||
<item>create_box</item>
|
||||
<item>delete_atoms</item>
|
||||
<item>delete_bonds</item>
|
||||
<item>dielectric</item>
|
||||
<item>dihedral_coeff</item>
|
||||
<item>dihedral_style</item>
|
||||
<item>dimension</item>
|
||||
<item>displace_atoms</item>
|
||||
<item>dump</item>
|
||||
<item>dump_image</item>
|
||||
<item>dump_modify</item>
|
||||
<item>echo</item>
|
||||
<item>fix</item>
|
||||
<item>fix_modify</item>
|
||||
<item>group</item>
|
||||
<item>if</item>
|
||||
<item>improper_coeff</item>
|
||||
<item>improper_style</item>
|
||||
<item>include</item>
|
||||
<item>jump</item>
|
||||
<item>kspace_modify</item>
|
||||
<item>kspace_style</item>
|
||||
<item>label</item>
|
||||
<item>lattice</item>
|
||||
<item>log</item>
|
||||
<item>mass</item>
|
||||
<item>minimize</item>
|
||||
<item>min_modify</item>
|
||||
<item>min_style</item>
|
||||
<item>neb</item>
|
||||
<item>neigh_modify</item>
|
||||
<item>neighbor</item>
|
||||
<item>newton</item>
|
||||
<item>next</item>
|
||||
<item>package</item>
|
||||
<item>pair_coeff</item>
|
||||
<item>pair_modify</item>
|
||||
<item>pair_style</item>
|
||||
<item>pair_write</item>
|
||||
<item>partition</item>
|
||||
<item>prd</item>
|
||||
<item>print</item>
|
||||
<item>processors</item>
|
||||
<item>quit</item>
|
||||
<item>read_data</item>
|
||||
<item>read_dump</item>
|
||||
<item>read_restart</item>
|
||||
<item>region</item>
|
||||
<item>replicate</item>
|
||||
<item>rerun</item>
|
||||
<item>reset_timestep</item>
|
||||
<item>restart</item>
|
||||
<item>run</item>
|
||||
<item>run_style</item>
|
||||
<item>set</item>
|
||||
<item>shell</item>
|
||||
<item>special_bonds</item>
|
||||
<item>suffix</item>
|
||||
<item>tad</item>
|
||||
<item>temper</item>
|
||||
<item>thermo</item>
|
||||
<item>thermo_modify</item>
|
||||
<item>thermo_style</item>
|
||||
<item>timestep</item>
|
||||
<item>uncompute</item>
|
||||
<item>undump</item>
|
||||
<item>unfix</item>
|
||||
<item>units</item>
|
||||
<item>variable</item>
|
||||
<item>velocity</item>
|
||||
<item>write_restart</item>
|
||||
</list>
|
||||
<list name="kw_fixes">
|
||||
<item>adapt</item>
|
||||
<item>addforce</item>
|
||||
<item>append/atoms</item>
|
||||
<item>aveforce</item>
|
||||
<item>ave/atom</item>
|
||||
<item>ave/correlate</item>
|
||||
<item>ave/histo</item>
|
||||
<item>ave/spatial</item>
|
||||
<item>ave/time</item>
|
||||
<item>balance</item>
|
||||
<item>bond/break</item>
|
||||
<item>bond/create</item>
|
||||
<item>bond/swap</item>
|
||||
<item>box/relax</item>
|
||||
<item>deform</item>
|
||||
<item>deposit</item>
|
||||
<item>drag</item>
|
||||
<item>dt/reset</item>
|
||||
<item>efield</item>
|
||||
<item>enforce2d</item>
|
||||
<item>evaporate</item>
|
||||
<item>external</item>
|
||||
<item>freeze</item>
|
||||
<item>gcmc</item>
|
||||
<item>gravity</item>
|
||||
<item>heat</item>
|
||||
<item>indent</item>
|
||||
<item>langevin</item>
|
||||
<item>lineforce</item>
|
||||
<item>momentum</item>
|
||||
<item>move</item>
|
||||
<item>msst</item>
|
||||
<item>neb</item>
|
||||
<item>nph</item>
|
||||
<item>nphug</item>
|
||||
<item>nph/asphere</item>
|
||||
<item>nph/sphere</item>
|
||||
<item>npt</item>
|
||||
<item>npt/asphere</item>
|
||||
<item>npt/sphere</item>
|
||||
<item>nve</item>
|
||||
<item>nve/asphere</item>
|
||||
<item>nve/asphere/noforce</item>
|
||||
<item>nve/limit</item>
|
||||
<item>nve/line</item>
|
||||
<item>nve/noforce</item>
|
||||
<item>nve/sphere</item>
|
||||
<item>nve/tri</item>
|
||||
<item>nvt</item>
|
||||
<item>nvt/asphere</item>
|
||||
<item>nvt/sllod</item>
|
||||
<item>nvt/sphere</item>
|
||||
<item>orient/fcc</item>
|
||||
<item>planeforce</item>
|
||||
<item>poems</item>
|
||||
<item>pour</item>
|
||||
<item>press/berendsen</item>
|
||||
<item>print</item>
|
||||
<item>qeq/comb</item>
|
||||
<item>reax/bonds</item>
|
||||
<item>recenter</item>
|
||||
<item>restrain</item>
|
||||
<item>rigid</item>
|
||||
<item>rigid/nph</item>
|
||||
<item>rigid/npt</item>
|
||||
<item>rigid/nve</item>
|
||||
<item>rigid/nvt</item>
|
||||
<item>setforce</item>
|
||||
<item>shake</item>
|
||||
<item>spring</item>
|
||||
<item>spring/rg</item>
|
||||
<item>spring/self</item>
|
||||
<item>srd</item>
|
||||
<item>store/force</item>
|
||||
<item>store/state</item>
|
||||
<item>temp/berendsen</item>
|
||||
<item>temp/rescale</item>
|
||||
<item>thermal/conductivity</item>
|
||||
<item>tmd</item>
|
||||
<item>ttm</item>
|
||||
<item>viscosity</item>
|
||||
<item>viscous</item>
|
||||
<item>wall/colloid</item>
|
||||
<item>wall/gran</item>
|
||||
<item>wall/harmonic</item>
|
||||
<item>wall/lj126</item>
|
||||
<item>wall/lj93</item>
|
||||
<item>wall/piston</item>
|
||||
<item>wall/reflect</item>
|
||||
<item>wall/region</item>
|
||||
<item>wall/srd</item>
|
||||
</list>
|
||||
<list name="kw_optional_fixes">
|
||||
<item>addtorque</item>
|
||||
<item>atc</item>
|
||||
<item>colvars</item>
|
||||
<item>imd</item>
|
||||
<item>langevin/eff</item>
|
||||
<item>meso</item>
|
||||
<item>meso/stationary</item>
|
||||
<item>nph/eff</item>
|
||||
<item>npt/eff</item>
|
||||
<item>nve/eff</item>
|
||||
<item>nvt/eff</item>
|
||||
<item>nvt/sllod/eff</item>
|
||||
<item>qeq/reax</item>
|
||||
<item>reax/c/bonds</item>
|
||||
<item>smd</item>
|
||||
<item>temp/rescale/eff</item>
|
||||
</list>
|
||||
<list name="kw_accelerated_fixes">
|
||||
<item>freeze/cuda</item>
|
||||
<item>addforce/cuda</item>
|
||||
<item>aveforce/cuda</item>
|
||||
<item>enforce2d/cuda</item>
|
||||
<item>gravity/cuda</item>
|
||||
<item>gravity/omp</item>
|
||||
<item>npt/cuda</item>
|
||||
<item>nve/cuda</item>
|
||||
<item>nve/sphere/omp</item>
|
||||
<item>nvt/cuda</item>
|
||||
<item>qeq/comb/omp</item>
|
||||
<item>setforce/cuda</item>
|
||||
<item>shake/cuda</item>
|
||||
<item>temp/berendsen/cuda</item>
|
||||
<item>temp/rescale/cuda</item>
|
||||
<item>temp/rescale/limit/cuda</item>
|
||||
<item>viscous/cuda</item>
|
||||
</list>
|
||||
<list name="kw_computes">
|
||||
<item>angle/local</item>
|
||||
<item>atom/molecule</item>
|
||||
<item>bond/local</item>
|
||||
<item>centro/atom</item>
|
||||
<item>cluster/atom</item>
|
||||
<item>cna/atom</item>
|
||||
<item>com</item>
|
||||
<item>com/molecule</item>
|
||||
<item>contact/atom</item>
|
||||
<item>coord/atom</item>
|
||||
<item>damage/atom</item>
|
||||
<item>dihedral/local</item>
|
||||
<item>displace/atom</item>
|
||||
<item>erotate/asphere</item>
|
||||
<item>erotate/sphere</item>
|
||||
<item>erotate/sphere/atom</item>
|
||||
<item>event/displace</item>
|
||||
<item>group/group</item>
|
||||
<item>gyration</item>
|
||||
<item>gyration/molecule</item>
|
||||
<item>heat/flux</item>
|
||||
<item>improper/local</item>
|
||||
<item>ke</item>
|
||||
<item>ke/atom</item>
|
||||
<item>msd</item>
|
||||
<item>msd/molecule</item>
|
||||
<item>pair</item>
|
||||
<item>pair/local</item>
|
||||
<item>pe</item>
|
||||
<item>pe/atom</item>
|
||||
<item>pressure</item>
|
||||
<item>property/atom</item>
|
||||
<item>property/local</item>
|
||||
<item>property/molecule</item>
|
||||
<item>rdf</item>
|
||||
<item>reduce</item>
|
||||
<item>reduce/region</item>
|
||||
<item>slice</item>
|
||||
<item>stress/atom</item>
|
||||
<item>temp</item>
|
||||
<item>temp/asphere</item>
|
||||
<item>temp/com</item>
|
||||
<item>temp/deform</item>
|
||||
<item>temp/partial</item>
|
||||
<item>temp/profile</item>
|
||||
<item>temp/ramp</item>
|
||||
<item>temp/region</item>
|
||||
<item>temp/sphere</item>
|
||||
</list>
|
||||
<list name="kw_optional_computes">
|
||||
<item>ackland/atom</item>
|
||||
<item>ke/eff</item>
|
||||
<item>ke/atom/eff</item>
|
||||
<item>meso_e/atom</item>
|
||||
<item>meso_rho/atom</item>
|
||||
<item>meso_t/atom</item>
|
||||
<item>temp/eff</item>
|
||||
<item>temp/deform/eff</item>
|
||||
<item>temp/region/eff</item>
|
||||
<item>temp/rotate</item>
|
||||
</list>
|
||||
<list name="kw_accelerated_computes">
|
||||
<item>pe/cuda</item>
|
||||
<item>pressure/cuda</item>
|
||||
<item>temp/cuda</item>
|
||||
<item>temp/partial/cuda</item>
|
||||
</list>
|
||||
<list name="kw_ps_potentials">
|
||||
<item>none</item>
|
||||
<item>hybrid</item>
|
||||
<item>hybrid/overlay</item>
|
||||
<item>adp</item>
|
||||
<item>airebo</item>
|
||||
<item>beck</item>
|
||||
<item>bop</item>
|
||||
<item>born</item>
|
||||
<item>born/coul/long</item>
|
||||
<item>born/coul/wolf</item>
|
||||
<item>brownian</item>
|
||||
<item>brownian/poly</item>
|
||||
<item>buck</item>
|
||||
<item>buck/coul/cut</item>
|
||||
<item>buck/coul/long</item>
|
||||
<item>buck/long/coul/long</item>
|
||||
<item>colloid</item>
|
||||
<item>comb</item>
|
||||
<item>coul/cut</item>
|
||||
<item>coul/debye</item>
|
||||
<item>coul/dsf</item>
|
||||
<item>coul/long</item>
|
||||
<item>coul/wolf</item>
|
||||
<item>dipole/cut</item>
|
||||
<item>dpd</item>
|
||||
<item>dpd/tstat</item>
|
||||
<item>dsmc</item>
|
||||
<item>eam</item>
|
||||
<item>eam/alloy</item>
|
||||
<item>eam/fs</item>
|
||||
<item>eim</item>
|
||||
<item>gauss</item>
|
||||
<item>gayberne</item>
|
||||
<item>gran/hertz/history</item>
|
||||
<item>gran/hooke</item>
|
||||
<item>gran/hooke/history</item>
|
||||
<item>hbond/dreiding/lj</item>
|
||||
<item>hbond/dreiding/morse</item>
|
||||
<item>kim</item>
|
||||
<item>lcbop</item>
|
||||
<item>line/lj</item>
|
||||
<item>lj/charmm/coul/charmm</item>
|
||||
<item>lj/charmm/coul/charmm/implicit</item>
|
||||
<item>lj/charmm/coul/long</item>
|
||||
<item>lj/class2</item>
|
||||
<item>lj/class2/coul/cut</item>
|
||||
<item>lj/class2/coul/long</item>
|
||||
<item>lj/cut</item>
|
||||
<item>lj/cut/coul/cut</item>
|
||||
<item>lj/cut/coul/debye</item>
|
||||
<item>lj/cut/coul/dsf</item>
|
||||
<item>lj/cut/coul/long</item>
|
||||
<item>lj/long/coul/long</item>
|
||||
<item>lj/cut/tip4p/long</item>
|
||||
<item>lj/long/tip4p/long</item>
|
||||
<item>lj/expand</item>
|
||||
<item>lj/gromacs</item>
|
||||
<item>lj/gromacs/coul/gromacs</item>
|
||||
<item>lj/smooth</item>
|
||||
<item>lj/smooth/linear</item>
|
||||
<item>lj96/cut</item>
|
||||
<item>lubricate</item>
|
||||
<item>lubricate/poly</item>
|
||||
<item>lubricateU</item>
|
||||
<item>lubricateU/poly</item>
|
||||
<item>meam</item>
|
||||
<item>morse</item>
|
||||
<item>peri/lps</item>
|
||||
<item>peri/pmb</item>
|
||||
<item>reax</item>
|
||||
<item>rebo</item>
|
||||
<item>resquared</item>
|
||||
<item>soft</item>
|
||||
<item>sw</item>
|
||||
<item>table</item>
|
||||
<item>tersoff</item>
|
||||
<item>tersoff/zbl</item>
|
||||
<item>tri/lj</item>
|
||||
<item>yukawa</item>
|
||||
<item>yukawa/colloid</item>
|
||||
</list>
|
||||
<list name="kw_optional_ps_potentials">
|
||||
<item>awpmd/cut</item>
|
||||
<item>coul/diel</item>
|
||||
<item>dipole/sf</item>
|
||||
<item>eam/cd</item>
|
||||
<item>edip</item>
|
||||
<item>eff/cut</item>
|
||||
<item>gauss/cut</item>
|
||||
<item>lj/sdk</item>
|
||||
<item>lj/sdk/coul/long</item>
|
||||
<item>lj/sf</item>
|
||||
<item>meam/spline</item>
|
||||
<item>meam/sw/spline</item>
|
||||
<item>reax/c</item>
|
||||
<item>sph/heatconduction</item>
|
||||
<item>sph/idealgas</item>
|
||||
<item>sph/lj</item>
|
||||
<item>sph/rhosum</item>
|
||||
<item>sph/taitwater</item>
|
||||
<item>sph/taitwater/morris</item>
|
||||
<item>tersoff/table</item>
|
||||
</list>
|
||||
<list name="kw_accelerated_ps_potentials">
|
||||
<item>adp/omp</item>
|
||||
<item>airebo/omp</item>
|
||||
<item>beck/omp</item>
|
||||
<item>born/coul/long/cuda</item>
|
||||
<item>born/coul/long/gpu</item>
|
||||
<item>born/coul/long/omp</item>
|
||||
<item>born/coul/wolf/gpu</item>
|
||||
<item>born/coul/wolf/omp</item>
|
||||
<item>born/gpu</item>
|
||||
<item>born/omp</item>
|
||||
<item>brownian/omp</item>
|
||||
<item>brownian/poly/omp</item>
|
||||
<item>buck/coul/cut/cuda</item>
|
||||
<item>buck/coul/cut/gpu</item>
|
||||
<item>buck/coul/cut/omp</item>
|
||||
<item>buck/coul/long/cuda</item>
|
||||
<item>buck/coul/long/gpu</item>
|
||||
<item>buck/coul/long/omp</item>
|
||||
<item>buck/cuda</item>
|
||||
<item>buck/long/coul/long/omp</item>
|
||||
<item>buck/gpu</item>
|
||||
<item>buck/omp</item>
|
||||
<item>colloid/gpu</item>
|
||||
<item>colloid/omp</item>
|
||||
<item>comb/omp</item>
|
||||
<item>coul/cut/omp</item>
|
||||
<item>coul/debye/omp</item>
|
||||
<item>coul/dsf/gpu</item>
|
||||
<item>coul/long/gpu</item>
|
||||
<item>coul/long/omp</item>
|
||||
<item>coul/wolf</item>
|
||||
<item>dipole/cut/gpu</item>
|
||||
<item>dipole/cut/omp</item>
|
||||
<item>dipole/sf/gpu</item>
|
||||
<item>dipole/sf/omp</item>
|
||||
<item>dpd/omp</item>
|
||||
<item>dpd/tstat/omp</item>
|
||||
<item>eam/alloy/cuda</item>
|
||||
<item>eam/alloy/gpu</item>
|
||||
<item>eam/alloy/omp</item>
|
||||
<item>eam/alloy/opt</item>
|
||||
<item>eam/cd/omp</item>
|
||||
<item>eam/cuda</item>
|
||||
<item>eam/fs/cuda</item>
|
||||
<item>eam/fs/gpu</item>
|
||||
<item>eam/fs/omp</item>
|
||||
<item>eam/fs/opt</item>
|
||||
<item>eam/gpu</item>
|
||||
<item>eam/omp</item>
|
||||
<item>eam/opt</item>
|
||||
<item>edip/omp</item>
|
||||
<item>eim/omp</item>
|
||||
<item>gauss/gpu</item>
|
||||
<item>gauss/omp</item>
|
||||
<item>gayberne/gpu</item>
|
||||
<item>gayberne/omp</item>
|
||||
<item>gran/hertz/history/omp</item>
|
||||
<item>gran/hooke/cuda</item>
|
||||
<item>gran/hooke/history/omp</item>
|
||||
<item>gran/hooke/omp</item>
|
||||
<item>hbond/dreiding/lj/omp</item>
|
||||
<item>hbond/dreiding/morse/omp</item>
|
||||
<item>line/lj/omp</item>
|
||||
<item>lj/charmm/coul/charmm/cuda</item>
|
||||
<item>lj/charmm/coul/charmm/omp</item>
|
||||
<item>lj/charmm/coul/charmm/implicit/cuda</item>
|
||||
<item>lj/charmm/coul/charmm/implicit/omp</item>
|
||||
<item>lj/charmm/coul/long/cuda</item>
|
||||
<item>lj/charmm/coul/long/gpu</item>
|
||||
<item>lj/charmm/coul/long/omp</item>
|
||||
<item>lj/charmm/coul/long/opt</item>
|
||||
<item>lj/charmm/coul/pppm/omp</item>
|
||||
<item>lj/class2/coul/cut/cuda</item>
|
||||
<item>lj/class2/coul/cut/omp</item>
|
||||
<item>lj/class2/coul/long/cuda</item>
|
||||
<item>lj/class2/coul/long/gpu</item>
|
||||
<item>lj/class2/coul/pppm/omp</item>
|
||||
<item>lj/class2/coul/long/omp</item>
|
||||
<item>lj/class2/cuda</item>
|
||||
<item>lj/class2/gpu</item>
|
||||
<item>lj/class2/omp</item>
|
||||
<item>lj/long/coul/long/omp</item>
|
||||
<item>lj/cut/coul/cut/cuda</item>
|
||||
<item>lj/cut/coul/cut/gpu</item>
|
||||
<item>lj/cut/coul/cut/omp</item>
|
||||
<item>lj/cut/coul/debye/cuda</item>
|
||||
<item>lj/cut/coul/debye/gpu</item>
|
||||
<item>lj/cut/coul/debye/omp</item>
|
||||
<item>lj/cut/coul/dsf/gpu</item>
|
||||
<item>lj/cut/coul/long/cuda</item>
|
||||
<item>lj/cut/coul/long/gpu</item>
|
||||
<item>lj/cut/coul/long/omp</item>
|
||||
<item>lj/cut/coul/long/opt</item>
|
||||
<item>lj/cut/coul/pppm/omp</item>
|
||||
<item>lj/cut/cuda</item>
|
||||
<item>lj/cut/experimental/cuda</item>
|
||||
<item>lj/cut/gpu</item>
|
||||
<item>lj/cut/omp</item>
|
||||
<item>lj/cut/opt</item>
|
||||
<item>lj/cut/tip4p/long/omp</item>
|
||||
<item>lj/cut/tip4p/long/opt</item>
|
||||
<item>lj/expand/cuda</item>
|
||||
<item>lj/expand/gpu</item>
|
||||
<item>lj/expand/omp</item>
|
||||
<item>lj/gromacs/coul/gromacs/cuda</item>
|
||||
<item>lj/gromacs/coul/gromacs/omp</item>
|
||||
<item>lj/gromacs/cuda</item>
|
||||
<item>lj/gromacs/omp</item>
|
||||
<item>lj/sdk/gpu</item>
|
||||
<item>lj/sdk/omp</item>
|
||||
<item>lj/sdk/coul/long/gpu</item>
|
||||
<item>lj/sdk/coul/long/omp</item>
|
||||
<item>lj/sf/omp</item>
|
||||
<item>lj/smooth/cuda</item>
|
||||
<item>lj/smooth/omp</item>
|
||||
<item>lj/smooth/linear/omp</item>
|
||||
<item>lj96/cut/cuda</item>
|
||||
<item>lj96/cut/gpu</item>
|
||||
<item>lj96/cut/omp</item>
|
||||
<item>lubricate/omp</item>
|
||||
<item>lubricate/poly/omp</item>
|
||||
<item>meam/spline/omp</item>
|
||||
<item>morse/cuda</item>
|
||||
<item>morse/gpu</item>
|
||||
<item>morse/omp</item>
|
||||
<item>morse/opt</item>
|
||||
<item>peri/lps/omp</item>
|
||||
<item>peri/pmb/omp</item>
|
||||
<item>rebo/omp</item>
|
||||
<item>resquared/gpu</item>
|
||||
<item>resquared/omp</item>
|
||||
<item>soft/omp</item>
|
||||
<item>sw/cuda</item>
|
||||
<item>sw/omp</item>
|
||||
<item>table/gpu</item>
|
||||
<item>table/omp</item>
|
||||
<item>tersoff/cuda</item>
|
||||
<item>tersoff/omp</item>
|
||||
<item>tersoff/table/omp</item>
|
||||
<item>tersoff/zbl/omp</item>
|
||||
<item>tri/lj/omp</item>
|
||||
<item>yukawa/gpu</item>
|
||||
<item>yukawa/omp</item>
|
||||
<item>yukawa/colloid/gpu</item>
|
||||
<item>yukawa/colloid/omp</item>
|
||||
</list>
|
||||
<list name="kw_bs_potentials">
|
||||
<item>none</item>
|
||||
<item>hybrid</item>
|
||||
<item>class2</item>
|
||||
<item>fene</item>
|
||||
<item>fene/expand</item>
|
||||
<item>harmonic</item>
|
||||
<item>morse</item>
|
||||
<item>nonlinear</item>
|
||||
<item>quartic</item>
|
||||
<item>table</item>
|
||||
</list>
|
||||
<list name="kw_optional_bs_potentials">
|
||||
<item>harmonic/shift</item>
|
||||
<item>harmonic/shift/cut</item>
|
||||
</list>
|
||||
<list name="kw_accelerated_bs_potentials">
|
||||
<item>class2/omp</item>
|
||||
<item>fene/omp</item>
|
||||
<item>fene/expand/omp</item>
|
||||
<item>harmonic/omp</item>
|
||||
<item>harmonic/shift/omp</item>
|
||||
<item>harmonic/shift/cut/omp</item>
|
||||
<item>morse/omp</item>
|
||||
<item>nonlinear/omp</item>
|
||||
<item>quartic/omp</item>
|
||||
<item>table/omp</item>
|
||||
</list>
|
||||
<list name="kw_as_potentials">
|
||||
<item>none</item>
|
||||
<item>hybrid</item>
|
||||
<item>charmm</item>
|
||||
<item>class2</item>
|
||||
<item>cosine</item>
|
||||
<item>cosine/delta</item>
|
||||
<item>cosine/periodic</item>
|
||||
<item>cosine/squared</item>
|
||||
<item>harmonic</item>
|
||||
<item>table</item>
|
||||
</list>
|
||||
<list name="kw_optional_as_potentials">
|
||||
<item>sdk</item>
|
||||
<item>cosine/shift</item>
|
||||
<item>cosine/shift/exp</item>
|
||||
<item>dipole</item>
|
||||
<item>fourier</item>
|
||||
<item>fourier/simple</item>
|
||||
<item>quartic</item>
|
||||
</list>
|
||||
<list name="kw_accelerated_as_potentials">
|
||||
<item>charmm/omp</item>
|
||||
<item>class2/omp</item>
|
||||
<item>cosine/omp</item>
|
||||
<item>cosine/delta/omp</item>
|
||||
<item>cosine/periodic/omp</item>
|
||||
<item>cosine/shift/omp</item>
|
||||
<item>cosine/shift/exp/omp</item>
|
||||
<item>cosine/squared/omp</item>
|
||||
<item>dipole/ompharmonic/omp</item>
|
||||
<item>table/omp</item>
|
||||
</list>
|
||||
<list name="kw_ds_potentials">
|
||||
<item>none</item>
|
||||
<item>hybrid</item>
|
||||
<item>charmm</item>
|
||||
<item>class2</item>
|
||||
<item>harmonic</item>
|
||||
<item>helix</item>
|
||||
<item>multi/harmonic</item>
|
||||
<item>opls</item>
|
||||
</list>
|
||||
<list name="kw_optional_ds_potentials">
|
||||
<item>cosine/shift/exp</item>
|
||||
<item>fourier</item>
|
||||
<item>nharmonic</item>
|
||||
<item>quadratic</item>
|
||||
<item>table</item>
|
||||
</list>
|
||||
<list name="kw_accelerated_ds_potentials">
|
||||
<item>charmm/omp</item>
|
||||
<item>class2/omp</item>
|
||||
<item>cosine/shift/exp/omp</item>
|
||||
<item>harmonic/omp</item>
|
||||
<item>helix/omp</item>
|
||||
<item>multi/harmonic/omp</item>
|
||||
<item>opls/omptable/omp</item>
|
||||
</list>
|
||||
<list name="kw_all_is_potentials">
|
||||
<item>none</item>
|
||||
<item>hybrid</item>
|
||||
<item>class2</item>
|
||||
<item>cvff</item>
|
||||
<item>harmonic</item>
|
||||
<item>umbrella</item>
|
||||
<item>cossq</item>
|
||||
<item>ring</item>
|
||||
<item>class2/omp</item>
|
||||
<item>cossq/omp</item>
|
||||
<item>cvff/omp</item>
|
||||
<item>fourier</item>
|
||||
<item>harmonic/omp</item>
|
||||
<item>ring/omp</item>
|
||||
<item>umbrella/omp</item>
|
||||
</list>
|
||||
<list name="kw_all_kspace_solvers">
|
||||
<item>ewald</item>
|
||||
<item>ewald/disp</item>
|
||||
<item>msm</item>
|
||||
<item>pppm</item>
|
||||
<item>pppm/cg</item>
|
||||
<item>pppm/disp</item>
|
||||
<item>pppm/disp/tip4p</item>
|
||||
<item>pppm/tip4p</item>
|
||||
<item>ewald/omp</item>
|
||||
<item>pppm/cuda</item>
|
||||
<item>pppm/gpu</item>
|
||||
<item>pppm/omp</item>
|
||||
<item>pppm/cg/omp</item>
|
||||
<item>pppm/tip4p/omp</item>
|
||||
</list>
|
||||
<list name="kw_operators">
|
||||
<item>equal</item>
|
||||
<item>add</item>
|
||||
<item>sub</item>
|
||||
<item>mult</item>
|
||||
<item>div</item>
|
||||
</list>
|
||||
<list name="kw_special">
|
||||
<item>NULL</item>
|
||||
<item>EDGE</item>
|
||||
<item>&</item>
|
||||
</list>
|
||||
<list name="kw_conditionals">
|
||||
<item>if</item>
|
||||
<item>then</item>
|
||||
<item>elif</item>
|
||||
<item>else</item>
|
||||
</list>
|
||||
|
||||
<!-- SHORT LIST OF DEFINED KEYWORD GROUPS
|
||||
kw_commands
|
||||
kw_fixes
|
||||
kw_optional_fixes
|
||||
kw_accelerated_fixes
|
||||
kw_computes
|
||||
kw_optional_computes
|
||||
kw_accelerated_computes
|
||||
kw_ps_potentials
|
||||
kw_optional_ps_potentials
|
||||
kw_accelerated_ps_potentials
|
||||
kw_bs_potentials
|
||||
kw_optional_bs_potentials
|
||||
kw_accelerated_bs_potentials
|
||||
kw_as_potentials
|
||||
kw_optional_as_potentials
|
||||
kw_accelerated_as_potentials
|
||||
kw_ds_potentials
|
||||
kw_optional_ds_potentials
|
||||
kw_accelerated_ds_potentials
|
||||
kw_all_is_potentials
|
||||
kw_all_kspace_solvers
|
||||
kw_operators
|
||||
kw_special
|
||||
kw_conditionals
|
||||
-->
|
||||
|
||||
<contexts>
|
||||
|
||||
<!-- "Start" is the starting context -->
|
||||
<context attribute="Normal Text" lineEndContext="#stay" name="Start">
|
||||
<IncludeRules context="FindAll" />
|
||||
</context>
|
||||
|
||||
<!-- Following rulessets are then included -->
|
||||
|
||||
<!-- FindAll tries to interpret all the strings including other rules -->
|
||||
<context attribute="Normal Text" lineEndContext="#stay" name="FindAll">
|
||||
<IncludeRules context="FindComments" />
|
||||
<IncludeRules context="FindCommands" />
|
||||
<IncludeRules context="FindStrings" />
|
||||
<IncludeRules context="FindSubstitutions" />
|
||||
</context>
|
||||
|
||||
<!-- FindComments consumes comments till EOL -->
|
||||
<context attribute="Normal Text" lineEndContext="#pop" name="FindComments">
|
||||
<DetectChar attribute="Comment" context="Comment" char="#" firstNonSpace="true"/>
|
||||
<RegExpr attribute="Normal Text" context="Comment" String="[\s](?=#)" />
|
||||
</context>
|
||||
<context attribute="Comment" lineEndContext="#pop" name="Comment">
|
||||
</context>
|
||||
|
||||
<!-- FindCommands matches expected items. -->
|
||||
<context attribute="Normal Text" lineEndContext="#stay" name="FindCommands">
|
||||
|
||||
<!-- We handle float and integer numbers -->
|
||||
<Float attribute="Floating" context="#stay"/>
|
||||
<Int attribute="Integer" context="#stay"/>
|
||||
|
||||
|
||||
<!-- We handle variable assignments, using tricks on how
|
||||
variables are actually defined or recalled in lammps -->
|
||||
<RegExpr attribute="Variable" context="#stay" String="\b&varname;(?=\s+equal)" />
|
||||
|
||||
<RegExpr attribute="Variable" context="#stay" String="\bv_\S+" />
|
||||
|
||||
<!-- Reading keywords -->
|
||||
<keyword attribute="Commands" context="#stay" String="kw_commands" />
|
||||
|
||||
<keyword attribute="Fixes" context="#stay" String="kw_fixes" />
|
||||
<keyword attribute="Fixes" context="#stay" String="kw_accelerated_fixes" />
|
||||
<keyword attribute="Fixes" context="#stay" String="kw_optional_fixes" />
|
||||
|
||||
<keyword attribute="Computes" context="#stay" String="kw_computes" />
|
||||
<keyword attribute="Computes" context="#stay" String="kw_optional_computes" />
|
||||
<keyword attribute="Computes" context="#stay" String="kw_accelerated_computes" />
|
||||
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_ps_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_optional_ps_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_accelerated_ps_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_bs_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_optional_bs_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_accelerated_bs_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_as_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_optional_as_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_accelerated_as_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_ds_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_optional_ds_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_accelerated_ds_potentials" />
|
||||
<keyword attribute="Potentials" context="#stay" String="kw_all_is_potentials" />
|
||||
|
||||
<keyword attribute="KSpaceSolvers" context="#stay" String="kw_all_kspace_solvers" />
|
||||
|
||||
<keyword attribute="Special" context="#stay" String="kw_special" />
|
||||
|
||||
<keyword attribute="Conditionals" context="#stay" String="kw_conditionals" />
|
||||
|
||||
<keyword attribute="Operators" context="#stay" String="kw_operators" />
|
||||
|
||||
<!-- Getting the ampersand "&" right -->
|
||||
<DetectChar char="&" attribute="Special" context="#stay" />
|
||||
|
||||
|
||||
</context>
|
||||
|
||||
|
||||
<!-- FindStrings looks for single and double quoted strings, also with $-prefix -->
|
||||
<context attribute="Normal Text" lineEndContext="#stay" name="FindStrings">
|
||||
<DetectChar attribute="String" context="StringSQ" char="'" />
|
||||
<DetectChar attribute="String" context="StringDQ" char=""" />
|
||||
<Detect2Chars attribute="String" context="StringEsc" char="$" char1="'" />
|
||||
<Detect2Chars attribute="String" context="StringDQ" char="$" char1=""" />
|
||||
</context>
|
||||
|
||||
<!-- FindSubstitutions looks for anything starting with $ and ` and their escapes -->
|
||||
<context attribute="Normal Text" lineEndContext="#stay" name="FindSubstitutions">
|
||||
<RegExpr attribute="Variable" context="#stay" String="\$&varname;" />
|
||||
<RegExpr attribute="Variable" context="#stay" String="\$\{&varname;\}" />
|
||||
<RegExpr attribute="Variable" context="#stay" String="\$\{#&varname;(\[[*@]\])?\}" />
|
||||
<RegExpr attribute="Variable" context="#stay" String="\$\{!&varname;(\[[*@]\]|[*@])?\}" />
|
||||
<RegExpr attribute="Variable" context="VarBraceErr" String="\$\{&varname;" />
|
||||
<RegExpr attribute="Variable" context="VarBraceErr" String="\$\{[*@#?$!_0-9-](?=[:#%/=?+-])" />
|
||||
</context>
|
||||
|
||||
|
||||
<!-- FOLLOWING: contexts that can be branched to. -->
|
||||
|
||||
<!-- StringSQ consumes anything till ' -->
|
||||
<context attribute="String" lineEndContext="#stay" name="StringSQ">
|
||||
<DetectChar attribute="String" context="#pop" char="'" />
|
||||
</context>
|
||||
|
||||
<!-- StringDQ consumes anything till ", substitutes vars and expressions -->
|
||||
<context attribute="String" lineEndContext="#stay" name="StringDQ">
|
||||
<DetectChar attribute="String" context="#pop" char=""" />
|
||||
<RegExpr attribute="String" context="#stay" String="\\[`"\\$\n]" />
|
||||
<IncludeRules context="FindSubstitutions" />
|
||||
</context>
|
||||
|
||||
<!-- StringEsc eats till ', but escaping many characters -->
|
||||
<context attribute="String" lineEndContext="#stay" name="StringEsc">
|
||||
<DetectChar attribute="String" context="#pop" char="'" />
|
||||
<RegExpr attribute="String" context="#stay" String="\\[abefnrtv\\']" />
|
||||
<RegExpr attribute="String" context="#stay" String="\\([0-7]{1,3}|x[A-Fa-f0-9]{1,2}|c.)" />
|
||||
</context>
|
||||
|
||||
<!-- VarBraceErr is called as soon as ${xxx is encoutered -->
|
||||
<context attribute="Error" lineEndContext="#stay" name="VarBraceErr">
|
||||
<DetectChar attribute="Variable" context="#pop" char="}" />
|
||||
</context>
|
||||
|
||||
</contexts>
|
||||
|
||||
|
||||
<itemDatas>
|
||||
<itemData name="Normal" defStyleNum="dsNormal"/>
|
||||
<itemData name="Commands" defStyleNum="dsKeyword"/>
|
||||
<itemData name="Fixes" defStyleNum="dsFunction"/>
|
||||
<itemData name="Computes" defStyleNum="dsKeyword"/>
|
||||
<itemData name="Potentials" defStyleNum="dsChar"/>
|
||||
<itemData name="KSpaceSolvers" defStyleNum="dsKeyword"/>
|
||||
<itemData name="Special" defStyleNum="dsAlert"/>
|
||||
<itemData name="Conditionals" defStyleNum="dsChar"/>
|
||||
<itemData name="Variable" defStyleNum="dsDataType"/>
|
||||
<itemData name="Operators" defStyleNum="dsOthers"/>
|
||||
<itemData name="String" defStyleNum="dsString"/>
|
||||
<itemData name="Floating" defStyleNum="dsFloat" spellChecking="false"/>
|
||||
<itemData name="Integer" defStyleNum="dsDecVal" spellChecking="false"/>
|
||||
<itemData name="Comment" defStyleNum="dsComment"/>
|
||||
<itemData name="Error" defStyleNum="dsError" />
|
||||
</itemDatas>
|
||||
|
||||
</highlighting>
|
||||
|
||||
<general>
|
||||
<comments>
|
||||
<comment name="singleLine" start="#" />
|
||||
</comments>
|
||||
<keywords casesensitive="0" weakDeliminator="[]$._{}-/" />
|
||||
</general>
|
||||
|
||||
</language>
|
||||
Reference in New Issue
Block a user