From b190abea390e8052d85194b823b869cb491532eb Mon Sep 17 00:00:00 2001 From: sjplimp <sjplimp@f3b2605a-c512-4ea7-a41b-209d697bcdaa> Date: Thu, 8 Sep 2016 20:20:32 +0000 Subject: [PATCH] sync with GH git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@15561 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- doc/html/Manual.html | 23 +- doc/html/Section_accelerate.html | 54 +-- doc/html/Section_commands.html | 12 +- doc/html/Section_errors.html | 11 +- doc/html/Section_example.html | 20 +- doc/html/Section_howto.html | 316 +++++++------- doc/html/Section_modify.html | 106 ++--- doc/html/Section_packages.html | 257 ++++++------ doc/html/Section_python.html | 250 ++++++----- doc/html/Section_start.html | 130 +++--- doc/html/Section_tools.html | 12 +- doc/html/accelerate_gpu.html | 26 +- doc/html/accelerate_intel.html | 46 +- doc/html/accelerate_kokkos.html | 144 +++---- doc/html/accelerate_omp.html | 16 +- doc/html/angle_charmm.html | 14 +- doc/html/angle_class2.html | 18 +- doc/html/angle_cosine.html | 14 +- doc/html/angle_cosine_delta.html | 14 +- doc/html/angle_cosine_periodic.html | 14 +- doc/html/angle_cosine_shift.html | 14 +- doc/html/angle_cosine_shift_exp.html | 14 +- doc/html/angle_cosine_squared.html | 14 +- doc/html/angle_dipole.html | 14 +- doc/html/angle_fourier.html | 6 +- doc/html/angle_fourier_simple.html | 6 +- doc/html/angle_harmonic.html | 14 +- doc/html/angle_quartic.html | 14 +- doc/html/angle_sdk.html | 20 +- doc/html/atom_modify.html | 16 +- doc/html/atom_style.html | 24 +- doc/html/body.html | 20 +- doc/html/bond_class2.html | 14 +- doc/html/bond_fene.html | 14 +- doc/html/bond_fene_expand.html | 14 +- doc/html/bond_harmonic.html | 14 +- doc/html/bond_harmonic_shift.html | 14 +- doc/html/bond_harmonic_shift_cut.html | 14 +- doc/html/bond_morse.html | 14 +- doc/html/bond_nonlinear.html | 14 +- doc/html/bond_quartic.html | 22 +- doc/html/change_box.html | 56 +-- doc/html/compute.html | 14 +- doc/html/compute_bond_local.html | 10 +- doc/html/compute_centro_atom.html | 2 +- doc/html/compute_dipole_chunk.html | 10 +- doc/html/compute_fep.html | 10 +- doc/html/compute_gyration_chunk.html | 10 +- doc/html/compute_heat_flux.html | 26 +- doc/html/compute_inertia_chunk.html | 10 +- doc/html/compute_ke_atom_eff.html | 10 +- doc/html/compute_ke_eff.html | 10 +- doc/html/compute_modify.html | 14 +- doc/html/compute_pe_atom.html | 10 +- doc/html/compute_pressure.html | 14 +- doc/html/compute_property_atom.html | 38 +- doc/html/compute_property_chunk.html | 12 +- doc/html/compute_reduce.html | 62 +-- doc/html/compute_rigid_local.html | 8 +- doc/html/compute_saed.html | 18 +- doc/html/compute_sna_atom.html | 42 +- doc/html/compute_stress_atom.html | 12 +- doc/html/compute_temp_cs.html | 8 +- doc/html/compute_temp_eff.html | 10 +- doc/html/compute_ti.html | 10 +- doc/html/compute_voronoi_atom.html | 34 +- doc/html/compute_xrd.html | 10 +- doc/html/create_atoms.html | 38 +- doc/html/delete_bonds.html | 20 +- doc/html/dihedral_charmm.html | 18 +- doc/html/dihedral_class2.html | 24 +- doc/html/dihedral_cosine_shift_exp.html | 14 +- doc/html/dihedral_fourier.html | 14 +- doc/html/dihedral_harmonic.html | 14 +- doc/html/dihedral_helix.html | 14 +- doc/html/dihedral_multi_harmonic.html | 14 +- doc/html/dihedral_nharmonic.html | 14 +- doc/html/dihedral_opls.html | 18 +- doc/html/dihedral_quadratic.html | 14 +- doc/html/dihedral_spherical.html | 18 +- doc/html/dihedral_style.html | 16 +- doc/html/dihedral_table.html | 46 +- doc/html/dump.html | 62 +-- doc/html/dump_custom_vtk.html | 12 +- doc/html/dump_image.html | 48 +-- doc/html/dump_modify.html | 70 ++-- doc/html/fix.html | 4 +- doc/html/fix_adapt_fep.html | 34 +- doc/html/fix_addtorque.html | 12 +- doc/html/fix_atc.html | 120 +++--- doc/html/fix_atom_swap.html | 14 +- doc/html/fix_ave_atom.html | 52 ++- doc/html/fix_ave_chunk.html | 54 ++- doc/html/fix_ave_correlate.html | 82 ++-- doc/html/fix_ave_correlate_long.html | 30 +- doc/html/fix_ave_histo.html | 54 ++- doc/html/fix_ave_time.html | 52 ++- doc/html/fix_balance.html | 4 +- doc/html/fix_bond_break.html | 4 +- doc/html/fix_bond_create.html | 6 +- doc/html/fix_bond_swap.html | 6 +- doc/html/fix_box_relax.html | 24 +- doc/html/fix_colvars.html | 4 +- doc/html/fix_controller.html | 36 +- doc/html/fix_deform.html | 68 ++- doc/html/fix_deposit.html | 4 +- doc/html/fix_drag.html | 4 +- doc/html/fix_drude_transform.html | 36 +- doc/html/fix_efield.html | 12 +- doc/html/fix_ehex.html | 4 +- doc/html/fix_external.html | 22 +- doc/html/fix_gcmc.html | 32 +- doc/html/fix_gld.html | 6 +- doc/html/fix_gle.html | 6 +- doc/html/fix_gravity.html | 18 +- doc/html/fix_heat.html | 14 +- doc/html/fix_imd.html | 4 +- doc/html/fix_ipi.html | 4 +- doc/html/fix_langevin.html | 4 +- doc/html/fix_langevin_drude.html | 32 +- doc/html/fix_langevin_eff.html | 4 +- doc/html/fix_lb_fluid.html | 4 +- doc/html/fix_lb_momentum.html | 4 +- doc/html/fix_lb_pc.html | 6 +- doc/html/fix_lb_rigid_pc_sphere.html | 4 +- doc/html/fix_lb_viscous.html | 4 +- doc/html/fix_lineforce.html | 4 +- doc/html/fix_move.html | 38 +- doc/html/fix_msst.html | 30 +- doc/html/fix_neb.html | 4 +- doc/html/fix_nh.html | 26 +- doc/html/fix_nh_eff.html | 10 +- doc/html/fix_nph_asphere.html | 12 +- doc/html/fix_nph_sphere.html | 12 +- doc/html/fix_nphug.html | 22 +- doc/html/fix_npt_asphere.html | 12 +- doc/html/fix_npt_body.html | 12 +- doc/html/fix_npt_sphere.html | 12 +- doc/html/fix_nve_asphere.html | 4 +- doc/html/fix_nve_asphere_noforce.html | 4 +- doc/html/fix_nve_body.html | 4 +- doc/html/fix_nve_line.html | 4 +- doc/html/fix_nve_manifold_rattle.html | 14 +- doc/html/fix_nve_sphere.html | 4 +- doc/html/fix_nve_tri.html | 4 +- doc/html/fix_nvt_asphere.html | 10 +- doc/html/fix_nvt_body.html | 10 +- doc/html/fix_nvt_sllod.html | 10 +- doc/html/fix_nvt_sllod_eff.html | 4 +- doc/html/fix_nvt_sphere.html | 10 +- doc/html/fix_orient.html | 4 +- doc/html/fix_phonon.html | 10 +- doc/html/fix_pimd.html | 12 +- doc/html/fix_pour.html | 4 +- doc/html/fix_qbmsst.html | 32 +- doc/html/fix_qeq.html | 18 +- doc/html/fix_qeq_comb.html | 4 +- doc/html/fix_qeq_reax.html | 4 +- doc/html/fix_qmmm.html | 4 +- doc/html/fix_qtb.html | 14 +- doc/html/fix_reax_bonds.html | 4 +- doc/html/fix_reaxc_species.html | 4 +- doc/html/fix_restrain.html | 22 +- doc/html/fix_rigid.html | 34 +- doc/html/fix_rx.html | 16 +- doc/html/fix_saed_vtk.html | 60 ++- doc/html/fix_shake.html | 4 +- doc/html/fix_smd.html | 4 +- doc/html/fix_smd_adjust_dt.html | 16 +- doc/html/fix_smd_integrate_tlsph.html | 18 +- doc/html/fix_smd_integrate_ulsph.html | 24 +- .../fix_smd_move_triangulated_surface.html | 50 ++- doc/html/fix_smd_setvel.html | 10 +- doc/html/fix_smd_wall_surface.html | 16 +- doc/html/fix_spring.html | 4 +- doc/html/fix_spring_chunk.html | 4 +- doc/html/fix_spring_rg.html | 4 +- doc/html/fix_spring_self.html | 4 +- doc/html/fix_store_state.html | 78 ++-- doc/html/fix_temp_berendsen.html | 10 +- doc/html/fix_temp_csvr.html | 10 +- doc/html/fix_temp_rescale.html | 10 +- doc/html/fix_temp_rescale_eff.html | 4 +- doc/html/fix_tfmc.html | 4 +- doc/html/fix_thermal_conductivity.html | 16 +- doc/html/fix_ti_rs.html | 10 +- doc/html/fix_ti_spring.html | 10 +- doc/html/fix_ttm.html | 116 +++--- doc/html/fix_viscosity.html | 4 +- doc/html/fix_viscous.html | 4 +- doc/html/fix_wall.html | 60 ++- doc/html/fix_wall_gran.html | 16 +- doc/html/fix_wall_piston.html | 4 +- doc/html/fix_wall_reflect.html | 58 ++- doc/html/fix_wall_region.html | 4 +- doc/html/genindex.html | 394 +++++++++--------- doc/html/group.html | 36 +- doc/html/if.html | 16 +- doc/html/improper_class2.html | 16 +- doc/html/improper_cossq.html | 14 +- doc/html/improper_cvff.html | 14 +- doc/html/improper_distance.html | 8 +- doc/html/improper_fourier.html | 14 +- doc/html/improper_harmonic.html | 14 +- doc/html/improper_ring.html | 18 +- doc/html/improper_umbrella.html | 14 +- doc/html/info.html | 30 +- doc/html/jump.html | 24 +- doc/html/kspace_modify.html | 14 +- doc/html/kspace_style.html | 24 +- doc/html/lattice.html | 54 +-- doc/html/min_modify.html | 12 +- doc/html/min_style.html | 20 +- doc/html/neigh_modify.html | 20 +- doc/html/next.html | 12 +- doc/html/package.html | 10 +- doc/html/pair_adp.html | 22 +- doc/html/pair_airebo.html | 52 +-- doc/html/pair_beck.html | 16 +- doc/html/pair_body.html | 16 +- doc/html/pair_bop.html | 26 +- doc/html/pair_born.html | 56 +-- doc/html/pair_brownian.html | 16 +- doc/html/pair_buck.html | 58 +-- doc/html/pair_buck_long.html | 20 +- doc/html/pair_charmm.html | 54 +-- doc/html/pair_class2.html | 42 +- doc/html/pair_colloid.html | 20 +- doc/html/pair_comb.html | 32 +- doc/html/pair_coul.html | 124 +++--- doc/html/pair_coul_diel.html | 14 +- doc/html/pair_cs.html | 26 +- doc/html/pair_dipole.html | 52 +-- doc/html/pair_dpd.html | 28 +- doc/html/pair_dpd_fdt.html | 22 +- doc/html/pair_dsmc.html | 28 +- doc/html/pair_eam.html | 64 +-- doc/html/pair_edip.html | 12 +- doc/html/pair_eff.html | 26 +- doc/html/pair_eim.html | 24 +- doc/html/pair_exp6_rx.html | 18 +- doc/html/pair_gauss.html | 36 +- doc/html/pair_gayberne.html | 14 +- doc/html/pair_gran.html | 20 +- doc/html/pair_gromacs.html | 26 +- doc/html/pair_hbond_dreiding.html | 36 +- doc/html/pair_hybrid.html | 146 +++---- doc/html/pair_line_lj.html | 18 +- doc/html/pair_list.html | 24 +- doc/html/pair_lj.html | 106 ++--- doc/html/pair_lj96.html | 16 +- doc/html/pair_lj_cubic.html | 14 +- doc/html/pair_lj_expand.html | 16 +- doc/html/pair_lj_long.html | 32 +- doc/html/pair_lj_sf.html | 16 +- doc/html/pair_lj_smooth.html | 16 +- doc/html/pair_lj_smooth_linear.html | 16 +- doc/html/pair_lj_soft.html | 88 ++-- doc/html/pair_lubricate.html | 28 +- doc/html/pair_lubricateU.html | 16 +- doc/html/pair_mdf.html | 42 +- doc/html/pair_meam.html | 38 +- doc/html/pair_meam_spline.html | 22 +- doc/html/pair_meam_sw_spline.html | 16 +- doc/html/pair_mgpt.html | 22 +- doc/html/pair_mie.html | 18 +- doc/html/pair_modify.html | 46 +- doc/html/pair_morse.html | 16 +- doc/html/pair_multi_lucy.html | 32 +- doc/html/pair_multi_lucy_rx.html | 34 +- doc/html/pair_nb3b_harmonic.html | 20 +- doc/html/pair_nm.html | 36 +- doc/html/pair_peri.html | 38 +- doc/html/pair_polymorphic.html | 50 +-- doc/html/pair_quip.html | 16 +- doc/html/pair_reax.html | 40 +- doc/html/pair_reax_c.html | 48 +-- doc/html/pair_resquared.html | 14 +- doc/html/pair_sdk.html | 24 +- doc/html/pair_smd_hertz.html | 8 +- doc/html/pair_smd_triangulated_surface.html | 8 +- doc/html/pair_smtbq.html | 22 +- doc/html/pair_snap.html | 26 +- doc/html/pair_soft.html | 36 +- doc/html/pair_sph_idealgas.html | 14 +- doc/html/pair_sph_taitwater.html | 14 +- doc/html/pair_sph_taitwater_morris.html | 14 +- doc/html/pair_srp.html | 36 +- doc/html/pair_style.html | 26 +- doc/html/pair_sw.html | 22 +- doc/html/pair_table.html | 38 +- doc/html/pair_table_rx.html | 38 +- doc/html/pair_tersoff.html | 30 +- doc/html/pair_tersoff_mod.html | 20 +- doc/html/pair_tersoff_zbl.html | 20 +- doc/html/pair_thole.html | 28 +- doc/html/pair_tri_lj.html | 16 +- doc/html/pair_vashishta.html | 20 +- doc/html/pair_yukawa.html | 16 +- doc/html/pair_yukawa_colloid.html | 22 +- doc/html/pair_zbl.html | 16 +- doc/html/prd.html | 32 +- doc/html/processors.html | 20 +- doc/html/python.html | 106 ++--- doc/html/read_data.html | 32 +- doc/html/read_dump.html | 30 +- doc/html/region.html | 34 +- doc/html/restart.html | 24 +- doc/html/run_style.html | 60 +-- doc/html/set.html | 24 +- doc/html/special_bonds.html | 38 +- doc/html/tad.html | 52 +-- doc/html/thermo.html | 8 +- doc/html/thermo_style.html | 58 +-- doc/html/tutorial_drude.html | 192 +++++---- doc/html/tutorial_github.html | 16 +- doc/html/units.html | 2 +- doc/html/variable.html | 120 +++--- doc/html/velocity.html | 22 +- doc/html/write_coeff.html | 12 +- doc/html/write_dump.html | 28 +- doc/lammps.book | 2 + doc/src/Manual.txt | 29 +- doc/src/PDF/colvars-refman-lammps.pdf | Bin 533229 -> 533636 bytes doc/src/Section_accelerate.txt | 36 +- doc/src/Section_errors.txt | 11 +- doc/src/Section_howto.txt | 17 +- doc/src/Section_intro.txt | 6 +- doc/src/Section_modify.txt | 9 +- doc/src/Section_packages.txt | 6 +- doc/src/Section_perf.txt | 3 +- doc/src/Section_python.txt | 72 ++-- doc/src/Section_start.txt | 10 +- doc/src/Section_tools.txt | 4 +- doc/src/accelerate_gpu.txt | 6 +- doc/src/accelerate_intel.txt | 18 +- doc/src/accelerate_kokkos.txt | 3 +- doc/src/accelerate_omp.txt | 6 +- doc/src/compute.txt | 3 +- doc/src/dihedral_harmonic.txt | 3 +- doc/src/dump_image.txt | 3 +- doc/src/fix.txt | 3 +- doc/src/fix_adapt_fep.txt | 3 +- doc/src/fix_addtorque.txt | 3 +- doc/src/fix_atc.txt | 3 +- doc/src/fix_ave_correlate.txt | 6 +- doc/src/fix_langevin_drude.txt | 3 +- doc/src/fix_rigid.txt | 3 +- doc/src/fix_temp_berendsen.txt | 3 +- doc/src/fix_temp_csvr.txt | 3 +- doc/src/fix_temp_rescale.txt | 3 +- doc/src/info.txt | 29 +- doc/src/neigh_modify.txt | 3 +- doc/src/pair_bop.txt | 39 +- doc/src/pair_buck_long.txt | 3 +- doc/src/pair_gran.txt | 3 +- doc/src/pair_modify.txt | 3 +- doc/src/pair_table.txt | 3 +- doc/src/pair_table_rx.txt | 3 +- doc/src/read_data.txt | 3 +- doc/src/region.txt | 3 +- doc/src/rerun.txt | 3 +- doc/src/suffix.txt | 3 +- doc/src/tutorial_drude.txt | 10 +- doc/src/tutorial_github.txt | 10 +- doc/src/write_dump.txt | 3 +- doc/utils/converters/lammpsdoc/txt2html.py | 5 +- doc/utils/converters/lammpsdoc/txt2rst.py | 32 +- doc/utils/converters/tests/test_txt2rst.py | 33 ++ lib/atc/Makefile.icc | 2 +- lib/atc/Makefile.mingw32-cross | 2 +- lib/atc/Makefile.mingw32-cross-mpi | 2 +- lib/atc/Makefile.mingw64-cross | 2 +- lib/atc/Makefile.mingw64-cross-mpi | 2 +- lib/atc/Makefile.mpic++ | 2 +- lib/atc/Makefile.serial | 2 +- lib/awpmd/Makefile.mingw32-cross | 2 +- lib/awpmd/Makefile.mingw64-cross | 2 +- lib/awpmd/Makefile.mpicc | 2 +- lib/colvars/Makefile.fermi | 64 +-- lib/colvars/Makefile.g++ | 58 +-- lib/colvars/Makefile.mingw32-cross | 64 +-- lib/colvars/Makefile.mingw32-cross-mpi | 4 +- lib/colvars/Makefile.mingw64-cross | 64 +-- lib/colvars/Makefile.mingw64-cross-mpi | 4 +- lib/colvars/colvar.cpp | 330 ++++++--------- lib/colvars/colvar.h | 20 +- lib/colvars/colvaratoms.cpp | 38 +- lib/colvars/colvaratoms.h | 22 +- lib/colvars/colvarbias.cpp | 4 +- lib/colvars/colvarbias.h | 2 +- lib/colvars/colvarbias_abf.cpp | 134 ++++-- lib/colvars/colvarbias_abf.h | 7 +- lib/colvars/colvarbias_histogram.cpp | 11 +- lib/colvars/colvarcomp.cpp | 11 +- lib/colvars/colvarcomp.h | 20 +- lib/colvars/colvarcomp_angles.cpp | 28 +- lib/colvars/colvarcomp_distances.cpp | 40 +- lib/colvars/colvardeps.cpp | 79 ++-- lib/colvars/colvardeps.h | 43 +- lib/colvars/colvargrid.cpp | 4 +- lib/colvars/colvargrid.h | 44 ++ lib/colvars/colvarmodule.cpp | 83 ++-- lib/colvars/colvarmodule.h | 38 +- lib/colvars/colvarparse.cpp | 85 ++-- lib/colvars/colvarparse.h | 1 - lib/colvars/colvarproxy.h | 35 +- lib/colvars/colvarscript.cpp | 34 +- lib/gpu/Nvidia.makefile | 6 +- lib/gpu/Opencl.makefile | 4 +- lib/kokkos/Makefile.kokkos | 2 +- lib/linalg/Makefile.mingw32-cross-mpi | 4 +- lib/linalg/Makefile.mingw64-cross-mpi | 4 +- lib/meam/Makefile.mingw32-cross-mpi | 4 +- lib/meam/Makefile.mingw64-cross-mpi | 4 +- lib/poems/Makefile.mingw32-cross-mpi | 4 +- lib/poems/Makefile.mingw64-cross-mpi | 4 +- lib/qmmm/Makefile.gfortran | 2 +- lib/qmmm/Makefile.ifort | 2 +- src/KIM/pair_kim.h | 8 +- src/USER-COLVARS/colvarproxy_lammps.cpp | 10 +- src/USER-COLVARS/colvarproxy_lammps.h | 6 +- src/USER-COLVARS/fix_colvars.cpp | 2 +- src/atom.cpp | 59 +-- src/atom.h | 11 + src/domain.cpp | 71 ++-- src/domain.h | 9 + src/force.cpp | 294 +++++++------ src/force.h | 30 +- src/info.cpp | 356 +++++++++++++++- src/info.h | 18 + src/input.cpp | 2 +- src/input.h | 6 +- src/modify.cpp | 6 +- src/modify.h | 9 +- src/output.cpp | 33 +- src/output.h | 10 + src/update.cpp | 102 +++-- src/update.h | 13 + 439 files changed, 6273 insertions(+), 5737 deletions(-) diff --git a/doc/html/Manual.html b/doc/html/Manual.html index 24875c671b..2281f57fbd 100644 --- a/doc/html/Manual.html +++ b/doc/html/Manual.html @@ -141,7 +141,9 @@ <h2>Version info:</h2> <p>The LAMMPS “version” is the date when it was released, such as 1 May 2010. LAMMPS is updated continuously. Whenever we fix a bug or add a -feature, we release it immediately, and post a notice on <a class="reference external" href="http://lammps.sandia.gov/bug.html">this page of the WWW site</a>. Each dated copy of LAMMPS contains all the +feature, we release it immediately, and post a notice on <a class="reference external" href="http://lammps.sandia.gov/bug.html">this page of the WWW site</a>. Every 2-4 months one of the incremental releases +is subjected to more thorough testing and labeled as a <em>stable</em> version.</p> +<p>Each dated copy of LAMMPS contains all the features and bug-fixes up to and including that version date. The version date is printed to the screen and logfile every time you run LAMMPS. It is also in the file src/version.h and in the LAMMPS @@ -166,11 +168,20 @@ run efficiently on parallel computers. It was developed at Sandia National Laboratories, a US Department of Energy facility, with funding from the DOE. It is an open-source code, distributed freely under the terms of the GNU Public License (GPL).</p> -<p>The primary developers of LAMMPS are <a class="reference external" href="http://www.sandia.gov/~sjplimp">Steve Plimpton</a>, Aidan -Thompson, and Paul Crozier who can be contacted at -sjplimp,athomps,pscrozi at sandia.gov. The <a class="reference external" href="http://lammps.sandia.gov">LAMMPS WWW Site</a> at -<a class="reference external" href="http://lammps.sandia.gov">http://lammps.sandia.gov</a> has more information about the code and its -uses.</p> +<p>The current core group of LAMMPS developers is at Sandia National +Labs and Temple University:</p> +<ul class="simple"> +<li><a class="reference external" href="http://www.sandia.gov/~sjplimp">Steve Plimpton</a>, sjplimp at sandia.gov</li> +<li>Aidan Thompson, athomps at sandia.gov</li> +<li>Stan Moore, stamoore at sandia.gov</li> +<li><a class="reference external" href="http://goo.gl/1wk0">Axel Kohlmeyer</a>, akohlmey at gmail.com</li> +</ul> +<p>Past core developers include Paul Crozier, Ray Shan and Mark Stevens, +all at Sandia. The <strong>LAMMPS home page</strong> at +<a class="reference external" href="http://lammps.sandia.gov">http://lammps.sandia.gov</a> has more information +about the code and its uses. Interaction with external LAMMPS developers, +bug reports and feature requests are mainly coordinated through the +<a class="reference external" href="https://github.com/lammps/lammps">LAMMPS project on GitHub.</a></p> <hr class="docutils" /> <p>The LAMMPS documentation is organized into the following sections. If you find errors or omissions in this manual or have suggestions for diff --git a/doc/html/Section_accelerate.html b/doc/html/Section_accelerate.html index 9fcd094369..db8d8af4bd 100644 --- a/doc/html/Section_accelerate.html +++ b/doc/html/Section_accelerate.html @@ -346,8 +346,8 @@ package and are explained in the individual accelerator doc pages, listed above:</p> <table border="1" class="docutils"> <colgroup> -<col width="26%" /> -<col width="74%" /> +<col width="64%" /> +<col width="36%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>build the accelerator library</td> @@ -356,40 +356,24 @@ listed above:</p> <tr class="row-even"><td>install the accelerator package</td> <td>make yes-opt, make yes-user-intel, etc</td> </tr> -</tbody> -</table> -<div class="line-block"> -<div class="line">install the accelerator package | make yes-opt, make yes-user-intel, etc |</div> -</div> -<blockquote> -<div>only for USER-INTEL, KOKKOS, USER-OMP, OPT packages |</div></blockquote> -<table border="1" class="docutils"> -<colgroup> -<col width="26%" /> -<col width="74%" /> -</colgroup> -<tbody valign="top"> -<tr class="row-odd"><td>re-build LAMMPS</td> +<tr class="row-odd"><td>add compile/link flags to Makefile.machine in src/MAKE</td> +<td>only for USER-INTEL, KOKKOS, USER-OMP, OPT packages</td> +</tr> +<tr class="row-even"><td>re-build LAMMPS</td> <td>make machine</td> </tr> -</tbody> -</table> -<div class="line-block"> -<div class="line">re-build LAMMPS | make machine |</div> -</div> -<blockquote> -<div>mpirun -np 32 lmp_machine -in in.script |</div></blockquote> -<blockquote> -<div>only for KOKKOS package |</div></blockquote> -<blockquote> -<div><a class="reference internal" href="package.html"><span class="doc">package</span></a> command, <br> -only if defaults need to be changed |</div></blockquote> -<blockquote> -<div><a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command |</div></blockquote> -<table border="1" class="docutils"> -<colgroup> -</colgroup> -<tbody valign="top"> +<tr class="row-odd"><td>prepare and test a regular LAMMPS simulation</td> +<td>lmp_machine -in in.script; mpirun -np 32 lmp_machine -in in.script</td> +</tr> +<tr class="row-even"><td>enable specific accelerator support via ‘-k on’ <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">command-line switch</span></a>,</td> +<td>only needed for KOKKOS package</td> +</tr> +<tr class="row-odd"><td>set any needed options for the package via “-pk” <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">command-line switch</span></a> or <a class="reference internal" href="package.html"><span class="doc">package</span></a> command,</td> +<td>only if defaults need to be changed</td> +</tr> +<tr class="row-even"><td>use accelerated styles in your input via “-sf” <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">command-line switch</span></a> or <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command</td> +<td>lmp_machine -in in.script -sf gpu</td> +</tr> </tbody> </table> <p>Note that the first 4 steps can be done as a single command, using the @@ -528,7 +512,7 @@ full 16 lanes to each of the PCIe 2.0 16x slots.</li> <li>The GPU package accelerates only pair force, neighbor list, and PPPM calculations.</li> <li>The GPU package requires neighbor lists to be built on the CPU when using -exclusion lists or a triclinic simulation box.</li> +exclusion lists, hybrid pair styles, or a triclinic simulation box.</li> </ul> </div> </div> diff --git a/doc/html/Section_commands.html b/doc/html/Section_commands.html index 88bc54ce5a..69c6609b6c 100644 --- a/doc/html/Section_commands.html +++ b/doc/html/Section_commands.html @@ -247,15 +247,15 @@ inside the parenthesis is treated as an “immediate” variable and evaluated as an <a class="reference internal" href="variable.html"><span class="doc">equal-style variable</span></a>. This is a way to use numeric formulas in an input script without having to assign them to variable names. For example, these 3 input script lines:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable X equal (xlo+xhi)/2+sqrt(v_area) +<pre class="literal-block"> +variable X equal (xlo+xhi)/2+sqrt(v_area) region 1 block $X 2 INF INF EDGE EDGE variable X delete -</pre></div> -</div> +</pre> <p>can be replaced by</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>region 1 block $((xlo+xhi)/2+sqrt(v_area)) 2 INF INF EDGE EDGE -</pre></div> -</div> +<pre class="literal-block"> +region 1 block $((xlo+xhi)/2+sqrt(v_area)) 2 INF INF EDGE EDGE +</pre> <p>so that you do not have to define (or discard) a temporary variable X.</p> <p>Note that neither the curly-bracket or immediate form of variables can contain nested $ characters for other variables to substitute for. diff --git a/doc/html/Section_errors.html b/doc/html/Section_errors.html index 658dfb8c2d..680f6140be 100644 --- a/doc/html/Section_errors.html +++ b/doc/html/Section_errors.html @@ -486,8 +486,7 @@ be computed.</dd> <dt><em>Bad TIP4P bond type for PPPMDisp/TIP4P</em></dt> <dd>Specified bond type is not valid.</dd> <dt><em>Bad fix ID in fix append/atoms command</em></dt> -<dd>The value of the fix_id for keyword spatial must start with the suffix -<a href="#id6"><span class="problematic" id="id7">f_</span></a>.</dd> +<dd>The value of the fix_id for keyword spatial must start with ‘f_’.</dd> <dt><em>Bad grid of processors</em></dt> <dd>The 3d grid of processors defined by the processors command does not match the number of processors LAMMPS is being run on.</dd> @@ -6359,13 +6358,13 @@ have an infinite periodic crystal with bonds then it is impossible to have fully consistent image flags, since some bonds will cross periodic boundaries and connect two atoms with the same image flag.</dd> -<dt><em>KIM Model does not provide `energy’; Potential energy will be zero</em></dt> +<dt><em>KIM Model does not provide ‘energy’; Potential energy will be zero</em></dt> <dd>Self-explanatory.</dd> -<dt><em>KIM Model does not provide `forces’; Forces will be zero</em></dt> +<dt><em>KIM Model does not provide ‘forces’; Forces will be zero</em></dt> <dd>Self-explanatory.</dd> -<dt><em>KIM Model does not provide `particleEnergy’; energy per atom will be zero</em></dt> +<dt><em>KIM Model does not provide ‘particleEnergy’; energy per atom will be zero</em></dt> <dd>Self-explanatory.</dd> -<dt><em>KIM Model does not provide `particleVirial’; virial per atom will be zero</em></dt> +<dt><em>KIM Model does not provide ‘particleVirial’; virial per atom will be zero</em></dt> <dd>Self-explanatory.</dd> <dt><em>Kspace_modify slab param < 2.0 may cause unphysical behavior</em></dt> <dd>The kspace_modify slab parameter should be larger to insure periodic diff --git a/doc/html/Section_example.html b/doc/html/Section_example.html index 95a590b02f..9c2e1a0c72 100644 --- a/doc/html/Section_example.html +++ b/doc/html/Section_example.html @@ -303,11 +303,11 @@ longer times, e.g. to measure a particular quantity.</p> </tbody> </table> <p>Here is how you can run and visualize one of the sample problems:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="n">indent</span> -<span class="n">cp</span> <span class="o">../../</span><span class="n">src</span><span class="o">/</span><span class="n">lmp_linux</span> <span class="o">.</span> <span class="c1"># copy LAMMPS executable to this dir</span> -<span class="n">lmp_linux</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">indent</span> <span class="c1"># run the problem</span> -</pre></div> -</div> +<pre class="literal-block"> +cd indent +cp ../../src/lmp_linux . # copy LAMMPS executable to this dir +lmp_linux -in in.indent # run the problem +</pre> <p>Running the simulation produces the files <em>dump.indent</em> and <em>log.lammps</em>. You can visualize the dump file of snapshots with a variety of 3rd-party tools highlighted on the @@ -321,17 +321,17 @@ ImageMagick or QuickTime or various Windows-based tools. See the <a class="reference internal" href="dump_image.html"><span class="doc">dump image</span></a> doc page for more details. E.g. this Imagemagick command would create a GIF file suitable for viewing in a browser.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">%</span> <span class="n">convert</span> <span class="o">-</span><span class="n">loop</span> <span class="mi">1</span> <span class="o">*.</span><span class="n">jpg</span> <span class="n">foo</span><span class="o">.</span><span class="n">gif</span> -</pre></div> -</div> +<pre class="literal-block"> +% convert -loop 1 *.jpg foo.gif +</pre> </div> <hr class="docutils" /> <div class="section" id="uppercase-directories"> <h2>7.2. Uppercase directories</h2> <table border="1" class="docutils"> <colgroup> -<col width="10%" /> -<col width="90%" /> +<col width="11%" /> +<col width="89%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>ASPHERE</td> diff --git a/doc/html/Section_howto.html b/doc/html/Section_howto.html index d29a4556f4..feb6e5e5c9 100644 --- a/doc/html/Section_howto.html +++ b/doc/html/Section_howto.html @@ -252,13 +252,13 @@ scripts are based on. If that script had the line</p> and tmp.restart.100) as it ran.</p> <p>This script could be used to read the 1st restart file and re-run the last 50 timesteps:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">read_restart</span> <span class="n">tmp</span><span class="o">.</span><span class="n">restart</span><span class="o">.</span><span class="mi">50</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">neighbor</span> <span class="mf">0.4</span> <span class="nb">bin</span> -<span class="n">neigh_modify</span> <span class="n">every</span> <span class="mi">1</span> <span class="n">delay</span> <span class="mi">1</span> -</pre></div> -</div> +<pre class="literal-block"> +read_restart tmp.restart.50 +</pre> +<pre class="literal-block"> +neighbor 0.4 bin +neigh_modify every 1 delay 1 +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">nve</span> <span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">langevin</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="mi">904297</span> </pre></div> @@ -281,25 +281,25 @@ notice that the thermodynamic data match at step 50 (if you also put a uses random numbers in a way that does not allow for perfect restarts.</p> <p>As an alternate approach, the restart file could be converted to a data file as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="n">r</span> <span class="n">tmp</span><span class="o">.</span><span class="n">restart</span><span class="o">.</span><span class="mi">50</span> <span class="n">tmp</span><span class="o">.</span><span class="n">restart</span><span class="o">.</span><span class="n">data</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_g++ -r tmp.restart.50 tmp.restart.data +</pre> <p>Then, this script could be used to re-run the last 50 steps:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">units</span> <span class="n">lj</span> -<span class="n">atom_style</span> <span class="n">bond</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.12</span> -<span class="n">pair_modify</span> <span class="n">shift</span> <span class="n">yes</span> -<span class="n">bond_style</span> <span class="n">fene</span> -<span class="n">special_bonds</span> <span class="mf">0.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">read_data</span> <span class="n">tmp</span><span class="o">.</span><span class="n">restart</span><span class="o">.</span><span class="n">data</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">neighbor</span> <span class="mf">0.4</span> <span class="nb">bin</span> -<span class="n">neigh_modify</span> <span class="n">every</span> <span class="mi">1</span> <span class="n">delay</span> <span class="mi">1</span> -</pre></div> -</div> +<pre class="literal-block"> +units lj +atom_style bond +pair_style lj/cut 1.12 +pair_modify shift yes +bond_style fene +special_bonds 0.0 1.0 1.0 +</pre> +<pre class="literal-block"> +read_data tmp.restart.data +</pre> +<pre class="literal-block"> +neighbor 0.4 bin +neigh_modify every 1 delay 1 +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">nve</span> <span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">langevin</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="mi">904297</span> </pre></div> @@ -307,10 +307,10 @@ file as follows:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">timestep</span> <span class="mf">0.012</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">reset_timestep</span> <span class="mi">50</span> -<span class="n">run</span> <span class="mi">50</span> -</pre></div> -</div> +<pre class="literal-block"> +reset_timestep 50 +run 50 +</pre> <p>Note that nearly all the settings specified in the original <em>in.chain</em> script must be repeated, except the <em>pair_coeff</em> and <em>bond_coeff</em> commands since the new data file lists the force field coefficients. @@ -420,39 +420,40 @@ individual commands for more details on how these examples work.</p> <p>If “multiple simulations” means continue a previous simulation for more timesteps, then you simply use the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command multiple times. For example, this script</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">units</span> <span class="n">lj</span> -<span class="n">atom_style</span> <span class="n">atomic</span> -<span class="n">read_data</span> <span class="n">data</span><span class="o">.</span><span class="n">lj</span> -<span class="n">run</span> <span class="mi">10000</span> -<span class="n">run</span> <span class="mi">10000</span> -<span class="n">run</span> <span class="mi">10000</span> -<span class="n">run</span> <span class="mi">10000</span> -<span class="n">run</span> <span class="mi">10000</span> -</pre></div> -</div> +<pre class="literal-block"> +units lj +atom_style atomic +read_data data.lj +run 10000 +run 10000 +run 10000 +run 10000 +run 10000 +</pre> <p>would run 5 successive simulations of the same system for a total of 50,000 timesteps.</p> <p>If you wish to run totally different simulations, one after the other, the <a class="reference internal" href="clear.html"><span class="doc">clear</span></a> command can be used in between them to re-initialize LAMMPS. For example, this script</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">units</span> <span class="n">lj</span> -<span class="n">atom_style</span> <span class="n">atomic</span> -<span class="n">read_data</span> <span class="n">data</span><span class="o">.</span><span class="n">lj</span> -<span class="n">run</span> <span class="mi">10000</span> -<span class="n">clear</span> -<span class="n">units</span> <span class="n">lj</span> -<span class="n">atom_style</span> <span class="n">atomic</span> -<span class="n">read_data</span> <span class="n">data</span><span class="o">.</span><span class="n">lj</span><span class="o">.</span><span class="n">new</span> -<span class="n">run</span> <span class="mi">10000</span> -</pre></div> -</div> +<pre class="literal-block"> +units lj +atom_style atomic +read_data data.lj +run 10000 +clear +units lj +atom_style atomic +read_data data.lj.new +run 10000 +</pre> <p>would run 2 independent simulations, one after the other.</p> <p>For large numbers of independent simulations, you can use <a class="reference internal" href="variable.html"><span class="doc">variables</span></a> and the <a class="reference internal" href="next.html"><span class="doc">next</span></a> and <a class="reference internal" href="jump.html"><span class="doc">jump</span></a> commands to loop over the same input script multiple times with different settings. For example, this script, named in.polymer</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable d index run1 run2 run3 run4 run5 run6 run7 run8 +<pre class="literal-block"> +variable d index run1 run2 run3 run4 run5 run6 run7 run8 shell cd $d read_data data.polymer run 10000 @@ -460,8 +461,7 @@ shell cd .. clear next d jump in.polymer -</pre></div> -</div> +</pre> <p>would run 8 simulations in different directories, using a data.polymer file in each directory. The same concept could be used to run the same system at 8 different temperatures, using a temperature variable @@ -528,10 +528,10 @@ replica. The processors assigned to each replica are determined at run-time by using the <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">-partition command-line switch</span></a> to launch LAMMPS on multiple partitions, which in this context are the same as replicas. E.g. these commands:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">16</span> <span class="n">lmp_linux</span> <span class="o">-</span><span class="n">partition</span> <span class="mi">8</span><span class="n">x2</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">temper</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">8</span> <span class="n">lmp_linux</span> <span class="o">-</span><span class="n">partition</span> <span class="mi">8</span><span class="n">x1</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">neb</span> -</pre></div> -</div> +<pre class="literal-block"> +mpirun -np 16 lmp_linux -partition 8x2 -in in.temper +mpirun -np 8 lmp_linux -partition 8x1 -in in.neb +</pre> <p>would each run 8 replicas, on either 16 or 8 processors. Note the use of the <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">-in command-line switch</span></a> to specify the input script which is required when running in multi-replica mode.</p> @@ -933,7 +933,7 @@ vectors of a general parallelepiped, where there is no restriction on <strong>A</strong> x <strong>B</strong> . <strong>C</strong> > 0. The equivalent LAMMPS <strong>a</strong>,<strong>b</strong>,<strong>c</strong> are a linear rotation of <strong>A</strong>, <strong>B</strong>, and <strong>C</strong> and can be computed as follows:</p> <img alt="_images/transform.jpg" class="align-center" src="_images/transform.jpg" /> -<p>where A = <a href="#id3"><span class="problematic" id="id4">|</span></a><strong>A</strong>| indicates the scalar length of <strong>A</strong>. The ^ hat symbol +<p>where A = | <strong>A</strong> | indicates the scalar length of <strong>A</strong>. The hat symbol (^) indicates the corresponding unit vector. <em>beta</em> and <em>gamma</em> are angles between the vectors described below. Note that by construction, <strong>a</strong>, <strong>b</strong>, and <strong>c</strong> have strictly positive x, y, and z components, respectively. @@ -1037,23 +1037,23 @@ BOUNDS for a snapshot is written to a dump file for a triclinic box, an orthogonal bounding box which encloses the triclinic simulation box is output, along with the 3 tilt factors (xy, xz, yz) of the triclinic box, formatted as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">ITEM</span><span class="p">:</span> <span class="n">BOX</span> <span class="n">BOUNDS</span> <span class="n">xy</span> <span class="n">xz</span> <span class="n">yz</span> -<span class="n">xlo_bound</span> <span class="n">xhi_bound</span> <span class="n">xy</span> -<span class="n">ylo_bound</span> <span class="n">yhi_bound</span> <span class="n">xz</span> -<span class="n">zlo_bound</span> <span class="n">zhi_bound</span> <span class="n">yz</span> -</pre></div> -</div> +<pre class="literal-block"> +ITEM: BOX BOUNDS xy xz yz +xlo_bound xhi_bound xy +ylo_bound yhi_bound xz +zlo_bound zhi_bound yz +</pre> <p>This bounding box is convenient for many visualization programs and is calculated from the 9 triclinic box parameters (xlo,xhi,ylo,yhi,zlo,zhi,xy,xz,yz) as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">xlo_bound</span> <span class="o">=</span> <span class="n">xlo</span> <span class="o">+</span> <span class="n">MIN</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="n">xy</span><span class="p">,</span><span class="n">xz</span><span class="p">,</span><span class="n">xy</span><span class="o">+</span><span class="n">xz</span><span class="p">)</span> -<span class="n">xhi_bound</span> <span class="o">=</span> <span class="n">xhi</span> <span class="o">+</span> <span class="n">MAX</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="n">xy</span><span class="p">,</span><span class="n">xz</span><span class="p">,</span><span class="n">xy</span><span class="o">+</span><span class="n">xz</span><span class="p">)</span> -<span class="n">ylo_bound</span> <span class="o">=</span> <span class="n">ylo</span> <span class="o">+</span> <span class="n">MIN</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="n">yz</span><span class="p">)</span> -<span class="n">yhi_bound</span> <span class="o">=</span> <span class="n">yhi</span> <span class="o">+</span> <span class="n">MAX</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="n">yz</span><span class="p">)</span> -<span class="n">zlo_bound</span> <span class="o">=</span> <span class="n">zlo</span> -<span class="n">zhi_bound</span> <span class="o">=</span> <span class="n">zhi</span> -</pre></div> -</div> +<pre class="literal-block"> +xlo_bound = xlo + MIN(0.0,xy,xz,xy+xz) +xhi_bound = xhi + MAX(0.0,xy,xz,xy+xz) +ylo_bound = ylo + MIN(0.0,yz) +yhi_bound = yhi + MAX(0.0,yz) +zlo_bound = zlo +zhi_bound = zhi +</pre> <p>These formulas can be inverted if you need to convert the bounding box back into the triclinic box parameters, e.g. xlo = xlo_bound - MIN(0.0,xy,xz,xy+xz).</p> @@ -1136,9 +1136,9 @@ of individual particles, after then are created.</p> <p>The dipole style does not actually define finite-size particles, but is often used in conjunction with spherical particles, via a command like</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_style</span> <span class="n">hybrid</span> <span class="n">sphere</span> <span class="n">dipole</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_style hybrid sphere dipole +</pre> <p>This is because when dipoles interact with each other, they induce torques, and a particle must be finite-size (i.e. have a moment of inertia) in order to respond and rotate. See the <a class="reference internal" href="atom_style.html"><span class="doc">atom_style dipole</span></a> command for details. The “set” command can be @@ -1372,11 +1372,11 @@ per-atom vector.</p> <p>When a quantity is accessed, as in many of the output commands discussed below, it can be referenced via the following bracket notation, where ID in this case is the ID of a compute. The leading -“<a href="#id74"><span class="problematic" id="id75">c_</span></a>” would be replaced by “<a href="#id76"><span class="problematic" id="id77">f_</span></a>” for a fix, or “<a href="#id78"><span class="problematic" id="id79">v_</span></a>” for a variable:</p> +“c_” would be replaced by “f_” for a fix, or “v_” for a variable:</p> <table border="1" class="docutils"> <colgroup> -<col width="21%" /> -<col width="79%" /> +<col width="23%" /> +<col width="77%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>c_ID</td> @@ -1911,13 +1911,13 @@ internal LAMMPS operations. Note that LAMMPS classes are defined within a LAMMPS namespace (LAMMPS_NS) if you use them from another C++ application.</p> <p>Library.cpp contains these 5 basic functions:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">void</span> <span class="n">lammps_open</span><span class="p">(</span><span class="nb">int</span><span class="p">,</span> <span class="n">char</span> <span class="o">**</span><span class="p">,</span> <span class="n">MPI_Comm</span><span class="p">,</span> <span class="n">void</span> <span class="o">**</span><span class="p">)</span> -<span class="n">void</span> <span class="n">lammps_close</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">)</span> -<span class="nb">int</span> <span class="n">lammps_version</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">)</span> -<span class="n">void</span> <span class="n">lammps_file</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">)</span> -<span class="n">char</span> <span class="o">*</span><span class="n">lammps_command</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +void lammps_open(int, char **, MPI_Comm, void **) +void lammps_close(void *) +int lammps_version(void *) +void lammps_file(void *, char *) +char *lammps_command(void *, char *) +</pre> <p>The lammps_open() function is used to initialize LAMMPS, passing in a list of strings as if they were <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">command-line arguments</span></a> when LAMMPS is run in stand-alone mode from the command line, and a MPI communicator for @@ -1951,17 +1951,17 @@ interleaving the lammps_command() calls with other calls to extract information from LAMMPS, perform its own operations, or call another code’s library.</p> <p>Other useful functions are also included in library.cpp. For example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">void</span> <span class="o">*</span><span class="n">lammps_extract_global</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">)</span> -<span class="n">void</span> <span class="o">*</span><span class="n">lammps_extract_atom</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">)</span> -<span class="n">void</span> <span class="o">*</span><span class="n">lammps_extract_compute</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">,</span> <span class="nb">int</span><span class="p">,</span> <span class="nb">int</span><span class="p">)</span> -<span class="n">void</span> <span class="o">*</span><span class="n">lammps_extract_fix</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">,</span> <span class="nb">int</span><span class="p">,</span> <span class="nb">int</span><span class="p">,</span> <span class="nb">int</span><span class="p">,</span> <span class="nb">int</span><span class="p">)</span> -<span class="n">void</span> <span class="o">*</span><span class="n">lammps_extract_variable</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">)</span> -<span class="nb">int</span> <span class="n">lammps_set_variable</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">,</span> <span class="n">char</span> <span class="o">*</span><span class="p">)</span> -<span class="nb">int</span> <span class="n">lammps_get_natoms</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">)</span> -<span class="n">void</span> <span class="n">lammps_get_coords</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">double</span> <span class="o">*</span><span class="p">)</span> -<span class="n">void</span> <span class="n">lammps_put_coords</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="p">,</span> <span class="n">double</span> <span class="o">*</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +void *lammps_extract_global(void *, char *) +void *lammps_extract_atom(void *, char *) +void *lammps_extract_compute(void *, char *, int, int) +void *lammps_extract_fix(void *, char *, int, int, int, int) +void *lammps_extract_variable(void *, char *, char *) +int lammps_set_variable(void *, char *, char *) +int lammps_get_natoms(void *) +void lammps_get_coords(void *, double *) +void lammps_put_coords(void *, double *) +</pre> <p>These can extract various global or per-atom quantities from LAMMPS as well as values calculated by a compute, fix, or variable. The “set_variable” function can set an existing string-style variable to a @@ -2087,29 +2087,30 @@ liquid Ar via the GK formalism:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Sample LAMMPS input script for viscosity of liquid Ar</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span>units real +<pre class="literal-block"> +units real variable T equal 86.4956 variable V equal vol variable dt equal 4.0 variable p equal 400 # correlation length variable s equal 5 # sample interval variable d equal $p*$s # dump interval -</pre></div> -</div> +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># convert from LAMMPS real units to SI</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable kB equal 1.3806504e-23 # [J/K/** Boltzmann +<pre class="literal-block"> +variable kB equal 1.3806504e-23 # [J/K/** Boltzmann variable atm2Pa equal 101325.0 variable A2m equal 1.0e-10 variable fs2s equal 1.0e-15 variable convert equal ${atm2Pa}*${atm2Pa}*${fs2s}*${A2m}*${A2m}*${A2m} -</pre></div> -</div> +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># setup problem</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span>dimension 3 +<pre class="literal-block"> +dimension 3 boundary p p p lattice fcc 5.376 orient x 1 0 0 orient y 0 1 0 orient z 0 0 1 region box block 0 4 0 4 0 4 @@ -2120,8 +2121,7 @@ pair_style lj/cut 13.0 pair_coeff * * 0.2381 3.405 timestep ${dt} thermo $d -</pre></div> -</div> +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># equilibration and thermalization</span> </pre></div> </div> @@ -2137,7 +2137,8 @@ run 8000 <span class="c1">#fix NVE all nve</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span>reset_timestep 0 +<pre class="literal-block"> +reset_timestep 0 variable pxy equal pxy variable pxz equal pxz variable pyz equal pyz @@ -2151,9 +2152,8 @@ thermo_style custom step temp press v_pxy v_pxz v_pyz v_v11 v_v22 v_v33 run 100000 variable v equal (v_v11+v_v22+v_v33)/3.0 variable ndens equal count(all)/vol -print "average viscosity: $v [Pa.s/** @ $T K, ${ndens} /A^3" -</pre></div> -</div> +print "average viscosity: $v [Pa.s/** @ $T K, ${ndens} /A^3" +</pre> <p>The fifth method is related to the above Green-Kubo method, but uses the Einstein formulation, analogous to the Einstein mean-square-displacement formulation for self-diffusivity. The @@ -2274,7 +2274,7 @@ fix produces a global array as output with one row of values per chunk.</p> </div> <div class="section" id="compute-chunk-commands"> -<h3>6.23.3. Compute <a href="#id71"><span class="problematic" id="id72">*</span></a>/chunk commands:</h3> +<h3>6.23.3. Compute */chunk commands:</h3> <p>Currently the following computes operate on chunks of atoms to produce per-chunk values.</p> <ul class="simple"> @@ -2331,31 +2331,31 @@ velocity:</p> <ol class="arabic simple" start="3"> <li>Center of mass of each molecule:</li> </ol> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">cc1</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="n">molecule</span> -<span class="n">compute</span> <span class="n">myChunk</span> <span class="nb">all</span> <span class="n">com</span><span class="o">/</span><span class="n">chunk</span> <span class="n">cc1</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myChunk</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">out</span> <span class="n">mode</span> <span class="n">vector</span> -</pre></div> -</div> +<pre class="literal-block"> +compute cc1 all chunk/atom molecule +compute myChunk all com/chunk cc1 +fix 1 all ave/time 100 1 100 c_myChunk[*] file tmp.out mode vector +</pre> <ol class="arabic simple" start="4"> <li>Total force on each molecule and ave/max across all molecules:</li> </ol> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">cc1</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="n">molecule</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">chunk</span> <span class="mi">1000</span> <span class="mi">1</span> <span class="mi">1000</span> <span class="n">cc1</span> <span class="n">fx</span> <span class="n">fy</span> <span class="n">fz</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">out</span> -<span class="n">variable</span> <span class="n">xave</span> <span class="n">equal</span> <span class="n">ave</span><span class="p">(</span><span class="n">f_1</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span> -<span class="n">variable</span> <span class="n">xmax</span> <span class="n">equal</span> <span class="nb">max</span><span class="p">(</span><span class="n">f_1</span><span class="p">[</span><span class="mi">2</span><span class="p">])</span> -<span class="n">thermo</span> <span class="mi">1000</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">v_xave</span> <span class="n">v_xmax</span> -</pre></div> -</div> +<pre class="literal-block"> +compute cc1 all chunk/atom molecule +fix 1 all ave/chunk 1000 1 1000 cc1 fx fy fz file tmp.out +variable xave equal ave(f_1[2]) +variable xmax equal max(f_1[2]) +thermo 1000 +thermo_style custom step temp v_xave v_xmax +</pre> <ol class="arabic simple" start="5"> <li>Histogram of cluster sizes:</li> </ol> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">cluster</span> <span class="nb">all</span> <span class="n">cluster</span><span class="o">/</span><span class="n">atom</span> <span class="mf">1.0</span> -<span class="n">compute</span> <span class="n">cc1</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="n">c_cluster</span> <span class="n">compress</span> <span class="n">yes</span> -<span class="n">compute</span> <span class="n">size</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">chunk</span> <span class="n">cc1</span> <span class="n">count</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="mi">0</span> <span class="mi">20</span> <span class="mi">20</span> <span class="n">c_size</span> <span class="n">mode</span> <span class="n">vector</span> <span class="n">ave</span> <span class="n">running</span> <span class="n">beyond</span> <span class="n">ignore</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">histo</span> -</pre></div> -</div> +<pre class="literal-block"> +compute cluster all cluster/atom 1.0 +compute cc1 all chunk/atom c_cluster compress yes +compute size all property/chunk cc1 count +fix 1 all ave/histo 100 1 100 0 20 20 c_size mode vector ave running beyond ignore file tmp.histo +</pre> <hr class="docutils" /> </div> </div> @@ -2607,18 +2607,18 @@ by the <a class="reference internal" href="kspace_style.html"><span class="doc"> Ewald solvers can be used.</p> <p>For the NaCL example problem, these pair style and bond style settings are used:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">20.0</span> <span class="mf">20.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.0</span> <span class="mf">1.000</span> <span class="mf">0.00</span> <span class="mf">0.00</span> <span class="mf">0.00</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">3</span> <span class="mf">487.0</span> <span class="mf">0.23768</span> <span class="mf">0.00</span> <span class="mf">1.05</span> <span class="mf">0.50</span> <span class="c1">#Na-Na</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">4</span> <span class="mf">145134.0</span> <span class="mf">0.23768</span> <span class="mf">0.00</span> <span class="mf">6.99</span> <span class="mf">8.70</span> <span class="c1">#Na-Cl</span> -<span class="n">pair_coeff</span> <span class="mi">4</span> <span class="mi">4</span> <span class="mf">405774.0</span> <span class="mf">0.23768</span> <span class="mf">0.00</span> <span class="mf">72.40</span> <span class="mf">145.40</span> <span class="c1">#Cl-Cl</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">harmonic</span> -<span class="n">bond_coeff</span> <span class="mi">1</span> <span class="mf">63.014</span> <span class="mf">0.0</span> -<span class="n">bond_coeff</span> <span class="mi">2</span> <span class="mf">25.724</span> <span class="mf">0.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style born/coul/long/cs 20.0 20.0 +pair_coeff * * 0.0 1.000 0.00 0.00 0.00 +pair_coeff 3 3 487.0 0.23768 0.00 1.05 0.50 #Na-Na +pair_coeff 3 4 145134.0 0.23768 0.00 6.99 8.70 #Na-Cl +pair_coeff 4 4 405774.0 0.23768 0.00 72.40 145.40 #Cl-Cl +</pre> +<pre class="literal-block"> +bond_style harmonic +bond_coeff 1 63.014 0.0 +bond_coeff 2 25.724 0.0 +</pre> <p>When running dynamics with the adiabatic core/shell model, the following issues should be considered. Since the relative motion of the core and shell particles corresponds to the polarization, typical @@ -2645,15 +2645,15 @@ used to assign the compute to the thermostat fix. Likewise the <a class="reference internal" href="thermo_modify.html"><span class="doc">thermo_modify temp</span></a> command can be used to make this temperature be output for the overall system.</p> <p>For the NaCl example, this can be done as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">group</span> <span class="n">cores</span> <span class="nb">type</span> <span class="mi">1</span> <span class="mi">2</span> -<span class="n">group</span> <span class="n">shells</span> <span class="nb">type</span> <span class="mi">3</span> <span class="mi">4</span> -<span class="n">compute</span> <span class="n">CSequ</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">cs</span> <span class="n">cores</span> <span class="n">shells</span> -<span class="n">fix</span> <span class="n">thermoberendsen</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">berendsen</span> <span class="mi">1427</span> <span class="mi">1427</span> <span class="mf">0.4</span> <span class="c1"># thermostat for the true physical system</span> -<span class="n">fix</span> <span class="n">thermostatequ</span> <span class="nb">all</span> <span class="n">nve</span> <span class="c1"># integrator as needed for the berendsen thermostat</span> -<span class="n">fix_modify</span> <span class="n">thermoberendsen</span> <span class="n">temp</span> <span class="n">CSequ</span> -<span class="n">thermo_modify</span> <span class="n">temp</span> <span class="n">CSequ</span> <span class="c1"># output of center-of-mass derived temperature</span> -</pre></div> -</div> +<pre class="literal-block"> +group cores type 1 2 +group shells type 3 4 +compute CSequ all temp/cs cores shells +fix thermoberendsen all temp/berendsen 1427 1427 0.4 # thermostat for the true physical system +fix thermostatequ all nve # integrator as needed for the berendsen thermostat +fix_modify thermoberendsen temp CSequ +thermo_modify temp CSequ # output of center-of-mass derived temperature +</pre> <p>If <a class="reference internal" href="compute_temp_cs.html"><span class="doc">compute temp/cs</span></a> is used, the decoupled relative motion of the core and the shell should in theory be stable. However numerical fluctuation can introduce a small @@ -2702,14 +2702,14 @@ accessed by the <a class="reference internal" href="compute_property_atom.html"> command, to use as input to the <a class="reference internal" href="compute_chunk_atom.html"><span class="doc">compute chunk/atom</span></a> command to define the core/shell pairs as chunks.</p> <p>For example,</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">csinfo</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">atom</span> <span class="n">i_CSID</span> <span class="c1"># property/atom command</span> -<span class="n">read_data</span> <span class="n">NaCl_CS_x0</span><span class="o">.</span><span class="mi">1</span><span class="n">_prop</span><span class="o">.</span><span class="n">data</span> <span class="n">fix</span> <span class="n">csinfo</span> <span class="n">NULL</span> <span class="n">CS</span><span class="o">-</span><span class="n">Info</span> <span class="c1"># atom property added in the data-file</span> -<span class="n">compute</span> <span class="n">prop</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">atom</span> <span class="n">i_CSID</span> -<span class="n">compute</span> <span class="n">cs_chunk</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="n">c_prop</span> -<span class="n">compute</span> <span class="n">cstherm</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">chunk</span> <span class="n">cs_chunk</span> <span class="n">temp</span> <span class="n">internal</span> <span class="n">com</span> <span class="n">yes</span> <span class="n">cdof</span> <span class="mf">3.0</span> <span class="c1"># note the chosen degrees of freedom for the core/shell pairs</span> -<span class="n">fix</span> <span class="n">ave_chunk</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">10</span> <span class="mi">1</span> <span class="mi">10</span> <span class="n">c_cstherm</span> <span class="n">file</span> <span class="n">chunk</span><span class="o">.</span><span class="n">dump</span> <span class="n">mode</span> <span class="n">vector</span> -</pre></div> -</div> +<pre class="literal-block"> +fix csinfo all property/atom i_CSID # property/atom command +read_data NaCl_CS_x0.1_prop.data fix csinfo NULL CS-Info # atom property added in the data-file +compute prop all property/atom i_CSID +compute cs_chunk all chunk/atom c_prop +compute cstherm all temp/chunk cs_chunk temp internal com yes cdof 3.0 # note the chosen degrees of freedom for the core/shell pairs +fix ave_chunk all ave/time 10 1 10 c_cstherm file chunk.dump mode vector +</pre> <p>The additional section in the date file would be formatted like this:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">CS</span><span class="o">-</span><span class="n">Info</span> <span class="c1"># header of additional section</span> </pre></div> diff --git a/doc/html/Section_modify.html b/doc/html/Section_modify.html index 1ddbd8f04a..b760c3c002 100644 --- a/doc/html/Section_modify.html +++ b/doc/html/Section_modify.html @@ -193,8 +193,8 @@ C-style data structures (vectors and arrays).</p> <p>Most of the new features described in this section require you to write a new C++ derived class (except for exceptions described below, where you can make small edits to existing files). Creating a new -class requires 2 files, a source code file (<em>.cpp) and a header file -(</em>.h). The derived class must provide certain methods to work as a +class requires 2 files, a source code file (*.cpp) and a header file +(*.h). The derived class must provide certain methods to work as a new option. Depending on how different your new feature is compared to existing features, you can either derive from the base class itself, or from a derived class that already exists. Enabling LAMMPS @@ -209,19 +209,19 @@ and pair_foo.h that define a new class PairFoo that computes pairwise potentials described in the classic 1997 <a class="reference internal" href="#foo"><span class="std std-ref">paper</span></a> by Foo, et al. If you wish to invoke those potentials in a LAMMPS input script with a command like</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">foo</span> <span class="mf">0.1</span> <span class="mf">3.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style foo 0.1 3.5 +</pre> <p>then your pair_foo.h file should be structured as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1">#ifdef PAIR_CLASS</span> -<span class="n">PairStyle</span><span class="p">(</span><span class="n">foo</span><span class="p">,</span><span class="n">PairFoo</span><span class="p">)</span> -<span class="c1">#else</span> -<span class="o">...</span> -<span class="p">(</span><span class="k">class</span> <span class="nc">definition</span> <span class="k">for</span> <span class="n">PairFoo</span><span class="p">)</span> -<span class="o">...</span> -<span class="c1">#endif</span> -</pre></div> -</div> +<pre class="literal-block"> +#ifdef PAIR_CLASS +PairStyle(foo,PairFoo) +#else +... +(class definition for PairFoo) +... +#endif +</pre> <p>where “foo” is the style keyword in the pair_style command, and PairFoo is the class name defined in your pair_foo.cpp and pair_foo.h files.</p> @@ -275,8 +275,8 @@ atoms.</p> class. See atom_vec.h for details.</p> <table border="1" class="docutils"> <colgroup> -<col width="22%" /> -<col width="78%" /> +<col width="24%" /> +<col width="76%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>init</td> @@ -393,18 +393,18 @@ output the custom values.</p> The code for these classes can use the per-atom properties defined by fix property/atom. The Atom class has a find_custom() method that is useful in this context:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="nb">int</span> <span class="n">index</span> <span class="o">=</span> <span class="n">atom</span><span class="o">-></span><span class="n">find_custom</span><span class="p">(</span><span class="n">char</span> <span class="o">*</span><span class="n">name</span><span class="p">,</span> <span class="nb">int</span> <span class="o">&</span><span class="n">flag</span><span class="p">);</span> -</pre></div> -</div> +<pre class="literal-block"> +int index = atom->find_custom(char *name, int &flag); +</pre> <p>The “name” of a custom attribute, as specified in the <a class="reference internal" href="fix_property_atom.html"><span class="doc">fix property/atom</span></a> command, is checked to verify that it exists and its index is returned. The method also sets flag = 0/1 depending on whether it is an integer or floating-point attribute. The vector of values associated with the attribute can then be accessed using the returned index as</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="nb">int</span> <span class="o">*</span><span class="n">ivector</span> <span class="o">=</span> <span class="n">atom</span><span class="o">-></span><span class="n">ivector</span><span class="p">[</span><span class="n">index</span><span class="p">];</span> -<span class="n">double</span> <span class="o">*</span><span class="n">dvector</span> <span class="o">=</span> <span class="n">atom</span><span class="o">-></span><span class="n">dvector</span><span class="p">[</span><span class="n">index</span><span class="p">];</span> -</pre></div> -</div> +<pre class="literal-block"> +int *ivector = atom->ivector[index]; +double *dvector = atom->dvector[index]; +</pre> <p>Ivector or dvector are vectors of length Nlocal = # of owned atoms, which store the attributes of individual atoms.</p> <hr class="docutils" /> @@ -474,8 +474,8 @@ per-atom kinetic energy.</p> class. See compute.h for details.</p> <table border="1" class="docutils"> <colgroup> -<col width="24%" /> -<col width="76%" /> +<col width="26%" /> +<col width="74%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>init</td> @@ -551,8 +551,8 @@ DumpCustom class contained in the dump_custom.cpp file.</p> class. See dump.h for details.</p> <table border="1" class="docutils"> <colgroup> -<col width="22%" /> -<col width="78%" /> +<col width="23%" /> +<col width="77%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>write_header</td> @@ -597,8 +597,8 @@ implement.</p> derived class. See fix.h for details.</p> <table border="1" class="docutils"> <colgroup> -<col width="22%" /> -<col width="78%" /> +<col width="23%" /> +<col width="77%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>setmask</td> @@ -823,8 +823,8 @@ styles can be created to add new K-space options to LAMMPS.</p> class. See kspace.h for details.</p> <table border="1" class="docutils"> <colgroup> -<col width="23%" /> -<col width="77%" /> +<col width="25%" /> +<col width="75%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>init</td> @@ -853,8 +853,8 @@ LAMMPS.</p> class. See min.h for details.</p> <table border="1" class="docutils"> <colgroup> -<col width="25%" /> -<col width="75%" /> +<col width="26%" /> +<col width="74%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>init</td> @@ -882,8 +882,8 @@ includes some optional methods to enable its use with rRESPA.</p> <p>Here is a brief description of the class methods in pair.h:</p> <table border="1" class="docutils"> <colgroup> -<col width="32%" /> -<col width="68%" /> +<col width="33%" /> +<col width="67%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>compute</td> @@ -929,8 +929,8 @@ styles can be created to add new region shapes to LAMMPS.</p> class. See region.h for details.</p> <table border="1" class="docutils"> <colgroup> -<col width="21%" /> -<col width="79%" /> +<col width="22%" /> +<col width="78%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>inside</td> @@ -965,8 +965,8 @@ a rigid body containing N sub-particles.</p> class. See body.h for details.</p> <table border="1" class="docutils"> <colgroup> -<col width="25%" /> -<col width="75%" /> +<col width="27%" /> +<col width="73%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>data_body</td> @@ -1030,17 +1030,17 @@ via the <a class="reference internal" href="print.html"><span class="doc">print< <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style custom</span></a> commands. Variables of style “equal” can compute complex equations that involve the following types of arguments:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">thermo</span> <span class="n">keywords</span> <span class="o">=</span> <span class="n">ke</span><span class="p">,</span> <span class="n">vol</span><span class="p">,</span> <span class="n">atoms</span><span class="p">,</span> <span class="o">...</span> -<span class="n">other</span> <span class="n">variables</span> <span class="o">=</span> <span class="n">v_a</span><span class="p">,</span> <span class="n">v_myvar</span><span class="p">,</span> <span class="o">...</span> -<span class="n">math</span> <span class="n">functions</span> <span class="o">=</span> <span class="n">div</span><span class="p">(</span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">),</span> <span class="n">mult</span><span class="p">(</span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">),</span> <span class="n">add</span><span class="p">(</span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">),</span> <span class="o">...</span> -<span class="n">group</span> <span class="n">functions</span> <span class="o">=</span> <span class="n">mass</span><span class="p">(</span><span class="n">group</span><span class="p">),</span> <span class="n">xcm</span><span class="p">(</span><span class="n">group</span><span class="p">,</span><span class="n">x</span><span class="p">),</span> <span class="o">...</span> -<span class="n">atom</span> <span class="n">values</span> <span class="o">=</span> <span class="n">x</span><span class="p">[</span><span class="mi">123</span><span class="p">],</span> <span class="n">y</span><span class="p">[</span><span class="mi">3</span><span class="p">],</span> <span class="n">vx</span><span class="p">[</span><span class="mi">34</span><span class="p">],</span> <span class="o">...</span> -<span class="n">compute</span> <span class="n">values</span> <span class="o">=</span> <span class="n">c_mytemp</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">3</span><span class="p">],</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +thermo keywords = ke, vol, atoms, ... +other variables = v_a, v_myvar, ... +math functions = div(x,y), mult(x,y), add(x,y), ... +group functions = mass(group), xcm(group,x), ... +atom values = x[123], y[3], vx[34], ... +compute values = c_mytemp[0], c_thermo_press[3], ... +</pre> <p>Adding keywords for the <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style custom</span></a> command (which can then be accessed by variables) was discussed -<a class="reference internal" href="Section_howto.html#thermo"><span class="std std-ref">here</span></a> on this page.</p> +<a class="reference internal" href="#mod-13"><span class="std std-ref">here</span></a> on this page.</p> <p>Adding a new math function of one or two arguments can be done by editing one section of the Variable::evaulate() method. Search for the word “customize” to find the appropriate location.</p> @@ -1053,7 +1053,7 @@ of the Variable::evaulate() method. Search for the word “customize” to find the appropriate location.</p> <p>Adding new <a class="reference internal" href="compute.html"><span class="doc">compute styles</span></a> (whose calculated values can then be accessed by variables) was discussed -<a class="reference internal" href="Section_howto.html#compute"><span class="std std-ref">here</span></a> on this page.</p> +<a class="reference internal" href="#mod-3"><span class="std std-ref">here</span></a> on this page.</p> </div> <div class="section" id="submitting-new-features-for-inclusion-in-lammps"> <span id="mod-15"></span><h2>10.15. Submitting new features for inclusion in LAMMPS</h2> @@ -1157,7 +1157,7 @@ structures, performs its operations, and is formatted similar to other LAMMPS source files, including the use of the error class for error and warning messages.</li> <li>If you want your contribution to be added as a user-contributed -feature, and it’s a single file (actually a <a href="#id8"><span class="problematic" id="id9">*</span></a>.cpp and <a href="#id10"><span class="problematic" id="id11">*</span></a>.h file) it can +feature, and it’s a single file (actually a *.cpp and *.h file) it can rapidly be added to the USER-MISC directory. Send us the one-line entry to add to the USER-MISC/README file in that dir, along with the 2 source files. You can do this multiple times if you wish to @@ -1192,12 +1192,12 @@ to HTML and PDF. The tools for this conversion are included in the source distribution, and the translation can be as simple as doing “make html pdf” in the doc folder. Thus the documentation source files must be in the same format and -style as other <em>.txt files in the lammps/doc/src directory for similar +style as other *.txt files in the lammps/doc/src directory for similar commands and styles; use one or more of them as a starting point. A description of the markup can also be found in lammps/doc/utils/txt2html/README.html As appropriate, the text files can include links to equations -(see doc/Eqs/</em>.tex for examples, we auto-create the associated JPG +(see doc/Eqs/*.tex for examples, we auto-create the associated JPG files), or figures (see doc/JPG for examples), or even additional PDF files with further details (see doc/PDF for examples). The doc page should also include literature citations as appropriate; see the @@ -1220,7 +1220,7 @@ These example inputs are also required for validating memory accesses and testing for memory leaks with valgrind</li> <li>If there is a paper of yours describing your feature (either the algorithm/science behind the feature itself, or its initial usage, or -its implementation in LAMMPS), you can add the citation to the <a href="#id12"><span class="problematic" id="id13">*</span></a>.cpp +its implementation in LAMMPS), you can add the citation to the *.cpp source file. See src/USER-EFF/atom_vec_electron.cpp for an example. A LaTeX citation is stored in a variable at the top of the file and a single line of code that references the variable is added to the diff --git a/doc/html/Section_packages.html b/doc/html/Section_packages.html index fedd3cc1ae..2565c51206 100644 --- a/doc/html/Section_packages.html +++ b/doc/html/Section_packages.html @@ -630,9 +630,9 @@ for aspherical particle models: ellipsoids, 2d lines, 3d triangles.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">asphere</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^asphere -a machine +</pre> <p>Supporting info: <a class="reference internal" href="Section_howto.html#howto-14"><span class="std std-ref">Section howto 6.14</span></a>, <a class="reference internal" href="pair_gayberne.html"><span class="doc">pair_style gayberne</span></a>, <a class="reference internal" href="pair_resquared.html"><span class="doc">pair_style resquared</span></a>, <a class="reference external" href="PDF/pair_gayberne_extra.pdf">doc/PDF/pair_gayberne_extra.pdf</a>, @@ -658,9 +658,9 @@ themselves. See the <a class="reference internal" href="body.html"><span class= <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">body</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^body -a machine +</pre> <p>Supporting info: <a class="reference internal" href="atom_style.html"><span class="doc">atom_style body</span></a>, <a class="reference internal" href="body.html"><span class="doc">body</span></a>, <a class="reference internal" href="pair_body.html"><span class="doc">pair_style body</span></a>, examples/body</p> <hr class="docutils" /> @@ -682,9 +682,9 @@ COMPASS CLASS2 molecular force field.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">class2</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^class2 -a machine +</pre> <p>Supporting info: <a class="reference internal" href="bond_class2.html"><span class="doc">bond_style class2</span></a>, <a class="reference internal" href="angle_class2.html"><span class="doc">angle_style class2</span></a>, <a class="reference internal" href="dihedral_class2.html"><span class="doc">dihedral_style class2</span></a>, <a class="reference internal" href="improper_class2.html"><span class="doc">improper_style class2</span></a>, <a class="reference internal" href="pair_class2.html"><span class="doc">pair_style lj/class2</span></a></p> <hr class="docutils" /> </div> @@ -708,9 +708,9 @@ approximation to Stokesian dynamics.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">colloid</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^colloid -a machine +</pre> <p>Supporting info: <a class="reference internal" href="fix_wall.html"><span class="doc">fix wall/colloid</span></a>, <a class="reference internal" href="pair_colloid.html"><span class="doc">pair_style colloid</span></a>, <a class="reference internal" href="pair_yukawa_colloid.html"><span class="doc">pair_style yukawa/colloid</span></a>, <a class="reference internal" href="pair_brownian.html"><span class="doc">pair_style brownian</span></a>, <a class="reference internal" href="pair_lubricate.html"><span class="doc">pair_style lubricate</span></a>, <a class="reference internal" href="pair_lubricateU.html"><span class="doc">pair_style lubricateU</span></a>, examples/colloid, examples/srd</p> <hr class="docutils" /> </div> @@ -737,9 +737,9 @@ zlib info it specifies.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">compress</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^compress -a machine +</pre> <p>Supporting info: src/COMPRESS/README, lib/compress/README, <a class="reference internal" href="dump.html"><span class="doc">dump atom/gz</span></a>, <a class="reference internal" href="dump.html"><span class="doc">dump cfg/gz</span></a>, <a class="reference internal" href="dump.html"><span class="doc">dump custom/gz</span></a>, <a class="reference internal" href="dump.html"><span class="doc">dump xyz/gz</span></a></p> <hr class="docutils" /> </div> @@ -764,9 +764,9 @@ package.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">coreshell</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^coreshell -a machine +</pre> <p>Supporting info: <a class="reference internal" href="Section_howto.html#howto-26"><span class="std std-ref">Section howto 6.26</span></a>, <a class="reference internal" href="compute_temp_cs.html"><span class="doc">compute temp/cs</span></a>, <a class="reference internal" href="pair_cs.html"><span class="doc">pair_style born/coul/long/cs</span></a>, <a class="reference internal" href="pair_cs.html"><span class="doc">pair_style buck/coul/long/cs</span></a>, pair_style lj/cut/coul/long/cs”_pair_lj.html, examples/coreshell</p> @@ -789,9 +789,9 @@ dipole models with short-range or long-range interactions.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">dipole</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^dipole -a machine +</pre> <p>Supporting info: <a class="reference internal" href="atom_style.html"><span class="doc">atom_style dipole</span></a>, <a class="reference internal" href="pair_dipole.html"><span class="doc">pair_style lj/cut/dipole/cut</span></a>, <a class="reference internal" href="pair_dipole.html"><span class="doc">pair_style lj/cut/dipole/long</span></a>, <a class="reference internal" href="pair_dipole.html"><span class="doc">pair_style lj/long/dipole/long</span></a>, examples/dipole</p> <hr class="docutils" /> </div> @@ -841,9 +841,9 @@ one step, with Type “python src/Make.py -h -gpu” to see the details. <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">gpu</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^gpu -a machine +</pre> <p>Supporting info: src/GPU/README, lib/gpu/README, <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section acclerate</span></a>, <a class="reference internal" href="accelerate_gpu.html"><span class="doc">Section accelerate gpu</span></a>, Pair Styles section of <a class="reference internal" href="Section_commands.html#cmd-5"><span class="std std-ref">Section commands 3.5</span></a> for any pair style listed with a (g), <a class="reference internal" href="kspace_style.html"><span class="doc">kspace_style</span></a>, <a class="reference internal" href="package.html"><span class="doc">package gpu</span></a>, examples/accelerate, bench/FERMI, bench/KEPLER</p> @@ -867,9 +867,9 @@ frictional and dissipative potentials.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">granular</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^granular -a machine +</pre> <p>Supporting info: <a class="reference internal" href="Section_howto.html#howto-6"><span class="std std-ref">Section howto 6.6</span></a>, <a class="reference internal" href="fix_pour.html"><span class="doc">fix pour</span></a>, <a class="reference internal" href="fix_wall_gran.html"><span class="doc">fix wall/gran</span></a>, <a class="reference internal" href="pair_gran.html"><span class="doc">pair_style gran/hooke</span></a>, <a class="reference internal" href="pair_gran.html"><span class="doc">pair_style gran/hertz/history</span></a>, examples/pour, bench/in.chute</p> <hr class="docutils" /> </div> @@ -896,9 +896,9 @@ process. You should not need to edit this file.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">kim</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^kim -a machine +</pre> <p>Supporting info: src/KIM/README, lib/kim/README, <a class="reference internal" href="pair_kim.html"><span class="doc">pair_style kim</span></a>, examples/kim</p> <hr class="docutils" /> </div> @@ -928,12 +928,12 @@ choose which hardware to build for. Type “python src/Make.py -h system, you will need to read the <a class="reference internal" href="accelerate_kokkos.html"><span class="doc">Section accelerate kokkos</span></a> doc page for details of what Makefile.machine settings are needed.</p> <p>To install via make or Make.py for each of 3 hardware options:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">make</span> <span class="n">yes</span><span class="o">-</span><span class="n">kokkos</span> -<span class="n">make</span> <span class="n">kokkos_omp</span> <span class="c1"># for CPUs with OpenMP</span> -<span class="n">make</span> <span class="n">kokkos_cuda</span> <span class="c1"># for GPUs, check the KOKKOS_ARCH setting in Makefile.kokkos_cuda</span> -<span class="n">make</span> <span class="n">kokkos_phi</span> <span class="c1"># for Xeon Phis</span> -</pre></div> -</div> +<pre class="literal-block"> +make yes-kokkos +make kokkos_omp # for CPUs with OpenMP +make kokkos_cuda # for GPUs, check the KOKKOS_ARCH setting in Makefile.kokkos_cuda +make kokkos_phi # for Xeon Phis +</pre> <p>Make.py -p kokkos -kokkos omp -a machine # for CPUs with OpenMP Make.py -p kokkos -kokkos cuda arch=35 -a machine # for GPUs of style arch Make.py -p kokkos -kokkos phi -a machine # for Xeon Phis</p> @@ -942,9 +942,9 @@ Make.py -p kokkos -kokkos phi -a machine # for Xeon Phis</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">kokkos</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^kokkos -a machine +</pre> <p>Supporting info: src/KOKKOS/README, lib/kokkos/README, <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section acclerate</span></a>, <a class="reference internal" href="accelerate_kokkos.html"><span class="doc">Section accelerate kokkos</span></a>, Pair Styles section of <a class="reference internal" href="Section_commands.html#cmd-5"><span class="std std-ref">Section commands 3.5</span></a> for any pair style listed with a (k), <a class="reference internal" href="package.html"><span class="doc">package kokkos</span></a>, examples/accelerate, bench/FERMI, bench/KEPLER</p> @@ -977,9 +977,9 @@ see the details.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">kspace</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^kspace -a machine +</pre> <p>Supporting info: <a class="reference internal" href="kspace_style.html"><span class="doc">kspace_style</span></a>, <a class="reference external" href="PDF/kspace.pdf">doc/PDF/kspace.pdf</a>, <a class="reference internal" href="Section_howto.html#howto-7"><span class="std std-ref">Section howto 6.7</span></a>, <a class="reference internal" href="Section_howto.html#howto-8"><span class="std std-ref">Section howto 6.8</span></a>, <a class="reference internal" href="Section_howto.html#howto-9"><span class="std std-ref">Section howto 6.9</span></a>, <a class="reference internal" href="pair_coul.html"><span class="doc">pair_style coul</span></a>, other pair style command doc pages which have “long” or “msm” in their @@ -1005,9 +1005,9 @@ the full list.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">manybody</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^manybody -a machine +</pre> <p>Supporting info:</p> <p>Examples: Pair Styles section of <a class="reference internal" href="Section_commands.html#cmd-5"><span class="std std-ref">Section commands 3.5</span></a>, examples/comb, examples/eim, examples/nb3d, examples/vashishta</p> @@ -1032,9 +1032,9 @@ in conjuction with dynamics.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">mc</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^mc -a machine +</pre> <p>Supporting info: <a class="reference internal" href="fix_atom_swap.html"><span class="doc">fix atom/swap</span></a>, <a class="reference internal" href="fix_bond_break.html"><span class="doc">fix bond/break</span></a>, <a class="reference internal" href="fix_bond_create.html"><span class="doc">fix bond/create</span></a>, <a class="reference internal" href="fix_bond_swap.html"><span class="doc">fix bond/swap</span></a>, <a class="reference internal" href="fix_gcmc.html"><span class="doc">fix gcmc</span></a>, <a class="reference internal" href="pair_dsmc.html"><span class="doc">pair_style dsmc</span></a></p> <hr class="docutils" /> @@ -1079,9 +1079,9 @@ Intel Fortran compiler, rather than the GNU Fortran compiler.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">meam</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^meam -a machine +</pre> <p>Supporting info: lib/meam/README, <a class="reference internal" href="pair_meam.html"><span class="doc">pair_style meam</span></a>, examples/meam</p> <hr class="docutils" /> @@ -1104,9 +1104,9 @@ listing, “ls src/MISC”, to see the list of commands.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">misc</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^misc -a machine +</pre> <p>Supporting info: <a class="reference internal" href="compute_ti.html"><span class="doc">compute ti</span></a>, <a class="reference internal" href="fix_evaporate.html"><span class="doc">fix evaporate</span></a>, <a class="reference internal" href="fix_ttm.html"><span class="doc">fix tmm</span></a>, <a class="reference internal" href="fix_viscosity.html"><span class="doc">fix viscosity</span></a>, examples/misc</p> <hr class="docutils" /> </div> @@ -1129,9 +1129,9 @@ covalent bonds. The pair styles include terms for the Dreiding <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">molecule</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^molecule -a machine +</pre> <p>Supporting info:<a class="reference internal" href="atom_style.html"><span class="doc">atom_style</span></a>, <a class="reference internal" href="bond_style.html"><span class="doc">bond_style</span></a>, <a class="reference internal" href="angle_style.html"><span class="doc">angle_style</span></a>, <a class="reference internal" href="dihedral_style.html"><span class="doc">dihedral_style</span></a>, @@ -1159,9 +1159,9 @@ are also written and read in parallel.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">mpiio</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^mpiio -a machine +</pre> <p>Supporting info: <a class="reference internal" href="dump.html"><span class="doc">dump</span></a>, <a class="reference internal" href="restart.html"><span class="doc">restart</span></a>, <a class="reference internal" href="write_restart.html"><span class="doc">write_restart</span></a>, <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a></p> <hr class="docutils" /> @@ -1192,9 +1192,9 @@ creates and uses.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">opt</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^opt -a machine +</pre> <p>Supporting info: <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section acclerate</span></a>, <a class="reference internal" href="accelerate_opt.html"><span class="doc">Section accelerate opt</span></a>, Pair Styles section of <a class="reference internal" href="Section_commands.html#cmd-5"><span class="std std-ref">Section commands 3.5</span></a> for any pair style listed with an (o), examples/accelerate, bench/KEPLER</p> <hr class="docutils" /> @@ -1218,9 +1218,9 @@ styles which implement different materials models.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">peri</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^peri -a machine +</pre> <p>Supporting info: <a class="reference external" href="PDF/PDLammps_overview.pdf">doc/PDF/PDLammps_overview.pdf</a>, <a class="reference external" href="PDF/PDLammps_EPS.pdf">doc/PDF/PDLammps_EPS.pdf</a>, @@ -1261,9 +1261,9 @@ one step. Type “python src/Make.py -h -poems” to see the details.</ <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">meam</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^meam -a machine +</pre> <p>Supporting info: src/POEMS/README, lib/poems/README, <a class="reference internal" href="fix_poems.html"><span class="doc">fix poems</span></a>, examples/rigid</p> <hr class="docutils" /> @@ -1296,9 +1296,9 @@ in one step. Type “python src/Make.py -h -python” to see the detail <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">python</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^python -a machine +</pre> <p>Supporting info: examples/python</p> <hr class="docutils" /> </div> @@ -1320,9 +1320,9 @@ that use QEq as part of their formulation.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">qeq</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^qeq -a machine +</pre> <p>Supporting info: <a class="reference internal" href="fix_qeq.html"><span class="doc">fix qeq/*</span></a>, examples/qeq</p> <hr class="docutils" /> </div> @@ -1362,9 +1362,9 @@ one step. Type “python src/Make.py -h -reax” to see the details.</p <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">reax</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^reax -a machine +</pre> <p>Supporting info: lib/reax/README, <a class="reference internal" href="pair_reax.html"><span class="doc">pair_style reax</span></a>, <a class="reference internal" href="fix_reax_bonds.html"><span class="doc">fix reax/bonds</span></a>, examples/reax</p> <hr class="docutils" /> @@ -1394,9 +1394,9 @@ field calcalation on another set.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">replica</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^replica -a machine +</pre> <p>Supporting info: <a class="reference internal" href="Section_howto.html#howto-5"><span class="std std-ref">Section howto 6.5</span></a>, <a class="reference internal" href="neb.html"><span class="doc">neb</span></a>, <a class="reference internal" href="prd.html"><span class="doc">prd</span></a>, <a class="reference internal" href="tad.html"><span class="doc">tad</span></a>, <a class="reference internal" href="temper.html"><span class="doc">temper</span></a>, <a class="reference internal" href="run_style.html"><span class="doc">run_style verlet/split</span></a>, examples/neb, examples/prd, @@ -1422,9 +1422,9 @@ few large bodies or many small bodies.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">rigid</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^rigid -a machine +</pre> <p>Supporting info: <a class="reference internal" href="compute_erotate_rigid.html"><span class="doc">compute erotate/rigid</span></a>, <a class="reference internal" href="fix_shake.html"><span class="doc">fix shake</span></a>, <a class="reference internal" href="fix_shake.html"><span class="doc">fix rattle</span></a>, <a class="reference internal" href="fix_rigid.html"><span class="doc">fix rigid/*</span></a>, examples/ASPHERE, examples/rigid</p> <hr class="docutils" /> @@ -1446,9 +1446,9 @@ simulations where a shock-wave passes through a material.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">shock</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^shock -a machine +</pre> <p>Supporting info: <a class="reference internal" href="fix_append_atoms.html"><span class="doc">fix append/atoms</span></a>, <a class="reference internal" href="fix_msst.html"><span class="doc">fix msst</span></a>, <a class="reference internal" href="fix_nphug.html"><span class="doc">fix nphug</span></a>, <a class="reference internal" href="fix_wall_piston.html"><span class="doc">fix wall/piston</span></a>, examples/hugoniostat, examples/msst</p> <hr class="docutils" /> </div> @@ -1471,9 +1471,9 @@ properties of the potential are also included.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">snap</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^snap -a machine +</pre> <p>Supporting info: <a class="reference internal" href="pair_snap.html"><span class="doc">pair snap</span></a>, <a class="reference internal" href="compute_sna_atom.html"><span class="doc">compute sna/atom</span></a>, <a class="reference internal" href="compute_sna_atom.html"><span class="doc">compute snad/atom</span></a>, <a class="reference internal" href="compute_sna_atom.html"><span class="doc">compute snav/atom</span></a>, examples/snap</p> <hr class="docutils" /> @@ -1496,9 +1496,9 @@ colloidal-scale particles.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">srd</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^srd -a machine +</pre> <p>Supporting info: <a class="reference internal" href="fix_srd.html"><span class="doc">fix srd</span></a>, <a class="reference internal" href="fix_wall_srd.html"><span class="doc">fix wall/srd</span></a>, examples/srd, examples/ASPHERE</p> <hr class="docutils" /> </div> @@ -1541,9 +1541,9 @@ src/Make.py -h -voronoi” to see the details.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">voronoi</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^voronoi -a machine +</pre> <p>Supporting info: src/VORONOI/README, lib/voronoi/README, <a class="reference internal" href="compute_voronoi_atom.html"><span class="doc">compute voronoi/atom</span></a>, examples/voronoi</p> <hr class="docutils" /> </div> @@ -1860,7 +1860,7 @@ src/Make.py -h -voronoi” to see the details.</p> <tr class="row-even"><td><a class="reference internal" href="#user-smd"><span class="std std-ref">USER-SMD</span></a></td> <td>smoothed Mach dynamics</td> <td>Georg Ganzenmuller (EMI)</td> -<td><a class="reference external" href="PDF/SMD_LAMMPS_userguide.pdf">userguide.pdf</a></td> +<td><a class="reference external" href="PDF/SMD_LAMMPS_userguide.pdf">SMD User Guide</a></td> <td>USER/smd</td> <td><ul class="first last simple"> <li></li> @@ -1888,7 +1888,7 @@ src/Make.py -h -voronoi” to see the details.</p> <tr class="row-even"><td><a class="reference internal" href="#user-sph"><span class="std std-ref">USER-SPH</span></a></td> <td>smoothed particle hydrodynamics</td> <td>Georg Ganzenmuller (EMI)</td> -<td><a class="reference external" href="PDF/SPH_LAMMPS_userguide.pdf">userguide.pdf</a></td> +<td><a class="reference external" href="PDF/SPH_LAMMPS_userguide.pdf">SPH User Guide</a></td> <td>USER/sph</td> <td><a class="reference external" href="http://lammps.sandia.gov/movies.html#sph">sph</a></td> <td><ul class="first last simple"> @@ -1986,9 +1986,9 @@ more details.</p> <span class="n">make</span> <span class="n">machine</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="o">^</span><span class="n">atc</span> <span class="o">-</span><span class="n">a</span> <span class="n">machine</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -p ^atc -a machine +</pre> <p>Supporting <a class="reference external" href="info:src/USER-ATC/README">info:src/USER-ATC/README</a>, <a class="reference internal" href="fix_atc.html"><span class="doc">fix atc</span></a>, examples/USER/atc</p> <p>Authors: Reese Jones (rjones at sandia.gov), Jeremy Templeton (jatempl @@ -2064,10 +2064,9 @@ equations of motion are integrated efficiently through the Shardlow splitting algorithm. See src/USER-DPD/README for more details.</p> <p>Supporting info: /src/USER-DPD/README, <a class="reference internal" href="compute_dpd.html"><span class="doc">compute dpd</span></a> <a class="reference internal" href="compute_dpd_atom.html"><span class="doc">compute dpd/atom</span></a> -<a class="reference internal" href="fix_eos_table.html"><span class="doc">fix eos/cv</span></a> <a class="reference internal" href="fix_eos_table.html"><span class="doc">fix eos/table</span></a></p> -<blockquote> -<div><a class="reference internal" href="fix_eos_table_rx.html"><span class="doc">fix eos/table/rx</span></a> <a class="reference internal" href="fix_shardlow.html"><span class="doc">fix shardlow</span></a></div></blockquote> -<p><a class="reference internal" href="fix_rx.html"><span class="doc">fix rx</span></a> <a class="reference internal" href="pair_table_rx.html"><span class="doc">pair table/rx</span></a> +<a class="reference internal" href="fix_eos_table.html"><span class="doc">fix eos/cv</span></a> <a class="reference internal" href="fix_eos_table.html"><span class="doc">fix eos/table</span></a> +<a class="reference internal" href="fix_eos_table_rx.html"><span class="doc">fix eos/table/rx</span></a> <a class="reference internal" href="fix_shardlow.html"><span class="doc">fix shardlow</span></a> +<a class="reference internal" href="fix_rx.html"><span class="doc">fix rx</span></a> <a class="reference internal" href="pair_table_rx.html"><span class="doc">pair table/rx</span></a> <a class="reference internal" href="pair_dpd_fdt.html"><span class="doc">pair dpd/fdt</span></a> <a class="reference internal" href="pair_dpd_fdt.html"><span class="doc">pair dpd/fdt/energy</span></a> <a class="reference internal" href="pair_exp6_rx.html"><span class="doc">pair exp6/rx</span></a> <a class="reference internal" href="pair_multi_lucy.html"><span class="doc">pair multi/lucy</span></a> <a class="reference internal" href="pair_multi_lucy_rx.html"><span class="doc">pair multi/lucy/rx</span></a>, examples/USER/dpd</p> @@ -2213,7 +2212,7 @@ Contact them directly if you have any questions.</p> <p>Supporting info:</p> <p>The files in this package are a potpourri of (mostly) unrelated features contributed to LAMMPS by users. Each feature is a single -pair of files (<a href="#id2"><span class="problematic" id="id3">*</span></a>.cpp and <a href="#id4"><span class="problematic" id="id5">*</span></a>.h).</p> +pair of files (*.cpp and *.h).</p> <p>More information about each feature can be found by reading its doc page in the LAMMPS doc directory. The doc page which lists all LAMMPS input script commands is as follows:</p> @@ -2382,18 +2381,18 @@ questions.</p> <p>Supporting info:</p> <p>This package implements smoothed Mach dynamics (SMD) in LAMMPS. Currently, the package has the following features:</p> -<ul class="simple"> -<li>Does liquids via traditional Smooth Particle Hydrodynamics (SPH)</li> -<li>Also solves solids mechanics problems via a state of the art -stabilized meshless method with hourglass control.</li> -<li>Can specify hydrostatic interactions independently from material -strength models, i.e. pressure and deviatoric stresses are separated.</li> -<li>Many material models available (Johnson-Cook, plasticity with -hardening, Mie-Grueneisen, Polynomial EOS). Easy to add new -material models.</li> -<li>Rigid boundary conditions (walls) can be loaded as surface geometries -from <a href="#id8"><span class="problematic" id="id9">*</span></a>.STL files.</li> -</ul> +<p>* Does liquids via traditional Smooth Particle Hydrodynamics (SPH)</p> +<dl class="docutils"> +<dt>* Also solves solids mechanics problems via a state of the art</dt> +<dd>stabilized meshless method with hourglass control.</dd> +<dt>* Can specify hydrostatic interactions independently from material</dt> +<dd>strength models, i.e. pressure and deviatoric stresses are separated.</dd> +<dt>* Many material models available (Johnson-Cook, plasticity with</dt> +<dd>hardening, Mie-Grueneisen, Polynomial EOS). Easy to add new +material models.</dd> +<dt>* Rigid boundary conditions (walls) can be loaded as surface geometries</dt> +<dd>from *.STL files.</dd> +</dl> <p>See the file doc/PDF/SMD_LAMMPS_userguide.pdf to get started.</p> <p>There are example scripts for using this package in examples/USER/smd.</p> <p>The person who created this package is Georg Ganzenmuller at the @@ -2424,16 +2423,18 @@ them directly if you have any questions.</p> <p>Supporting info:</p> <p>This package implements smoothed particle hydrodynamics (SPH) in LAMMPS. Currently, the package has the following features:</p> -<ul class="simple"> -<li>Tait, ideal gas, Lennard-Jones equation of states, full support for -complete (i.e. internal-energy dependent) equations of state</li> -<li>Plain or Monaghans XSPH integration of the equations of motion</li> -<li>Density continuity or density summation to propagate the density field</li> -<li>Commands to set internal energy and density of particles from the -input script</li> -<li>Output commands to access internal energy and density for dumping and -thermo output</li> -</ul> +<dl class="docutils"> +<dt>* Tait, ideal gas, Lennard-Jones equation of states, full support for</dt> +<dd>complete (i.e. internal-energy dependent) equations of state</dd> +</dl> +<p>* Plain or Monaghans XSPH integration of the equations of motion</p> +<p>* Density continuity or density summation to propagate the density field</p> +<dl class="docutils"> +<dt>* Commands to set internal energy and density of particles from the</dt> +<dd>input script</dd> +<dt>* Output commands to access internal energy and density for dumping and</dt> +<dd>thermo output</dd> +</dl> <p>See the file doc/PDF/SPH_LAMMPS_userguide.pdf to get started.</p> <p>There are example scripts for using this package in examples/USER/sph.</p> <p>The person who created this package is Georg Ganzenmuller at the diff --git a/doc/html/Section_python.html b/doc/html/Section_python.html index 8b4dc1cffb..971aeb58dc 100644 --- a/doc/html/Section_python.html +++ b/doc/html/Section_python.html @@ -343,10 +343,10 @@ described above.</p> <p>If you set the paths to these files as environment variables, you only have to do it once. For the csh or tcsh shells, add something like this to your ~/.cshrc file, one line for each of the two files:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>setenv PYTHONPATH ${PYTHONPATH}:/home/sjplimp/lammps/python +<pre class="literal-block"> +setenv PYTHONPATH ${PYTHONPATH}:/home/sjplimp/lammps/python setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/home/sjplimp/lammps/src -</pre></div> -</div> +</pre> <p>If you use the python/install.py script, you need to invoke it every time you rebuild LAMMPS (as a shared library) or make changes to the python/lammps.py file.</p> @@ -393,39 +393,21 @@ environment variable as described above.</p> your Python with an interface to MPI. This also allows you to make MPI calls directly from Python in your script, if you desire.</p> <p>There are several Python packages available that purport to wrap MPI -as a library and allow MPI functions to be called from Python.</p> -<p>These include</p> +as a library and allow MPI functions to be called from Python. However, +development on most of them seems to be halted except on:</p> <ul class="simple"> -<li><a class="reference external" href="http://pympi.sourceforge.net/">pyMPI</a></li> -<li><a class="reference external" href="http://code.google.com/p/maroonmpi/">maroonmpi</a></li> -<li><a class="reference external" href="http://code.google.com/p/mpi4py/">mpi4py</a></li> -<li><a class="reference external" href="http://nbcr.sdsc.edu/forum/viewtopic.php?t=89&sid=c997fefc3933bd66204875b436940f16">myMPI</a></li> -<li><a class="reference external" href="http://code.google.com/p/pypar">Pypar</a></li> +<li><a class="reference external" href="https://bitbucket.org/mpi4py/mpi4py">mpi4py</a></li> +<li><a class="reference external" href="https://github.com/daleroberts/pypar">PyPar</a></li> </ul> -<p>All of these except pyMPI work by wrapping the MPI library and -exposing (some portion of) its interface to your Python script. This -means Python cannot be used interactively in parallel, since they do -not address the issue of interactive input to multiple instances of -Python running on different processors. The one exception is pyMPI, -which alters the Python interpreter to address this issue, and (I -believe) creates a new alternate executable (in place of “python” -itself) as a result.</p> -<p>In principle any of these Python/MPI packages should work to invoke -LAMMPS in parallel and to make MPI calls themselves from a Python -script which is itself running in parallel. However, when I -downloaded and looked at a few of them, their documentation was -incomplete and I had trouble with their installation. It’s not clear -if some of the packages are still being actively developed and -supported.</p> -<p>The packages Pypar and mpi4py have both been successfully tested with -LAMMPS. Pypar is simpler and easy to set up and use, but supports +<p>Both packages, PyPar and mpi4py have been successfully tested with +LAMMPS. PyPar is simpler and easy to set up and use, but supports only a subset of MPI. Mpi4py is more MPI-feature complete, but also a bit more complex to use. As of version 2.0.0, mpi4py is the only python MPI wrapper that allows passing a custom MPI communicator to the LAMMPS constructor, which means one can easily run one or more LAMMPS instances on subsets of the total MPI ranks.</p> <hr class="docutils" /> -<p>Pypar requires the ubiquitous <a class="reference external" href="http://numpy.scipy.org">Numpy package</a> +<p>PyPar requires the ubiquitous <a class="reference external" href="http://numpy.scipy.org">Numpy package</a> be installed in your Python. After launching Python, type</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">numpy</span> </pre></div> @@ -439,15 +421,15 @@ top-level directory, type</p> </div> <p>The “sudo” is only needed if required to copy Numpy files into your Python distribution’s site-packages directory.</p> -<p>To install Pypar (version pypar-2.1.4_94 as of Aug 2012), unpack it +<p>To install PyPar (version pypar-2.1.4_94 as of Aug 2012), unpack it and from its “source” directory, type</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">python</span> <span class="n">setup</span><span class="o">.</span><span class="n">py</span> <span class="n">build</span> <span class="n">sudo</span> <span class="n">python</span> <span class="n">setup</span><span class="o">.</span><span class="n">py</span> <span class="n">install</span> </pre></div> </div> -<p>Again, the “sudo” is only needed if required to copy Pypar files into +<p>Again, the “sudo” is only needed if required to copy PyPar files into your Python distribution’s site-packages directory.</p> -<p>If you have successully installed Pypar, you should be able to run +<p>If you have successully installed PyPar, you should be able to run Python and type</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">pypar</span> </pre></div> @@ -465,17 +447,17 @@ on a simple test script</p> <p>and see one line of output for each processor you run on.</p> <div class="admonition note"> <p class="first admonition-title">Note</p> -<p class="last">To use Pypar and LAMMPS in parallel from Python, you must insure +<p class="last">To use PyPar and LAMMPS in parallel from Python, you must insure both are using the same version of MPI. If you only have one MPI installed on your system, this is not an issue, but it can be if you have multiple MPIs. Your LAMMPS build is explicit about which MPI it is using, since you specify the details in your lo-level -src/MAKE/Makefile.foo file. Pypar uses the “mpicc” command to find +src/MAKE/Makefile.foo file. PyPar uses the “mpicc” command to find information about the MPI it uses to build against. And it tries to load “libmpi.so” from the LD_LIBRARY_PATH. This may or may not find the MPI library that LAMMPS is using. If you have problems running -both Pypar and LAMMPS together, this is an issue you may need to -address, e.g. by moving other MPI installations so that Pypar finds +both PyPar and LAMMPS together, this is an issue you may need to +address, e.g. by moving other MPI installations so that PyPar finds the right one.</p> </div> <hr class="docutils" /> @@ -502,11 +484,11 @@ on a simple test script</p> </pre></div> </div> <p>where test.py contains the lines</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">mpi4py</span> <span class="k">import</span> <span class="n">MPI</span> -<span class="n">comm</span> <span class="o">=</span> <span class="n">MPI</span><span class="o">.</span><span class="n">COMM_WORLD</span> -<span class="nb">print</span> <span class="s2">"Proc </span><span class="si">%d</span><span class="s2"> out of </span><span class="si">%d</span><span class="s2"> procs"</span> <span class="o">%</span> <span class="p">(</span><span class="n">comm</span><span class="o">.</span><span class="n">Get_rank</span><span class="p">(),</span><span class="n">comm</span><span class="o">.</span><span class="n">Get_size</span><span class="p">())</span> -</pre></div> -</div> +<pre class="literal-block"> +from mpi4py import MPI +comm = MPI.COMM_WORLD +print "Proc %d out of %d procs" % (comm.Get_rank(),comm.Get_size()) +</pre> <p>and see one line of output for each processor you run on.</p> <div class="admonition note"> <p class="first admonition-title">Note</p> @@ -568,15 +550,15 @@ interactively from the bench directory:</p> <p>Either way, you should see the results of running the in.lj benchmark on a single processor appear on the screen, the same as if you had typed something like:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_g++ -in in.lj +</pre> </div> <div class="section" id="test-lammps-and-python-in-parallel"> <h3>11.6.2. <strong>Test LAMMPS and Python in parallel:</strong></h3> <p>To run LAMMPS in parallel, assuming you have installed the -<a class="reference external" href="Pypar">Pypar</a> package as discussed above, create a test.py file -containing these lines:</p> +<a class="reference external" href="https://github.com/daleroberts/pypar">PyPar</a> package as discussed +above, create a test.py file containing these lines:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">pypar</span> <span class="kn">from</span> <span class="nn">lammps</span> <span class="k">import</span> <span class="n">lammps</span> <span class="n">lmp</span> <span class="o">=</span> <span class="n">lammps</span><span class="p">()</span> @@ -586,36 +568,36 @@ containing these lines:</p> </pre></div> </div> <p>To run LAMMPS in parallel, assuming you have installed the -<a class="reference external" href="mpi4py">mpi4py</a> package as discussed above, create a test.py file -containing these lines:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">mpi4py</span> <span class="k">import</span> <span class="n">MPI</span> -<span class="kn">from</span> <span class="nn">lammps</span> <span class="k">import</span> <span class="n">lammps</span> -<span class="n">lmp</span> <span class="o">=</span> <span class="n">lammps</span><span class="p">()</span> -<span class="n">lmp</span><span class="o">.</span><span class="n">file</span><span class="p">(</span><span class="s2">"in.lj"</span><span class="p">)</span> -<span class="n">me</span> <span class="o">=</span> <span class="n">MPI</span><span class="o">.</span><span class="n">COMM_WORLD</span><span class="o">.</span><span class="n">Get_rank</span><span class="p">()</span> -<span class="n">nprocs</span> <span class="o">=</span> <span class="n">MPI</span><span class="o">.</span><span class="n">COMM_WORLD</span><span class="o">.</span><span class="n">Get_size</span><span class="p">()</span> -<span class="nb">print</span> <span class="s2">"Proc </span><span class="si">%d</span><span class="s2"> out of </span><span class="si">%d</span><span class="s2"> procs has"</span> <span class="o">%</span> <span class="p">(</span><span class="n">me</span><span class="p">,</span><span class="n">nprocs</span><span class="p">),</span><span class="n">lmp</span> -<span class="n">MPI</span><span class="o">.</span><span class="n">Finalize</span><span class="p">()</span> -</pre></div> -</div> +<a class="reference external" href="https://bitbucket.org/mpi4py/mpi4py">mpi4py</a> package as discussed +above, create a test.py file containing these lines:</p> +<pre class="literal-block"> +from mpi4py import MPI +from lammps import lammps +lmp = lammps() +lmp.file("in.lj") +me = MPI.COMM_WORLD.Get_rank() +nprocs = MPI.COMM_WORLD.Get_size() +print "Proc %d out of %d procs has" % (me,nprocs),lmp +MPI.Finalize() +</pre> <p>You can either script in parallel as:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">%</span> <span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">4</span> <span class="n">python</span> <span class="n">test</span><span class="o">.</span><span class="n">py</span> </pre></div> </div> <p>and you should see the same output as if you had typed</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">%</span> <span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">4</span> <span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> -</pre></div> -</div> -<p>Note that if you leave out the 3 lines from test.py that specify Pypar +<pre class="literal-block"> +% mpirun -np 4 lmp_g++ -in in.lj +</pre> +<p>Note that if you leave out the 3 lines from test.py that specify PyPar commands you will instantiate and run LAMMPS independently on each of the P processors specified in the mpirun command. In this case you should get 4 sets of output, each showing that a LAMMPS run was made on a single processor, instead of one set of output showing that LAMMPS ran on 4 processors. If the 1-processor outputs occur, it -means that Pypar is not working correctly.</p> -<p>Also note that once you import the PyPar module, Pypar initializes MPI +means that PyPar is not working correctly.</p> +<p>Also note that once you import the PyPar module, PyPar initializes MPI for you, and you can use MPI calls directly in your Python script, as -described in the Pypar documentation. The last line of your Python +described in the PyPar documentation. The last line of your Python script should be pypar.finalize(), to insure MPI is shut down correctly.</p> </div> @@ -661,14 +643,14 @@ Python script, as follows:</p> the files src/library.cpp and src/library.h you will see that they correspond one-to-one with calls you can make to the LAMMPS library from a C++ or C or Fortran program.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp</span> <span class="o">=</span> <span class="n">lammps</span><span class="p">()</span> <span class="c1"># create a LAMMPS object using the default liblammps.so library</span> - <span class="mi">4</span> <span class="n">optional</span> <span class="n">args</span> <span class="n">are</span> <span class="n">allowed</span><span class="p">:</span> <span class="n">name</span><span class="p">,</span> <span class="n">cmdargs</span><span class="p">,</span> <span class="n">ptr</span><span class="p">,</span> <span class="n">comm</span> -<span class="n">lmp</span> <span class="o">=</span> <span class="n">lammps</span><span class="p">(</span><span class="n">ptr</span><span class="o">=</span><span class="n">lmpptr</span><span class="p">)</span> <span class="c1"># use lmpptr as previously created LAMMPS object</span> -<span class="n">lmp</span> <span class="o">=</span> <span class="n">lammps</span><span class="p">(</span><span class="n">comm</span><span class="o">=</span><span class="n">split</span><span class="p">)</span> <span class="c1"># create a LAMMPS object with a custom communicator, requires mpi4py 2.0.0 or later</span> -<span class="n">lmp</span> <span class="o">=</span> <span class="n">lammps</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s2">"g++"</span><span class="p">)</span> <span class="c1"># create a LAMMPS object using the liblammps_g++.so library</span> -<span class="n">lmp</span> <span class="o">=</span> <span class="n">lammps</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s2">"g++"</span><span class="p">,</span><span class="n">cmdargs</span><span class="o">=</span><span class="nb">list</span><span class="p">)</span> <span class="c1"># add LAMMPS command-line args, e.g. list = ["-echo","screen"]</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp = lammps() # create a LAMMPS object using the default liblammps.so library + 4 optional args are allowed: name, cmdargs, ptr, comm +lmp = lammps(ptr=lmpptr) # use lmpptr as previously created LAMMPS object +lmp = lammps(comm=split) # create a LAMMPS object with a custom communicator, requires mpi4py 2.0.0 or later +lmp = lammps(name="g++") # create a LAMMPS object using the liblammps_g++.so library +lmp = lammps(name="g++",cmdargs=list) # add LAMMPS command-line args, e.g. list = ["-echo","screen"] +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp</span><span class="o">.</span><span class="n">close</span><span class="p">()</span> <span class="c1"># destroy a LAMMPS object</span> </pre></div> </div> @@ -677,49 +659,49 @@ from a C++ or C or Fortran program.</p> <span class="n">lmp</span><span class="o">.</span><span class="n">command</span><span class="p">(</span><span class="n">cmd</span><span class="p">)</span> <span class="c1"># invoke a single LAMMPS command, cmd = "run 100"</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">xlo</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">extract_global</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="nb">type</span><span class="p">)</span> <span class="c1"># extract a global quantity</span> - <span class="c1"># name = "boxxlo", "nlocal", etc</span> - <span class="c1"># type = 0 = int</span> - <span class="c1"># 1 = double</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">coords</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">extract_atom</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="nb">type</span><span class="p">)</span> <span class="c1"># extract a per-atom quantity</span> - <span class="c1"># name = "x", "type", etc</span> - <span class="c1"># type = 0 = vector of ints</span> - <span class="c1"># 1 = array of ints</span> - <span class="c1"># 2 = vector of doubles</span> - <span class="c1"># 3 = array of doubles</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">eng</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">extract_compute</span><span class="p">(</span><span class="nb">id</span><span class="p">,</span><span class="n">style</span><span class="p">,</span><span class="nb">type</span><span class="p">)</span> <span class="c1"># extract value(s) from a compute</span> -<span class="n">v3</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">extract_fix</span><span class="p">(</span><span class="nb">id</span><span class="p">,</span><span class="n">style</span><span class="p">,</span><span class="nb">type</span><span class="p">,</span><span class="n">i</span><span class="p">,</span><span class="n">j</span><span class="p">)</span> <span class="c1"># extract value(s) from a fix</span> - <span class="c1"># id = ID of compute or fix</span> - <span class="c1"># style = 0 = global data</span> - <span class="c1"># 1 = per-atom data</span> - <span class="c1"># 2 = local data</span> - <span class="c1"># type = 0 = scalar</span> - <span class="c1"># 1 = vector</span> - <span class="c1"># 2 = array</span> - <span class="c1"># i,j = indices of value in global vector or array</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">var</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">extract_variable</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="n">group</span><span class="p">,</span><span class="n">flag</span><span class="p">)</span> <span class="c1"># extract value(s) from a variable</span> - <span class="c1"># name = name of variable</span> - <span class="c1"># group = group ID (ignored for equal-style variables)</span> - <span class="c1"># flag = 0 = equal-style variable</span> - <span class="c1"># 1 = atom-style variable</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">flag</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">set_variable</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="n">value</span><span class="p">)</span> <span class="c1"># set existing named string-style variable to value, flag = 0 if successful</span> -<span class="n">natoms</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">get_natoms</span><span class="p">()</span> <span class="c1"># total # of atoms as int</span> -<span class="n">data</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">gather_atoms</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="nb">type</span><span class="p">,</span><span class="n">count</span><span class="p">)</span> <span class="c1"># return atom attribute of all atoms gathered into data, ordered by atom ID</span> - <span class="c1"># name = "x", "charge", "type", etc</span> - <span class="c1"># count = # of per-atom values, 1 or 3, etc</span> -<span class="n">lmp</span><span class="o">.</span><span class="n">scatter_atoms</span><span class="p">(</span><span class="n">name</span><span class="p">,</span><span class="nb">type</span><span class="p">,</span><span class="n">count</span><span class="p">,</span><span class="n">data</span><span class="p">)</span> <span class="c1"># scatter atom attribute of all atoms from data, ordered by atom ID</span> - <span class="c1"># name = "x", "charge", "type", etc</span> - <span class="c1"># count = # of per-atom values, 1 or 3, etc</span> -</pre></div> -</div> +<pre class="literal-block"> +xlo = lmp.extract_global(name,type) # extract a global quantity + # name = "boxxlo", "nlocal", etc + # type = 0 = int + # 1 = double +</pre> +<pre class="literal-block"> +coords = lmp.extract_atom(name,type) # extract a per-atom quantity + # name = "x", "type", etc + # type = 0 = vector of ints + # 1 = array of ints + # 2 = vector of doubles + # 3 = array of doubles +</pre> +<pre class="literal-block"> +eng = lmp.extract_compute(id,style,type) # extract value(s) from a compute +v3 = lmp.extract_fix(id,style,type,i,j) # extract value(s) from a fix + # id = ID of compute or fix + # style = 0 = global data + # 1 = per-atom data + # 2 = local data + # type = 0 = scalar + # 1 = vector + # 2 = array + # i,j = indices of value in global vector or array +</pre> +<pre class="literal-block"> +var = lmp.extract_variable(name,group,flag) # extract value(s) from a variable + # name = name of variable + # group = group ID (ignored for equal-style variables) + # flag = 0 = equal-style variable + # 1 = atom-style variable +</pre> +<pre class="literal-block"> +flag = lmp.set_variable(name,value) # set existing named string-style variable to value, flag = 0 if successful +natoms = lmp.get_natoms() # total # of atoms as int +data = lmp.gather_atoms(name,type,count) # return atom attribute of all atoms gathered into data, ordered by atom ID + # name = "x", "charge", "type", etc + # count = # of per-atom values, 1 or 3, etc +lmp.scatter_atoms(name,type,count,data) # scatter atom attribute of all atoms from data, ordered by atom ID + # name = "x", "charge", "type", etc + # count = # of per-atom values, 1 or 3, etc +</pre> <hr class="docutils" /> <p>The lines</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">lammps</span> <span class="k">import</span> <span class="n">lammps</span> @@ -767,8 +749,8 @@ argument.</p> returned, which you can use via normal Python subscripting. See the extract() method in the src/atom.cpp file for a list of valid names. Again, new names could easily be added. A pointer to a vector of -doubles or integers, or a pointer to an array of doubles (double <a href="#id3"><span class="problematic" id="id4">**</span></a>) -or integers (int <a href="#id5"><span class="problematic" id="id6">**</span></a>) is returned. You need to specify the appropriate +doubles or integers, or a pointer to an array of doubles (double **) +or integers (int **) is returned. You need to specify the appropriate data type via the type argument.</p> <p>For extract_compute() and extract_fix(), the global, per-atom, or local data calulated by the compute or fix can be accessed. What is @@ -824,19 +806,19 @@ consecutively ordered, no coordinates are reset.</p> <p>The array of coordinates passed to scatter_atoms() must be a ctypes vector of ints or doubles, allocated and initialized something like this:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="kn">from</span> <span class="nn">ctypes</span> <span class="k">import</span> <span class="o">*</span> -<span class="n">natoms</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">get_natoms</span><span class="p">()</span> -<span class="n">n3</span> <span class="o">=</span> <span class="mi">3</span><span class="o">*</span><span class="n">natoms</span> -<span class="n">x</span> <span class="o">=</span> <span class="p">(</span><span class="n">n3</span><span class="o">*</span><span class="n">c_double</span><span class="p">)()</span> -<span class="n">x</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span> <span class="o">=</span> <span class="n">x</span> <span class="n">coord</span> <span class="n">of</span> <span class="n">atom</span> <span class="k">with</span> <span class="n">ID</span> <span class="mi">1</span> -<span class="n">x</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">y</span> <span class="n">coord</span> <span class="n">of</span> <span class="n">atom</span> <span class="k">with</span> <span class="n">ID</span> <span class="mi">1</span> -<span class="n">x</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="o">=</span> <span class="n">z</span> <span class="n">coord</span> <span class="n">of</span> <span class="n">atom</span> <span class="k">with</span> <span class="n">ID</span> <span class="mi">1</span> -<span class="n">x</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">=</span> <span class="n">x</span> <span class="n">coord</span> <span class="n">of</span> <span class="n">atom</span> <span class="k">with</span> <span class="n">ID</span> <span class="mi">2</span> -<span class="o">...</span> -<span class="n">x</span><span class="p">[</span><span class="n">n3</span><span class="o">-</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">z</span> <span class="n">coord</span> <span class="n">of</span> <span class="n">atom</span> <span class="k">with</span> <span class="n">ID</span> <span class="n">natoms</span> -<span class="n">lmp</span><span class="o">.</span><span class="n">scatter_coords</span><span class="p">(</span><span class="s2">"x"</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="n">x</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +from ctypes import * +natoms = lmp.get_natoms() +n3 = 3*natoms +x = (n3*c_double)() +x[0] = x coord of atom with ID 1 +x[1] = y coord of atom with ID 1 +x[2] = z coord of atom with ID 1 +x[3] = x coord of atom with ID 2 +... +x[n3-1] = z coord of atom with ID natoms +lmp.scatter_coords("x",1,3,x) +</pre> <p>Alternatively, you can just change values in the vector returned by gather_atoms(“x”,1,3), since it is a ctypes vector of doubles.</p> <hr class="docutils" /> @@ -915,10 +897,10 @@ capability needed by these Python scripts.</p> open-source version of PyMol in your Python, so that you can import it from a Python script. See the PyMol WWW pages <a class="reference external" href="http://www.pymol.org">here</a> or <a class="reference external" href="http://sourceforge.net/scm/?type=svn&group_id=4546">here</a> for more details:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>http://www.pymol.org -http://sourceforge.net/scm/?type=svn&group_id=4546 -</pre></div> -</div> +<pre class="literal-block"> +<a class="reference external" href="http://www.pymol.org">http://www.pymol.org</a> +<a class="reference external" href="http://sourceforge.net/scm/?type=svn&group_id=4546">http://sourceforge.net/scm/?type=svn&group_id=4546</a> +</pre> <p>The latter link is to the open-source version.</p> <p>Note that for VMD, you need a fairly current version (1.8.7 works for me) and there are some lines in the pizza/vmd.py script for 4 PIZZA diff --git a/doc/html/Section_start.html b/doc/html/Section_start.html index 4d422cdc2a..b3ebfd3dca 100644 --- a/doc/html/Section_start.html +++ b/doc/html/Section_start.html @@ -173,10 +173,10 @@ experienced users.</p> <p>When you download a LAMMPS tarball you will need to unzip and untar the downloaded file with the following commands, after placing the tarball in an appropriate directory.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">gunzip</span> <span class="n">lammps</span><span class="o">*.</span><span class="n">tar</span><span class="o">.</span><span class="n">gz</span> -<span class="n">tar</span> <span class="n">xvf</span> <span class="n">lammps</span><span class="o">*.</span><span class="n">tar</span> -</pre></div> -</div> +<pre class="literal-block"> +gunzip lammps*.tar.gz +tar xvf lammps*.tar +</pre> <p>This will create a LAMMPS directory containing two files and several sub-directories:</p> <table border="1" class="docutils"> @@ -315,13 +315,13 @@ it will be never be touched by any LAMMPS updates.</p> a list of available choices from src/MAKE and all of its sub-directories. If one of those has the options you want or is the machine you want, you can type a command like:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">make</span> <span class="n">mpi</span> -<span class="ow">or</span> -<span class="n">make</span> <span class="n">serial_icc</span> -<span class="ow">or</span> -<span class="n">gmake</span> <span class="n">mac</span> -</pre></div> -</div> +<pre class="literal-block"> +make mpi +or +make serial_icc +or +gmake mac +</pre> <p>Note that the corresponding Makefile.machine can exist in src/MAKE or any of its sub-directories. If a file with the same name appears in multiple places (not a good idea), the order they are used is as @@ -362,13 +362,13 @@ then you should list them as part of the LIB variable. You should not need to do this if you use mpicxx.</p> <p>The DEPFLAGS setting is what triggers the C++ compiler to create a dependency list for a source file. This speeds re-compilation when -source (<em>.cpp) or header (</em>.h) files are edited. Some compilers do +source (*.cpp) or header (*.h) files are edited. Some compilers do not support dependency file creation, or may use a different switch than -D. GNU g++ and Intel icc works with -D. If your compiler can’t create dependency files, then you’ll need to create a Makefile.foo patterned after Makefile.storm, which uses different rules that do not involve dependency files. Note that when you build LAMMPS for the -first time on a new platform, a long list of <a href="#id5"><span class="problematic" id="id6">*</span></a>.d files will be printed +first time on a new platform, a long list of *.d files will be printed out rapidly. This is not an error; it is the Makefile doing its normal creation of dependencies.</p> <p><strong>Step 4</strong></p> @@ -598,7 +598,7 @@ faster, depending on how many cores your compilation machine has. N is the number of cores the build runs on.</p> <p>You should get the executable lmp_foo when the build is complete.</p> <hr class="docutils" /> -<p id="start-2-3"><a href="#id7"><span class="problematic" id="id8">**</span></a><em>Errors that can occur when making LAMMPS:</em>**</p> +<p id="start-2-3"><a href="#id5"><span class="problematic" id="id6">**</span></a><em>Errors that can occur when making LAMMPS:</em>**</p> <div class="admonition note"> <p class="first admonition-title">Note</p> <p class="last">If an error occurs when building LAMMPS, the compiler or linker @@ -632,17 +632,17 @@ is undefined’, then your machine does not support “long long” integers. Try using the -DLAMMPS_LONGLONG_TO_LONG setting described above in Step 4.</p> <hr class="docutils" /> -<p id="start-2-4"><a href="#id9"><span class="problematic" id="id10">**</span></a><em>Additional build tips:</em>**</p> +<p id="start-2-4"><a href="#id7"><span class="problematic" id="id8">**</span></a><em>Additional build tips:</em>**</p> <ol class="arabic simple"> <li>Building LAMMPS for multiple platforms.</li> </ol> <p>You can make LAMMPS for multiple platforms from the same src directory. Each target creates its own object sub-directory called -Obj_target where it stores the system-specific <a href="#id11"><span class="problematic" id="id12">*</span></a>.o files.</p> +Obj_target where it stores the system-specific *.o files.</p> <ol class="arabic simple" start="2"> <li>Cleaning up.</li> </ol> -<p>Typing “make clean-all” or “make clean-machine” will delete <a href="#id13"><span class="problematic" id="id14">*</span></a>.o object +<p>Typing “make clean-all” or “make clean-machine” will delete *.o object files created when LAMMPS is built, for either all builds or for a particular machine.</p> <p>(3) Changing the LAMMPS size limits via -DLAMMPS_SMALLBIG or @@ -686,11 +686,11 @@ basis is limited by 4-byte integer storage to 2^31 atoms per processor a problem would have a huge per-processor memory footprint due to neighbor lists and would run very slowly in terms of CPU secs/timestep.</p> <hr class="docutils" /> -<p id="start-2-5"><a href="#id15"><span class="problematic" id="id16">**</span></a><em>Building for a Mac:</em>**</p> +<p id="start-2-5"><a href="#id9"><span class="problematic" id="id10">**</span></a><em>Building for a Mac:</em>**</p> <p>OS X is BSD Unix, so it should just work. See the src/MAKE/MACHINES/Makefile.mac and Makefile.mac_mpi files.</p> <hr class="docutils" /> -<p id="start-2-6"><a href="#id17"><span class="problematic" id="id18">**</span></a><em>Building for Windows:</em>**</p> +<p id="start-2-6"><a href="#id11"><span class="problematic" id="id12">**</span></a><em>Building for Windows:</em>**</p> <p>The LAMMPS download page has an option to download both a serial and parallel pre-built Windows executable. See the <a class="reference internal" href="#start-6"><span class="std std-ref">Running LAMMPS</span></a> section for instructions on running these executables on a Windows box.</p> @@ -725,7 +725,7 @@ tool which can be used to install/un-install packages and build the auxiliary libraries which some of them use. It can also auto-edit a Makefile.machine to add settings needed by some packages.</p> <hr class="docutils" /> -<p id="start-3-1"><a href="#id19"><span class="problematic" id="id20">**</span></a><em>Package basics:</em>**</p> +<p id="start-3-1"><a href="#id13"><span class="problematic" id="id14">**</span></a><em>Package basics:</em>**</p> <p>The source code for LAMMPS is structured as a set of core files which are always included, plus optional packages. Packages are groups of files that enable a specific set of features. For example, force @@ -742,9 +742,9 @@ package, you must have built LAMMPS with that package, else you will get an error that the style is invalid or the command is unknown. Every command’s doc page specfies if it is part of a package. You can also type</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_machine</span> <span class="o">-</span><span class="n">h</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_machine -h +</pre> <p>to run your executable with the optional <a class="reference internal" href="#start-7"><span class="std std-ref">-h command-line switch</span></a> for “help”, which will simply list the styles and commands known to your executable, and immediately exit.</p> <p>There are two kinds of packages in LAMMPS, standard and user packages. @@ -768,7 +768,7 @@ Information on how to submit additions you make to LAMMPS as single files or either a standard or user-contributed package are given in <a class="reference internal" href="Section_modify.html#mod-15"><span class="std std-ref">this section</span></a> of the documentation.</p> <hr class="docutils" /> -<p id="start-3-2"><a href="#id21"><span class="problematic" id="id22">**</span></a><em>Including/excluding packages:</em>**</p> +<p id="start-3-2"><a href="#id15"><span class="problematic" id="id16">**</span></a><em>Including/excluding packages:</em>**</p> <p>To use (or not use) a package you must include it (or exclude it) before building LAMMPS. From the src directory, this is typically as simple as:</p> @@ -837,7 +837,7 @@ sub-directory. Typing “make package-diff” lists all differences between these files. Again, type “make package” to see all of the package-related make options.</p> <hr class="docutils" /> -<p id="start-3-3"><a href="#id23"><span class="problematic" id="id24">**</span></a><em>Packages that require extra libraries:</em>**</p> +<p id="start-3-3"><a href="#id17"><span class="problematic" id="id18">**</span></a><em>Packages that require extra libraries:</em>**</p> <p>A few of the standard and user packages require additional auxiliary libraries. Many of them are provided with LAMMPS, in which case they must be compiled first, before LAMMPS is built, if you wish to include @@ -908,7 +908,7 @@ needed soft links. Type “python install.py” for further instruction or settings in the lib/package/Makefile.lammps files are not correct, the LAMMPS build will typically fail.</p> <hr class="docutils" /> -<p id="start-3-4"><a href="#id25"><span class="problematic" id="id26">**</span></a><em>Packages that require Makefile.machine settings</em>**</p> +<p id="start-3-4"><a href="#id19"><span class="problematic" id="id20">**</span></a><em>Packages that require Makefile.machine settings</em>**</p> <p>A few packages require specific settings in Makefile.machine, to either build or use the package effectively. These are the USER-INTEL, KOKKOS, USER-OMP, and OPT packages, used for accelerating @@ -1081,7 +1081,7 @@ LAMMPS to other codes. See <a class="reference internal" href="Section_python.h more info on wrapping and running LAMMPS from Python.</p> <div class="section" id="static-library"> <h3>2.5.1. <strong>Static library:</strong></h3> -<p>To build LAMMPS as a static library (<a href="#id27"><span class="problematic" id="id28">*</span></a>.a file on Linux), type</p> +<p>To build LAMMPS as a static library (*.a file on Linux), type</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">make</span> <span class="n">foo</span> <span class="n">mode</span><span class="o">=</span><span class="n">lib</span> </pre></div> </div> @@ -1095,7 +1095,7 @@ point to the most recently built static library.</p> </div> <div class="section" id="shared-library"> <h3>2.5.2. <strong>Shared library:</strong></h3> -<p>To build LAMMPS as a shared library (<a href="#id29"><span class="problematic" id="id30">*</span></a>.so file on Linux), which can be +<p>To build LAMMPS as a shared library (*.so file on Linux), which can be dynamically loaded, e.g. from Python, type</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">make</span> <span class="n">foo</span> <span class="n">mode</span><span class="o">=</span><span class="n">shlib</span> </pre></div> @@ -1122,18 +1122,18 @@ of the auxiliary library. The build instructions for the library should tell you how to do this.</p> <p>Here is an example of such errors when the system FFTW or provided lib/colvars library have not been built as shared libraries:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>/usr/bin/ld: /usr/local/lib/libfftw3.a(mapflags.o): relocation -R_X86_64_32 against `.rodata' can not be used when making a shared +<pre class="literal-block"> +/usr/bin/ld: /usr/local/lib/libfftw3.a(mapflags.o): relocation +R_X86_64_32 against '.rodata' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libfftw3.a: could not read symbols: Bad value -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span>/usr/bin/ld: ../../lib/colvars/libcolvars.a(colvarmodule.o): -relocation R_X86_64_32 against `__pthread_key_create' can not be used +</pre> +<pre class="literal-block"> +/usr/bin/ld: ../../lib/colvars/libcolvars.a(colvarmodule.o): +relocation R_X86_64_32 against '__pthread_key_create' can not be used when making a shared object; recompile with -fPIC ../../lib/colvars/libcolvars.a: error adding symbols: Bad value -</pre></div> -</div> +</pre> <p>As an example, here is how to build and install the <a class="reference external" href="http://www-unix.mcs.anl.gov/mpi">MPICH library</a>, a popular open-source version of MPI, distributed by Argonne National Labs, as a shared library in the default /usr/local/lib location:</p> @@ -1157,9 +1157,9 @@ current version of the shared library is always available to programs that use it.</p> <p>For the csh or tcsh shells, you would add something like this to your ~/.cshrc file:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/home/sjplimp/lammps/src -</pre></div> -</div> +<pre class="literal-block"> +setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/home/sjplimp/lammps/src +</pre> </div> <div class="section" id="calling-the-lammps-library"> <h3>2.5.4. <strong>Calling the LAMMPS library:</strong></h3> @@ -1188,20 +1188,20 @@ interface and how to extend it for your needs.</p> <span id="start-6"></span><h2>2.6. Running LAMMPS</h2> <p>By default, LAMMPS runs by reading commands from standard input. Thus if you run the LAMMPS executable by itself, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_linux</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_linux +</pre> <p>it will simply wait, expecting commands from the keyboard. Typically you should put commands in an input script and use I/O redirection, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_linux</span> <span class="o"><</span> <span class="ow">in</span><span class="o">.</span><span class="n">file</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_linux < in.file +</pre> <p>For parallel environments this should also work. If it does not, use the ‘-in’ command-line switch, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_linux</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">file</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_linux -in in.file +</pre> <p><a class="reference internal" href="Section_commands.html"><span class="doc">This section</span></a> describes how input scripts are structured and what commands they contain.</p> <p>You can test LAMMPS on any of the sample inputs provided in the @@ -1210,13 +1210,13 @@ outputs are named log.*.name.P where name is a machine and P is the number of processors it was run on.</p> <p>Here is how you might run a standard Lennard-Jones benchmark on a Linux box, using mpirun to launch a parallel job:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="n">src</span> -<span class="n">make</span> <span class="n">linux</span> -<span class="n">cp</span> <span class="n">lmp_linux</span> <span class="o">../</span><span class="n">bench</span> -<span class="n">cd</span> <span class="o">../</span><span class="n">bench</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">4</span> <span class="n">lmp_linux</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> -</pre></div> -</div> +<pre class="literal-block"> +cd src +make linux +cp lmp_linux ../bench +cd ../bench +mpirun -np 4 lmp_linux -in in.lj +</pre> <p>See <a class="reference external" href="http://lammps.sandia.gov/bench.html">this page</a> for timings for this and the other benchmarks on various platforms. Note that some of the example scripts require LAMMPS to be built with one or more of its optional packages.</p> @@ -1256,7 +1256,7 @@ in.lj”, replacing in.lj with the name of your LAMMPS input script.</li> matter what you type).</li> <li>In this mode, output may not immediately show up on the screen, so if your input script takes a long time to execute, you may need to be -patient before the output shows up. :l Alternatively, you can still +patient before the output shows up. Alternatively, you can still use this executable to run on a single processor by typing something like: “lmp_win_mpi -in in.lj”.</li> </ul> @@ -1309,10 +1309,10 @@ letter abbreviation can be used:</p> <li>-v or -var</li> </ul> <p>For example, lmp_ibm might be launched as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">16</span> <span class="n">lmp_ibm</span> <span class="o">-</span><span class="n">v</span> <span class="n">f</span> <span class="n">tmp</span><span class="o">.</span><span class="n">out</span> <span class="o">-</span><span class="n">l</span> <span class="n">my</span><span class="o">.</span><span class="n">log</span> <span class="o">-</span><span class="n">sc</span> <span class="n">none</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">alloy</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">16</span> <span class="n">lmp_ibm</span> <span class="o">-</span><span class="n">var</span> <span class="n">f</span> <span class="n">tmp</span><span class="o">.</span><span class="n">out</span> <span class="o">-</span><span class="n">log</span> <span class="n">my</span><span class="o">.</span><span class="n">log</span> <span class="o">-</span><span class="n">screen</span> <span class="n">none</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">alloy</span> -</pre></div> -</div> +<pre class="literal-block"> +mpirun -np 16 lmp_ibm -v f tmp.out -l my.log -sc none -in in.alloy +mpirun -np 16 lmp_ibm -var f tmp.out -log my.log -screen none -in in.alloy +</pre> <p>Here are the details on the options:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">-</span><span class="n">echo</span> <span class="n">style</span> </pre></div> @@ -1395,11 +1395,11 @@ are intended for computational work like running LAMMPS. By default Ng = 1 and Ns is not set.</p> <p>Depending on which flavor of MPI you are running, LAMMPS will look for one of these 3 environment variables</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">SLURM_LOCALID</span> <span class="p">(</span><span class="n">various</span> <span class="n">MPI</span> <span class="n">variants</span> <span class="n">compiled</span> <span class="k">with</span> <span class="n">SLURM</span> <span class="n">support</span><span class="p">)</span> -<span class="n">MV2_COMM_WORLD_LOCAL_RANK</span> <span class="p">(</span><span class="n">Mvapich</span><span class="p">)</span> -<span class="n">OMPI_COMM_WORLD_LOCAL_RANK</span> <span class="p">(</span><span class="n">OpenMPI</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +SLURM_LOCALID (various MPI variants compiled with SLURM support) +MV2_COMM_WORLD_LOCAL_RANK (Mvapich) +OMPI_COMM_WORLD_LOCAL_RANK (OpenMPI) +</pre> <p>which are initialized by the “srun”, “mpirun” or “mpiexec” commands. The environment variable setting for each MPI rank is used to assign a unique GPU ID to the MPI task.</p> diff --git a/doc/html/Section_tools.html b/doc/html/Section_tools.html index 285debd48d..0e3948b6a0 100644 --- a/doc/html/Section_tools.html +++ b/doc/html/Section_tools.html @@ -218,7 +218,7 @@ own sub-directories with their own Makefiles.</p> <li><a class="reference internal" href="#polybond"><span class="std std-ref">polymer bonding</span></a></li> <li><span class="xref std std-ref">pymol_asphere</span></li> <li><a class="reference internal" href="#pythontools"><span class="std std-ref">python</span></a></li> -<li><a class="reference internal" href="#reax"><span class="std std-ref">reax</span></a></li> +<li><a class="reference internal" href="#reax-tool"><span class="std std-ref">reax</span></a></li> <li><a class="reference internal" href="#restart"><span class="std std-ref">restart2data</span></a></li> <li><a class="reference internal" href="#vim"><span class="std std-ref">vim</span></a></li> <li><a class="reference internal" href="#xmgrace"><span class="std std-ref">xmgrace</span></a></li> @@ -289,9 +289,9 @@ at: <a class="reference external" href="https://github.com/colvars/colvars/issue <p>abf_integrate:</p> <p>MC-based integration of multidimensional free energy gradient Version 20110511</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Syntax</span><span class="p">:</span> <span class="o">./</span><span class="n">abf_integrate</span> <span class="o"><</span> <span class="n">filename</span> <span class="o">></span> <span class="p">[</span><span class="o">-</span><span class="n">n</span> <span class="o"><</span> <span class="n">nsteps</span> <span class="o">></span><span class="p">]</span> <span class="p">[</span><span class="o">-</span><span class="n">t</span> <span class="o"><</span> <span class="n">temp</span> <span class="o">></span><span class="p">]</span> <span class="p">[</span><span class="o">-</span><span class="n">m</span> <span class="p">[</span><span class="mi">0</span><span class="o">|</span><span class="mi">1</span><span class="p">]</span> <span class="p">(</span><span class="n">metadynamics</span><span class="p">)]</span> <span class="p">[</span><span class="o">-</span><span class="n">h</span> <span class="o"><</span> <span class="n">hill_height</span> <span class="o">></span><span class="p">]</span> <span class="p">[</span><span class="o">-</span><span class="n">f</span> <span class="o"><</span> <span class="n">variable_hill_factor</span> <span class="o">></span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +Syntax: ./abf_integrate < filename > [-n < nsteps >] [-t < temp >] [-m [0|1] (metadynamics)] [-h < hill_height >] [-f < variable_hill_factor >] +</pre> <p>The LAMMPS interface to the colvars collective variable library, as well as these tools, were created by Axel Kohlmeyer (akohlmey at gmail.com) at ICTP, Italy.</p> @@ -419,7 +419,7 @@ Greathouse at Sandia (jagreat at sandia.gov).</p> <div class="section" id="lmp2cfg-tool"> <span id="cfg"></span><h2>9.17. lmp2cfg tool</h2> <p>The lmp2cfg sub-directory contains a tool for converting LAMMPS output -files into a series of <a href="#id1"><span class="problematic" id="id2">*</span></a>.cfg files which can be read into the +files into a series of *.cfg files which can be read into the <a class="reference external" href="http://mt.seas.upenn.edu/Archive/Graphics/A">AtomEye</a> visualizer. See the README file for more information.</p> <p>This tool was written by Ara Kooser at Sandia (askoose at sandia.gov).</p> @@ -538,7 +538,7 @@ README for more info on Pizza.py and how to use these scripts.</p> <hr class="docutils" /> </div> <div class="section" id="reax-tool"> -<span id="reax"></span><h2>9.27. reax tool</h2> +<span id="id4"></span><h2>9.27. reax tool</h2> <p>The reax sub-directory contains stand-alond codes that can post-process the output of the <a class="reference internal" href="fix_reax_bonds.html"><span class="doc">fix reax/bonds</span></a> command from a LAMMPS simulation using <a class="reference internal" href="pair_reax.html"><span class="doc">ReaxFF</span></a>. See diff --git a/doc/html/accelerate_gpu.html b/doc/html/accelerate_gpu.html index b4fc73c25e..33e9cc6d76 100644 --- a/doc/html/accelerate_gpu.html +++ b/doc/html/accelerate_gpu.html @@ -202,11 +202,11 @@ attention to 3 settings in this makefile.</p> <p>See lib/gpu/Makefile.linux.double for examples of the ARCH settings for different GPU choices, e.g. Fermi vs Kepler. It also lists the possible precision settings:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">CUDA_PREC</span> <span class="o">=</span> <span class="o">-</span><span class="n">D_SINGLE_SINGLE</span> <span class="c1"># single precision for all calculations</span> -<span class="n">CUDA_PREC</span> <span class="o">=</span> <span class="o">-</span><span class="n">D_DOUBLE_DOUBLE</span> <span class="c1"># double precision for all calculations</span> -<span class="n">CUDA_PREC</span> <span class="o">=</span> <span class="o">-</span><span class="n">D_SINGLE_DOUBLE</span> <span class="c1"># accumulation of forces, etc, in double</span> -</pre></div> -</div> +<pre class="literal-block"> +CUDA_PREC = -D_SINGLE_SINGLE # single precision for all calculations +CUDA_PREC = -D_DOUBLE_DOUBLE # double precision for all calculations +CUDA_PREC = -D_SINGLE_DOUBLE # accumulation of forces, etc, in double +</pre> <p>The last setting is the mixed mode referred to above. Note that your GPU must support double precision to use either the 2nd or 3rd of these settings.</p> @@ -253,11 +253,11 @@ shared by 4 MPI tasks.</p> which will automatically append “gpu” to styles that support it. Use the “-pk gpu Ng” <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">command-line switch</span></a> to set Ng = # of GPUs/node to use.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_machine</span> <span class="o">-</span><span class="n">sf</span> <span class="n">gpu</span> <span class="o">-</span><span class="n">pk</span> <span class="n">gpu</span> <span class="mi">1</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="c1"># 1 MPI task uses 1 GPU</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">12</span> <span class="n">lmp_machine</span> <span class="o">-</span><span class="n">sf</span> <span class="n">gpu</span> <span class="o">-</span><span class="n">pk</span> <span class="n">gpu</span> <span class="mi">2</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="c1"># 12 MPI tasks share 2 GPUs on a single 16-core (or whatever) node</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">48</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">12</span> <span class="n">lmp_machine</span> <span class="o">-</span><span class="n">sf</span> <span class="n">gpu</span> <span class="o">-</span><span class="n">pk</span> <span class="n">gpu</span> <span class="mi">2</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="c1"># ditto on 4 16-core nodes</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_machine -sf gpu -pk gpu 1 -in in.script # 1 MPI task uses 1 GPU +mpirun -np 12 lmp_machine -sf gpu -pk gpu 2 -in in.script # 12 MPI tasks share 2 GPUs on a single 16-core (or whatever) node +mpirun -np 48 -ppn 12 lmp_machine -sf gpu -pk gpu 2 -in in.script # ditto on 4 16-core nodes +</pre> <p>Note that if the “-sf gpu” switch is used, it also issues a default <a class="reference internal" href="package.html"><span class="doc">package gpu 1</span></a> command, which sets the number of GPUs/node to 1.</p> @@ -276,9 +276,9 @@ GPU package pair styles.</p> and use of multiple MPI tasks/GPU is the same.</p> <p>Use the <a class="reference internal" href="suffix.html"><span class="doc">suffix gpu</span></a> command, or you can explicitly add an “gpu” suffix to individual styles in your input script, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">gpu</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut/gpu 2.5 +</pre> <p>You must also use the <a class="reference internal" href="package.html"><span class="doc">package gpu</span></a> command to enable the GPU package, unless the “-sf gpu” or “-pk gpu” <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">command-line switches</span></a> were used. It specifies the number of GPUs/node to use, as well as other options.</p> diff --git a/doc/html/accelerate_intel.html b/doc/html/accelerate_intel.html index ad8f8560d4..cc1a7a68b6 100644 --- a/doc/html/accelerate_intel.html +++ b/doc/html/accelerate_intel.html @@ -268,30 +268,30 @@ this information can normally be obtained with:</p> </div> <p>Several example Makefiles for building with the Intel compiler are included with LAMMPS in the src/MAKE/OPTIONS/ directory:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Makefile</span><span class="o">.</span><span class="n">intel_cpu_intelmpi</span> <span class="c1"># Intel Compiler, Intel MPI, No Offload</span> -<span class="n">Makefile</span><span class="o">.</span><span class="n">knl</span> <span class="c1"># Intel Compiler, Intel MPI, No Offload</span> -<span class="n">Makefile</span><span class="o">.</span><span class="n">intel_cpu_mpich</span> <span class="c1"># Intel Compiler, MPICH, No Offload</span> -<span class="n">Makefile</span><span class="o">.</span><span class="n">intel_cpu_openpmi</span> <span class="c1"># Intel Compiler, OpenMPI, No Offload</span> -<span class="n">Makefile</span><span class="o">.</span><span class="n">intel_coprocessor</span> <span class="c1"># Intel Compiler, Intel MPI, Offload</span> -</pre></div> -</div> +<pre class="literal-block"> +Makefile.intel_cpu_intelmpi # Intel Compiler, Intel MPI, No Offload +Makefile.knl # Intel Compiler, Intel MPI, No Offload +Makefile.intel_cpu_mpich # Intel Compiler, MPICH, No Offload +Makefile.intel_cpu_openpmi # Intel Compiler, OpenMPI, No Offload +Makefile.intel_coprocessor # Intel Compiler, Intel MPI, Offload +</pre> <p>Makefile.knl is identical to Makefile.intel_cpu_intelmpi except that it explicitly specifies that vectorization should be for Intel Xeon Phi x200 processors making it easier to cross-compile. For users with recent installations of Intel Parallel Studio, the process can be as simple as:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">make</span> <span class="n">yes</span><span class="o">-</span><span class="n">user</span><span class="o">-</span><span class="n">intel</span> -<span class="n">source</span> <span class="o">/</span><span class="n">opt</span><span class="o">/</span><span class="n">intel</span><span class="o">/</span><span class="n">parallel_studio_xe_2016</span><span class="o">.</span><span class="mf">3.067</span><span class="o">/</span><span class="n">psxevars</span><span class="o">.</span><span class="n">sh</span> -<span class="c1"># or psxevars.csh for C-shell</span> -<span class="n">make</span> <span class="n">intel_cpu_intelmpi</span> -</pre></div> -</div> +<pre class="literal-block"> +make yes-user-intel +source /opt/intel/parallel_studio_xe_2016.3.067/psxevars.sh +# or psxevars.csh for C-shell +make intel_cpu_intelmpi +</pre> <p>Alternatively, the build can be accomplished with the src/Make.py script, described in <a class="reference internal" href="Section_start.html#start-4"><span class="std std-ref">Section 2.4</span></a> of the manual. Type “Make.py -h” for help. For an example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">v</span> <span class="o">-</span><span class="n">p</span> <span class="n">intel</span> <span class="n">omp</span> <span class="o">-</span><span class="n">intel</span> <span class="n">cpu</span> <span class="o">-</span><span class="n">a</span> <span class="n">file</span> <span class="n">intel_cpu_intelmpi</span> -</pre></div> -</div> +<pre class="literal-block"> +Make.py -v -p intel omp -intel cpu -a file intel_cpu_intelmpi +</pre> <p>Note that if you build with support for a Phi coprocessor, the same binary can be used on nodes with or without coprocessors installed. However, if you do not have coprocessors on your system, building @@ -385,10 +385,10 @@ set the number of OpenMP threads via the OMP_NUM_THREADS environment variable if desired.</p> <p>Examples (see documentation for your MPI/Machine for differences in launching MPI applications):</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">72</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">36</span> <span class="n">lmp_machine</span> <span class="o">-</span><span class="n">sf</span> <span class="n">intel</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="c1"># 2 nodes, 36 MPI tasks/node, $OMP_NUM_THREADS OpenMP Threads</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">72</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">36</span> <span class="n">lmp_machine</span> <span class="o">-</span><span class="n">sf</span> <span class="n">intel</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="o">-</span><span class="n">pk</span> <span class="n">intel</span> <span class="mi">0</span> <span class="n">omp</span> <span class="mi">2</span> <span class="n">mode</span> <span class="n">double</span> <span class="c1"># Don't use any coprocessors that might be available, use 2 OpenMP threads for each task, use double precision</span> -</pre></div> -</div> +<pre class="literal-block"> +mpirun -np 72 -ppn 36 lmp_machine -sf intel -in in.script # 2 nodes, 36 MPI tasks/node, $OMP_NUM_THREADS OpenMP Threads +mpirun -np 72 -ppn 36 lmp_machine -sf intel -in in.script -pk intel 0 omp 2 mode double # Don't use any coprocessors that might be available, use 2 OpenMP threads for each task, use double precision +</pre> <p><strong>Or run with the USER-INTEL package by editing an input script:</strong></p> <p>As an alternative to adding command-line arguments, the input script can be edited to enable the USER-INTEL package. This requires adding @@ -399,9 +399,9 @@ script. For the second example above, this would be:</p> </div> <p>To enable the USER-INTEL package only for individual styles, you can add an “intel” suffix to the individual style, e.g.:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">intel</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut/intel 2.5 +</pre> <p>Alternatively, the <a class="reference internal" href="suffix.html"><span class="doc">suffix intel</span></a> command can be added to the input script to enable USER-INTEL styles for the commands that follow in the input script.</p> diff --git a/doc/html/accelerate_kokkos.html b/doc/html/accelerate_kokkos.html index e517e0e2c5..c592745bea 100644 --- a/doc/html/accelerate_kokkos.html +++ b/doc/html/accelerate_kokkos.html @@ -166,19 +166,19 @@ produce an executable compatible with specific hardware.</p> <p>Here is a quick overview of how to use the KOKKOS package for CPU acceleration, assuming one or more 16-core nodes. More details follow.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">use</span> <span class="n">a</span> <span class="n">C</span><span class="o">++</span><span class="mi">11</span> <span class="n">compatible</span> <span class="n">compiler</span> -<span class="n">make</span> <span class="n">yes</span><span class="o">-</span><span class="n">kokkos</span> -<span class="n">make</span> <span class="n">mpi</span> <span class="n">KOKKOS_DEVICES</span><span class="o">=</span><span class="n">OpenMP</span> <span class="c1"># build with the KOKKOS package</span> -<span class="n">make</span> <span class="n">kokkos_omp</span> <span class="c1"># or Makefile.kokkos_omp already has variable set</span> -<span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">v</span> <span class="o">-</span><span class="n">p</span> <span class="n">kokkos</span> <span class="o">-</span><span class="n">kokkos</span> <span class="n">omp</span> <span class="o">-</span><span class="n">o</span> <span class="n">mpi</span> <span class="o">-</span><span class="n">a</span> <span class="n">file</span> <span class="n">mpi</span> <span class="c1"># or one-line build via Make.py</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">16</span> <span class="n">lmp_mpi</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># 1 node, 16 MPI tasks/node, no threads</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">2</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">1</span> <span class="n">lmp_mpi</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">16</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># 2 nodes, 1 MPI task/node, 16 threads/task</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">2</span> <span class="n">lmp_mpi</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">8</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># 1 node, 2 MPI tasks/node, 8 threads/task</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">32</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">4</span> <span class="n">lmp_mpi</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">4</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># 8 nodes, 4 MPI tasks/node, 4 threads/task</span> -</pre></div> -</div> +<pre class="literal-block"> +use a C++11 compatible compiler +make yes-kokkos +make mpi KOKKOS_DEVICES=OpenMP # build with the KOKKOS package +make kokkos_omp # or Makefile.kokkos_omp already has variable set +Make.py -v -p kokkos -kokkos omp -o mpi -a file mpi # or one-line build via Make.py +</pre> +<pre class="literal-block"> +mpirun -np 16 lmp_mpi -k on -sf kk -in in.lj # 1 node, 16 MPI tasks/node, no threads +mpirun -np 2 -ppn 1 lmp_mpi -k on t 16 -sf kk -in in.lj # 2 nodes, 1 MPI task/node, 16 threads/task +mpirun -np 2 lmp_mpi -k on t 8 -sf kk -in in.lj # 1 node, 2 MPI tasks/node, 8 threads/task +mpirun -np 32 -ppn 4 lmp_mpi -k on t 4 -sf kk -in in.lj # 8 nodes, 4 MPI tasks/node, 4 threads/task +</pre> <ul class="simple"> <li>specify variables and settings in your Makefile.machine that enable OpenMP, GPU, or Phi support</li> <li>include the KOKKOS package and build LAMMPS</li> @@ -188,39 +188,39 @@ More details follow.</p> assuming one or more nodes, each with 16 cores and a GPU. More details follow.</p> <p>discuss use of NVCC, which Makefiles to examine</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">use</span> <span class="n">a</span> <span class="n">C</span><span class="o">++</span><span class="mi">11</span> <span class="n">compatible</span> <span class="n">compiler</span> -<span class="n">KOKKOS_DEVICES</span> <span class="o">=</span> <span class="n">Cuda</span><span class="p">,</span> <span class="n">OpenMP</span> -<span class="n">KOKKOS_ARCH</span> <span class="o">=</span> <span class="n">Kepler35</span> -<span class="n">make</span> <span class="n">yes</span><span class="o">-</span><span class="n">kokkos</span> -<span class="n">make</span> <span class="n">machine</span> -<span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="n">kokkos</span> <span class="o">-</span><span class="n">kokkos</span> <span class="n">cuda</span> <span class="n">arch</span><span class="o">=</span><span class="mi">31</span> <span class="o">-</span><span class="n">o</span> <span class="n">kokkos_cuda</span> <span class="o">-</span><span class="n">a</span> <span class="n">file</span> <span class="n">kokkos_cuda</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">1</span> <span class="n">lmp_cuda</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">6</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># one MPI task, 6 threads on CPU</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">4</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">1</span> <span class="n">lmp_cuda</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">6</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># ditto on 4 nodes</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">2</span> <span class="n">lmp_cuda</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">8</span> <span class="n">g</span> <span class="mi">2</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># two MPI tasks, 8 threads per CPU</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">32</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">2</span> <span class="n">lmp_cuda</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">8</span> <span class="n">g</span> <span class="mi">2</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># ditto on 16 nodes</span> -</pre></div> -</div> +<pre class="literal-block"> +use a C++11 compatible compiler +KOKKOS_DEVICES = Cuda, OpenMP +KOKKOS_ARCH = Kepler35 +make yes-kokkos +make machine +Make.py -p kokkos -kokkos cuda arch=31 -o kokkos_cuda -a file kokkos_cuda +</pre> +<pre class="literal-block"> +mpirun -np 1 lmp_cuda -k on t 6 -sf kk -in in.lj # one MPI task, 6 threads on CPU +mpirun -np 4 -ppn 1 lmp_cuda -k on t 6 -sf kk -in in.lj # ditto on 4 nodes +</pre> +<pre class="literal-block"> +mpirun -np 2 lmp_cuda -k on t 8 g 2 -sf kk -in in.lj # two MPI tasks, 8 threads per CPU +mpirun -np 32 -ppn 2 lmp_cuda -k on t 8 g 2 -sf kk -in in.lj # ditto on 16 nodes +</pre> <p>Here is a quick overview of how to use the KOKKOS package for the Intel Phi:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">use</span> <span class="n">a</span> <span class="n">C</span><span class="o">++</span><span class="mi">11</span> <span class="n">compatible</span> <span class="n">compiler</span> -<span class="n">KOKKOS_DEVICES</span> <span class="o">=</span> <span class="n">OpenMP</span> -<span class="n">KOKKOS_ARCH</span> <span class="o">=</span> <span class="n">KNC</span> -<span class="n">make</span> <span class="n">yes</span><span class="o">-</span><span class="n">kokkos</span> -<span class="n">make</span> <span class="n">machine</span> -<span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">p</span> <span class="n">kokkos</span> <span class="o">-</span><span class="n">kokkos</span> <span class="n">phi</span> <span class="o">-</span><span class="n">o</span> <span class="n">kokkos_phi</span> <span class="o">-</span><span class="n">a</span> <span class="n">file</span> <span class="n">mpi</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">host</span><span class="o">=</span><span class="n">MIC</span><span class="p">,</span> <span class="n">Intel</span> <span class="n">Phi</span> <span class="k">with</span> <span class="mi">61</span> <span class="n">cores</span> <span class="p">(</span><span class="mi">240</span> <span class="n">threads</span><span class="o">/</span><span class="n">phi</span> <span class="n">via</span> <span class="mi">4</span><span class="n">x</span> <span class="n">hardware</span> <span class="n">threading</span><span class="p">):</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">1</span> <span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">240</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># 1 MPI task on 1 Phi, 1*240 = 240</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">30</span> <span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">8</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># 30 MPI tasks on 1 Phi, 30*8 = 240</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">12</span> <span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">20</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># 12 MPI tasks on 1 Phi, 12*20 = 240</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">96</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">12</span> <span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="n">k</span> <span class="n">on</span> <span class="n">t</span> <span class="mi">20</span> <span class="o">-</span><span class="n">sf</span> <span class="n">kk</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">lj</span> <span class="c1"># ditto on 8 Phis</span> -</pre></div> -</div> +<pre class="literal-block"> +use a C++11 compatible compiler +KOKKOS_DEVICES = OpenMP +KOKKOS_ARCH = KNC +make yes-kokkos +make machine +Make.py -p kokkos -kokkos phi -o kokkos_phi -a file mpi +</pre> +<pre class="literal-block"> +host=MIC, Intel Phi with 61 cores (240 threads/phi via 4x hardware threading): +mpirun -np 1 lmp_g++ -k on t 240 -sf kk -in in.lj # 1 MPI task on 1 Phi, 1*240 = 240 +mpirun -np 30 lmp_g++ -k on t 8 -sf kk -in in.lj # 30 MPI tasks on 1 Phi, 30*8 = 240 +mpirun -np 12 lmp_g++ -k on t 20 -sf kk -in in.lj # 12 MPI tasks on 1 Phi, 12*20 = 240 +mpirun -np 96 -ppn 12 lmp_g++ -k on t 20 -sf kk -in in.lj # ditto on 8 Phis +</pre> <p><strong>Required hardware/software:</strong></p> <p>Kokkos support within LAMMPS must be built with a C++11 compatible compiler. If using gcc, version 4.8.1 or later is required.</p> @@ -257,40 +257,40 @@ respectively. Or the effect of the “-pk” or “-sf” switc duplicated by adding the <a class="reference internal" href="package.html"><span class="doc">package kokkos</span></a> or <a class="reference internal" href="suffix.html"><span class="doc">suffix kk</span></a> commands respectively to your input script.</p> <p>Or you can follow these steps:</p> <p>CPU-only (run all-MPI or with OpenMP threading):</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="n">lammps</span><span class="o">/</span><span class="n">src</span> -<span class="n">make</span> <span class="n">yes</span><span class="o">-</span><span class="n">kokkos</span> -<span class="n">make</span> <span class="n">g</span><span class="o">++</span> <span class="n">KOKKOS_DEVICES</span><span class="o">=</span><span class="n">OpenMP</span> -</pre></div> -</div> +<pre class="literal-block"> +cd lammps/src +make yes-kokkos +make g++ KOKKOS_DEVICES=OpenMP +</pre> <p>Intel Xeon Phi:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="n">lammps</span><span class="o">/</span><span class="n">src</span> -<span class="n">make</span> <span class="n">yes</span><span class="o">-</span><span class="n">kokkos</span> -<span class="n">make</span> <span class="n">g</span><span class="o">++</span> <span class="n">KOKKOS_DEVICES</span><span class="o">=</span><span class="n">OpenMP</span> <span class="n">KOKKOS_ARCH</span><span class="o">=</span><span class="n">KNC</span> -</pre></div> -</div> +<pre class="literal-block"> +cd lammps/src +make yes-kokkos +make g++ KOKKOS_DEVICES=OpenMP KOKKOS_ARCH=KNC +</pre> <p>CPUs and GPUs:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">cd</span> <span class="n">lammps</span><span class="o">/</span><span class="n">src</span> -<span class="n">make</span> <span class="n">yes</span><span class="o">-</span><span class="n">kokkos</span> -<span class="n">make</span> <span class="n">cuda</span> <span class="n">KOKKOS_DEVICES</span><span class="o">=</span><span class="n">Cuda</span> -</pre></div> -</div> +<pre class="literal-block"> +cd lammps/src +make yes-kokkos +make cuda KOKKOS_DEVICES=Cuda +</pre> <p>These examples set the KOKKOS-specific OMP, MIC, CUDA variables on the make command line which requires a GNU-compatible make command. Try “gmake” if your system’s standard make complains.</p> <div class="admonition note"> <p class="first admonition-title">Note</p> <p class="last">If you build using make line variables and re-build LAMMPS twice -with different KOKKOS options and the <em>same</em> target, e.g. g++ in the -first two examples above, then you <em>must</em> perform a “make clean-all” +with different KOKKOS options and the *same* target, e.g. g++ in the +first two examples above, then you *must* perform a “make clean-all” or “make clean-machine” before each build. This is to force all the KOKKOS-dependent files to be re-compiled with the new options.</p> </div> <p>You can also hardwire these make variables in the specified machine makefile, e.g. src/MAKE/Makefile.g++ in the first two examples above, with a line like:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">KOKKOS_ARCH</span> <span class="o">=</span> <span class="n">KNC</span> -</pre></div> -</div> +<pre class="literal-block"> +KOKKOS_ARCH = KNC +</pre> <p>Note that if you build LAMMPS multiple times in this manner, using different KOKKOS options (defined in different machine makefiles), you do not have to worry about doing a “clean” in between. This is @@ -342,7 +342,7 @@ with compute capability 3.x. For the LINK setting, “nvcc” should no be used; instead use g++ or another compiler suitable for linking C++ applications. Often you will want to use your MPI compiler wrapper for this setting (i.e. mpicxx). Finally, the lo-level Makefile must -also have a “Compilation rule” for creating <a href="#id1"><span class="problematic" id="id2">*</span></a>.o files from <a href="#id3"><span class="problematic" id="id4">*</span></a>.cu files. +also have a “Compilation rule” for creating *.o files from *.cu files. See src/Makefile.cuda for an example of a lo-level Makefile with all of these settings.</p> <p>KOKKOS_USE_TPLS=hwloc binds threads to hardware cores, so they do not @@ -430,9 +430,9 @@ specify its additional arguments for hardware options appopriate to your system, as documented above.</p> <p>Use the <a class="reference internal" href="suffix.html"><span class="doc">suffix kk</span></a> command, or you can explicitly add a “kk” suffix to individual styles in your input script, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">kk</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut/kk 2.5 +</pre> <p>You only need to use the <a class="reference internal" href="package.html"><span class="doc">package kokkos</span></a> command if you wish to change any of its option defaults, as set by the “-k on” <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">command-line switch</span></a>.</p> @@ -483,10 +483,10 @@ performance to bind both MPI tasks to physical cores, and threads to physical cores, so they do not migrate during a simulation.</p> <p>If you are not certain MPI tasks are being bound (check the defaults for your MPI installation), binding can be forced with these flags:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">OpenMPI</span> <span class="mf">1.8</span><span class="p">:</span> <span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">2</span> <span class="o">-</span><span class="n">bind</span><span class="o">-</span><span class="n">to</span> <span class="n">socket</span> <span class="o">-</span><span class="nb">map</span><span class="o">-</span><span class="n">by</span> <span class="n">socket</span> <span class="o">./</span><span class="n">lmp_openmpi</span> <span class="o">...</span> -<span class="n">Mvapich2</span> <span class="mf">2.0</span><span class="p">:</span> <span class="n">mpiexec</span> <span class="o">-</span><span class="n">np</span> <span class="mi">2</span> <span class="o">-</span><span class="n">bind</span><span class="o">-</span><span class="n">to</span> <span class="n">socket</span> <span class="o">-</span><span class="nb">map</span><span class="o">-</span><span class="n">by</span> <span class="n">socket</span> <span class="o">./</span><span class="n">lmp_mvapich</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +OpenMPI 1.8: mpirun -np 2 -bind-to socket -map-by socket ./lmp_openmpi ... +Mvapich2 2.0: mpiexec -np 2 -bind-to socket -map-by socket ./lmp_mvapich ... +</pre> <p>For binding threads with the KOKKOS OMP option, use thread affinity environment variables to force binding. With OpenMP 3.1 (gcc 4.7 or later, intel 12 or later) setting the environment variable diff --git a/doc/html/accelerate_omp.html b/doc/html/accelerate_omp.html index b77f59e8cd..8409d38821 100644 --- a/doc/html/accelerate_omp.html +++ b/doc/html/accelerate_omp.html @@ -141,11 +141,11 @@ one or more 16-core nodes. More details follow.</p> <span class="n">Make</span><span class="o">.</span><span class="n">py</span> <span class="o">-</span><span class="n">v</span> <span class="o">-</span><span class="n">p</span> <span class="n">omp</span> <span class="o">-</span><span class="n">o</span> <span class="n">mpi</span> <span class="o">-</span><span class="n">a</span> <span class="n">file</span> <span class="n">mpi</span> <span class="c1"># or one-line build via Make.py</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_mpi</span> <span class="o">-</span><span class="n">sf</span> <span class="n">omp</span> <span class="o">-</span><span class="n">pk</span> <span class="n">omp</span> <span class="mi">16</span> <span class="o"><</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="c1"># 1 MPI task, 16 threads</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">4</span> <span class="n">lmp_mpi</span> <span class="o">-</span><span class="n">sf</span> <span class="n">omp</span> <span class="o">-</span><span class="n">pk</span> <span class="n">omp</span> <span class="mi">4</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="c1"># 4 MPI tasks, 4 threads/task</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">32</span> <span class="o">-</span><span class="n">ppn</span> <span class="mi">4</span> <span class="n">lmp_mpi</span> <span class="o">-</span><span class="n">sf</span> <span class="n">omp</span> <span class="o">-</span><span class="n">pk</span> <span class="n">omp</span> <span class="mi">4</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="c1"># 8 nodes, 4 MPI tasks/node, 4 threads/task</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_mpi -sf omp -pk omp 16 < in.script # 1 MPI task, 16 threads +mpirun -np 4 lmp_mpi -sf omp -pk omp 4 -in in.script # 4 MPI tasks, 4 threads/task +mpirun -np 32 -ppn 4 lmp_mpi -sf omp -pk omp 4 -in in.script # 8 nodes, 4 MPI tasks/node, 4 threads/task +</pre> <p><strong>Required hardware/software:</strong></p> <p>Your compiler must support the OpenMP interface. You should have one or more multi-core CPUs so that multiple threads can be launched by @@ -184,9 +184,9 @@ threads via the OMP_NUM_THREADS environment variable.</p> and threads/MPI task is the same.</p> <p>Use the <a class="reference internal" href="suffix.html"><span class="doc">suffix omp</span></a> command, or you can explicitly add an “omp” suffix to individual styles in your input script, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">omp</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut/omp 2.5 +</pre> <p>You must also use the <a class="reference internal" href="package.html"><span class="doc">package omp</span></a> command to enable the USER-OMP package. When you do this you also specify how many threads per MPI task to use. The command doc page explains other options and diff --git a/doc/html/angle_charmm.html b/doc/html/angle_charmm.html index df9e20c662..3d6bb4e8cd 100644 --- a/doc/html/angle_charmm.html +++ b/doc/html/angle_charmm.html @@ -137,16 +137,16 @@ <h1>angle_style charmm/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">charmm</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style charmm +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">charmm</span> -<span class="n">angle_coeff</span> <span class="mi">1</span> <span class="mf">300.0</span> <span class="mf">107.0</span> <span class="mf">50.0</span> <span class="mf">3.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style charmm +angle_coeff 1 300.0 107.0 50.0 3.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_class2.html b/doc/html/angle_class2.html index 1977415a6d..1b800d6c0d 100644 --- a/doc/html/angle_class2.html +++ b/doc/html/angle_class2.html @@ -131,18 +131,18 @@ <h1>angle_style class2/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">class2</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style class2 +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">class2</span> -<span class="n">angle_coeff</span> <span class="o">*</span> <span class="mf">75.0</span> -<span class="n">angle_coeff</span> <span class="mi">1</span> <span class="n">bb</span> <span class="mf">10.5872</span> <span class="mf">1.0119</span> <span class="mf">1.5228</span> -<span class="n">angle_coeff</span> <span class="o">*</span> <span class="n">ba</span> <span class="mf">3.6551</span> <span class="mf">24.895</span> <span class="mf">1.0119</span> <span class="mf">1.5228</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style class2 +angle_coeff * 75.0 +angle_coeff 1 bb 10.5872 1.0119 1.5228 +angle_coeff * ba 3.6551 24.895 1.0119 1.5228 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_cosine.html b/doc/html/angle_cosine.html index ef3eba806d..6876620bb5 100644 --- a/doc/html/angle_cosine.html +++ b/doc/html/angle_cosine.html @@ -131,16 +131,16 @@ <h1>angle_style cosine/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span> -<span class="n">angle_coeff</span> <span class="o">*</span> <span class="mf">75.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine +angle_coeff * 75.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_cosine_delta.html b/doc/html/angle_cosine_delta.html index e3dedd0a2b..fda0b0a0a5 100644 --- a/doc/html/angle_cosine_delta.html +++ b/doc/html/angle_cosine_delta.html @@ -131,16 +131,16 @@ <h1>angle_style cosine/delta/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">delta</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/delta +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">delta</span> -<span class="n">angle_coeff</span> <span class="mi">2</span><span class="o">*</span><span class="mi">4</span> <span class="mf">75.0</span> <span class="mf">100.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/delta +angle_coeff 2*4 75.0 100.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_cosine_periodic.html b/doc/html/angle_cosine_periodic.html index 8a358d76d2..9851cea9d4 100644 --- a/doc/html/angle_cosine_periodic.html +++ b/doc/html/angle_cosine_periodic.html @@ -131,16 +131,16 @@ <h1>angle_style cosine/periodic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">periodic</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/periodic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">periodic</span> -<span class="n">angle_coeff</span> <span class="o">*</span> <span class="mf">75.0</span> <span class="mi">1</span> <span class="mi">6</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/periodic +angle_coeff * 75.0 1 6 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_cosine_shift.html b/doc/html/angle_cosine_shift.html index d9c19717bc..76d4b6dcb4 100644 --- a/doc/html/angle_cosine_shift.html +++ b/doc/html/angle_cosine_shift.html @@ -131,16 +131,16 @@ <h1>angle_style cosine/shift/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">shift</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/shift +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">shift</span> -<span class="n">angle_coeff</span> <span class="o">*</span> <span class="mf">10.0</span> <span class="mf">45.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/shift +angle_coeff * 10.0 45.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_cosine_shift_exp.html b/doc/html/angle_cosine_shift_exp.html index 60dcbf1a2d..2bb957b561 100644 --- a/doc/html/angle_cosine_shift_exp.html +++ b/doc/html/angle_cosine_shift_exp.html @@ -131,16 +131,16 @@ <h1>angle_style cosine/shift/exp/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">shift</span><span class="o">/</span><span class="n">exp</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/shift/exp +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">shift</span><span class="o">/</span><span class="n">exp</span> -<span class="n">angle_coeff</span> <span class="o">*</span> <span class="mf">10.0</span> <span class="mf">45.0</span> <span class="mf">2.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/shift/exp +angle_coeff * 10.0 45.0 2.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_cosine_squared.html b/doc/html/angle_cosine_squared.html index 2797e23fda..e7f0d49193 100644 --- a/doc/html/angle_cosine_squared.html +++ b/doc/html/angle_cosine_squared.html @@ -131,16 +131,16 @@ <h1>angle_style cosine/squared/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">squared</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/squared +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">squared</span> -<span class="n">angle_coeff</span> <span class="mi">2</span><span class="o">*</span><span class="mi">4</span> <span class="mf">75.0</span> <span class="mf">100.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style cosine/squared +angle_coeff 2*4 75.0 100.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_dipole.html b/doc/html/angle_dipole.html index 92fec1da89..13f560db0e 100644 --- a/doc/html/angle_dipole.html +++ b/doc/html/angle_dipole.html @@ -131,16 +131,16 @@ <h1>angle_style dipole/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">dipole</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style dipole +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">dipole</span> -<span class="n">angle_coeff</span> <span class="mi">6</span> <span class="mf">2.1</span> <span class="mf">180.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style dipole +angle_coeff 6 2.1 180.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_fourier.html b/doc/html/angle_fourier.html index ea480d563e..c49686daf1 100644 --- a/doc/html/angle_fourier.html +++ b/doc/html/angle_fourier.html @@ -131,9 +131,9 @@ <h1>angle_style fourier/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">fourier</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style fourier +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> diff --git a/doc/html/angle_fourier_simple.html b/doc/html/angle_fourier_simple.html index fb8db727a9..91c3ac4eeb 100644 --- a/doc/html/angle_fourier_simple.html +++ b/doc/html/angle_fourier_simple.html @@ -131,9 +131,9 @@ <h1>angle_style fourier/simple/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">fourier</span><span class="o">/</span><span class="n">simple</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style fourier/simple +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> diff --git a/doc/html/angle_harmonic.html b/doc/html/angle_harmonic.html index 8a15d8a8d6..403ca622ca 100644 --- a/doc/html/angle_harmonic.html +++ b/doc/html/angle_harmonic.html @@ -137,16 +137,16 @@ <h1>angle_style harmonic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">harmonic</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style harmonic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">harmonic</span> -<span class="n">angle_coeff</span> <span class="mi">1</span> <span class="mf">300.0</span> <span class="mf">107.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style harmonic +angle_coeff 1 300.0 107.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_quartic.html b/doc/html/angle_quartic.html index 3cd4e9b3ca..4134601496 100644 --- a/doc/html/angle_quartic.html +++ b/doc/html/angle_quartic.html @@ -131,16 +131,16 @@ <h1>angle_style quartic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">quartic</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style quartic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">quartic</span> -<span class="n">angle_coeff</span> <span class="mi">1</span> <span class="mf">129.1948</span> <span class="mf">56.8726</span> <span class="o">-</span><span class="mf">25.9442</span> <span class="o">-</span><span class="mf">14.2221</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style quartic +angle_coeff 1 129.1948 56.8726 -25.9442 -14.2221 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/angle_sdk.html b/doc/html/angle_sdk.html index ef4126c1f5..d94d31ccf8 100644 --- a/doc/html/angle_sdk.html +++ b/doc/html/angle_sdk.html @@ -128,19 +128,19 @@ <span id="index-0"></span><h1>angle_style sdk command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">sdk</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">sdk</span><span class="o">/</span><span class="n">omp</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style sdk +</pre> +<pre class="literal-block"> +angle_style sdk/omp +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">angle_style</span> <span class="n">sdk</span> -<span class="n">angle_coeff</span> <span class="mi">1</span> <span class="mf">300.0</span> <span class="mf">107.0</span> -</pre></div> -</div> +<pre class="literal-block"> +angle_style sdk +angle_coeff 1 300.0 107.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/atom_modify.html b/doc/html/atom_modify.html index b2e3f8585d..0922591416 100644 --- a/doc/html/atom_modify.html +++ b/doc/html/atom_modify.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>atom_modify command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_modify</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_modify keyword values ... +</pre> <ul class="simple"> <li>one or more keyword/value pairs may be appended</li> <li>keyword = <em>id</em> or <em>map</em> or <em>first</em> or <em>sort</em></li> @@ -146,11 +146,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_modify</span> <span class="nb">map</span> <span class="nb">hash</span> -<span class="n">atom_modify</span> <span class="nb">map</span> <span class="n">array</span> <span class="n">sort</span> <span class="mi">10000</span> <span class="mf">2.0</span> -<span class="n">atom_modify</span> <span class="n">first</span> <span class="n">colloid</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_modify map hash +atom_modify map array sort 10000 2.0 +atom_modify first colloid +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/atom_style.html b/doc/html/atom_style.html index 2ed9ccbab0..a2cbd22a72 100644 --- a/doc/html/atom_style.html +++ b/doc/html/atom_style.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>atom_style command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_style style args +</pre> <ul class="simple"> <li>style = <em>angle</em> or <em>atomic</em> or <em>body</em> or <em>bond</em> or <em>charge</em> or <em>dipole</em> or <em>dpd</em> or <em>electron</em> or <em>ellipsoid</em> or <em>full</em> or <em>line</em> or <em>meso</em> or <em>molecular</em> or <em>peri</em> or <em>smd</em> or <em>sphere</em> or <em>tri</em> or <em>template</em> or <em>hybrid</em></li> </ul> @@ -150,15 +150,15 @@ args = none for any style except the following </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_style</span> <span class="n">atomic</span> -<span class="n">atom_style</span> <span class="n">bond</span> -<span class="n">atom_style</span> <span class="n">full</span> -<span class="n">atom_style</span> <span class="n">body</span> <span class="n">nparticle</span> <span class="mi">2</span> <span class="mi">10</span> -<span class="n">atom_style</span> <span class="n">hybrid</span> <span class="n">charge</span> <span class="n">bond</span> -<span class="n">atom_style</span> <span class="n">hybrid</span> <span class="n">charge</span> <span class="n">body</span> <span class="n">nparticle</span> <span class="mi">2</span> <span class="mi">5</span> -<span class="n">atom_style</span> <span class="n">template</span> <span class="n">myMols</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_style atomic +atom_style bond +atom_style full +atom_style body nparticle 2 10 +atom_style hybrid charge bond +atom_style hybrid charge body nparticle 2 5 +atom_style template myMols +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/body.html b/doc/html/body.html index 6a2be8aff8..5aaa8ec563 100644 --- a/doc/html/body.html +++ b/doc/html/body.html @@ -247,11 +247,11 @@ mentioned above, the <a class="reference internal" href="fix_rigid.html"><span c duplicates its functionality.</p> <p>The atom_style body command for this body style takes two additional arguments:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_style</span> <span class="n">body</span> <span class="n">nparticle</span> <span class="n">Nmin</span> <span class="n">Nmax</span> -<span class="n">Nmin</span> <span class="o">=</span> <span class="n">minimum</span> <span class="c1"># of sub-particles in any body in the system</span> -<span class="n">Nmax</span> <span class="o">=</span> <span class="n">maximum</span> <span class="c1"># of sub-particles in any body in the system</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_style body nparticle Nmin Nmax +Nmin = minimum # of sub-particles in any body in the system +Nmax = maximum # of sub-particles in any body in the system +</pre> <p>The Nmin and Nmax arguments are used to bound the size of data structures used internally by each particle.</p> <p>When the <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> command reads a data file for this @@ -313,11 +313,11 @@ used for 2d models. One example use of this body style is for 2d discrete element models, as described in <a class="reference internal" href="#fraige"><span class="std std-ref">Fraige</span></a>. Similar to body style <em>nparticle</em>, the atom_style body command for this body style takes two additional arguments:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_style</span> <span class="n">body</span> <span class="n">rounded</span><span class="o">/</span><span class="n">polygon</span> <span class="n">Nmin</span> <span class="n">Nmax</span> -<span class="n">Nmin</span> <span class="o">=</span> <span class="n">minimum</span> <span class="c1"># of vertices in any body in the system</span> -<span class="n">Nmax</span> <span class="o">=</span> <span class="n">maximum</span> <span class="c1"># of vertices in any body in the system</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_style body rounded/polygon Nmin Nmax +Nmin = minimum # of vertices in any body in the system +Nmax = maximum # of vertices in any body in the system +</pre> <p>The Nmin and Nmax arguments are used to bound the size of data structures used internally by each particle.</p> <p>When the <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> command reads a data file for this diff --git a/doc/html/bond_class2.html b/doc/html/bond_class2.html index 7e3e5100ec..dad9e1dba9 100644 --- a/doc/html/bond_class2.html +++ b/doc/html/bond_class2.html @@ -131,16 +131,16 @@ <h1>bond_style class2/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">class2</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style class2 +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">class2</span> -<span class="n">bond_coeff</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">100.0</span> <span class="mf">80.0</span> <span class="mf">80.0</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style class2 +bond_coeff 1 1.0 100.0 80.0 80.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/bond_fene.html b/doc/html/bond_fene.html index 7a74e3c9ef..d836487156 100644 --- a/doc/html/bond_fene.html +++ b/doc/html/bond_fene.html @@ -137,16 +137,16 @@ <h1>bond_style fene/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">fene</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style fene +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">fene</span> -<span class="n">bond_coeff</span> <span class="mi">1</span> <span class="mf">30.0</span> <span class="mf">1.5</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style fene +bond_coeff 1 30.0 1.5 1.0 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/bond_fene_expand.html b/doc/html/bond_fene_expand.html index e2b5ed6ad5..577a4cde04 100644 --- a/doc/html/bond_fene_expand.html +++ b/doc/html/bond_fene_expand.html @@ -131,16 +131,16 @@ <h1>bond_style fene/expand/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">fene</span><span class="o">/</span><span class="n">expand</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style fene/expand +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">fene</span><span class="o">/</span><span class="n">expand</span> -<span class="n">bond_coeff</span> <span class="mi">1</span> <span class="mf">30.0</span> <span class="mf">1.5</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">0.5</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style fene/expand +bond_coeff 1 30.0 1.5 1.0 1.0 0.5 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/bond_harmonic.html b/doc/html/bond_harmonic.html index f1594a77d6..fc22160d18 100644 --- a/doc/html/bond_harmonic.html +++ b/doc/html/bond_harmonic.html @@ -137,16 +137,16 @@ <h1>bond_style harmonic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">harmonic</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style harmonic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">harmonic</span> -<span class="n">bond_coeff</span> <span class="mi">5</span> <span class="mf">80.0</span> <span class="mf">1.2</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style harmonic +bond_coeff 5 80.0 1.2 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/bond_harmonic_shift.html b/doc/html/bond_harmonic_shift.html index 91a6674537..4ab86dc316 100644 --- a/doc/html/bond_harmonic_shift.html +++ b/doc/html/bond_harmonic_shift.html @@ -131,16 +131,16 @@ <h1>bond_style harmonic/shift/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">harmonic</span><span class="o">/</span><span class="n">shift</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style harmonic/shift +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">harmonic</span><span class="o">/</span><span class="n">shift</span> -<span class="n">bond_coeff</span> <span class="mi">5</span> <span class="mf">10.0</span> <span class="mf">0.5</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style harmonic/shift +bond_coeff 5 10.0 0.5 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/bond_harmonic_shift_cut.html b/doc/html/bond_harmonic_shift_cut.html index c53ad2cc14..121eda2221 100644 --- a/doc/html/bond_harmonic_shift_cut.html +++ b/doc/html/bond_harmonic_shift_cut.html @@ -131,16 +131,16 @@ <h1>bond_style harmonic/shift/cut/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">harmonic</span><span class="o">/</span><span class="n">shift</span><span class="o">/</span><span class="n">cut</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style harmonic/shift/cut +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">harmonic</span><span class="o">/</span><span class="n">shift</span><span class="o">/</span><span class="n">cut</span> -<span class="n">bond_coeff</span> <span class="mi">5</span> <span class="mf">10.0</span> <span class="mf">0.5</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style harmonic/shift/cut +bond_coeff 5 10.0 0.5 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/bond_morse.html b/doc/html/bond_morse.html index facb9a0c9c..42794978e3 100644 --- a/doc/html/bond_morse.html +++ b/doc/html/bond_morse.html @@ -131,16 +131,16 @@ <h1>bond_style morse/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">morse</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style morse +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">morse</span> -<span class="n">bond_coeff</span> <span class="mi">5</span> <span class="mf">1.0</span> <span class="mf">2.0</span> <span class="mf">1.2</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style morse +bond_coeff 5 1.0 2.0 1.2 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/bond_nonlinear.html b/doc/html/bond_nonlinear.html index 02540da242..ad8a574f82 100644 --- a/doc/html/bond_nonlinear.html +++ b/doc/html/bond_nonlinear.html @@ -131,16 +131,16 @@ <h1>bond_style nonlinear/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">nonlinear</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style nonlinear +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">nonlinear</span> -<span class="n">bond_coeff</span> <span class="mi">2</span> <span class="mf">100.0</span> <span class="mf">1.1</span> <span class="mf">1.4</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style nonlinear +bond_coeff 2 100.0 1.1 1.4 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/bond_quartic.html b/doc/html/bond_quartic.html index d2b57516a1..290a9f8055 100644 --- a/doc/html/bond_quartic.html +++ b/doc/html/bond_quartic.html @@ -131,16 +131,16 @@ <h1>bond_style quartic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">quartic</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style quartic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">bond_style</span> <span class="n">quartic</span> -<span class="n">bond_coeff</span> <span class="mi">2</span> <span class="mi">1200</span> <span class="o">-</span><span class="mf">0.55</span> <span class="mf">0.25</span> <span class="mf">1.3</span> <span class="mf">34.6878</span> -</pre></div> -</div> +<pre class="literal-block"> +bond_style quartic +bond_coeff 2 1200 -0.55 0.25 1.3 34.6878 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -184,10 +184,10 @@ to 1,1,1, as indicated as a restriction below.</p> <p>Note that when bonds are dumped to a file via the <a class="reference internal" href="dump.html"><span class="doc">dump local</span></a> command, bonds with type 0 are not included. The <a class="reference internal" href="delete_bonds.html"><span class="doc">delete_bonds</span></a> command can also be used to query the status of broken bonds or permanently delete them, e.g.:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">delete_bonds</span> <span class="nb">all</span> <span class="n">stats</span> -<span class="n">delete_bonds</span> <span class="nb">all</span> <span class="n">bond</span> <span class="mi">0</span> <span class="n">remove</span> -</pre></div> -</div> +<pre class="literal-block"> +delete_bonds all stats +delete_bonds all bond 0 remove +</pre> <hr class="docutils" /> <p>Styles with a <em>gpu</em>, <em>intel</em>, <em>kk</em>, <em>omp</em>, or <em>opt</em> suffix are functionally the same as the corresponding style without the suffix. diff --git a/doc/html/change_box.html b/doc/html/change_box.html index fc034cbe2f..5fd817925f 100644 --- a/doc/html/change_box.html +++ b/doc/html/change_box.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>change_box command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">change_box</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">parameter</span> <span class="n">args</span> <span class="o">...</span> <span class="n">keyword</span> <span class="n">args</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +change_box group-ID parameter args ... keyword args ... +</pre> <ul class="simple"> <li>group-ID = ID of group of atoms to (optionally) displace</li> <li>one or more parameter/arg pairs may be appended</li> @@ -175,10 +175,10 @@ parameter = <em>x</em> or <em>y</em> or <em>z</em> or <em>xy</em> or <em>xz</em> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">change_box</span> <span class="nb">all</span> <span class="n">xy</span> <span class="n">final</span> <span class="o">-</span><span class="mf">2.0</span> <span class="n">z</span> <span class="n">final</span> <span class="mf">0.0</span> <span class="mf">5.0</span> <span class="n">boundary</span> <span class="n">p</span> <span class="n">p</span> <span class="n">f</span> <span class="n">remap</span> <span class="n">units</span> <span class="n">box</span> -<span class="n">change_box</span> <span class="nb">all</span> <span class="n">x</span> <span class="n">scale</span> <span class="mf">1.1</span> <span class="n">y</span> <span class="n">volume</span> <span class="n">z</span> <span class="n">volume</span> <span class="n">remap</span> -</pre></div> -</div> +<pre class="literal-block"> +change_box all xy final -2.0 z final 0.0 5.0 boundary p p f remap units box +change_box all x scale 1.1 y volume z volume remap +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -223,15 +223,15 @@ will be re-shrink-wrapped before the change_box command completes. Instead you could do something like this, assuming the simulation box is non-periodic and atoms extend from 0 to 20 in all dimensions:</p> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">change_box</span> <span class="nb">all</span> <span class="n">x</span> <span class="n">final</span> <span class="o">-</span><span class="mi">10</span> <span class="mi">20</span> -<span class="n">create_atoms</span> <span class="mi">1</span> <span class="n">single</span> <span class="o">-</span><span class="mi">5</span> <span class="mi">5</span> <span class="mi">5</span> <span class="c1"># this will fail to insert an atom</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">change_box</span> <span class="nb">all</span> <span class="n">x</span> <span class="n">final</span> <span class="o">-</span><span class="mi">10</span> <span class="mi">20</span> <span class="n">boundary</span> <span class="n">f</span> <span class="n">s</span> <span class="n">s</span> -<span class="n">create_atoms</span> <span class="mi">1</span> <span class="n">single</span> <span class="o">-</span><span class="mi">5</span> <span class="mi">5</span> <span class="mi">5</span> -<span class="n">change_box</span> <span class="n">boundary</span> <span class="n">s</span> <span class="n">s</span> <span class="n">s</span> <span class="c1"># this will work</span> -</pre></div> -</div> +<pre class="literal-block"> +change_box all x final -10 20 +create_atoms 1 single -5 5 5 # this will fail to insert an atom +</pre> +<pre class="literal-block"> +change_box all x final -10 20 boundary f s s +create_atoms 1 single -5 5 5 +change_box boundary s s s # this will work +</pre> <div class="admonition note"> <p class="first admonition-title">Note</p> <p class="last">Unlike the earlier “displace_box” version of this command, atom @@ -295,30 +295,30 @@ used following a keyword that changed the volume, which is any of the <em>x</em>, <em>y</em>, <em>z</em> keywords. If the preceding keyword “key” had a <em>volume</em> style, then both it and the current keyword apply to the keyword preceding “key”. I.e. this sequence of keywords is allowed:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">change_box</span> <span class="nb">all</span> <span class="n">x</span> <span class="n">scale</span> <span class="mf">1.1</span> <span class="n">y</span> <span class="n">volume</span> <span class="n">z</span> <span class="n">volume</span> -</pre></div> -</div> +<pre class="literal-block"> +change_box all x scale 1.1 y volume z volume +</pre> <p>The <em>volume</em> style changes the associated dimension so that the overall box volume is unchanged relative to its value before the preceding keyword was invoked.</p> <p>If the following command is used, then the z box length will shrink by the same 1.1 factor the x box length was increased by:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">change_box</span> <span class="nb">all</span> <span class="n">x</span> <span class="n">scale</span> <span class="mf">1.1</span> <span class="n">z</span> <span class="n">volume</span> -</pre></div> -</div> +<pre class="literal-block"> +change_box all x scale 1.1 z volume +</pre> <p>If the following command is used, then the y,z box lengths will each shrink by sqrt(1.1) to keep the volume constant. In this case, the y,z box lengths shrink so as to keep their relative aspect ratio constant:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">change_box</span> <span class="nb">all</span><span class="s2">"x scale 1.1 y volume z volume</span> -</pre></div> -</div> +<pre class="literal-block"> +change_box all"x scale 1.1 y volume z volume +</pre> <p>If the following command is used, then the final box will be a factor of 10% larger in x and y, and a factor of 21% smaller in z, so as to keep the volume constant:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">change_box</span> <span class="nb">all</span> <span class="n">x</span> <span class="n">scale</span> <span class="mf">1.1</span> <span class="n">z</span> <span class="n">volume</span> <span class="n">y</span> <span class="n">scale</span> <span class="mf">1.1</span> <span class="n">z</span> <span class="n">volume</span> -</pre></div> -</div> +<pre class="literal-block"> +change_box all x scale 1.1 z volume y scale 1.1 z volume +</pre> <div class="admonition note"> <p class="first admonition-title">Note</p> <p class="last">For solids or liquids, when one dimension of the box is diff --git a/doc/html/compute.html b/doc/html/compute.html index b4f0375d18..ec28819bbb 100644 --- a/doc/html/compute.html +++ b/doc/html/compute.html @@ -186,8 +186,8 @@ discussed below, it can be referenced via the following bracket notation, where ID is the ID of the compute:</p> <table border="1" class="docutils"> <colgroup> -<col width="21%" /> -<col width="79%" /> +<col width="23%" /> +<col width="77%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>c_ID</td> @@ -245,11 +245,11 @@ computes for further info.</p> Three computes are always created, named “thermo_temp”, “thermo_press”, and “thermo_pe”, as if these commands had been invoked in the input script:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">thermo_temp</span> <span class="nb">all</span> <span class="n">temp</span> -<span class="n">compute</span> <span class="n">thermo_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">thermo_temp</span> -<span class="n">compute</span> <span class="n">thermo_pe</span> <span class="nb">all</span> <span class="n">pe</span> -</pre></div> -</div> +<pre class="literal-block"> +compute thermo_temp all temp +compute thermo_press all pressure thermo_temp +compute thermo_pe all pe +</pre> <p>Additional computes for other quantities are created if the thermo style requires it. See the documentation for the <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style</span></a> command.</p> diff --git a/doc/html/compute_bond_local.html b/doc/html/compute_bond_local.html index 5bde75437f..79f34ad60f 100644 --- a/doc/html/compute_bond_local.html +++ b/doc/html/compute_bond_local.html @@ -177,11 +177,11 @@ For example, bond output from the <a class="reference internal" href="compute_pr with data from this command and output by the <a class="reference internal" href="dump.html"><span class="doc">dump local</span></a> command in a consistent way.</p> <p>Here is an example of how to do this:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">local</span> <span class="n">btype</span> <span class="n">batom1</span> <span class="n">batom2</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">bond</span><span class="o">/</span><span class="n">local</span> <span class="n">dist</span> <span class="n">eng</span> -<span class="n">dump</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">local</span> <span class="mi">1000</span> <span class="n">tmp</span><span class="o">.</span><span class="n">dump</span> <span class="n">index</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">c_2</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_2</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all property/local btype batom1 batom2 +compute 2 all bond/local dist eng +dump 1 all local 1000 tmp.dump index c_1[1] c_1[2] c_1[3] c_2[1] c_2[2] +</pre> <p><strong>Output info:</strong></p> <p>This compute calculates a local vector or local array depending on the number of keywords. The length of the vector or number of rows in the diff --git a/doc/html/compute_centro_atom.html b/doc/html/compute_centro_atom.html index 743a69e651..5b1779546e 100644 --- a/doc/html/compute_centro_atom.html +++ b/doc/html/compute_centro_atom.html @@ -234,7 +234,7 @@ simulation into gold (FCC). These were provided by Jon Zimmerman <span class="n">Free</span> <span class="n">surface</span> <span class="o">~</span> <span class="mf">23.0</span> </pre></div> </div> -<p>These values are <em>not</em> normalized by the square of the lattice +<p>These values are *not* normalized by the square of the lattice parameter. If they were, normalized values would be:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Bulk</span> <span class="n">lattice</span> <span class="o">=</span> <span class="mi">0</span> <span class="n">Dislocation</span> <span class="n">core</span> <span class="o">~</span> <span class="mf">0.06</span> <span class="p">(</span><span class="mf">0.03</span> <span class="n">to</span> <span class="mf">0.075</span><span class="p">)</span> diff --git a/doc/html/compute_dipole_chunk.html b/doc/html/compute_dipole_chunk.html index 55452e3a0f..efedfa0512 100644 --- a/doc/html/compute_dipole_chunk.html +++ b/doc/html/compute_dipole_chunk.html @@ -181,11 +181,11 @@ and how they are set for each atom. You can reset the image flags <p>The simplest way to output the results of the compute com/chunk calculation to a file is to use the <a class="reference internal" href="fix_ave_time.html"><span class="doc">fix ave/time</span></a> command, for example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">cc1</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="n">molecule</span> -<span class="n">compute</span> <span class="n">myChunk</span> <span class="nb">all</span> <span class="n">dipole</span><span class="o">/</span><span class="n">chunk</span> <span class="n">cc1</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myChunk</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">out</span> <span class="n">mode</span> <span class="n">vector</span> -</pre></div> -</div> +<pre class="literal-block"> +compute cc1 all chunk/atom molecule +compute myChunk all dipole/chunk cc1 +fix 1 all ave/time 100 1 100 c_myChunk[*] file tmp.out mode vector +</pre> <p><strong>Output info:</strong></p> <p>This compute calculates a global array where the number of rows = the number of chunks <em>Nchunk</em> as calculated by the specified <a class="reference internal" href="compute_chunk_atom.html"><span class="doc">compute chunk/atom</span></a> command. The number of columns = diff --git a/doc/html/compute_fep.html b/doc/html/compute_fep.html index 5a7910465c..0824a98ae4 100644 --- a/doc/html/compute_fep.html +++ b/doc/html/compute_fep.html @@ -164,10 +164,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">fep</span> <span class="mi">298</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="n">epsilon</span> <span class="mi">1</span> <span class="o">*</span> <span class="n">v_delta</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="n">sigma</span> <span class="mi">1</span> <span class="o">*</span> <span class="n">v_delta</span> <span class="n">volume</span> <span class="n">yes</span> -<span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">fep</span> <span class="mi">300</span> <span class="n">atom</span> <span class="n">charge</span> <span class="mi">2</span> <span class="n">v_delta</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all fep 298 pair lj/cut epsilon 1 * v_delta pair lj/cut sigma 1 * v_delta volume yes +compute 1 all fep 300 atom charge 2 v_delta +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -307,7 +307,7 @@ each, as in the 1st example above. I <= J is required. LAMMPS sets the coefficients for the symmetric J,I interaction to the same values. A wild-card asterisk can be used in place of or in conjunction with the I,J arguments to set the coefficients for multiple pairs of -atom types. This takes the form “*” or “<em>n” or “n</em>” or “m*n”. If N = +atom types. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the number of atom types, then an asterisk with no numeric values means all types from 1 to N. A leading asterisk means all types from 1 to n (inclusive). A trailing asterisk means all types from n to N diff --git a/doc/html/compute_gyration_chunk.html b/doc/html/compute_gyration_chunk.html index 388ee64c04..3ec0dca379 100644 --- a/doc/html/compute_gyration_chunk.html +++ b/doc/html/compute_gyration_chunk.html @@ -193,11 +193,11 @@ using the <a class="reference internal" href="set.html"><span class="doc">set im <p>The simplest way to output the results of the compute gyration/chunk calculation to a file is to use the <a class="reference internal" href="fix_ave_time.html"><span class="doc">fix ave/time</span></a> command, for example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">cc1</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="n">molecule</span> -<span class="n">compute</span> <span class="n">myChunk</span> <span class="nb">all</span> <span class="n">gyration</span><span class="o">/</span><span class="n">chunk</span> <span class="n">cc1</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myChunk</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">out</span> <span class="n">mode</span> <span class="n">vector</span> -</pre></div> -</div> +<pre class="literal-block"> +compute cc1 all chunk/atom molecule +compute myChunk all gyration/chunk cc1 +fix 1 all ave/time 100 1 100 c_myChunk file tmp.out mode vector +</pre> <p><strong>Output info:</strong></p> <p>This compute calculates a global vector if the <em>tensor</em> keyword is not specified and a global array if it is. The length of the vector or diff --git a/doc/html/compute_heat_flux.html b/doc/html/compute_heat_flux.html index 1ef755717d..1595174920 100644 --- a/doc/html/compute_heat_flux.html +++ b/doc/html/compute_heat_flux.html @@ -237,29 +237,30 @@ energy/area/time <a class="reference internal" href="units.html"><span class="do <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Sample LAMMPS input script for thermal conductivity of solid Ar</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span>units real +<pre class="literal-block"> +units real variable T equal 70 variable V equal vol variable dt equal 4.0 variable p equal 200 # correlation length variable s equal 10 # sample interval variable d equal $p*$s # dump interval -</pre></div> -</div> +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># convert from LAMMPS real units to SI</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable kB equal 1.3806504e-23 # [J/K] Boltzmann +<pre class="literal-block"> +variable kB equal 1.3806504e-23 # [J/K] Boltzmann variable kCal2J equal 4186.0/6.02214e23 variable A2m equal 1.0e-10 variable fs2s equal 1.0e-15 variable convert equal ${kCal2J}*${kCal2J}/${fs2s}/${A2m} -</pre></div> -</div> +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># setup problem</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span>dimension 3 +<pre class="literal-block"> +dimension 3 boundary p p p lattice fcc 5.376 orient x 1 0 0 orient y 0 1 0 orient z 0 0 1 region box block 0 4 0 4 0 4 @@ -270,8 +271,7 @@ pair_style lj/cut 13.0 pair_coeff * * 0.2381 3.405 timestep ${dt} thermo $d -</pre></div> -</div> +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># equilibration and thermalization</span> </pre></div> </div> @@ -287,7 +287,8 @@ run 8000 <span class="c1">#fix NVE all nve</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span>reset_timestep 0 +<pre class="literal-block"> +reset_timestep 0 compute myKE all ke/atom compute myPE all pe/atom compute myStress all stress/atom NULL virial @@ -305,9 +306,8 @@ thermo_style custom step temp v_Jx v_Jy v_Jz v_k11 v_k22 v_k33 run 100000 variable k equal (v_k11+v_k22+v_k33)/3.0 variable ndens equal count(all)/vol -print "average conductivity: $k[W/mK] @ $T K, ${ndens} /A^3" -</pre></div> -</div> +print "average conductivity: $k[W/mK] @ $T K, ${ndens} /A^3" +</pre> </div> </div> diff --git a/doc/html/compute_inertia_chunk.html b/doc/html/compute_inertia_chunk.html index b93575cfc5..d718f90f47 100644 --- a/doc/html/compute_inertia_chunk.html +++ b/doc/html/compute_inertia_chunk.html @@ -177,11 +177,11 @@ how they are set for each atom. You can reset the image flags <p>The simplest way to output the results of the compute inertia/chunk calculation to a file is to use the <a class="reference internal" href="fix_ave_time.html"><span class="doc">fix ave/time</span></a> command, for example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">cc1</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="n">molecule</span> -<span class="n">compute</span> <span class="n">myChunk</span> <span class="nb">all</span> <span class="n">inertia</span><span class="o">/</span><span class="n">chunk</span> <span class="n">cc1</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myChunk</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">out</span> <span class="n">mode</span> <span class="n">vector</span> -</pre></div> -</div> +<pre class="literal-block"> +compute cc1 all chunk/atom molecule +compute myChunk all inertia/chunk cc1 +fix 1 all ave/time 100 1 100 c_myChunk[*] file tmp.out mode vector +</pre> <p><strong>Output info:</strong></p> <p>This compute calculates a global array where the number of rows = the number of chunks <em>Nchunk</em> as calculated by the specified <a class="reference internal" href="compute_chunk_atom.html"><span class="doc">compute chunk/atom</span></a> command. The number of columns = diff --git a/doc/html/compute_ke_atom_eff.html b/doc/html/compute_ke_atom_eff.html index 00b22b9256..6a017dc79b 100644 --- a/doc/html/compute_ke_atom_eff.html +++ b/doc/html/compute_ke_atom_eff.html @@ -168,11 +168,11 @@ eFF.</p> thermodynamic output by using the <a class="reference internal" href="thermo_modify.html"><span class="doc">thermo_modify</span></a> command, as shown in the following example:</p> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">effTemp</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">eff</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">etotal</span> <span class="n">pe</span> <span class="n">ke</span> <span class="n">temp</span> <span class="n">press</span> -<span class="n">thermo_modify</span> <span class="n">temp</span> <span class="n">effTemp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute effTemp all temp/eff +thermo_style custom step etotal pe ke temp press +thermo_modify temp effTemp +</pre> <p>The value of the kinetic energy will be 0.0 for atoms (nuclei or electrons) not in the specified compute group.</p> <p><strong>Output info:</strong></p> diff --git a/doc/html/compute_ke_eff.html b/doc/html/compute_ke_eff.html index b614a9d25b..ff0e0b4e68 100644 --- a/doc/html/compute_ke_eff.html +++ b/doc/html/compute_ke_eff.html @@ -169,11 +169,11 @@ the <a class="reference internal" href="compute_temp_eff.html"><span class="doc" printed with thermodynamic output by using the <a class="reference internal" href="thermo_modify.html"><span class="doc">thermo_modify</span></a> command, as shown in the following example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">effTemp</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">eff</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">etotal</span> <span class="n">pe</span> <span class="n">ke</span> <span class="n">temp</span> <span class="n">press</span> -<span class="n">thermo_modify</span> <span class="n">temp</span> <span class="n">effTemp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute effTemp all temp/eff +thermo_style custom step etotal pe ke temp press +thermo_modify temp effTemp +</pre> <p>See <a class="reference internal" href="compute_temp_eff.html"><span class="doc">compute temp/eff</span></a>.</p> <p><strong>Output info:</strong></p> <p>This compute calculates a global scalar (the KE). This value can be diff --git a/doc/html/compute_modify.html b/doc/html/compute_modify.html index 8c31af05b2..6556686bb9 100644 --- a/doc/html/compute_modify.html +++ b/doc/html/compute_modify.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>compute_modify command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute_modify</span> <span class="n">compute</span><span class="o">-</span><span class="n">ID</span> <span class="n">keyword</span> <span class="n">value</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +compute_modify compute-ID keyword value ... +</pre> <ul class="simple"> <li>compute-ID = ID of the compute to modify</li> <li>one or more keyword/value pairs may be listed</li> @@ -145,10 +145,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute_modify</span> <span class="n">myTemp</span> <span class="n">extra</span> <span class="mi">0</span> -<span class="n">compute_modify</span> <span class="n">newtemp</span> <span class="n">dynamic</span> <span class="n">yes</span> <span class="n">extra</span> <span class="mi">600</span> -</pre></div> -</div> +<pre class="literal-block"> +compute_modify myTemp extra 0 +compute_modify newtemp dynamic yes extra 600 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/compute_pe_atom.html b/doc/html/compute_pe_atom.html index fafebf006b..b5de90dfdb 100644 --- a/doc/html/compute_pe_atom.html +++ b/doc/html/compute_pe_atom.html @@ -185,11 +185,11 @@ command.</p> <p>As an example of per-atom potential energy compared to total potential energy, these lines in an input script should yield the same result in the last 2 columns of thermo output:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">peratom</span> <span class="nb">all</span> <span class="n">pe</span><span class="o">/</span><span class="n">atom</span> -<span class="n">compute</span> <span class="n">pe</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">sum</span> <span class="n">c_peratom</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">etotal</span> <span class="n">press</span> <span class="n">pe</span> <span class="n">c_pe</span> -</pre></div> -</div> +<pre class="literal-block"> +compute peratom all pe/atom +compute pe all reduce sum c_peratom +thermo_style custom step temp etotal press pe c_pe +</pre> <div class="admonition note"> <p class="first admonition-title">Note</p> <p class="last">The per-atom energy does not any Lennard-Jones tail corrections diff --git a/doc/html/compute_pressure.html b/doc/html/compute_pressure.html index eb4ac742f3..1d117a4f5e 100644 --- a/doc/html/compute_pressure.html +++ b/doc/html/compute_pressure.html @@ -141,10 +141,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">thermo_temp</span> -<span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">NULL</span> <span class="n">pair</span> <span class="n">bond</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all pressure thermo_temp +compute 1 all pressure NULL pair bond +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -196,9 +196,9 @@ degrees-of-freedom divided by d = dimensionality, where the DOF value is calcluated by the temperature compute. See the various <a class="reference internal" href="compute.html"><span class="doc">compute temperature</span></a> styles for details.</p> <p>A compute of this style with the ID of “thermo_press” is created when LAMMPS starts up, as if this command were in the input script:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">thermo_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">thermo_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute thermo_press all pressure thermo_temp +</pre> <p>where “thermo_temp” is the ID of a similarly defined compute of style “temp”. See the “thermo_style” command for more details.</p> <hr class="docutils" /> diff --git a/doc/html/compute_property_atom.html b/doc/html/compute_property_atom.html index 9fdc98e352..f91b814e33 100644 --- a/doc/html/compute_property_atom.html +++ b/doc/html/compute_property_atom.html @@ -136,25 +136,25 @@ <li>property/atom = style name of this compute command</li> <li>input = one or more atom attributes</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">possible</span> <span class="n">attributes</span> <span class="o">=</span> <span class="nb">id</span><span class="p">,</span> <span class="n">mol</span><span class="p">,</span> <span class="n">proc</span><span class="p">,</span> <span class="nb">type</span><span class="p">,</span> <span class="n">mass</span><span class="p">,</span> - <span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">z</span><span class="p">,</span> <span class="n">xs</span><span class="p">,</span> <span class="n">ys</span><span class="p">,</span> <span class="n">zs</span><span class="p">,</span> <span class="n">xu</span><span class="p">,</span> <span class="n">yu</span><span class="p">,</span> <span class="n">zu</span><span class="p">,</span> <span class="n">ix</span><span class="p">,</span> <span class="n">iy</span><span class="p">,</span> <span class="n">iz</span><span class="p">,</span> - <span class="n">vx</span><span class="p">,</span> <span class="n">vy</span><span class="p">,</span> <span class="n">vz</span><span class="p">,</span> <span class="n">fx</span><span class="p">,</span> <span class="n">fy</span><span class="p">,</span> <span class="n">fz</span><span class="p">,</span> - <span class="n">q</span><span class="p">,</span> <span class="n">mux</span><span class="p">,</span> <span class="n">muy</span><span class="p">,</span> <span class="n">muz</span><span class="p">,</span> <span class="n">mu</span><span class="p">,</span> - <span class="n">radius</span><span class="p">,</span> <span class="n">diameter</span><span class="p">,</span> <span class="n">omegax</span><span class="p">,</span> <span class="n">omegay</span><span class="p">,</span> <span class="n">omegaz</span><span class="p">,</span> - <span class="n">angmomx</span><span class="p">,</span> <span class="n">angmomy</span><span class="p">,</span> <span class="n">angmomz</span><span class="p">,</span> - <span class="n">shapex</span><span class="p">,</span><span class="n">shapey</span><span class="p">,</span> <span class="n">shapez</span><span class="p">,</span> - <span class="n">quatw</span><span class="p">,</span> <span class="n">quati</span><span class="p">,</span> <span class="n">quatj</span><span class="p">,</span> <span class="n">quatk</span><span class="p">,</span> <span class="n">tqx</span><span class="p">,</span> <span class="n">tqy</span><span class="p">,</span> <span class="n">tqz</span><span class="p">,</span> - <span class="n">end1x</span><span class="p">,</span> <span class="n">end1y</span><span class="p">,</span> <span class="n">end1z</span><span class="p">,</span> <span class="n">end2x</span><span class="p">,</span> <span class="n">end2y</span><span class="p">,</span> <span class="n">end2z</span><span class="p">,</span> - <span class="n">corner1x</span><span class="p">,</span> <span class="n">corner1y</span><span class="p">,</span> <span class="n">corner1z</span><span class="p">,</span> - <span class="n">corner2x</span><span class="p">,</span> <span class="n">corner2y</span><span class="p">,</span> <span class="n">corner2z</span><span class="p">,</span> - <span class="n">corner3x</span><span class="p">,</span> <span class="n">corner3y</span><span class="p">,</span> <span class="n">corner3z</span><span class="p">,</span> - <span class="n">nbonds</span><span class="p">,</span> - <span class="n">vfrac</span><span class="p">,</span> <span class="n">s0</span><span class="p">,</span> - <span class="n">spin</span><span class="p">,</span> <span class="n">eradius</span><span class="p">,</span> <span class="n">ervel</span><span class="p">,</span> <span class="n">erforce</span><span class="p">,</span> - <span class="n">rho</span><span class="p">,</span> <span class="n">drho</span><span class="p">,</span> <span class="n">e</span><span class="p">,</span> <span class="n">de</span><span class="p">,</span> <span class="n">cv</span><span class="p">,</span> - <span class="n">i_name</span><span class="p">,</span> <span class="n">d_name</span> -</pre></div> -</div> +<pre class="literal-block"> +possible attributes = id, mol, proc, type, mass, + x, y, z, xs, ys, zs, xu, yu, zu, ix, iy, iz, + vx, vy, vz, fx, fy, fz, + q, mux, muy, muz, mu, + radius, diameter, omegax, omegay, omegaz, + angmomx, angmomy, angmomz, + shapex,shapey, shapez, + quatw, quati, quatj, quatk, tqx, tqy, tqz, + end1x, end1y, end1z, end2x, end2y, end2z, + corner1x, corner1y, corner1z, + corner2x, corner2y, corner2z, + corner3x, corner3y, corner3z, + nbonds, + vfrac, s0, + spin, eradius, ervel, erforce, + rho, drho, e, de, cv, + i_name, d_name +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="nb">id</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">ID</span> <span class="n">mol</span> <span class="o">=</span> <span class="n">molecule</span> <span class="n">ID</span> <span class="n">proc</span> <span class="o">=</span> <span class="n">ID</span> <span class="n">of</span> <span class="n">processor</span> <span class="n">that</span> <span class="n">owns</span> <span class="n">atom</span> diff --git a/doc/html/compute_property_chunk.html b/doc/html/compute_property_chunk.html index 2012335a47..7cf73b649d 100644 --- a/doc/html/compute_property_chunk.html +++ b/doc/html/compute_property_chunk.html @@ -192,12 +192,12 @@ will be in unitless reduced units (0-1).</p> <p>The simplest way to output the results of the compute property/chunk calculation to a file is to use the <a class="reference internal" href="fix_ave_time.html"><span class="doc">fix ave/time</span></a> command, for example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">cc1</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="n">molecule</span> -<span class="n">compute</span> <span class="n">myChunk1</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">chunk</span> <span class="n">cc1</span> <span class="n">count</span> -<span class="n">compute</span> <span class="n">myChunk2</span> <span class="nb">all</span> <span class="n">com</span><span class="o">/</span><span class="n">chunk</span> <span class="n">cc1</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myChunk1</span> <span class="n">c_myChunk2</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">out</span> <span class="n">mode</span> <span class="n">vector</span> -</pre></div> -</div> +<pre class="literal-block"> +compute cc1 all chunk/atom molecule +compute myChunk1 all property/chunk cc1 count +compute myChunk2 all com/chunk cc1 +fix 1 all ave/time 100 1 100 c_myChunk1 c_myChunk2[*] file tmp.out mode vector +</pre> <p><strong>Output info:</strong></p> <p>This compute calculates a global vector or global array depending on the number of input values. The length of the vector or number of diff --git a/doc/html/compute_reduce.html b/doc/html/compute_reduce.html index 519bc9ff3c..56a155c53a 100644 --- a/doc/html/compute_reduce.html +++ b/doc/html/compute_reduce.html @@ -148,14 +148,14 @@ <li>one or more inputs can be listed</li> <li>input = x, y, z, vx, vy, vz, fx, fy, fz, c_ID, c_ID[N], f_ID, f_ID[N], v_name</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">,</span><span class="n">z</span><span class="p">,</span><span class="n">vx</span><span class="p">,</span><span class="n">vy</span><span class="p">,</span><span class="n">vz</span><span class="p">,</span><span class="n">fx</span><span class="p">,</span><span class="n">fy</span><span class="p">,</span><span class="n">fz</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">attribute</span> <span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">velocity</span><span class="p">,</span> <span class="n">force</span> <span class="n">component</span><span class="p">)</span> -<span class="n">c_ID</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="ow">or</span> <span class="n">local</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="ow">or</span> <span class="n">local</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="ow">or</span> <span class="n">local</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="ow">or</span> <span class="n">local</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">atom</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -</pre></div> -</div> +<pre class="literal-block"> +x,y,z,vx,vy,vz,fx,fy,fz = atom attribute (position, velocity, force component) +c_ID = per-atom or local vector calculated by a compute with ID +c_ID[I] = Ith column of per-atom or local array calculated by a compute with ID, I can include wildcard (see below) +f_ID = per-atom or local vector calculated by a fix with ID +f_ID[I] = Ith column of per-atom or local array calculated by a fix with ID, I can include wildcard (see below) +v_name = per-atom vector calculated by an atom-style variable with name +</pre> <ul class="simple"> <li>zero or more keyword/args pairs may be appended</li> <li>keyword = <em>replace</em></li> @@ -168,13 +168,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">sum</span> <span class="n">c_force</span> -<span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">reduce</span><span class="o">/</span><span class="n">region</span> <span class="n">subbox</span> <span class="nb">sum</span> <span class="n">c_force</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">min</span> <span class="n">c_press</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">f_ave</span> <span class="n">v_myKE</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">min</span> <span class="n">c_press</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">f_ave</span> <span class="n">v_myKE</span> -<span class="n">compute</span> <span class="mi">3</span> <span class="n">fluid</span> <span class="n">reduce</span> <span class="nb">max</span> <span class="n">c_index</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_index</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_dist</span> <span class="n">replace</span> <span class="mi">1</span> <span class="mi">3</span> <span class="n">replace</span> <span class="mi">2</span> <span class="mi">3</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all reduce sum c_force +compute 1 all reduce/region subbox sum c_force +compute 2 all reduce min c_press[2] f_ave v_myKE +compute 2 all reduce min c_press[*] f_ave v_myKE +compute 3 fluid reduce max c_index[1] c_index[2] c_dist replace 1 3 replace 2 3 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -211,7 +211,7 @@ component) or can be the result of a <a class="reference internal" href="compute <a class="reference internal" href="variable.html"><span class="doc">variable</span></a>.</p> <p>Note that for values from a compute or fix, the bracketed index I can be specified using a wildcard asterisk with the index to effectively -specify multiple values. This takes the form “*” or “<em>n” or “n</em>” or +specify multiple values. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the size of the vector (for <em>mode</em> = scalar) or the number of columns in the array (for <em>mode</em> = vector), then an asterisk with no numeric values means all indices from 1 to N. A leading @@ -222,18 +222,18 @@ means all indices from m to n (inclusive).</p> had been listed one by one. E.g. these 2 compute reduce commands are equivalent, since the <a class="reference internal" href="compute_stress_atom.html"><span class="doc">compute stress/atom</span></a> command creates a per-atom array with 6 columns:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">myPress</span> <span class="nb">all</span> <span class="n">stress</span><span class="o">/</span><span class="n">atom</span> <span class="n">NULL</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">min</span> <span class="n">myPress</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">min</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">&</span> - <span class="n">myPress</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute myPress all stress/atom NULL +compute 2 all reduce min myPress[*] +compute 2 all reduce min myPress[1] myPress[2] myPress[3] & + myPress[4] myPress[5] myPress[6] +</pre> <hr class="docutils" /> <p>The atom attribute values (x,y,z,vx,vy,vz,fx,fy,fz) are self-explanatory. Note that other atom attributes can be used as inputs to this fix by using the <a class="reference internal" href="compute_property_atom.html"><span class="doc">compute property/atom</span></a> command and then specifying an input value from that compute.</p> -<p>If a value begins with “<a href="#id1"><span class="problematic" id="id2">c_</span></a>”, a compute ID must follow which has been +<p>If a value begins with “c_”, a compute ID must follow which has been previously defined in the input script. Computes can generate per-atom or local quantities. See the individual <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> doc page for details. If no bracketed integer @@ -243,7 +243,7 @@ by the compute is used. Users can also write code for their own compute styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>. See the discussion above for how I can be specified with a wildcard asterisk to effectively specify multiple values.</p> -<p>If a value begins with “<a href="#id3"><span class="problematic" id="id4">f_</span></a>”, a fix ID must follow which has been +<p>If a value begins with “f_”, a fix ID must follow which has been previously defined in the input script. Fixes can generate per-atom or local quantities. See the individual <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> doc page for details. Note that some fixes only produce their values on certain @@ -254,7 +254,7 @@ integer is appended, the Ith column of the array calculated by the fix is used. Users can also write code for their own fix style and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>. See the discussion above for how I can be specified with a wildcard asterisk to effectively specify multiple values.</p> -<p>If a value begins with “<a href="#id5"><span class="problematic" id="id6">v_</span></a>”, a variable name must follow which has +<p>If a value begins with “v_”, a variable name must follow which has been previously defined in the input script. It must be an <a class="reference internal" href="variable.html"><span class="doc">atom-style variable</span></a>. Atom-style variables can reference thermodynamic keywords and various per-atom attributes, or @@ -271,12 +271,12 @@ Then, instead of performing a min/max on the <em>vec1</em> input vector, the stored index is used to select the Nth element of the <em>vec1</em> vector.</p> <p>Thus, for example, if you wish to use this compute to find the bond with maximum stretch, you can do it as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">local</span> <span class="n">batom1</span> <span class="n">batom2</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">bond</span><span class="o">/</span><span class="n">local</span> <span class="n">dist</span> -<span class="n">compute</span> <span class="mi">3</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">max</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_2</span> <span class="n">replace</span> <span class="mi">1</span> <span class="mi">3</span> <span class="n">replace</span> <span class="mi">2</span> <span class="mi">3</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">c_3</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_3</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_3</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all property/local batom1 batom2 +compute 2 all bond/local dist +compute 3 all reduce max c_1[1] c_1[2] c_2 replace 1 3 replace 2 3 +thermo_style custom step temp c_3[1] c_3[2] c_3[3] +</pre> <p>The first two input values in the compute reduce command are vectors with the IDs of the 2 atoms in each bond, using the <a class="reference internal" href="compute_property_local.html"><span class="doc">compute property/local</span></a> command. The last input value is bond distance, using the <a class="reference internal" href="compute_bond_local.html"><span class="doc">compute bond/local</span></a> command. Instead of taking the diff --git a/doc/html/compute_rigid_local.html b/doc/html/compute_rigid_local.html index 154d01a909..7f7d5630fa 100644 --- a/doc/html/compute_rigid_local.html +++ b/doc/html/compute_rigid_local.html @@ -202,10 +202,10 @@ there will be no consistent ordering of the entries within the local vector or array from one timestep to the next.</p> <p>Here is an example of how to use this compute to dump rigid body info to a file:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">rigid</span><span class="o">/</span><span class="n">local</span> <span class="n">myRigid</span> <span class="n">mol</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">fx</span> <span class="n">fy</span> <span class="n">fz</span> -<span class="n">dump</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">local</span> <span class="mi">1000</span> <span class="n">tmp</span><span class="o">.</span><span class="n">dump</span> <span class="n">index</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">7</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all rigid/local myRigid mol x y z fx fy fz +dump 1 all local 1000 tmp.dump index c_1[1] c_1[2] c_1[3] c_1[4] c_1[5] c_1[6] c_1[7] +</pre> <hr class="docutils" /> <p>This section explains the rigid body attributes that can be specified.</p> <p>The <em>id</em> attribute is the atomID of the atom which owns the rigid body, which is diff --git a/doc/html/compute_saed.html b/doc/html/compute_saed.html index 5a40350a0d..bc78dd1378 100644 --- a/doc/html/compute_saed.html +++ b/doc/html/compute_saed.html @@ -157,14 +157,14 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">saed</span> <span class="mf">0.0251</span> <span class="n">Al</span> <span class="n">O</span> <span class="n">Kmax</span> <span class="mf">1.70</span> <span class="n">Zone</span> <span class="mi">0</span> <span class="mi">0</span> <span class="mi">1</span> <span class="n">dR_Ewald</span> <span class="mf">0.01</span> <span class="n">c</span> <span class="mf">0.5</span> <span class="mf">0.5</span> <span class="mf">0.5</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">saed</span> <span class="mf">0.0251</span> <span class="n">Ni</span> <span class="n">Kmax</span> <span class="mf">1.70</span> <span class="n">Zone</span> <span class="mi">0</span> <span class="mi">0</span> <span class="mi">0</span> <span class="n">c</span> <span class="mf">0.05</span> <span class="mf">0.05</span> <span class="mf">0.05</span> <span class="n">manual</span> <span class="n">echo</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">saed</span><span class="o">/</span><span class="n">vtk</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">c_1</span> <span class="n">file</span> <span class="n">Al2O3_001</span><span class="o">.</span><span class="n">saed</span> -<span class="n">fix</span> <span class="n">saed</span><span class="o">/</span><span class="n">vtk</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">c_2</span> <span class="n">file</span> <span class="n">Ni_000</span><span class="o">.</span><span class="n">saed</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all saed 0.0251 Al O Kmax 1.70 Zone 0 0 1 dR_Ewald 0.01 c 0.5 0.5 0.5 +compute 2 all saed 0.0251 Ni Kmax 1.70 Zone 0 0 0 c 0.05 0.05 0.05 manual echo +</pre> +<pre class="literal-block"> +fix saed/vtk 1 1 1 c_1 file Al2O3_001.saed +fix saed/vtk 1 1 1 c_2 file Ni_000.saed +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -193,7 +193,7 @@ shown in the 2D diagram below.</p> height="auto" alt=""/> </a><p>For a mesh defined by the simulation domain, a rectilinear grid is -constructed with spacing <em>c</em><a href="#id1"><span class="problematic" id="id2">*</span></a>inv(A) along each reciprocal lattice +constructed with spacing <em>c</em>*inv(A) along each reciprocal lattice axis. Where A are the vectors corresponding to the edges of the simulation cell. If one or two directions has non-periodic boundary conditions, then the spacing in these directions is defined from the diff --git a/doc/html/compute_sna_atom.html b/doc/html/compute_sna_atom.html index e61705f25a..930f66a12e 100644 --- a/doc/html/compute_sna_atom.html +++ b/doc/html/compute_sna_atom.html @@ -134,11 +134,11 @@ <h1>compute snav/atom command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">sna</span><span class="o">/</span><span class="n">atom</span> <span class="n">rcutfac</span> <span class="n">rfac0</span> <span class="n">twojmax</span> <span class="n">R_1</span> <span class="n">R_2</span> <span class="o">...</span> <span class="n">w_1</span> <span class="n">w_2</span> <span class="o">...</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -<span class="n">compute</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">snad</span><span class="o">/</span><span class="n">atom</span> <span class="n">rcutfac</span> <span class="n">rfac0</span> <span class="n">twojmax</span> <span class="n">R_1</span> <span class="n">R_2</span> <span class="o">...</span> <span class="n">w_1</span> <span class="n">w_2</span> <span class="o">...</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -<span class="n">compute</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">snav</span><span class="o">/</span><span class="n">atom</span> <span class="n">rcutfac</span> <span class="n">rfac0</span> <span class="n">twojmax</span> <span class="n">R_1</span> <span class="n">R_2</span> <span class="o">...</span> <span class="n">w_1</span> <span class="n">w_2</span> <span class="o">...</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +compute ID group-ID sna/atom rcutfac rfac0 twojmax R_1 R_2 ... w_1 w_2 ... keyword values ... +compute ID group-ID snad/atom rcutfac rfac0 twojmax R_1 R_2 ... w_1 w_2 ... keyword values ... +compute ID group-ID snav/atom rcutfac rfac0 twojmax R_1 R_2 ... w_1 w_2 ... keyword values ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> command</li> <li>sna/atom = style name of this compute command</li> @@ -276,22 +276,22 @@ corresponding to a particular bispectrum component. The total number of columns and the identities of the bispectrum component contained in each column depend on the values of <em>twojmax</em> and <em>diagonal</em>, as described by the following piece of python code:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="k">for</span> <span class="n">j1</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="n">twojmax</span><span class="o">+</span><span class="mi">1</span><span class="p">):</span> - <span class="k">if</span><span class="p">(</span><span class="n">diagonal</span><span class="o">==</span><span class="mi">2</span><span class="p">):</span> - <span class="nb">print</span> <span class="n">j1</span><span class="o">/</span><span class="mf">2.</span><span class="p">,</span><span class="n">j1</span><span class="o">/</span><span class="mf">2.</span><span class="p">,</span><span class="n">j1</span><span class="o">/</span><span class="mf">2.</span> - <span class="k">elif</span><span class="p">(</span><span class="n">diagonal</span><span class="o">==</span><span class="mi">1</span><span class="p">):</span> - <span class="k">for</span> <span class="n">j</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="nb">min</span><span class="p">(</span><span class="n">twojmax</span><span class="p">,</span><span class="mi">2</span><span class="o">*</span><span class="n">j1</span><span class="p">)</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">):</span> - <span class="nb">print</span> <span class="n">j1</span><span class="o">/</span><span class="mf">2.</span><span class="p">,</span><span class="n">j1</span><span class="o">/</span><span class="mf">2.</span><span class="p">,</span><span class="n">j</span><span class="o">/</span><span class="mf">2.</span> - <span class="k">elif</span><span class="p">(</span><span class="n">diagonal</span><span class="o">==</span><span class="mi">0</span><span class="p">):</span> - <span class="k">for</span> <span class="n">j2</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="n">j1</span><span class="o">+</span><span class="mi">1</span><span class="p">):</span> - <span class="k">for</span> <span class="n">j</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">j1</span><span class="o">-</span><span class="n">j2</span><span class="p">,</span><span class="nb">min</span><span class="p">(</span><span class="n">twojmax</span><span class="p">,</span><span class="n">j1</span><span class="o">+</span><span class="n">j2</span><span class="p">)</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">):</span> - <span class="nb">print</span> <span class="n">j1</span><span class="o">/</span><span class="mf">2.</span><span class="p">,</span><span class="n">j2</span><span class="o">/</span><span class="mf">2.</span><span class="p">,</span><span class="n">j</span><span class="o">/</span><span class="mf">2.</span> - <span class="k">elif</span><span class="p">(</span><span class="n">diagonal</span><span class="o">==</span><span class="mi">3</span><span class="p">):</span> - <span class="k">for</span> <span class="n">j2</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="n">j1</span><span class="o">+</span><span class="mi">1</span><span class="p">):</span> - <span class="k">for</span> <span class="n">j</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">j1</span><span class="o">-</span><span class="n">j2</span><span class="p">,</span><span class="nb">min</span><span class="p">(</span><span class="n">twojmax</span><span class="p">,</span><span class="n">j1</span><span class="o">+</span><span class="n">j2</span><span class="p">)</span><span class="o">+</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">):</span> - <span class="k">if</span> <span class="p">(</span><span class="n">j</span><span class="o">>=</span><span class="n">j1</span><span class="p">):</span> <span class="nb">print</span> <span class="n">j1</span><span class="o">/</span><span class="mf">2.</span><span class="p">,</span><span class="n">j2</span><span class="o">/</span><span class="mf">2.</span><span class="p">,</span><span class="n">j</span><span class="o">/</span><span class="mf">2.</span> -</pre></div> -</div> +<pre class="literal-block"> +for j1 in range(0,twojmax+1): + if(diagonal==2): + print j1/2.,j1/2.,j1/2. + elif(diagonal==1): + for j in range(0,min(twojmax,2*j1)+1,2): + print j1/2.,j1/2.,j/2. + elif(diagonal==0): + for j2 in range(0,j1+1): + for j in range(j1-j2,min(twojmax,j1+j2)+1,2): + print j1/2.,j2/2.,j/2. + elif(diagonal==3): + for j2 in range(0,j1+1): + for j in range(j1-j2,min(twojmax,j1+j2)+1,2): + if (j>=j1): print j1/2.,j2/2.,j/2. +</pre> <p>Compute <em>snad/atom</em> evaluates a per-atom array. The columns are arranged into <em>ntypes</em> blocks, listed in order of atom type <em>I</em>. Each block contains three sub-blocks corresponding to the <em>x</em>, <em>y</em>, and <em>z</em> diff --git a/doc/html/compute_stress_atom.html b/doc/html/compute_stress_atom.html index e99ece1705..c4704bbbbd 100644 --- a/doc/html/compute_stress_atom.html +++ b/doc/html/compute_stress_atom.html @@ -234,12 +234,12 @@ d = dimension and V is the volume of the system, the result should be -P, where P is the total pressure of the system.</p> <p>These lines in an input script for a 3d system should yield that result. I.e. the last 2 columns of thermo output will be the same:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">peratom</span> <span class="nb">all</span> <span class="n">stress</span><span class="o">/</span><span class="n">atom</span> <span class="n">NULL</span> -<span class="n">compute</span> <span class="n">p</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">sum</span> <span class="n">c_peratom</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_peratom</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_peratom</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">press</span> <span class="n">equal</span> <span class="o">-</span><span class="p">(</span><span class="n">c_p</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span><span class="o">+</span><span class="n">c_p</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span><span class="o">+</span><span class="n">c_p</span><span class="p">[</span><span class="mi">3</span><span class="p">])</span><span class="o">/</span><span class="p">(</span><span class="mi">3</span><span class="o">*</span><span class="n">vol</span><span class="p">)</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">etotal</span> <span class="n">press</span> <span class="n">v_press</span> -</pre></div> -</div> +<pre class="literal-block"> +compute peratom all stress/atom NULL +compute p all reduce sum c_peratom[1] c_peratom[2] c_peratom[3] +variable press equal -(c_p[1]+c_p[2]+c_p[3])/(3*vol) +thermo_style custom step temp etotal press v_press +</pre> <p><strong>Output info:</strong></p> <p>This compute calculates a per-atom array with 6 columns, which can be accessed by indices 1-6 by any command that uses per-atom values from diff --git a/doc/html/compute_temp_cs.html b/doc/html/compute_temp_cs.html index 4751726a56..81927952be 100644 --- a/doc/html/compute_temp_cs.html +++ b/doc/html/compute_temp_cs.html @@ -140,10 +140,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">oxygen_c</span><span class="o">-</span><span class="n">s</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">cs</span> <span class="n">O_core</span> <span class="n">O_shell</span> -<span class="n">compute</span> <span class="n">core_shells</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">cs</span> <span class="n">cores</span> <span class="n">shells</span> -</pre></div> -</div> +<pre class="literal-block"> +compute oxygen_c-s all temp/cs O_core O_shell +compute core_shells all temp/cs cores shells +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/compute_temp_eff.html b/doc/html/compute_temp_eff.html index 4dadf7de39..d11ad256a8 100644 --- a/doc/html/compute_temp_eff.html +++ b/doc/html/compute_temp_eff.html @@ -170,11 +170,11 @@ reported by LAMMPS in the thermodynamic quantities reported via the <a class="reference internal" href="thermo_modify.html"><span class="doc">thermo_modify</span></a> command, as shown in the following example:</p> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">effTemp</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">eff</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">etotal</span> <span class="n">pe</span> <span class="n">ke</span> <span class="n">temp</span> <span class="n">press</span> -<span class="n">thermo_modify</span> <span class="n">temp</span> <span class="n">effTemp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute effTemp all temp/eff +thermo_style custom step etotal pe ke temp press +thermo_modify temp effTemp +</pre> <p>A 6-component kinetic energy tensor is also calculated by this compute for use in the computation of a pressure tensor. The formula for the components of the tensor is the same as the above formula, except that diff --git a/doc/html/compute_ti.html b/doc/html/compute_ti.html index 5701aeee75..8d6198637d 100644 --- a/doc/html/compute_ti.html +++ b/doc/html/compute_ti.html @@ -154,10 +154,10 @@ pair style args = atype v_name1 v_name2 </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ti</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mi">1</span> <span class="n">v_lj</span> <span class="n">v_dlj</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mi">2</span> <span class="n">v_c</span> <span class="n">v_dc</span> <span class="n">kspace</span> <span class="mi">1</span> <span class="n">v_ks</span> <span class="n">v_dks</span> -<span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ti</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mi">1</span><span class="o">*</span><span class="mi">3</span> <span class="n">v_lj</span> <span class="n">v_dlj</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="o">*</span> <span class="n">v_c</span> <span class="n">v_dc</span> <span class="n">kspace</span> <span class="o">*</span> <span class="n">v_ks</span> <span class="n">v_dks</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all ti lj/cut 1 v_lj v_dlj coul/long 2 v_c v_dc kspace 1 v_ks v_dks +compute 1 all ti lj/cut 1*3 v_lj v_dlj coul/long * v_c v_dc kspace * v_ks v_dks +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -192,7 +192,7 @@ with respect to <em>lambda</em>.</p> numeric values can be used, as in the 1st example above. Or a wildcard asterisk can be used in place of or in conjunction with the <em>atype</em> argument to select multiple atom types. This takes the form -“*” or “<em>n” or “n</em>” or “m*n”. If N = the number of atom types, then +“*” or “*n” or “n*” or “m*n”. If N = the number of atom types, then an asterisk with no numeric values means all types from 1 to N. A leading asterisk means all types from 1 to n (inclusive). A trailing asterisk means all types from n to N (inclusive). A middle asterisk diff --git a/doc/html/compute_voronoi_atom.html b/doc/html/compute_voronoi_atom.html index 630ee3bac6..ed4cd612a1 100644 --- a/doc/html/compute_voronoi_atom.html +++ b/doc/html/compute_voronoi_atom.html @@ -158,14 +158,14 @@ or <em>face_threshold</em> or <em>neighbors</em> or <em>peratom</em></li> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">voronoi</span><span class="o">/</span><span class="n">atom</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="n">precipitate</span> <span class="n">voronoi</span><span class="o">/</span><span class="n">atom</span> <span class="n">surface</span> <span class="n">matrix</span> -<span class="n">compute</span> <span class="mi">3</span><span class="n">b</span> <span class="n">precipitate</span> <span class="n">voronoi</span><span class="o">/</span><span class="n">atom</span> <span class="n">radius</span> <span class="n">v_r</span> -<span class="n">compute</span> <span class="mi">4</span> <span class="n">solute</span> <span class="n">voronoi</span><span class="o">/</span><span class="n">atom</span> <span class="n">only_group</span> -<span class="n">compute</span> <span class="mi">5</span> <span class="n">defects</span> <span class="n">voronoi</span><span class="o">/</span><span class="n">atom</span> <span class="n">occupation</span> -<span class="n">compute</span> <span class="mi">6</span> <span class="nb">all</span> <span class="n">voronoi</span><span class="o">/</span><span class="n">atom</span> <span class="n">neighbors</span> <span class="n">yes</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all voronoi/atom +compute 2 precipitate voronoi/atom surface matrix +compute 3b precipitate voronoi/atom radius v_r +compute 4 solute voronoi/atom only_group +compute 5 defects voronoi/atom occupation +compute 6 all voronoi/atom neighbors yes +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -199,11 +199,11 @@ can be obtained by running a “reduce sum” compute on c_2[3]</p> <p>If the <em>radius</em> keyword is specified with an atom style variable as the argument, a poly-disperse Voronoi tessellation is performed. Examples for radius variables are</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">r1</span> <span class="n">atom</span> <span class="p">(</span><span class="nb">type</span><span class="o">==</span><span class="mi">1</span><span class="p">)</span><span class="o">*</span><span class="mf">0.1</span><span class="o">+</span><span class="p">(</span><span class="nb">type</span><span class="o">==</span><span class="mi">2</span><span class="p">)</span><span class="o">*</span><span class="mf">0.4</span> -<span class="n">compute</span> <span class="n">radius</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">atom</span> <span class="n">radius</span> -<span class="n">variable</span> <span class="n">r2</span> <span class="n">atom</span> <span class="n">c_radius</span> -</pre></div> -</div> +<pre class="literal-block"> +variable r1 atom (type==1)*0.1+(type==2)*0.4 +compute radius all property/atom radius +variable r2 atom c_radius +</pre> <p>Here v_r1 specifies a per-type radius of 0.1 units for type 1 atoms and 0.4 units for type 2 atoms, and v_r2 accesses the radius property present in atom_style sphere for granular models.</p> @@ -247,10 +247,10 @@ uses local values from a compute as input. See <a class="reference internal" hr options. More specifically, the array can be accessed by a <a class="reference internal" href="dump.html"><span class="doc">dump local</span></a> command to write a file containing all the Voronoi neighbors in a system:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">6</span> <span class="nb">all</span> <span class="n">voronoi</span><span class="o">/</span><span class="n">atom</span> <span class="n">neighbors</span> <span class="n">yes</span> -<span class="n">dump</span> <span class="n">d2</span> <span class="nb">all</span> <span class="n">local</span> <span class="mi">1</span> <span class="n">dump</span><span class="o">.</span><span class="n">neighbors</span> <span class="n">index</span> <span class="n">c_6</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_6</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_6</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 6 all voronoi/atom neighbors yes +dump d2 all local 1 dump.neighbors index c_6[1] c_6[2] c_6[3] +</pre> <p>If the <em>face_threshold</em> keyword is used, then only faces with areas greater than the threshold are stored.</p> <hr class="docutils" /> diff --git a/doc/html/compute_xrd.html b/doc/html/compute_xrd.html index b16569ab91..caeec6cf77 100644 --- a/doc/html/compute_xrd.html +++ b/doc/html/compute_xrd.html @@ -159,10 +159,10 @@ <span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">xrd</span> <span class="mf">1.541838</span> <span class="n">Al</span> <span class="n">O</span> <span class="mi">2</span><span class="n">Theta</span> <span class="mi">10</span> <span class="mi">100</span> <span class="n">c</span> <span class="mf">0.05</span> <span class="mf">0.05</span> <span class="mf">0.05</span> <span class="n">LP</span> <span class="mi">1</span> <span class="n">manual</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span><span class="o">/</span><span class="n">weight</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.087</span> <span class="mf">0.87</span> <span class="mi">250</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">mode</span> <span class="n">vector</span> <span class="n">file</span> <span class="n">Rad2Theta</span><span class="o">.</span><span class="n">xrd</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span><span class="o">/</span><span class="n">weight</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">10</span> <span class="mi">100</span> <span class="mi">250</span> <span class="n">c_2</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_2</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">mode</span> <span class="n">vector</span> <span class="n">file</span> <span class="n">Deg2Theta</span><span class="o">.</span><span class="n">xrd</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all ave/histo/weight 1 1 1 0.087 0.87 250 c_1[1] c_1[2] mode vector file Rad2Theta.xrd +fix 2 all ave/histo/weight 1 1 1 10 100 250 c_2[1] c_2[2] mode vector file Deg2Theta.xrd +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -196,7 +196,7 @@ shown in the 2D diagram below.</p> height="auto" alt=""/> </a><p>For a mesh defined by the simulation domain, a rectilinear grid is -constructed with spacing <em>c</em><a href="#id1"><span class="problematic" id="id2">*</span></a>inv(A) along each reciprocal lattice +constructed with spacing <em>c</em>*inv(A) along each reciprocal lattice axis. Where A are the vectors corresponding to the edges of the simulation cell. If one or two directions has non-periodic boundary conditions, then the spacing in these directions is defined from the diff --git a/doc/html/create_atoms.html b/doc/html/create_atoms.html index 03785a73f4..3786038236 100644 --- a/doc/html/create_atoms.html +++ b/doc/html/create_atoms.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>create_atoms command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">create_atoms</span> <span class="nb">type</span> <span class="n">style</span> <span class="n">args</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +create_atoms type style args keyword values ... +</pre> <ul class="simple"> <li>type = atom type (1-Ntypes) of atoms to create (offset for molecule creation)</li> <li>style = <em>box</em> or <em>region</em> or <em>single</em> or <em>random</em></li> @@ -172,12 +172,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">create_atoms</span> <span class="mi">1</span> <span class="n">box</span> -<span class="n">create_atoms</span> <span class="mi">3</span> <span class="n">region</span> <span class="n">regsphere</span> <span class="n">basis</span> <span class="mi">2</span> <span class="mi">3</span> -<span class="n">create_atoms</span> <span class="mi">3</span> <span class="n">single</span> <span class="mi">0</span> <span class="mi">0</span> <span class="mi">5</span> -<span class="n">create_atoms</span> <span class="mi">1</span> <span class="n">box</span> <span class="n">var</span> <span class="n">v</span> <span class="nb">set</span> <span class="n">x</span> <span class="n">xpos</span> <span class="nb">set</span> <span class="n">y</span> <span class="n">ypos</span> -</pre></div> -</div> +<pre class="literal-block"> +create_atoms 1 box +create_atoms 3 region regsphere basis 2 3 +create_atoms 3 single 0 0 5 +create_atoms 1 box var v set x xpos set y ypos +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -328,19 +328,19 @@ the sinusoid would appear to be “smoother”. Also note the use of th “xlat” and “ylat” <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style</span></a> keywords which converts lattice spacings to distance. Click on the image for a larger version.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable x equal 100 +<pre class="literal-block"> +variable x equal 100 variable y equal 25 lattice hex 0.8442 region box block 0 $x 0 $y -0.5 0.5 -create_box 1 box -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">xx</span> <span class="n">equal</span> <span class="mf">0.0</span> -<span class="n">variable</span> <span class="n">yy</span> <span class="n">equal</span> <span class="mf">0.0</span> -<span class="n">variable</span> <span class="n">v</span> <span class="n">equal</span> <span class="s2">"(0.2*v_y*ylat * cos(v_xx/xlat * 2.0*PI*4.0/v_x) + 0.5*v_y*ylat - v_yy) > 0.0"</span> -<span class="n">create_atoms</span> <span class="mi">1</span> <span class="n">box</span> <span class="n">var</span> <span class="n">v</span> <span class="nb">set</span> <span class="n">x</span> <span class="n">xx</span> <span class="nb">set</span> <span class="n">y</span> <span class="n">yy</span> -</pre></div> -</div> +create_box 1 box +</pre> +<pre class="literal-block"> +variable xx equal 0.0 +variable yy equal 0.0 +variable v equal "(0.2*v_y*ylat * cos(v_xx/xlat * 2.0*PI*4.0/v_x) + 0.5*v_y*ylat - v_yy) > 0.0" +create_atoms 1 box var v set x xx set y yy +</pre> <a class="" data-lightbox="group-default" href="_images/sinusoid.jpg" diff --git a/doc/html/delete_bonds.html b/doc/html/delete_bonds.html index 18e52920f4..b10ff2515d 100644 --- a/doc/html/delete_bonds.html +++ b/doc/html/delete_bonds.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>delete_bonds command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">delete_bonds</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">style</span> <span class="n">arg</span> <span class="n">keyword</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +delete_bonds group-ID style arg keyword ... +</pre> <ul> <li><p class="first">group-ID = group ID</p> </li> @@ -157,12 +157,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">delete_bonds</span> <span class="n">frozen</span> <span class="n">multi</span> <span class="n">remove</span> -<span class="n">delete_bonds</span> <span class="nb">all</span> <span class="n">atom</span> <span class="mi">4</span> <span class="n">special</span> -<span class="n">delete_bonds</span> <span class="nb">all</span> <span class="n">bond</span> <span class="mi">0</span><span class="o">*</span><span class="mi">3</span> <span class="n">special</span> -<span class="n">delete_bonds</span> <span class="nb">all</span> <span class="n">stats</span> -</pre></div> -</div> +<pre class="literal-block"> +delete_bonds frozen multi remove +delete_bonds all atom 4 special +delete_bonds all bond 0*3 special +delete_bonds all stats +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -183,7 +183,7 @@ be an integer from 0 to N, where N is the number of relevant types (atom types, bond types, etc). A value of 0 is only relevant for style <em>bond</em>; see details below. In all cases, a wildcard asterisk can be used in place of or in conjunction with the <em>type</em> argument to -specify a range of types. This takes the form “*” or “<em>n” or “n</em>” or +specify a range of types. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the number of types, then an asterisk with no numeric values means all types from 0 to N. A leading asterisk means all types from 0 to n (inclusive). A trailing asterisk means all types diff --git a/doc/html/dihedral_charmm.html b/doc/html/dihedral_charmm.html index 80c9b47043..9794ca050e 100644 --- a/doc/html/dihedral_charmm.html +++ b/doc/html/dihedral_charmm.html @@ -137,18 +137,18 @@ <h1>dihedral_style charmm/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">charmm</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style charmm +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">charmm</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mf">0.2</span> <span class="mi">1</span> <span class="mi">180</span> <span class="mf">1.0</span> -<span class="n">dihedral_coeff</span> <span class="mi">2</span> <span class="mf">1.8</span> <span class="mi">1</span> <span class="mi">0</span> <span class="mf">1.0</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mf">3.1</span> <span class="mi">2</span> <span class="mi">180</span> <span class="mf">0.5</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style charmm +dihedral_coeff 1 0.2 1 180 1.0 +dihedral_coeff 2 1.8 1 0 1.0 +dihedral_coeff 1 3.1 2 180 0.5 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_class2.html b/doc/html/dihedral_class2.html index 40f10f1e74..e9556733e2 100644 --- a/doc/html/dihedral_class2.html +++ b/doc/html/dihedral_class2.html @@ -131,21 +131,21 @@ <h1>dihedral_style class2/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">class2</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style class2 +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">class2</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mi">100</span> <span class="mi">75</span> <span class="mi">100</span> <span class="mi">70</span> <span class="mi">80</span> <span class="mi">60</span> -<span class="n">dihedral_coeff</span> <span class="o">*</span> <span class="n">mbt</span> <span class="mf">3.5945</span> <span class="mf">0.1704</span> <span class="o">-</span><span class="mf">0.5490</span> <span class="mf">1.5228</span> -<span class="n">dihedral_coeff</span> <span class="o">*</span> <span class="n">ebt</span> <span class="mf">0.3417</span> <span class="mf">0.3264</span> <span class="o">-</span><span class="mf">0.9036</span> <span class="mf">0.1368</span> <span class="mf">0.0</span> <span class="o">-</span><span class="mf">0.8080</span> <span class="mf">1.0119</span> <span class="mf">1.1010</span> -<span class="n">dihedral_coeff</span> <span class="mi">2</span> <span class="n">at</span> <span class="mf">0.0</span> <span class="o">-</span><span class="mf">0.1850</span> <span class="o">-</span><span class="mf">0.7963</span> <span class="o">-</span><span class="mf">2.0220</span> <span class="mf">0.0</span> <span class="o">-</span><span class="mf">0.3991</span> <span class="mf">110.2453</span> <span class="mf">105.1270</span> -<span class="n">dihedral_coeff</span> <span class="o">*</span> <span class="n">aat</span> <span class="o">-</span><span class="mf">13.5271</span> <span class="mf">110.2453</span> <span class="mf">105.1270</span> -<span class="n">dihedral_coeff</span> <span class="o">*</span> <span class="n">bb13</span> <span class="mf">0.0</span> <span class="mf">1.0119</span> <span class="mf">1.1010</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style class2 +dihedral_coeff 1 100 75 100 70 80 60 +dihedral_coeff * mbt 3.5945 0.1704 -0.5490 1.5228 +dihedral_coeff * ebt 0.3417 0.3264 -0.9036 0.1368 0.0 -0.8080 1.0119 1.1010 +dihedral_coeff 2 at 0.0 -0.1850 -0.7963 -2.0220 0.0 -0.3991 110.2453 105.1270 +dihedral_coeff * aat -13.5271 110.2453 105.1270 +dihedral_coeff * bb13 0.0 1.0119 1.1010 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_cosine_shift_exp.html b/doc/html/dihedral_cosine_shift_exp.html index b6e718bce8..1cc73331be 100644 --- a/doc/html/dihedral_cosine_shift_exp.html +++ b/doc/html/dihedral_cosine_shift_exp.html @@ -131,16 +131,16 @@ <h1>dihedral_style cosine/shift/exp/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">shift</span><span class="o">/</span><span class="n">exp</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style cosine/shift/exp +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">cosine</span><span class="o">/</span><span class="n">shift</span><span class="o">/</span><span class="n">exp</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mf">10.0</span> <span class="mf">45.0</span> <span class="mf">2.0</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style cosine/shift/exp +dihedral_coeff 1 10.0 45.0 2.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_fourier.html b/doc/html/dihedral_fourier.html index 0feb09036b..1470ba7346 100644 --- a/doc/html/dihedral_fourier.html +++ b/doc/html/dihedral_fourier.html @@ -131,16 +131,16 @@ <h1>dihedral_style fourier/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">fourier</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style fourier +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">fourier</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mi">3</span> <span class="o">-</span><span class="mf">0.846200</span> <span class="mi">3</span> <span class="mf">0.0</span> <span class="mf">7.578800</span> <span class="mi">1</span> <span class="mi">0</span> <span class="mf">0.138000</span> <span class="mi">2</span> <span class="o">-</span><span class="mf">180.0</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style fourier +dihedral_coeff 1 3 -0.846200 3 0.0 7.578800 1 0 0.138000 2 -180.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_harmonic.html b/doc/html/dihedral_harmonic.html index 0c37cf26cc..2a8ed8a6f7 100644 --- a/doc/html/dihedral_harmonic.html +++ b/doc/html/dihedral_harmonic.html @@ -134,16 +134,16 @@ <h1>dihedral_style harmonic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">harmonic</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style harmonic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">harmonic</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mf">80.0</span> <span class="mi">1</span> <span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style harmonic +dihedral_coeff 1 80.0 1 2 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_helix.html b/doc/html/dihedral_helix.html index 14a06fac03..b8d5653099 100644 --- a/doc/html/dihedral_helix.html +++ b/doc/html/dihedral_helix.html @@ -131,16 +131,16 @@ <h1>dihedral_style helix/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">helix</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style helix +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">helix</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mf">80.0</span> <span class="mf">100.0</span> <span class="mf">40.0</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style helix +dihedral_coeff 1 80.0 100.0 40.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_multi_harmonic.html b/doc/html/dihedral_multi_harmonic.html index c8f3b7b886..ec192b670e 100644 --- a/doc/html/dihedral_multi_harmonic.html +++ b/doc/html/dihedral_multi_harmonic.html @@ -131,16 +131,16 @@ <h1>dihedral_style multi/harmonic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">harmonic</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style multi/harmonic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">harmonic</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mi">20</span> <span class="mi">20</span> <span class="mi">20</span> <span class="mi">20</span> <span class="mi">20</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style multi/harmonic +dihedral_coeff 1 20 20 20 20 20 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_nharmonic.html b/doc/html/dihedral_nharmonic.html index eb35a50a58..eb59b45627 100644 --- a/doc/html/dihedral_nharmonic.html +++ b/doc/html/dihedral_nharmonic.html @@ -131,16 +131,16 @@ <h1>dihedral_style nharmonic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">nharmonic</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style nharmonic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">nharmonic</span> -<span class="n">dihedral_coeff</span> <span class="mi">3</span> <span class="mf">10.0</span> <span class="mf">20.0</span> <span class="mf">30.0</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style nharmonic +dihedral_coeff 3 10.0 20.0 30.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_opls.html b/doc/html/dihedral_opls.html index 2f73119b58..fd7c9f1e4f 100644 --- a/doc/html/dihedral_opls.html +++ b/doc/html/dihedral_opls.html @@ -137,18 +137,18 @@ <h1>dihedral_style opls/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">opls</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style opls +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">opls</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mf">1.740</span> <span class="o">-</span><span class="mf">0.157</span> <span class="mf">0.279</span> <span class="mf">0.00</span> <span class="c1"># CT-CT-CT-CT</span> -<span class="n">dihedral_coeff</span> <span class="mi">2</span> <span class="mf">0.000</span> <span class="mf">0.000</span> <span class="mf">0.366</span> <span class="mf">0.000</span> <span class="c1"># CT-CT-CT-HC</span> -<span class="n">dihedral_coeff</span> <span class="mi">3</span> <span class="mf">0.000</span> <span class="mf">0.000</span> <span class="mf">0.318</span> <span class="mf">0.000</span> <span class="c1"># HC-CT-CT-HC</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style opls +dihedral_coeff 1 1.740 -0.157 0.279 0.00 # CT-CT-CT-CT +dihedral_coeff 2 0.000 0.000 0.366 0.000 # CT-CT-CT-HC +dihedral_coeff 3 0.000 0.000 0.318 0.000 # HC-CT-CT-HC +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_quadratic.html b/doc/html/dihedral_quadratic.html index 3cc35b63dd..3b490ae5d6 100644 --- a/doc/html/dihedral_quadratic.html +++ b/doc/html/dihedral_quadratic.html @@ -131,16 +131,16 @@ <h1>dihedral_style quadratic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">quadratic</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style quadratic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">quadratic</span> -<span class="n">dihedral_coeff</span> <span class="mf">100.0</span> <span class="mf">80.0</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style quadratic +dihedral_coeff 100.0 80.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_spherical.html b/doc/html/dihedral_spherical.html index 1d9a9f7402..3e38d2d8ca 100644 --- a/doc/html/dihedral_spherical.html +++ b/doc/html/dihedral_spherical.html @@ -128,18 +128,18 @@ <span id="index-0"></span><h1>dihedral_style spherical command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">spherical</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style spherical +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">286.1</span> <span class="mi">1</span> <span class="mi">124</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">90.0</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mf">90.0</span> <span class="mi">0</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="mi">3</span> <span class="mf">286.1</span> <span class="mi">1</span> <span class="mi">114</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">90</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mf">90.0</span> <span class="mi">0</span> <span class="o">&</span> - <span class="mf">17.3</span> <span class="mi">0</span> <span class="mf">0.0</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mi">158</span> <span class="mi">1</span> <span class="mi">0</span> <span class="mf">0.0</span> <span class="mi">0</span> <span class="o">&</span> - <span class="mf">15.1</span> <span class="mi">0</span> <span class="mf">0.0</span> <span class="mi">0</span> <span class="mi">0</span> <span class="mf">0.0</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mf">167.3</span> <span class="mi">1</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_coeff 1 1 286.1 1 124 1 1 90.0 0 1 90.0 0 +dihedral_coeff 1 3 286.1 1 114 1 1 90 0 1 90.0 0 & + 17.3 0 0.0 0 1 158 1 0 0.0 0 & + 15.1 0 0.0 0 0 0.0 0 1 167.3 1 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_style.html b/doc/html/dihedral_style.html index 9b21cd4640..c19d4a1a2e 100644 --- a/doc/html/dihedral_style.html +++ b/doc/html/dihedral_style.html @@ -128,20 +128,20 @@ <span id="index-0"></span><h1>dihedral_style command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">style</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style style +</pre> <ul class="simple"> <li>style = <em>none</em> or <em>hybrid</em> or <em>charmm</em> or <em>class2</em> or <em>harmonic</em> or <em>helix</em> or <em>multi/harmonic</em> or <em>opls</em></li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">harmonic</span> -<span class="n">dihedral_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">harmonic</span> -<span class="n">dihedral_style</span> <span class="n">hybrid</span> <span class="n">harmonic</span> <span class="n">charmm</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style harmonic +dihedral_style multi/harmonic +dihedral_style hybrid harmonic charmm +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/dihedral_table.html b/doc/html/dihedral_table.html index d967731158..fe30f6ab11 100644 --- a/doc/html/dihedral_table.html +++ b/doc/html/dihedral_table.html @@ -131,9 +131,9 @@ <h1>dihedral_style table/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">table</span> <span class="n">style</span> <span class="n">Ntable</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style table style Ntable +</pre> <ul class="simple"> <li>style = <em>linear</em> or <em>spline</em> = method of interpolation</li> <li>Ntable = size of the internal lookup table</li> @@ -141,12 +141,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dihedral_style</span> <span class="n">table</span> <span class="n">spline</span> <span class="mi">400</span> -<span class="n">dihedral_style</span> <span class="n">table</span> <span class="n">linear</span> <span class="mi">1000</span> -<span class="n">dihedral_coeff</span> <span class="mi">1</span> <span class="n">file</span><span class="o">.</span><span class="n">table</span> <span class="n">DIH_TABLE1</span> -<span class="n">dihedral_coeff</span> <span class="mi">2</span> <span class="n">file</span><span class="o">.</span><span class="n">table</span> <span class="n">DIH_TABLE2</span> -</pre></div> -</div> +<pre class="literal-block"> +dihedral_style table spline 400 +dihedral_style table linear 1000 +dihedral_coeff 1 file.table DIH_TABLE1 +dihedral_coeff 2 file.table DIH_TABLE2 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -185,23 +185,23 @@ or blank lines.</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Table of the potential and its negative derivative</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">DIH_TABLE1</span> <span class="p">(</span><span class="n">keyword</span> <span class="ow">is</span> <span class="n">the</span> <span class="n">first</span> <span class="n">text</span> <span class="n">on</span> <span class="n">line</span><span class="p">)</span> -<span class="n">N</span> <span class="mi">30</span> <span class="n">DEGREES</span> <span class="p">(</span><span class="n">N</span><span class="p">,</span> <span class="n">NOF</span><span class="p">,</span> <span class="n">DEGREES</span><span class="p">,</span> <span class="n">RADIANS</span><span class="p">,</span> <span class="n">CHECKU</span><span class="o">/</span><span class="n">F</span><span class="p">)</span> - <span class="p">(</span><span class="n">blank</span> <span class="n">line</span><span class="p">)</span> -<span class="mi">1</span> <span class="o">-</span><span class="mf">168.0</span> <span class="o">-</span><span class="mf">1.40351172223</span> <span class="mf">0.0423346818422</span> -<span class="mi">2</span> <span class="o">-</span><span class="mf">156.0</span> <span class="o">-</span><span class="mf">1.70447981034</span> <span class="mf">0.00811786522531</span> -<span class="mi">3</span> <span class="o">-</span><span class="mf">144.0</span> <span class="o">-</span><span class="mf">1.62956100432</span> <span class="o">-</span><span class="mf">0.0184129719987</span> -<span class="o">...</span> -<span class="mi">30</span> <span class="mf">180.0</span> <span class="o">-</span><span class="mf">0.707106781187</span> <span class="mf">0.0719306095245</span> -</pre></div> -</div> +<pre class="literal-block"> +DIH_TABLE1 (keyword is the first text on line) +N 30 DEGREES (N, NOF, DEGREES, RADIANS, CHECKU/F) + (blank line) +1 -168.0 -1.40351172223 0.0423346818422 +2 -156.0 -1.70447981034 0.00811786522531 +3 -144.0 -1.62956100432 -0.0184129719987 +... +30 180.0 -0.707106781187 0.0719306095245 +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Example 2: table of the potential. Forces omitted</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">DIH_TABLE2</span> -<span class="n">N</span> <span class="mi">30</span> <span class="n">NOF</span> <span class="n">CHECKU</span> <span class="n">testU</span><span class="o">.</span><span class="n">dat</span> <span class="n">CHECKF</span> <span class="n">testF</span><span class="o">.</span><span class="n">dat</span> -</pre></div> -</div> +<pre class="literal-block"> +DIH_TABLE2 +N 30 NOF CHECKU testU.dat CHECKF testF.dat +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="mi">1</span> <span class="o">-</span><span class="mf">168.0</span> <span class="o">-</span><span class="mf">1.40351172223</span> <span class="mi">2</span> <span class="o">-</span><span class="mf">156.0</span> <span class="o">-</span><span class="mf">1.70447981034</span> <span class="mi">3</span> <span class="o">-</span><span class="mf">144.0</span> <span class="o">-</span><span class="mf">1.62956100432</span> diff --git a/doc/html/dump.html b/doc/html/dump.html index b47465bc33..d76697dbba 100644 --- a/doc/html/dump.html +++ b/doc/html/dump.html @@ -239,19 +239,19 @@ i_name = per-atom integer vector with name, managed by fix property/atom </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dump</span> <span class="n">myDump</span> <span class="nb">all</span> <span class="n">atom</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">.</span><span class="n">atom</span> -<span class="n">dump</span> <span class="n">myDump</span> <span class="nb">all</span> <span class="n">atom</span><span class="o">/</span><span class="n">mpiio</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">.</span><span class="n">atom</span><span class="o">.</span><span class="n">mpiio</span> -<span class="n">dump</span> <span class="n">myDump</span> <span class="nb">all</span> <span class="n">atom</span><span class="o">/</span><span class="n">gz</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">.</span><span class="n">atom</span><span class="o">.</span><span class="n">gz</span> -<span class="n">dump</span> <span class="mi">2</span> <span class="n">subgroup</span> <span class="n">atom</span> <span class="mi">50</span> <span class="n">dump</span><span class="o">.</span><span class="n">run</span><span class="o">.</span><span class="n">bin</span> -<span class="n">dump</span> <span class="mi">2</span> <span class="n">subgroup</span> <span class="n">atom</span> <span class="mi">50</span> <span class="n">dump</span><span class="o">.</span><span class="n">run</span><span class="o">.</span><span class="n">mpiio</span><span class="o">.</span><span class="n">bin</span> -<span class="n">dump</span> <span class="mi">4</span><span class="n">a</span> <span class="nb">all</span> <span class="n">custom</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">.</span><span class="n">myforce</span><span class="o">.*</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">x</span> <span class="n">y</span> <span class="n">vx</span> <span class="n">fx</span> -<span class="n">dump</span> <span class="mi">4</span><span class="n">b</span> <span class="n">flow</span> <span class="n">custom</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">.%.</span><span class="n">myforce</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">c_myF</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">v_ke</span> -<span class="n">dump</span> <span class="mi">4</span><span class="n">b</span> <span class="n">flow</span> <span class="n">custom</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">.%.</span><span class="n">myforce</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">c_myF</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">v_ke</span> -<span class="n">dump</span> <span class="mi">2</span> <span class="n">inner</span> <span class="n">cfg</span> <span class="mi">10</span> <span class="n">dump</span><span class="o">.</span><span class="n">snap</span><span class="o">.*.</span><span class="n">cfg</span> <span class="n">mass</span> <span class="nb">type</span> <span class="n">xs</span> <span class="n">ys</span> <span class="n">zs</span> <span class="n">vx</span> <span class="n">vy</span> <span class="n">vz</span> -<span class="n">dump</span> <span class="n">snap</span> <span class="nb">all</span> <span class="n">cfg</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">.</span><span class="n">config</span><span class="o">.*.</span><span class="n">cfg</span> <span class="n">mass</span> <span class="nb">type</span> <span class="n">xs</span> <span class="n">ys</span> <span class="n">zs</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">c_Stress</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -<span class="n">dump</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">xtc</span> <span class="mi">1000</span> <span class="n">file</span><span class="o">.</span><span class="n">xtc</span> -</pre></div> -</div> +<pre class="literal-block"> +dump myDump all atom 100 dump.atom +dump myDump all atom/mpiio 100 dump.atom.mpiio +dump myDump all atom/gz 100 dump.atom.gz +dump 2 subgroup atom 50 dump.run.bin +dump 2 subgroup atom 50 dump.run.mpiio.bin +dump 4a all custom 100 dump.myforce.* id type x y vx fx +dump 4b flow custom 100 dump.%.myforce id type c_myF[3] v_ke +dump 4b flow custom 100 dump.%.myforce id type c_myF[*] v_ke +dump 2 inner cfg 10 dump.snap.*.cfg mass type xs ys zs vx vy vz +dump snap all cfg 100 dump.config.*.cfg mass type xs ys zs id type c_Stress[2] +dump 1 all xtc 1000 file.xtc +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -347,12 +347,12 @@ or m = shrink wrapped with a minimum value. See the bounding box which encloses the triclinic simulation box is output, along with the 3 tilt factors (xy, xz, yz) of the triclinic box, formatted as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">ITEM</span><span class="p">:</span> <span class="n">BOX</span> <span class="n">BOUNDS</span> <span class="n">xy</span> <span class="n">xz</span> <span class="n">yz</span> <span class="n">xx</span> <span class="n">yy</span> <span class="n">zz</span> -<span class="n">xlo_bound</span> <span class="n">xhi_bound</span> <span class="n">xy</span> -<span class="n">ylo_bound</span> <span class="n">yhi_bound</span> <span class="n">xz</span> -<span class="n">zlo_bound</span> <span class="n">zhi_bound</span> <span class="n">yz</span> -</pre></div> -</div> +<pre class="literal-block"> +ITEM: BOX BOUNDS xy xz yz xx yy zz +xlo_bound xhi_bound xy +ylo_bound yhi_bound xz +zlo_bound zhi_bound yz +</pre> <p>The presence of the text “xy xz yz” in the ITEM line indicates that the 3 tilt factors will be included on each of the 3 following lines. This bounding box is convenient for many visualization programs. The @@ -541,7 +541,7 @@ styles.</p> reference values from a compute or fix, like the <em>custom</em>, <em>cfg</em>, or <em>local</em> styles, the bracketed index I can be specified using a wildcard asterisk with the index to effectively specify multiple -values. This takes the form “*” or “<em>n” or “n</em>” or “m*n”. If N = the +values. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the size of the vector (for <em>mode</em> = scalar) or the number of columns in the array (for <em>mode</em> = vector), then an asterisk with no numeric values means all indices from 1 to N. A leading asterisk means all @@ -552,12 +552,12 @@ from m to n (inclusive).</p> had been listed one by one. E.g. these 2 dump commands are equivalent, since the <a class="reference internal" href="compute_stress_atom.html"><span class="doc">compute stress/atom</span></a> command creates a per-atom array with 6 columns:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">myPress</span> <span class="nb">all</span> <span class="n">stress</span><span class="o">/</span><span class="n">atom</span> <span class="n">NULL</span> -<span class="n">dump</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">custom</span> <span class="mi">100</span> <span class="n">tmp</span><span class="o">.</span><span class="n">dump</span> <span class="nb">id</span> <span class="n">myPress</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> -<span class="n">dump</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">custom</span> <span class="mi">100</span> <span class="n">tmp</span><span class="o">.</span><span class="n">dump</span> <span class="nb">id</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">&</span> - <span class="n">myPress</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span> <span class="n">myPress</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute myPress all stress/atom NULL +dump 2 all custom 100 tmp.dump id myPress[*] +dump 2 all custom 100 tmp.dump id myPress[1] myPress[2] myPress[3] & + myPress[4] myPress[5] myPress[6] +</pre> <hr class="docutils" /> <p>This section explains the local attributes that can be specified as part of the <em>local</em> style.</p> @@ -598,11 +598,11 @@ be specified with a wildcard asterisk to effectively specify multiple values.</p> <p>Here is an example of how to dump bond info for a system, including the distance and energy of each bond:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">local</span> <span class="n">batom1</span> <span class="n">batom2</span> <span class="n">btype</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">bond</span><span class="o">/</span><span class="n">local</span> <span class="n">dist</span> <span class="n">eng</span> -<span class="n">dump</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">local</span> <span class="mi">1000</span> <span class="n">tmp</span><span class="o">.</span><span class="n">dump</span> <span class="n">index</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">c_2</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_2</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all property/local batom1 batom2 btype +compute 2 all bond/local dist eng +dump 1 all local 1000 tmp.dump index c_1[1] c_1[2] c_1[3] c_2[1] c_2[2] +</pre> <hr class="docutils" /> <p>This section explains the atom attributes that can be specified as part of the <em>custom</em> and <em>cfg</em> styles.</p> diff --git a/doc/html/dump_custom_vtk.html b/doc/html/dump_custom_vtk.html index 8bd838f671..b77890476a 100644 --- a/doc/html/dump_custom_vtk.html +++ b/doc/html/dump_custom_vtk.html @@ -182,15 +182,15 @@ v_name = per-atom vector calculated by an atom-style variable with name </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dump</span> <span class="n">dmpvtk</span> <span class="nb">all</span> <span class="n">custom</span><span class="o">/</span><span class="n">vtk</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">*.</span><span class="n">myforce</span><span class="o">.</span><span class="n">vtk</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">vx</span> <span class="n">fx</span> -<span class="n">dump</span> <span class="n">dmpvtp</span> <span class="n">flow</span> <span class="n">custom</span><span class="o">/</span><span class="n">vtk</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">*.%.</span><span class="n">displace</span><span class="o">.</span><span class="n">vtp</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">c_myD</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_myD</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_myD</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">v_ke</span> -<span class="n">dump</span> <span class="n">e_data</span> <span class="nb">all</span> <span class="n">custom</span><span class="o">/</span><span class="n">vtk</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">*.</span><span class="n">vtu</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">spin</span> <span class="n">eradius</span> <span class="n">fx</span> <span class="n">fy</span> <span class="n">fz</span> <span class="n">eforce</span> -</pre></div> -</div> +<pre class="literal-block"> +dump dmpvtk all custom/vtk 100 dump*.myforce.vtk id type vx fx +dump dmpvtp flow custom/vtk 100 dump*.%.displace.vtp id type c_myD[1] c_myD[2] c_myD[3] v_ke +dump e_data all custom/vtk 100 dump*.vtu id type spin eradius fx fy fz eforce +</pre> <p>The style <em>custom/vtk</em> is similar to the <a class="reference internal" href="dump.html"><span class="doc">custom</span></a> style but uses the VTK library to write data to VTK simple legacy or XML format depending on the filename extension specified. This can be either -<a href="#id1"><span class="problematic" id="id2">**</span></a>.vtk* for the legacy format or <a href="#id3"><span class="problematic" id="id4">**</span></a>.vtp* and <a href="#id5"><span class="problematic" id="id6">**</span></a>.vtu*, respectively, +<em>*.vtk</em> for the legacy format or <em>*.vtp</em> and <em>*.vtu</em>, respectively, for the XML format; see the <a class="reference external" href="http://www.vtk.org/VTK/img/file-formats.pdf">VTK homepage</a> for a detailed description of these formats. Since this naming convention conflicts with the way binary output is usually specified (see below), diff --git a/doc/html/dump_image.html b/doc/html/dump_image.html index 2df937c169..356893b5d4 100644 --- a/doc/html/dump_image.html +++ b/doc/html/dump_image.html @@ -206,14 +206,14 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dump</span> <span class="n">d0</span> <span class="nb">all</span> <span class="n">image</span> <span class="mi">100</span> <span class="n">dump</span><span class="o">.*.</span><span class="n">jpg</span> <span class="nb">type</span> <span class="nb">type</span> -<span class="n">dump</span> <span class="n">d1</span> <span class="n">mobile</span> <span class="n">image</span> <span class="mi">500</span> <span class="n">snap</span><span class="o">.*.</span><span class="n">png</span> <span class="n">element</span> <span class="n">element</span> <span class="n">ssao</span> <span class="n">yes</span> <span class="mi">4539</span> <span class="mf">0.6</span> -<span class="n">dump</span> <span class="n">d2</span> <span class="nb">all</span> <span class="n">image</span> <span class="mi">200</span> <span class="n">img</span><span class="o">-*.</span><span class="n">ppm</span> <span class="nb">type</span> <span class="nb">type</span> <span class="n">zoom</span> <span class="mf">2.5</span> <span class="n">adiam</span> <span class="mf">1.5</span> <span class="n">size</span> <span class="mi">1280</span> <span class="mi">720</span> -<span class="n">dump</span> <span class="n">m0</span> <span class="nb">all</span> <span class="n">movie</span> <span class="mi">1000</span> <span class="n">movie</span><span class="o">.</span><span class="n">mpg</span> <span class="nb">type</span> <span class="nb">type</span> <span class="n">size</span> <span class="mi">640</span> <span class="mi">480</span> -<span class="n">dump</span> <span class="n">m1</span> <span class="nb">all</span> <span class="n">movie</span> <span class="mi">1000</span> <span class="n">movie</span><span class="o">.</span><span class="n">avi</span> <span class="nb">type</span> <span class="nb">type</span> <span class="n">size</span> <span class="mi">640</span> <span class="mi">480</span> -<span class="n">dump</span> <span class="n">m2</span> <span class="nb">all</span> <span class="n">movie</span> <span class="mi">100</span> <span class="n">movie</span><span class="o">.</span><span class="n">m4v</span> <span class="nb">type</span> <span class="nb">type</span> <span class="n">zoom</span> <span class="mf">1.8</span> <span class="n">adiam</span> <span class="n">v_value</span> <span class="n">size</span> <span class="mi">1280</span> <span class="mi">720</span> -</pre></div> -</div> +<pre class="literal-block"> +dump d0 all image 100 dump.*.jpg type type +dump d1 mobile image 500 snap.*.png element element ssao yes 4539 0.6 +dump d2 all image 200 img-*.ppm type type zoom 2.5 adiam 1.5 size 1280 720 +dump m0 all movie 1000 movie.mpg type type size 640 480 +dump m1 all movie 1000 movie.avi type type size 640 480 +dump m2 all movie 100 movie.m4v type type zoom 1.8 adiam v_value size 1280 720 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -310,7 +310,7 @@ atoms rendered in the image. They can be any atom attribute defined for the <a class="reference internal" href="dump.html"><span class="doc">dump custom</span></a> command, including <em>type</em> and <em>element</em>. This includes per-atom quantities calculated by a <a class="reference internal" href="compute.html"><span class="doc">compute</span></a>, <a class="reference internal" href="fix.html"><span class="doc">fix</span></a>, or <a class="reference internal" href="variable.html"><span class="doc">variable</span></a>, -which are prefixed by “<a href="#id9"><span class="problematic" id="id10">c_</span></a>”, “<a href="#id11"><span class="problematic" id="id12">f_</span></a>”, or “<a href="#id13"><span class="problematic" id="id14">v_</span></a>” respectively. Note that the +which are prefixed by “c_”, “f_”, or “v_” respectively. Note that the <em>diameter</em> setting can be overridden with a numeric value applied to all atoms by the optional <em>adiam</em> keyword.</p> <p>If <em>type</em> is specified for the <em>color</em> setting, then the color of each @@ -545,9 +545,9 @@ plane perpendicular to the view vector implied by the <em>theta</em> and <em>pni</em> values, and which is also in the plane defined by the view vector and user-specified up vector. Thus this internal vector is computed from the user-specified <em>up</em> vector as</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">up_internal</span> <span class="o">=</span> <span class="n">view</span> <span class="n">cross</span> <span class="p">(</span><span class="n">up</span> <span class="n">cross</span> <span class="n">view</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +up_internal = view cross (up cross view) +</pre> <p>This means the only restriction on the specified <em>up</em> vector is that it cannot be parallel to the <em>view</em> vector, implied by the <em>theta</em> and <em>phi</em> values.</p> @@ -619,10 +619,10 @@ MPEG or other movie file you can use:</p> </ol> </li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">%</span> <span class="n">convert</span> <span class="o">*.</span><span class="n">jpg</span> <span class="n">foo</span><span class="o">.</span><span class="n">gif</span> -<span class="o">%</span> <span class="n">convert</span> <span class="o">-</span><span class="n">loop</span> <span class="mi">1</span> <span class="o">*.</span><span class="n">ppm</span> <span class="n">foo</span><span class="o">.</span><span class="n">mpg</span> -</pre></div> -</div> +<pre class="literal-block"> +% convert *.jpg foo.gif +% convert -loop 1 *.ppm foo.mpg +</pre> <p>Animated GIF files from ImageMagick are unoptimized. You can use a program like gifsicle to optimize and massively shrink them. MPEG files created by ImageMagick are in MPEG-1 format with rather @@ -635,7 +635,7 @@ inefficient compression and low quality.</p> </ul> <p>Select “Open Image Sequence” under the File menu Load the images into QuickTime to animate them Select “Export” under the File menu Save the -movie as a QuickTime movie (<a href="#id7"><span class="problematic" id="id8">*</span></a>.mov) or in another format. QuickTime +movie as a QuickTime movie (*.mov) or in another format. QuickTime can generate very high quality and efficiently compressed movie files. Some of the supported formats require to buy a license and some are not readable on all platforms until specific runtime libraries are @@ -648,10 +648,10 @@ installed.</p> </ul> <p>FFmpeg is a command line tool that is available on many platforms and allows extremely flexible encoding and decoding of movies.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">cat</span> <span class="n">snap</span><span class="o">.*.</span><span class="n">jpg</span> <span class="o">|</span> <span class="n">ffmpeg</span> <span class="o">-</span><span class="n">y</span> <span class="o">-</span><span class="n">f</span> <span class="n">image2pipe</span> <span class="o">-</span><span class="n">c</span><span class="p">:</span><span class="n">v</span> <span class="n">mjpeg</span> <span class="o">-</span><span class="n">i</span> <span class="o">-</span> <span class="o">-</span><span class="n">b</span><span class="p">:</span><span class="n">v</span> <span class="mi">2000</span><span class="n">k</span> <span class="n">movie</span><span class="o">.</span><span class="n">m4v</span> -<span class="n">cat</span> <span class="n">snap</span><span class="o">.*.</span><span class="n">ppm</span> <span class="o">|</span> <span class="n">ffmpeg</span> <span class="o">-</span><span class="n">y</span> <span class="o">-</span><span class="n">f</span> <span class="n">image2pipe</span> <span class="o">-</span><span class="n">c</span><span class="p">:</span><span class="n">v</span> <span class="n">ppm</span> <span class="o">-</span><span class="n">i</span> <span class="o">-</span> <span class="o">-</span><span class="n">b</span><span class="p">:</span><span class="n">v</span> <span class="mi">2400</span><span class="n">k</span> <span class="n">movie</span><span class="o">.</span><span class="n">avi</span> -</pre></div> -</div> +<pre class="literal-block"> +cat snap.*.jpg | ffmpeg -y -f image2pipe -c:v mjpeg -i - -b:v 2000k movie.m4v +cat snap.*.ppm | ffmpeg -y -f image2pipe -c:v ppm -i - -b:v 2400k movie.avi +</pre> <p>Frontends for FFmpeg exist for multiple platforms. For more information see the <a class="reference external" href="http://www.ffmpeg.org/">FFmpeg homepage</a></p> <hr class="docutils" /> @@ -678,9 +678,9 @@ variety of file formats and decoders.</li> <a class="reference external" href="http://www.sandia.gov/~sjplimp/pizza/doc/animate.html">animate tool</a>, which works directly on a series of image files.</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">a</span> <span class="o">=</span> <span class="n">animate</span><span class="p">(</span><span class="s2">"foo*.jpg"</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +a = animate("foo*.jpg") +</pre> <ul class="simple"> <li>d) QuickTime and other Windows- or MacOS-based media players can obviously play movie files directly. Similarly for corresponding tools diff --git a/doc/html/dump_modify.html b/doc/html/dump_modify.html index 492ef0a5f5..08afa5c7c6 100644 --- a/doc/html/dump_modify.html +++ b/doc/html/dump_modify.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>dump_modify command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dump_modify</span> <span class="n">dump</span><span class="o">-</span><span class="n">ID</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +dump_modify dump-ID keyword values ... +</pre> <ul class="simple"> <li>dump-ID = ID of dump to modify</li> <li>one or more keyword/value pairs may be appended</li> @@ -228,16 +228,16 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dump_modify</span> <span class="mi">1</span> <span class="nb">format</span> <span class="n">line</span> <span class="s2">"</span><span class="si">%d</span><span class="s2"> </span><span class="si">%d</span><span class="s2"> </span><span class="si">%20.15g</span><span class="s2"> </span><span class="si">%g</span><span class="s2"> </span><span class="si">%g</span><span class="s2">"</span> <span class="n">scale</span> <span class="n">yes</span> -<span class="n">dump_modify</span> <span class="mi">1</span> <span class="nb">format</span> <span class="nb">float</span> <span class="o">%</span><span class="mf">20.15</span><span class="n">g</span> <span class="n">scale</span> <span class="n">yes</span> -<span class="n">dump_modify</span> <span class="n">myDump</span> <span class="n">image</span> <span class="n">yes</span> <span class="n">scale</span> <span class="n">no</span> <span class="n">flush</span> <span class="n">yes</span> -<span class="n">dump_modify</span> <span class="mi">1</span> <span class="n">region</span> <span class="n">mySphere</span> <span class="n">thresh</span> <span class="n">x</span> <span class="o"><</span> <span class="mf">0.0</span> <span class="n">thresh</span> <span class="n">epair</span> <span class="o">>=</span> <span class="mf">3.2</span> -<span class="n">dump_modify</span> <span class="n">xtcdump</span> <span class="n">precision</span> <span class="mi">10000</span> <span class="n">sfactor</span> <span class="mf">0.1</span> -<span class="n">dump_modify</span> <span class="mi">1</span> <span class="n">every</span> <span class="mi">1000</span> <span class="n">nfile</span> <span class="mi">20</span> -<span class="n">dump_modify</span> <span class="mi">1</span> <span class="n">every</span> <span class="n">v_myVar</span> -<span class="n">dump_modify</span> <span class="mi">1</span> <span class="n">amap</span> <span class="nb">min</span> <span class="nb">max</span> <span class="n">cf</span> <span class="mf">0.0</span> <span class="mi">3</span> <span class="nb">min</span> <span class="n">green</span> <span class="mf">0.5</span> <span class="n">yellow</span> <span class="nb">max</span> <span class="n">blue</span> <span class="n">boxcolor</span> <span class="n">red</span> -</pre></div> -</div> +<pre class="literal-block"> +dump_modify 1 format line "%d %d %20.15g %g %g" scale yes +dump_modify 1 format float %20.15g scale yes +dump_modify myDump image yes scale no flush yes +dump_modify 1 region mySphere thresh x < 0.0 thresh epair >= 3.2 +dump_modify xtcdump precision 10000 sfactor 0.1 +dump_modify 1 every 1000 nfile 20 +dump_modify 1 every v_myVar +dump_modify 1 amap min max cf 0.0 3 min green 0.5 yellow max blue boxcolor red +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -318,19 +318,19 @@ to the dump file. The <em>every</em> keyword cannot be used with the dump <em>dcd</em> style.</p> <p>For example, the following commands will write snapshots at timesteps 0,10,20,30,100,200,300,1000,2000,etc:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">s</span> <span class="n">equal</span> <span class="n">logfreq</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">10</span><span class="p">)</span> -<span class="n">dump</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">atom</span> <span class="mi">100</span> <span class="n">tmp</span><span class="o">.</span><span class="n">dump</span> -<span class="n">dump_modify</span> <span class="mi">1</span> <span class="n">every</span> <span class="n">v_s</span> <span class="n">first</span> <span class="n">yes</span> -</pre></div> -</div> +<pre class="literal-block"> +variable s equal logfreq(10,3,10) +dump 1 all atom 100 tmp.dump +dump_modify 1 every v_s first yes +</pre> <p>The following commands would write snapshots at the timesteps listed in file tmp.times:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">f</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">times</span> -<span class="n">variable</span> <span class="n">s</span> <span class="n">equal</span> <span class="nb">next</span><span class="p">(</span><span class="n">f</span><span class="p">)</span> -<span class="n">dump</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">atom</span> <span class="mi">100</span> <span class="n">tmp</span><span class="o">.</span><span class="n">dump</span> -<span class="n">dump_modify</span> <span class="mi">1</span> <span class="n">every</span> <span class="n">v_s</span> -</pre></div> -</div> +<pre class="literal-block"> +variable f file tmp.times +variable s equal next(f) +dump 1 all atom 100 tmp.dump +dump_modify 1 every v_s +</pre> <div class="admonition note"> <p class="first admonition-title">Note</p> <p class="last">When using a file-style variable with the <em>every</em> keyword, the @@ -406,11 +406,11 @@ an integer and you wish it to appear in the text dump file as a (large) integer, then you need to use an appropriate format. For example, these commands:</p> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">local</span> <span class="n">batom1</span> <span class="n">batom2</span> -<span class="n">dump</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">local</span> <span class="mi">100</span> <span class="n">tmp</span><span class="o">.</span><span class="n">bonds</span> <span class="n">index</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_1</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -<span class="n">dump_modify</span> <span class="mi">1</span> <span class="nb">format</span> <span class="s2">"</span><span class="si">%d</span><span class="s2"> </span><span class="si">%0.0f</span><span class="s2"> </span><span class="si">%0.0f</span><span class="s2">"</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all property/local batom1 batom2 +dump 1 all local 100 tmp.bonds index c_1[1] c_1[2] +dump_modify 1 format "%d %0.0f %0.0f" +</pre> <p>will output the two atom IDs for atoms in each bond as integers. If the dump_modify command were omitted, they would appear as floating-point values, assuming they were large integers (more than 6 @@ -566,7 +566,7 @@ atoms of each type will be drawn in the image.</p> <p>The specified <em>type</em> should be an integer from 1 to Ntypes = the number of atom types. A wildcard asterisk can be used in place of or in conjunction with the <em>type</em> argument to specify a range of atom -types. This takes the form “*” or “<em>n” or “n</em>” or “m*n”. If N = the +types. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the number of atom types, then an asterisk with no numeric values means all types from 1 to N. A leading asterisk means all types from 1 to n (inclusive). A trailing asterisk means all types from n to N @@ -689,15 +689,15 @@ color map without having to specify where all the bin boundaries are.</p> atoms in individual molecules with a different color. See the examples/pour/in.pour.2d.molecule input script for an example of how this is used.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable colors string & +<pre class="literal-block"> +variable colors string & "red green blue yellow white & purple pink orange lime gray" variable mol atom mol%10 dump 1 all image 250 image.*.jpg v_mol type & zoom 1.6 adiam 1.5 -dump_modify 1 pad 5 amap 0 10 sa 1 10 ${colors} -</pre></div> -</div> +dump_modify 1 pad 5 amap 0 10 sa 1 10 ${colors} +</pre> <p>In this case, 10 colors are defined, and molecule IDs are mapped to one of the colors, even if there are 1000s of molecules.</p> <hr class="docutils" /> @@ -711,7 +711,7 @@ set the color that bonds of each type will be drawn in the image.</p> <p>The specified <em>type</em> should be an integer from 1 to Nbondtypes = the number of bond types. A wildcard asterisk can be used in place of or in conjunction with the <em>type</em> argument to specify a range of bond -types. This takes the form “*” or “<em>n” or “n</em>” or “m*n”. If N = the +types. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the number of bond types, then an asterisk with no numeric values means all types from 1 to N. A leading asterisk means all types from 1 to n (inclusive). A trailing asterisk means all types from n to N diff --git a/doc/html/fix.html b/doc/html/fix.html index 885ad1653b..cc8435af47 100644 --- a/doc/html/fix.html +++ b/doc/html/fix.html @@ -210,8 +210,8 @@ discussed below, it can be referenced via the following bracket notation, where ID is the ID of the fix:</p> <table border="1" class="docutils"> <colgroup> -<col width="21%" /> -<col width="79%" /> +<col width="23%" /> +<col width="77%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>f_ID</td> diff --git a/doc/html/fix_adapt_fep.html b/doc/html/fix_adapt_fep.html index 51d29b8b76..908ef5b395 100644 --- a/doc/html/fix_adapt_fep.html +++ b/doc/html/fix_adapt_fep.html @@ -170,12 +170,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">adapt</span><span class="o">/</span><span class="n">fep</span> <span class="mi">1</span> <span class="n">pair</span> <span class="n">soft</span> <span class="n">a</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">v_prefactor</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">adapt</span><span class="o">/</span><span class="n">fep</span> <span class="mi">1</span> <span class="n">pair</span> <span class="n">soft</span> <span class="n">a</span> <span class="mi">2</span><span class="o">*</span> <span class="mi">3</span> <span class="n">v_prefactor</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">adapt</span><span class="o">/</span><span class="n">fep</span> <span class="mi">1</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="n">epsilon</span> <span class="o">*</span> <span class="o">*</span> <span class="n">v_scale1</span> <span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="n">scale</span> <span class="mi">3</span> <span class="mi">3</span> <span class="n">v_scale2</span> <span class="n">scale</span> <span class="n">yes</span> <span class="n">reset</span> <span class="n">yes</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">adapt</span><span class="o">/</span><span class="n">fep</span> <span class="mi">10</span> <span class="n">atom</span> <span class="n">diameter</span> <span class="mi">1</span> <span class="n">v_size</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all adapt/fep 1 pair soft a 1 1 v_prefactor +fix 1 all adapt/fep 1 pair soft a 2* 3 v_prefactor +fix 1 all adapt/fep 1 pair lj/cut epsilon * * v_scale1 coul/cut scale 3 3 v_scale2 scale yes reset yes +fix 1 all adapt/fep 10 atom diameter 1 v_size +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -307,7 +307,7 @@ each, as in the 1st example above. I <= J is required. LAMMPS sets the coefficients for the symmetric J,I interaction to the same values.</p> <p>A wild-card asterisk can be used in place of or in conjunction with the I,J arguments to set the coefficients for multiple pairs of atom -types. This takes the form “*” or “<em>n” or “n</em>” or “m*n”. If N = the +types. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the number of atom types, then an asterisk with no numeric values means all types from 1 to N. A leading asterisk means all types from 1 to n (inclusive). A trailing asterisk means all types from n to N @@ -333,10 +333,10 @@ details.</p> <p>For example, these commands would change the prefactor coefficient of the <a class="reference internal" href="pair_soft.html"><span class="doc">pair_style soft</span></a> potential from 10.0 to 30.0 in a linear fashion over the course of a simulation:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">prefactor</span> <span class="n">equal</span> <span class="n">ramp</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span><span class="mi">30</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">adapt</span> <span class="mi">1</span> <span class="n">pair</span> <span class="n">soft</span> <span class="n">a</span> <span class="o">*</span> <span class="o">*</span> <span class="n">v_prefactor</span> -</pre></div> -</div> +<pre class="literal-block"> +variable prefactor equal ramp(10,30) +fix 1 all adapt 1 pair soft a * * v_prefactor +</pre> <hr class="docutils" /> <p>The <em>kspace</em> keyword used the specified variable as a scale factor on the energy, forces, virial calculated by whatever K-Space solver is @@ -369,16 +369,14 @@ constant).</p> <p>For example, these commands would shrink the diameter of all granular particles in the “center” group from 1.0 to 0.1 in a linear fashion over the course of a 1000-step simulation:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">size</span> <span class="n">equal</span> <span class="n">ramp</span><span class="p">(</span><span class="mf">1.0</span><span class="p">,</span><span class="mf">0.1</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">center</span> <span class="n">adapt</span> <span class="mi">10</span> <span class="n">atom</span> <span class="n">diameter</span> <span class="o">*</span> <span class="n">v_size</span> -</pre></div> -</div> +<pre class="literal-block"> +variable size equal ramp(1.0,0.1) +fix 1 center adapt 10 atom diameter * v_size +</pre> <p>For <a class="reference internal" href="run_style.html"><span class="doc">rRESPA time integration</span></a>, this fix changes parameters on the outermost rRESPA level.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_addtorque.html b/doc/html/fix_addtorque.html index 8926210c55..2cc2a8b678 100644 --- a/doc/html/fix_addtorque.html +++ b/doc/html/fix_addtorque.html @@ -140,10 +140,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">kick</span> <span class="n">bead</span> <span class="n">addtorque</span> <span class="mf">2.0</span> <span class="mf">3.0</span> <span class="mf">5.0</span> -<span class="n">fix</span> <span class="n">kick</span> <span class="n">bead</span> <span class="n">addtorque</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="n">v_oscillate</span> -</pre></div> -</div> +<pre class="literal-block"> +fix kick bead addtorque 2.0 3.0 5.0 +fix kick bead addtorque 0.0 0.0 v_oscillate +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -166,10 +166,8 @@ torque component.</p> functions, and include <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style</span></a> command keywords for the simulation box parameters and timestep and elapsed time. Thus it is easy to specify a time-dependent torque.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the potential “energy” inferred by the added forces to the diff --git a/doc/html/fix_atc.html b/doc/html/fix_atc.html index 2714ede1fe..d295f3cc18 100644 --- a/doc/html/fix_atc.html +++ b/doc/html/fix_atc.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix atc command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="o"><</span><span class="n">fixID</span><span class="o">></span> <span class="o"><</span><span class="n">group</span><span class="o">></span> <span class="n">atc</span> <span class="o"><</span><span class="nb">type</span><span class="o">></span> <span class="o"><</span><span class="n">parameter_file</span><span class="o">></span> -</pre></div> -</div> +<pre class="literal-block"> +fix <fixID> <group> atc <type> <parameter_file> +</pre> <ul class="simple"> <li>fixID = name of fix</li> <li>group = name of group fix is to be applied</li> @@ -148,12 +148,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">AtC</span> <span class="n">internal</span> <span class="n">atc</span> <span class="n">thermal</span> <span class="n">Ar_thermal</span><span class="o">.</span><span class="n">dat</span> -<span class="n">fix</span> <span class="n">AtC</span> <span class="n">internal</span> <span class="n">atc</span> <span class="n">two_temperature</span> <span class="n">Ar_ttm</span><span class="o">.</span><span class="n">mat</span> -<span class="n">fix</span> <span class="n">AtC</span> <span class="n">internal</span> <span class="n">atc</span> <span class="n">hardy</span> -<span class="n">fix</span> <span class="n">AtC</span> <span class="n">internal</span> <span class="n">atc</span> <span class="n">field</span> -</pre></div> -</div> +<pre class="literal-block"> +fix AtC internal atc thermal Ar_thermal.dat +fix AtC internal atc two_temperature Ar_ttm.mat +fix AtC internal atc hardy +fix AtC internal atc field +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -163,31 +163,31 @@ <span class="c1"># ... commands to create and initialize the MD system</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># initial fix to designate coupling type and group to apply it to</span> -<span class="c1"># tag group physics material_file</span> -<span class="n">fix</span> <span class="n">AtC</span> <span class="n">internal</span> <span class="n">atc</span> <span class="n">thermal</span> <span class="n">Ar_thermal</span><span class="o">.</span><span class="n">mat</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># create a uniform 12 x 2 x 2 mesh that covers region contain the group</span> -<span class="c1"># nx ny nz region periodicity</span> -<span class="n">fix_modify</span> <span class="n">AtC</span> <span class="n">mesh</span> <span class="n">create</span> <span class="mi">12</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">mdRegion</span> <span class="n">f</span> <span class="n">p</span> <span class="n">p</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># specify the control method for the type of coupling</span> -<span class="c1"># physics control_type</span> -<span class="n">fix_modify</span> <span class="n">AtC</span> <span class="n">thermal</span> <span class="n">control</span> <span class="n">flux</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># specify the initial values for the empirical field "temperature"</span> -<span class="c1"># field node_group value</span> -<span class="n">fix_modify</span> <span class="n">AtC</span> <span class="n">initial</span> <span class="n">temperature</span> <span class="nb">all</span> <span class="mi">30</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># create an output stream for nodal fields</span> -<span class="c1"># filename output_frequency</span> -<span class="n">fix_modify</span> <span class="n">AtC</span> <span class="n">output</span> <span class="n">atc_fe_output</span> <span class="mi">100</span> -</pre></div> -</div> +<pre class="literal-block"> +# initial fix to designate coupling type and group to apply it to +# tag group physics material_file +fix AtC internal atc thermal Ar_thermal.mat +</pre> +<pre class="literal-block"> +# create a uniform 12 x 2 x 2 mesh that covers region contain the group +# nx ny nz region periodicity +fix_modify AtC mesh create 12 2 2 mdRegion f p p +</pre> +<pre class="literal-block"> +# specify the control method for the type of coupling +# physics control_type +fix_modify AtC thermal control flux +</pre> +<pre class="literal-block"> +# specify the initial values for the empirical field "temperature" +# field node_group value +fix_modify AtC initial temperature all 30 +</pre> +<pre class="literal-block"> +# create an output stream for nodal fields +# filename output_frequency +fix_modify AtC output atc_fe_output 100 +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">run</span> <span class="mi">1000</span> </pre></div> </div> @@ -200,30 +200,30 @@ <span class="n">fix</span> <span class="n">AtC</span> <span class="n">internal</span> <span class="n">atc</span> <span class="n">hardy</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># for hardy fix, specific kernel function (function type and range) to # be used as a localization function</span> -<span class="n">fix</span> <span class="n">AtC</span> <span class="n">kernel</span> <span class="n">quartic_sphere</span> <span class="mf">10.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># create a uniform 1 x 1 x 1 mesh that covers region contain the group</span> -<span class="c1"># with periodicity this effectively creats a system average</span> -<span class="n">fix_modify</span> <span class="n">AtC</span> <span class="n">mesh</span> <span class="n">create</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">box</span> <span class="n">p</span> <span class="n">p</span> <span class="n">p</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># change from default lagrangian map to eulerian</span> -<span class="c1"># refreshed every 100 steps</span> -<span class="n">fix_modify</span> <span class="n">AtC</span> <span class="n">atom_element_map</span> <span class="n">eulerian</span> <span class="mi">100</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># start with no field defined</span> -<span class="c1"># add mass density, potential energy density, stress and temperature</span> -<span class="n">fix_modify</span> <span class="n">AtC</span> <span class="n">fields</span> <span class="n">add</span> <span class="n">density</span> <span class="n">energy</span> <span class="n">stress</span> <span class="n">temperature</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># create an output stream for nodal fields</span> -<span class="c1"># filename output_frequency</span> -<span class="n">fix_modify</span> <span class="n">AtC</span> <span class="n">output</span> <span class="n">nvtFE</span> <span class="mi">100</span> <span class="n">text</span> -</pre></div> -</div> +<pre class="literal-block"> +# for hardy fix, specific kernel function (function type and range) to # be used as a localization function +fix AtC kernel quartic_sphere 10.0 +</pre> +<pre class="literal-block"> +# create a uniform 1 x 1 x 1 mesh that covers region contain the group +# with periodicity this effectively creats a system average +fix_modify AtC mesh create 1 1 1 box p p p +</pre> +<pre class="literal-block"> +# change from default lagrangian map to eulerian +# refreshed every 100 steps +fix_modify AtC atom_element_map eulerian 100 +</pre> +<pre class="literal-block"> +# start with no field defined +# add mass density, potential energy density, stress and temperature +fix_modify AtC fields add density energy stress temperature +</pre> +<pre class="literal-block"> +# create an output stream for nodal fields +# filename output_frequency +fix_modify AtC output nvtFE 100 text +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">run</span> <span class="mi">1000</span> </pre></div> </div> @@ -235,10 +235,8 @@ <p>fix_modify AtC mesh create 1 1 1 box p p p</p> <p>...</p> <p>Note coupling and post-processing can be combined in the same simulations using separate fixes.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options relevant to this fix are listed below. No global scalar or vector or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can be used with the <em>start/stop</em> keywords of the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command. This fix is not invoked during <a class="reference internal" href="minimize.html"><span class="doc">energy minimization</span></a>.</p> </div> <div class="section" id="restrictions"> diff --git a/doc/html/fix_atom_swap.html b/doc/html/fix_atom_swap.html index 862d6932af..a56f3b4f8b 100644 --- a/doc/html/fix_atom_swap.html +++ b/doc/html/fix_atom_swap.html @@ -156,11 +156,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">atom</span><span class="o">/</span><span class="n">swap</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">29494</span> <span class="mf">300.0</span> <span class="n">ke</span> <span class="n">no</span> <span class="n">types</span> <span class="mi">1</span> <span class="mi">2</span> -<span class="n">fix</span> <span class="n">myFix</span> <span class="nb">all</span> <span class="n">atom</span><span class="o">/</span><span class="n">swap</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">12345</span> <span class="mf">298.0</span> <span class="n">region</span> <span class="n">my_swap_region</span> <span class="n">types</span> <span class="mi">5</span> <span class="mi">6</span> -<span class="n">fix</span> <span class="n">SGMC</span> <span class="nb">all</span> <span class="n">atom</span><span class="o">/</span><span class="n">swap</span> <span class="mi">1</span> <span class="mi">100</span> <span class="mi">345</span> <span class="mf">1.0</span> <span class="n">semi</span><span class="o">-</span><span class="n">grand</span> <span class="n">yes</span> <span class="n">types</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">3</span> <span class="n">mu</span> <span class="mf">0.0</span> <span class="mf">4.3</span> <span class="o">-</span><span class="mf">5.0</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 2 all atom/swap 1 1 29494 300.0 ke no types 1 2 +fix myFix all atom/swap 100 1 12345 298.0 region my_swap_region types 5 6 +fix SGMC all atom/swap 1 100 345 1.0 semi-grand yes types 1 2 3 mu 0.0 4.3 -5.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -250,9 +250,7 @@ system (the quantity used when performing GCMC moves), you MUST enable the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option for that fix. The doc pages for individual <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> commands specify if this should be done.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the fix to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. This includes information about the random number generator seed, the next timestep for MC exchanges, etc. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to diff --git a/doc/html/fix_ave_atom.html b/doc/html/fix_ave_atom.html index b8459a1d96..72641a5006 100644 --- a/doc/html/fix_ave_atom.html +++ b/doc/html/fix_ave_atom.html @@ -140,22 +140,22 @@ one or more input values can be listed</li> <li>value = x, y, z, vx, vy, vz, fx, fy, fz, c_ID, c_ID[i], f_ID, f_ID[i], v_name</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">,</span><span class="n">z</span><span class="p">,</span><span class="n">vx</span><span class="p">,</span><span class="n">vy</span><span class="p">,</span><span class="n">vz</span><span class="p">,</span><span class="n">fx</span><span class="p">,</span><span class="n">fy</span><span class="p">,</span><span class="n">fz</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">attribute</span> <span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">velocity</span><span class="p">,</span> <span class="n">force</span> <span class="n">component</span><span class="p">)</span> -<span class="n">c_ID</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">atom</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -</pre></div> -</div> +<pre class="literal-block"> +x,y,z,vx,vy,vz,fx,fy,fz = atom attribute (position, velocity, force component) +c_ID = per-atom vector calculated by a compute with ID +c_ID[I] = Ith column of per-atom array calculated by a compute with ID, I can include wildcard (see below) +f_ID = per-atom vector calculated by a fix with ID +f_ID[I] = Ith column of per-atom array calculated by a fix with ID, I can include wildcard (see below) +v_name = per-atom vector calculated by an atom-style variable with name +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">atom</span> <span class="mi">1</span> <span class="mi">100</span> <span class="mi">100</span> <span class="n">vx</span> <span class="n">vy</span> <span class="n">vz</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">atom</span> <span class="mi">10</span> <span class="mi">20</span> <span class="mi">1000</span> <span class="n">c_my_stress</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">atom</span> <span class="mi">10</span> <span class="mi">20</span> <span class="mi">1000</span> <span class="n">c_my_stress</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all ave/atom 1 100 100 vx vy vz +fix 1 all ave/atom 10 20 1000 c_my_stress[1] +fix 1 all ave/atom 10 20 1000 c_my_stress[*] +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -181,7 +181,7 @@ are the only ones that can be used with this fix since they produce per-atom vectors.</p> <p>Note that for values from a compute or fix, the bracketed index I can be specified using a wildcard asterisk with the index to effectively -specify multiple values. This takes the form “*” or “<em>n” or “n</em>” or +specify multiple values. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the size of the vector (for <em>mode</em> = scalar) or the number of columns in the array (for <em>mode</em> = vector), then an asterisk with no numeric values means all indices from 1 to N. A leading @@ -192,13 +192,13 @@ means all indices from m to n (inclusive).</p> had been listed one by one. E.g. these 2 fix ave/atom commands are equivalent, since the <a class="reference internal" href="compute_stress_atom.html"><span class="doc">compute stress/atom</span></a> command creates a per-atom array with 6 columns:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">my_stress</span> <span class="nb">all</span> <span class="n">stress</span><span class="o">/</span><span class="n">atom</span> <span class="n">NULL</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">atom</span> <span class="mi">10</span> <span class="mi">20</span> <span class="mi">1000</span> <span class="n">c_my_stress</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">atom</span> <span class="mi">10</span> <span class="mi">20</span> <span class="mi">1000</span> <span class="n">c_my_stress</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_my_stress</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">&</span> - <span class="n">c_my_stress</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">c_my_stress</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="o">&</span> - <span class="n">c_my_stress</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span> <span class="n">c_my_stress</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute my_stress all stress/atom NULL +fix 1 all ave/atom 10 20 1000 c_my_stress[*] +fix 1 all ave/atom 10 20 1000 c_my_stress[1] c_my_stress[1] & + c_my_stress[3] c_my_stress[4] & + c_my_stress[5] c_my_stress[6] +</pre> <hr class="docutils" /> <p>The <em>Nevery</em>, <em>Nrepeat</em>, and <em>Nfreq</em> arguments specify on what timesteps the input values will be used in order to contribute to the @@ -228,7 +228,7 @@ this is not what you want, consider averaging unwrapped coordinates, which can be provided by the <a class="reference internal" href="compute_property_atom.html"><span class="doc">compute property/atom</span></a> command via its xu,yu,zu attributes.</p> </div> -<p>If a value begins with “<a href="#id1"><span class="problematic" id="id2">c_</span></a>”, a compute ID must follow which has been +<p>If a value begins with “c_”, a compute ID must follow which has been previously defined in the input script. If no bracketed term is appended, the per-atom vector calculated by the compute is used. If a bracketed term containing an index I is appended, the Ith column of @@ -236,7 +236,7 @@ the per-atom array calculated by the compute is used. Users can also write code for their own compute styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>. See the discussion above for how I can be specified with a wildcard asterisk to effectively specify multiple values.</p> -<p>If a value begins with “<a href="#id3"><span class="problematic" id="id4">f_</span></a>”, a fix ID must follow which has been +<p>If a value begins with “f_”, a fix ID must follow which has been previously defined in the input script. If no bracketed term is appended, the per-atom vector calculated by the fix is used. If a bracketed term containing an index I is appended, the Ith column of @@ -246,15 +246,13 @@ compatible with <em>Nevery</em>, else an error will result. Users can also write code for their own fix styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>. See the discussion above for how I can be specified with a wildcard asterisk to effectively specify multiple values.</p> -<p>If a value begins with “<a href="#id5"><span class="problematic" id="id6">v_</span></a>”, a variable name must follow which has +<p>If a value begins with “v_”, a variable name must follow which has been previously defined in the input script as an <a class="reference internal" href="variable.html"><span class="doc">atom-style variable</span></a> Variables of style <em>atom</em> can reference thermodynamic keywords, or invoke other computes, fixes, or variables when they are evaluated, so this is a very general means of generating per-atom quantities to time average.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global scalar or vector quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>.</p> diff --git a/doc/html/fix_ave_chunk.html b/doc/html/fix_ave_chunk.html index 564b91e3ef..a6293fb62e 100644 --- a/doc/html/fix_ave_chunk.html +++ b/doc/html/fix_ave_chunk.html @@ -141,16 +141,16 @@ <li>one or more input values can be listed</li> <li>value = vx, vy, vz, fx, fy, fz, density/mass, density/number, temp, c_ID, c_ID[I], f_ID, f_ID[I], v_name</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">vx</span><span class="p">,</span><span class="n">vy</span><span class="p">,</span><span class="n">vz</span><span class="p">,</span><span class="n">fx</span><span class="p">,</span><span class="n">fy</span><span class="p">,</span><span class="n">fz</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">attribute</span> <span class="p">(</span><span class="n">velocity</span><span class="p">,</span> <span class="n">force</span> <span class="n">component</span><span class="p">)</span> -<span class="n">density</span><span class="o">/</span><span class="n">number</span><span class="p">,</span> <span class="n">density</span><span class="o">/</span><span class="n">mass</span> <span class="o">=</span> <span class="n">number</span> <span class="ow">or</span> <span class="n">mass</span> <span class="n">density</span> -<span class="n">temp</span> <span class="o">=</span> <span class="n">temperature</span> -<span class="n">c_ID</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">atom</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -</pre></div> -</div> +<pre class="literal-block"> +vx,vy,vz,fx,fy,fz = atom attribute (velocity, force component) +density/number, density/mass = number or mass density +temp = temperature +c_ID = per-atom vector calculated by a compute with ID +c_ID[I] = Ith column of per-atom array calculated by a compute with ID, I can include wildcard (see below) +f_ID = per-atom vector calculated by a fix with ID +f_ID[I] = Ith column of per-atom array calculated by a fix with ID, I can include wildcard (see below) +v_name = per-atom vector calculated by an atom-style variable with name +</pre> <ul class="simple"> <li>zero or more keyword/arg pairs may be appended</li> <li>keyword = <em>norm</em> or <em>ave</em> or <em>bias</em> or <em>adof</em> or <em>cdof</em> or <em>file</em> or <em>overwrite</em> or <em>title1</em> or <em>title2</em> or <em>title3</em></li> @@ -185,12 +185,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">chunk</span> <span class="mi">10000</span> <span class="mi">1</span> <span class="mi">10000</span> <span class="n">binchunk</span> <span class="n">c_myCentro</span> <span class="n">title1</span> <span class="s2">"My output values"</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">flow</span> <span class="n">ave</span><span class="o">/</span><span class="n">chunk</span> <span class="mi">100</span> <span class="mi">10</span> <span class="mi">1000</span> <span class="n">molchunk</span> <span class="n">vx</span> <span class="n">vz</span> <span class="n">norm</span> <span class="n">sample</span> <span class="n">file</span> <span class="n">vel</span><span class="o">.</span><span class="n">profile</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">flow</span> <span class="n">ave</span><span class="o">/</span><span class="n">chunk</span> <span class="mi">100</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="n">binchunk</span> <span class="n">density</span><span class="o">/</span><span class="n">mass</span> <span class="n">ave</span> <span class="n">running</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">flow</span> <span class="n">ave</span><span class="o">/</span><span class="n">chunk</span> <span class="mi">100</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="n">binchunk</span> <span class="n">density</span><span class="o">/</span><span class="n">mass</span> <span class="n">ave</span> <span class="n">running</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all ave/chunk 10000 1 10000 binchunk c_myCentro title1 "My output values" +fix 1 flow ave/chunk 100 10 1000 molchunk vx vz norm sample file vel.profile +fix 1 flow ave/chunk 100 5 1000 binchunk density/mass ave running +fix 1 flow ave/chunk 100 5 1000 binchunk density/mass ave running +</pre> <p><strong>NOTE:</strong></p> <p>If you are trying to replace a deprectated fix ave/spatial command with the newer, more flexible fix ave/chunk and <a class="reference internal" href="compute_chunk_atom.html"><span class="doc">compute chunk/atom</span></a> commands, you simply need to split @@ -242,7 +242,7 @@ ones that can be used with this fix since all other styles of variable produce global quantities.</p> <p>Note that for values from a compute or fix, the bracketed index I can be specified using a wildcard asterisk with the index to effectively -specify multiple values. This takes the form “*” or “<em>n” or “n</em>” or +specify multiple values. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the size of the vector (for <em>mode</em> = scalar) or the number of columns in the array (for <em>mode</em> = vector), then an asterisk with no numeric values means all indices from 1 to N. A leading @@ -253,11 +253,11 @@ means all indices from m to n (inclusive).</p> had been listed one by one. E.g. these 2 fix ave/chunk commands are equivalent, since the <a class="reference internal" href="compute_property_atom.html"><span class="doc">compute property/atom</span></a> command creates, in this case, a per-atom array with 3 columns:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">myAng</span> <span class="nb">all</span> <span class="nb">property</span><span class="o">/</span><span class="n">atom</span> <span class="n">angmomx</span> <span class="n">angmomy</span> <span class="n">angmomz</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">chunk</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">cc1</span> <span class="n">c_myAng</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">angmom</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">chunk</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">cc1</span> <span class="n">c_myAng</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_myAng</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_myAng</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">angmom</span> -</pre></div> -</div> +<pre class="literal-block"> +compute myAng all property/atom angmomx angmomy angmomz +fix 1 all ave/chunk 100 1 100 cc1 c_myAng[*] file tmp.angmom +fix 2 all ave/chunk 100 1 100 cc1 c_myAng[1] c_myAng[2] c_myAng[3] file tmp.angmom +</pre> <div class="admonition note"> <p class="first admonition-title">Note</p> <p class="last">This fix works by creating an array of size <em>Nchunk</em> by Nvalues @@ -349,7 +349,7 @@ in the chunk on different timesteps were collected together as one set of atoms to calculate their temperature. The compute allows the center-of-mass velocity of each chunk to be subtracted before calculating the temperature; this fix does not.</p> -<p>If a value begins with “<a href="#id1"><span class="problematic" id="id2">c_</span></a>”, a compute ID must follow which has been +<p>If a value begins with “c_”, a compute ID must follow which has been previously defined in the input script. If no bracketed integer is appended, the per-atom vector calculated by the compute is used. If a bracketed integer is appended, the Ith column of the per-atom array @@ -357,7 +357,7 @@ calculated by the compute is used. Users can also write code for their own compute styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>. See the discussion above for how I can be specified with a wildcard asterisk to effectively specify multiple values.</p> -<p>If a value begins with “<a href="#id3"><span class="problematic" id="id4">f_</span></a>”, a fix ID must follow which has been +<p>If a value begins with “f_”, a fix ID must follow which has been previously defined in the input script. If no bracketed integer is appended, the per-atom vector calculated by the fix is used. If a bracketed integer is appended, the Ith column of the per-atom array @@ -367,7 +367,7 @@ their values on certain timesteps, which must be compatible with own fix styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>. See the discussion above for how I can be specified with a wildcard asterisk to effectively specify multiple values.</p> -<p>If a value begins with “<a href="#id5"><span class="problematic" id="id6">v_</span></a>”, a variable name must follow which has +<p>If a value begins with “v_”, a variable name must follow which has been previously defined in the input script. Variables of style <em>atom</em> can reference thermodynamic keywords and various per-atom attributes, or invoke other computes, fixes, or variables when they @@ -502,10 +502,8 @@ value of the <em>units</em> keyword is <em>reduced</em>, the coordinate values w be in unitless reduced units (0-1). This is not true for the Coord1 value of style <em>bin/sphere</em> or <em>bin/cylinder</em> which both represent radial dimensions. Those values are always in distance <a class="reference internal" href="units.html"><span class="doc">units</span></a>.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes a global array of values which can be accessed by diff --git a/doc/html/fix_ave_correlate.html b/doc/html/fix_ave_correlate.html index 5386d0dd57..c191ecefa1 100644 --- a/doc/html/fix_ave_correlate.html +++ b/doc/html/fix_ave_correlate.html @@ -140,14 +140,14 @@ <li>one or more input values can be listed</li> <li>value = c_ID, c_ID[N], f_ID, f_ID[N], v_name</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">c_ID</span> <span class="o">=</span> <span class="k">global</span> <span class="n">scalar</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="k">global</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="k">global</span> <span class="n">scalar</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="k">global</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="k">global</span> <span class="n">value</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">equal</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -<span class="n">v_name</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="n">a</span> <span class="n">vector</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -</pre></div> -</div> +<pre class="literal-block"> +c_ID = global scalar calculated by a compute with ID +c_ID[I] = Ith component of global vector calculated by a compute with ID, I can include wildcard (see below) +f_ID = global scalar calculated by a fix with ID +f_ID[I] = Ith component of global vector calculated by a fix with ID, I can include wildcard (see below) +v_name = global value calculated by an equal-style variable with name +v_name[I] = Ith component of a vector-style variable with name +</pre> <ul class="simple"> <li>zero or more keyword/arg pairs may be appended</li> <li>keyword = <em>type</em> or <em>ave</em> or <em>start</em> or <em>prefactor</em> or <em>file</em> or <em>overwrite</em> or <em>title1</em> or <em>title2</em> or <em>title3</em></li> @@ -180,12 +180,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">correlate</span> <span class="mi">5</span> <span class="mi">100</span> <span class="mi">1000</span> <span class="n">c_myTemp</span> <span class="n">file</span> <span class="n">temp</span><span class="o">.</span><span class="n">correlate</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">correlate</span> <span class="mi">1</span> <span class="mi">50</span> <span class="mi">10000</span> <span class="o">&</span> - <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">&</span> - <span class="nb">type</span> <span class="n">upper</span> <span class="n">ave</span> <span class="n">running</span> <span class="n">title1</span> <span class="s2">"My correlation data"</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all ave/correlate 5 100 1000 c_myTemp file temp.correlate +fix 1 all ave/correlate 1 50 10000 & + c_thermo_press[1] c_thermo_press[2] c_thermo_press[3] & + type upper ave running title1 "My correlation data" +</pre> <p>fix 1 all ave/correlate 1 50 10000 c_thermo_press[*]</p> </div> <div class="section" id="description"> @@ -221,7 +221,7 @@ ones that can be used with this fix. Variables of style <em>atom</em> cannot be used, since they produce per-atom values.</p> <p>Note that for values from a compute or fix, the bracketed index I can be specified using a wildcard asterisk with the index to effectively -specify multiple values. This takes the form “*” or “<em>n” or “n</em>” or +specify multiple values. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the size of the vector (for <em>mode</em> = scalar) or the number of columns in the array (for <em>mode</em> = vector), then an asterisk with no numeric values means all indices from 1 to N. A leading @@ -232,13 +232,13 @@ means all indices from m to n (inclusive).</p> vector had been listed one by one. E.g. these 2 fix ave/correlate commands are equivalent, since the <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> command creates a global vector with 6 values.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">myPress</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">NULL</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">correlate</span> <span class="mi">1</span> <span class="mi">50</span> <span class="mi">10000</span> <span class="n">c_myPress</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">correlate</span> <span class="mi">1</span> <span class="mi">50</span> <span class="mi">10000</span> <span class="o">&</span> - <span class="n">c_myPress</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_myPress</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_myPress</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">&</span> - <span class="n">c_myPress</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="n">c_myPress</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span> <span class="n">c_myPress</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute myPress all pressure NULL +fix 1 all ave/correlate 1 50 10000 c_myPress[*] +fix 1 all ave/correlate 1 50 10000 & + c_myPress[1] c_myPress[2] c_myPress[3] & + c_myPress[4] c_myPress[5] c_myPress[6] +</pre> <hr class="docutils" /> <p>The <em>Nevery</em>, <em>Nrepeat</em>, and <em>Nfreq</em> arguments specify on what timesteps the input values will be used to calculate correlation data. @@ -249,9 +249,9 @@ initial time up to an output timestep. The initial time could be the beginning of the simulation or the last output time; see the <em>ave</em> keyword for options. For the set of samples, the correlation value Cij is calculated as:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Cij</span><span class="p">(</span><span class="n">delta</span><span class="p">)</span> <span class="o">=</span> <span class="n">ave</span><span class="p">(</span><span class="n">Vi</span><span class="p">(</span><span class="n">t</span><span class="p">)</span><span class="o">*</span><span class="n">Vj</span><span class="p">(</span><span class="n">t</span><span class="o">+</span><span class="n">delta</span><span class="p">))</span> -</pre></div> -</div> +<pre class="literal-block"> +Cij(delta) = ave(Vi(t)*Vj(t+delta)) +</pre> <p>which is the correlation value between input values Vi and Vj, separated by time delta. Note that the second value Vj in the pair is always the one sampled at the later time. The ave() represents an @@ -259,9 +259,9 @@ average over every pair of samples in the set that are separated by time delta. The maximum delta used is of size (<em>Nrepeat</em>-1)*<em>Nevery</em>. Thus the correlation between a pair of input values yields <em>Nrepeat</em> correlation datums:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Cij</span><span class="p">(</span><span class="mi">0</span><span class="p">),</span> <span class="n">Cij</span><span class="p">(</span><span class="n">Nevery</span><span class="p">),</span> <span class="n">Cij</span><span class="p">(</span><span class="mi">2</span><span class="o">*</span><span class="n">Nevery</span><span class="p">),</span> <span class="o">...</span><span class="p">,</span> <span class="n">Cij</span><span class="p">((</span><span class="n">Nrepeat</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span><span class="o">*</span><span class="n">Nevery</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +Cij(0), Cij(Nevery), Cij(2*Nevery), ..., Cij((Nrepeat-1)*Nevery) +</pre> <p>For example, if Nevery=5, Nrepeat=6, and Nfreq=100, then values on timesteps 0,5,10,15,...,100 will be used to compute the final averages on timestep 100. Six averages will be computed: Cij(0), Cij(5), @@ -272,7 +272,7 @@ Vi(10)*V j20), Vi(15)*Vj(25), ..., Vi(85)*Vj(95), Vi(90)*Vj(100).</p> non-zero. Also, if the <em>ave</em> keyword is set to <em>one</em> which is the default, then <em>Nfreq</em> >= (<em>Nrepeat</em>-1)*<em>Nevery</em> is required.</p> <hr class="docutils" /> -<p>If a value begins with “<a href="#id3"><span class="problematic" id="id4">c_</span></a>”, a compute ID must follow which has been +<p>If a value begins with “c_”, a compute ID must follow which has been previously defined in the input script. If no bracketed term is appended, the global scalar calculated by the compute is used. If a bracketed term is appended, the Ith element of the global vector @@ -286,7 +286,7 @@ defined not in your input script, but by <a class="reference internal" href="the or <a class="reference internal" href="fix_temp_rescale.html"><span class="doc">fix temp/rescale</span></a>. See the doc pages for these commands which give the IDs of these computes. Users can also write code for their own compute styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>.</p> -<p>If a value begins with “<a href="#id5"><span class="problematic" id="id6">f_</span></a>”, a fix ID must follow which has been +<p>If a value begins with “f_”, a fix ID must follow which has been previously defined in the input script. If no bracketed term is appended, the global scalar calculated by the fix is used. If a bracketed term is appended, the Ith element of the global vector @@ -296,7 +296,7 @@ values.</p> <p>Note that some fixes only produce their values on certain timesteps, which must be compatible with <em>Nevery</em>, else an error will result. Users can also write code for their own fix styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>.</p> -<p>If a value begins with “<a href="#id7"><span class="problematic" id="id8">v_</span></a>”, a variable name must follow which has +<p>If a value begins with “v_”, a variable name must follow which has been previously defined in the input script. Only equal-style or vector-style variables can be referenced; the latter requires a bracketed term to specify the Ith element of the vector calculated by @@ -366,11 +366,11 @@ the strings that will be printed as the first 3 lines of the output file, assuming the <em>file</em> keyword was used. LAMMPS uses default values for each of these, so they do not need to be specified.</p> <p>By default, these header lines are as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Time-correlated data for fix ID</span> -<span class="c1"># TimeStep Number-of-time-windows</span> -<span class="c1"># Index TimeDelta Ncount valueI*valueJ valueI*valueJ ...</span> -</pre></div> -</div> +<pre class="literal-block"> +# Time-correlated data for fix ID +# TimeStep Number-of-time-windows +# Index TimeDelta Ncount valueI*valueJ valueI*valueJ ... +</pre> <p>In the first line, ID is replaced with the fix-ID. The second line describes the two values that are printed at the first of each section of output. In the third line the value pairs are replaced with the @@ -378,9 +378,9 @@ appropriate fields from the fix ave/correlate command.</p> <hr class="docutils" /> <p>Let Sij = a set of time correlation data for input values I and J, namely the <em>Nrepeat</em> values:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">Sij</span> <span class="o">=</span> <span class="n">Cij</span><span class="p">(</span><span class="mi">0</span><span class="p">),</span> <span class="n">Cij</span><span class="p">(</span><span class="n">Nevery</span><span class="p">),</span> <span class="n">Cij</span><span class="p">(</span><span class="mi">2</span><span class="o">*</span><span class="n">Nevery</span><span class="p">),</span> <span class="o">...</span><span class="p">,</span> <span class="n">Cij</span><span class="p">(</span><span class="o">*</span><span class="n">Nrepeat</span><span class="o">-</span><span class="mi">1</span><span class="p">)</span><span class="o">*</span><span class="n">Nevery</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +Sij = Cij(0), Cij(Nevery), Cij(2*Nevery), ..., Cij(*Nrepeat-1)*Nevery) +</pre> <p>As explained below, these datums are output as one column of a global array, which is effectively the correlation matrix.</p> <p>The <em>trap</em> function defined for <a class="reference internal" href="variable.html"><span class="doc">equal-style variables</span></a> @@ -389,10 +389,8 @@ using a trapezoidal rule. This is useful for calculating various quantities which can be derived from time correlation data. If a normalization factor is needed for the time integration, it can be included in the variable formula or via the <em>prefactor</em> keyword.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes a global array of values which can be accessed by diff --git a/doc/html/fix_ave_correlate_long.html b/doc/html/fix_ave_correlate_long.html index ccd754dbaf..a673143beb 100644 --- a/doc/html/fix_ave_correlate_long.html +++ b/doc/html/fix_ave_correlate_long.html @@ -139,13 +139,13 @@ <li>one or more input values can be listed</li> <li>value = c_ID, c_ID[N], f_ID, f_ID[N], v_name</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">c_ID</span> <span class="o">=</span> <span class="k">global</span> <span class="n">scalar</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="k">global</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="k">global</span> <span class="n">scalar</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="k">global</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="k">global</span> <span class="n">value</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">equal</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -</pre></div> -</div> +<pre class="literal-block"> +c_ID = global scalar calculated by a compute with ID +c_ID[I] = Ith component of global vector calculated by a compute with ID +f_ID = global scalar calculated by a fix with ID +f_ID[I] = Ith component of global vector calculated by a fix with ID +v_name = global value calculated by an equal-style variable with name +</pre> <ul class="simple"> <li>zero or more keyword/arg pairs may be appended</li> <li>keyword = <em>type</em> or <em>start</em> or <em>file</em> or <em>overwrite</em> or <em>title1</em> or <em>title2</em> or <em>ncorr</em> or <em>p</em> or <em>m</em></li> @@ -177,12 +177,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">correlate</span><span class="o">/</span><span class="n">long</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="n">c_myTemp</span> <span class="n">file</span> <span class="n">temp</span><span class="o">.</span><span class="n">correlate</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">correlate</span><span class="o">/</span><span class="n">long</span> <span class="mi">1</span> <span class="mi">10000</span> <span class="o">&</span> - <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">&</span> - <span class="nb">type</span> <span class="n">upper</span> <span class="n">title1</span> <span class="s2">"My correlation data"</span> <span class="n">nlen</span> <span class="mi">15</span> <span class="n">ncount</span> <span class="mi">3</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all ave/correlate/long 5 1000 c_myTemp file temp.correlate +fix 1 all ave/correlate/long 1 10000 & + c_thermo_press[1] c_thermo_press[2] c_thermo_press[3] & + type upper title1 "My correlation data" nlen 15 ncount 3 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -221,9 +221,7 @@ steps can be calculated.</p> 4*ncorr*nlen*8 bytes. With the default values of the parameters, this corresponds to about 10 KB.</p> <p>For the meaning of the additional optional keywords, see the <a class="reference internal" href="fix_ave_correlate.html"><span class="doc">fix ave/correlate</span></a> doc page.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Since this fix in intended for the calculation of time correlation functions over very long MD simulations, the information about this fix is written automatically to binary restart files, so that the time diff --git a/doc/html/fix_ave_histo.html b/doc/html/fix_ave_histo.html index e8291ddeb4..bb07687b4a 100644 --- a/doc/html/fix_ave_histo.html +++ b/doc/html/fix_ave_histo.html @@ -145,15 +145,15 @@ <li>one or more input values can be listed</li> <li>value = x, y, z, vx, vy, vz, fx, fy, fz, c_ID, c_ID[N], f_ID, f_ID[N], v_name</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">,</span><span class="n">z</span><span class="p">,</span><span class="n">vx</span><span class="p">,</span><span class="n">vy</span><span class="p">,</span><span class="n">vz</span><span class="p">,</span><span class="n">fx</span><span class="p">,</span><span class="n">fy</span><span class="p">,</span><span class="n">fz</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">attribute</span> <span class="p">(</span><span class="n">position</span><span class="p">,</span> <span class="n">velocity</span><span class="p">,</span> <span class="n">force</span> <span class="n">component</span><span class="p">)</span> -<span class="n">c_ID</span> <span class="o">=</span> <span class="n">scalar</span> <span class="ow">or</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="n">vector</span> <span class="ow">or</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="n">scalar</span> <span class="ow">or</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="n">vector</span> <span class="ow">or</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="n">value</span><span class="p">(</span><span class="n">s</span><span class="p">)</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">equal</span><span class="o">-</span><span class="n">style</span> <span class="ow">or</span> <span class="n">vector</span><span class="o">-</span><span class="n">style</span> <span class="ow">or</span> <span class="n">atom</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -<span class="n">v_name</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">vector</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -</pre></div> -</div> +<pre class="literal-block"> +x,y,z,vx,vy,vz,fx,fy,fz = atom attribute (position, velocity, force component) +c_ID = scalar or vector calculated by a compute with ID +c_ID[I] = Ith component of vector or Ith column of array calculated by a compute with ID, I can include wildcard (see below) +f_ID = scalar or vector calculated by a fix with ID +f_ID[I] = Ith component of vector or Ith column of array calculated by a fix with ID, I can include wildcard (see below) +v_name = value(s) calculated by an equal-style or vector-style or atom-style variable with name +v_name[I] = value calculated by a vector-style variable with name +</pre> <ul class="simple"> <li>zero or more keyword/arg pairs may be appended</li> <li>keyword = <em>mode</em> or <em>file</em> or <em>ave</em> or <em>start</em> or <em>beyond</em> or <em>overwrite</em> or <em>title1</em> or <em>title2</em> or <em>title3</em></li> @@ -185,13 +185,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span> <span class="mi">100</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="mf">0.5</span> <span class="mf">1.5</span> <span class="mi">50</span> <span class="n">c_myTemp</span> <span class="n">file</span> <span class="n">temp</span><span class="o">.</span><span class="n">histo</span> <span class="n">ave</span> <span class="n">running</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span> <span class="mi">100</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="o">-</span><span class="mi">5</span> <span class="mi">5</span> <span class="mi">100</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">title1</span> <span class="s2">"My output values"</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span> <span class="mi">100</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="o">-</span><span class="mi">5</span> <span class="mi">5</span> <span class="mi">100</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span> <span class="mi">1</span> <span class="mi">100</span> <span class="mi">1000</span> <span class="o">-</span><span class="mf">2.0</span> <span class="mf">2.0</span> <span class="mi">18</span> <span class="n">vx</span> <span class="n">vy</span> <span class="n">vz</span> <span class="n">mode</span> <span class="n">vector</span> <span class="n">ave</span> <span class="n">running</span> <span class="n">beyond</span> <span class="n">extra</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span><span class="o">/</span><span class="n">weight</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">10</span> <span class="mi">100</span> <span class="mi">2000</span> <span class="n">c_XRD</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_XRD</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all ave/histo 100 5 1000 0.5 1.5 50 c_myTemp file temp.histo ave running +fix 1 all ave/histo 100 5 1000 -5 5 100 c_thermo_press[2] c_thermo_press[3] title1 "My output values" +fix 1 all ave/histo 100 5 1000 -5 5 100 c_thermo_press[*] +fix 1 all ave/histo 1 100 1000 -2.0 2.0 18 vx vy vz mode vector ave running beyond extra +fix 1 all ave/histo/weight 1 1 1 10 100 2000 c_XRD[1] c_XRD[2] +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -232,7 +232,7 @@ with a bracketed term appended, indicating the Ith column of the array is used.</p> <p>Note that for values from a compute or fix, the bracketed index I can be specified using a wildcard asterisk with the index to effectively -specify multiple values. This takes the form “*” or “<em>n” or “n</em>” or +specify multiple values. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the size of the vector (for <em>mode</em> = scalar) or the number of columns in the array (for <em>mode</em> = vector), then an asterisk with no numeric values means all indices from 1 to N. A leading @@ -243,11 +243,11 @@ means all indices from m to n (inclusive).</p> vector or columns of the array had been listed one by one. E.g. these 2 fix ave/histo commands are equivalent, since the <a class="reference internal" href="compute_com_chunk.html"><span class="doc">compute com/chunk</span></a> command creates a global array with 3 columns:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">myCOM</span> <span class="nb">all</span> <span class="n">com</span><span class="o">/</span><span class="n">chunk</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myCOM</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp1</span><span class="o">.</span><span class="n">com</span> <span class="n">mode</span> <span class="n">vector</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">histo</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myCOM</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_myCOM</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_myCOM</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp2</span><span class="o">.</span><span class="n">com</span> <span class="n">mode</span> <span class="n">vector</span> -</pre></div> -</div> +<pre class="literal-block"> +compute myCOM all com/chunk +fix 1 all ave/histo 100 1 100 c_myCOM[*] file tmp1.com mode vector +fix 2 all ave/histo 100 1 100 c_myCOM[1] c_myCOM[2] c_myCOM[3] file tmp2.com mode vector +</pre> <p>If the fix ave/histo/weight command is used, exactly two values must be specified. If the values are vectors, they must be the same length. The first value (a scalar or vector) is what is histogrammed @@ -278,7 +278,7 @@ simply generated on timesteps 100,200,etc.</p> self-explanatory. Note that other atom attributes can be used as inputs to this fix by using the <a class="reference internal" href="compute_property_atom.html"><span class="doc">compute property/atom</span></a> command and then specifying an input value from that compute.</p> -<p>If a value begins with “<a href="#id1"><span class="problematic" id="id2">c_</span></a>”, a compute ID must follow which has been +<p>If a value begins with “c_”, a compute ID must follow which has been previously defined in the input script. If <em>mode</em> = scalar, then if no bracketed term is appended, the global scalar calculated by the compute is used. If a bracketed term is appended, the Ith element of @@ -295,7 +295,7 @@ can thus be accessed by fix ave/histo. Or it can be a compute defined not in your input script, but by <a class="reference internal" href="thermo_style.html"><span class="doc">thermodynamic output</span></a> or other fixes such as <a class="reference internal" href="fix_nh.html"><span class="doc">fix nvt</span></a> or <a class="reference internal" href="fix_temp_rescale.html"><span class="doc">fix temp/rescale</span></a>. See the doc pages for these commands which give the IDs of these computes. Users can also write code for their own compute styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>.</p> -<p>If a value begins with “<a href="#id3"><span class="problematic" id="id4">f_</span></a>”, a fix ID must follow which has been +<p>If a value begins with “f_”, a fix ID must follow which has been previously defined in the input script. If <em>mode</em> = scalar, then if no bracketed term is appended, the global scalar calculated by the fix is used. If a bracketed term is appended, the Ith element of the @@ -309,7 +309,7 @@ values.</p> <p>Note that some fixes only produce their values on certain timesteps, which must be compatible with <em>Nevery</em>, else an error will result. Users can also write code for their own fix styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>.</p> -<p>If a value begins with “<a href="#id5"><span class="problematic" id="id6">v_</span></a>”, a variable name must follow which has +<p>If a value begins with “v_”, a variable name must follow which has been previously defined in the input script. If <em>mode</em> = scalar, then only equal-style or vector-style variables can be used, which both produce global values. In this mode, a vector-style variable requires @@ -399,10 +399,8 @@ values for each of these, so they do not need to be specified.</p> describes the six values that are printed at the first of each section of output. The third describes the 4 values printed for each bin in the histogram.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix produces a global vector and global array which can be diff --git a/doc/html/fix_ave_time.html b/doc/html/fix_ave_time.html index 6c6744c5e6..2d41fdc0dc 100644 --- a/doc/html/fix_ave_time.html +++ b/doc/html/fix_ave_time.html @@ -140,14 +140,14 @@ <li>one or more input values can be listed</li> <li>value = c_ID, c_ID[N], f_ID, f_ID[N], v_name</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">c_ID</span> <span class="o">=</span> <span class="k">global</span> <span class="n">scalar</span> <span class="ow">or</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="k">global</span> <span class="n">vector</span> <span class="ow">or</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="k">global</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="k">global</span> <span class="n">scalar</span> <span class="ow">or</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="k">global</span> <span class="n">vector</span> <span class="ow">or</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="k">global</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span><span class="p">,</span> <span class="n">I</span> <span class="n">can</span> <span class="n">include</span> <span class="n">wildcard</span> <span class="p">(</span><span class="n">see</span> <span class="n">below</span><span class="p">)</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="n">value</span><span class="p">(</span><span class="n">s</span><span class="p">)</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">equal</span><span class="o">-</span><span class="n">style</span> <span class="ow">or</span> <span class="n">vector</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -<span class="n">v_name</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">value</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">vector</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -</pre></div> -</div> +<pre class="literal-block"> +c_ID = global scalar or vector calculated by a compute with ID +c_ID[I] = Ith component of global vector or Ith column of global array calculated by a compute with ID, I can include wildcard (see below) +f_ID = global scalar or vector calculated by a fix with ID +f_ID[I] = Ith component of global vector or Ith column of global array calculated by a fix with ID, I can include wildcard (see below) +v_name = value(s) calculated by an equal-style or vector-style variable with name +v_name[I] = value calculated by a vector-style variable with name +</pre> <ul class="simple"> <li>zero or more keyword/arg pairs may be appended</li> <li>keyword = <em>mode</em> or <em>file</em> or <em>ave</em> or <em>start</em> or <em>off</em> or <em>overwrite</em> or <em>title1</em> or <em>title2</em> or <em>title3</em></li> @@ -179,13 +179,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="n">c_myTemp</span> <span class="n">c_thermo_temp</span> <span class="n">file</span> <span class="n">temp</span><span class="o">.</span><span class="n">profile</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">ave</span> <span class="n">window</span> <span class="mi">20</span> <span class="o">&</span> - <span class="n">title1</span> <span class="s2">"My output values"</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">5</span> <span class="mi">1000</span> <span class="n">c_thermo_press</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">1</span> <span class="mi">100</span> <span class="mi">1000</span> <span class="n">f_indent</span> <span class="n">f_indent</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">file</span> <span class="n">temp</span><span class="o">.</span><span class="n">indent</span> <span class="n">off</span> <span class="mi">1</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all ave/time 100 5 1000 c_myTemp c_thermo_temp file temp.profile +fix 1 all ave/time 100 5 1000 c_thermo_press[2] ave window 20 & + title1 "My output values" +fix 1 all ave/time 100 5 1000 c_thermo_press[*] +fix 1 all ave/time 1 100 1000 f_indent f_indent[1] file temp.indent off 1 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -228,7 +228,7 @@ is used. All vectors must be the same length, which is the length of the vector or number of rows in the array.</p> <p>Note that for values from a compute or fix, the bracketed index I can be specified using a wildcard asterisk with the index to effectively -specify multiple values. This takes the form “*” or “<em>n” or “n</em>” or +specify multiple values. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the size of the vector (for <em>mode</em> = scalar) or the number of columns in the array (for <em>mode</em> = vector), then an asterisk with no numeric values means all indices from 1 to N. A leading @@ -239,11 +239,11 @@ means all indices from m to n (inclusive).</p> vector or columns of the array had been listed one by one. E.g. these 2 fix ave/time commands are equivalent, since the <a class="reference internal" href="compute_rdf.html"><span class="doc">compute rdf</span></a> command creates, in this case, a global array with 3 columns, each of length 50:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">myRDF</span> <span class="nb">all</span> <span class="n">rdf</span> <span class="mi">50</span> <span class="mi">1</span> <span class="mi">2</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myRDF</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp1</span><span class="o">.</span><span class="n">rdf</span> <span class="n">mode</span> <span class="n">vector</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">time</span> <span class="mi">100</span> <span class="mi">1</span> <span class="mi">100</span> <span class="n">c_myRDF</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_myRDF</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_myRDF</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">file</span> <span class="n">tmp2</span><span class="o">.</span><span class="n">rdf</span> <span class="n">mode</span> <span class="n">vector</span> -</pre></div> -</div> +<pre class="literal-block"> +compute myRDF all rdf 50 1 2 +fix 1 all ave/time 100 1 100 c_myRDF[*] file tmp1.rdf mode vector +fix 2 all ave/time 100 1 100 c_myRDF[1] c_myRDF[2] c_myRDF[3] file tmp2.rdf mode vector +</pre> <hr class="docutils" /> <p>The <em>Nevery</em>, <em>Nrepeat</em>, and <em>Nfreq</em> arguments specify on what timesteps the input values will be used in order to contribute to the @@ -261,7 +261,7 @@ timestep 200, etc. If Nrepeat=1 and Nfreq = 100, then no time averaging is done; values are simply generated on timesteps 100,200,etc.</p> <hr class="docutils" /> -<p>If a value begins with “<a href="#id1"><span class="problematic" id="id2">c_</span></a>”, a compute ID must follow which has been +<p>If a value begins with “c_”, a compute ID must follow which has been previously defined in the input script. If <em>mode</em> = scalar, then if no bracketed term is appended, the global scalar calculated by the compute is used. If a bracketed term is appended, the Ith element of @@ -277,7 +277,7 @@ can thus be accessed by fix ave/time. Or it can be a compute defined not in your input script, but by <a class="reference internal" href="thermo_style.html"><span class="doc">thermodynamic output</span></a> or other fixes such as <a class="reference internal" href="fix_nh.html"><span class="doc">fix nvt</span></a> or <a class="reference internal" href="fix_temp_rescale.html"><span class="doc">fix temp/rescale</span></a>. See the doc pages for these commands which give the IDs of these computes. Users can also write code for their own compute styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>.</p> -<p>If a value begins with “<a href="#id3"><span class="problematic" id="id4">f_</span></a>”, a fix ID must follow which has been +<p>If a value begins with “f_”, a fix ID must follow which has been previously defined in the input script. If <em>mode</em> = scalar, then if no bracketed term is appended, the global scalar calculated by the fix is used. If a bracketed term is appended, the Ith element of the @@ -290,7 +290,7 @@ specify multiple values.</p> <p>Note that some fixes only produce their values on certain timesteps, which must be compatible with <em>Nevery</em>, else an error will result. Users can also write code for their own fix styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>.</p> -<p>If a value begins with “<a href="#id5"><span class="problematic" id="id6">v_</span></a>”, a variable name must follow which has +<p>If a value begins with “v_”, a variable name must follow which has been previously defined in the input script. If <em>mode</em> = scalar, then only equal-style or vector-style variables can be used, which both produce global values. In this mode, a vector-style variable requires @@ -383,10 +383,8 @@ so the <em>title3</em> setting is ignored when <em>mode</em> = scalar.</p> describes the two values that are printed at the first of each section of output. In the third line the values are replaced with the appropriate fields from the fix ave/time command.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix produces a global scalar or global vector or global array diff --git a/doc/html/fix_balance.html b/doc/html/fix_balance.html index 0415a0054b..56beb5da2b 100644 --- a/doc/html/fix_balance.html +++ b/doc/html/fix_balance.html @@ -432,10 +432,8 @@ will be duplicate nodes in the list.</p> rectangle for each processor (1 to 4).</p> <p>For a 3d problem, the syntax is similar with 8 vertices listed for each processor, instead of 4, and “SQUARES” replaced by “CUBES”.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes a global scalar which is the imbalance factor diff --git a/doc/html/fix_bond_break.html b/doc/html/fix_bond_break.html index 9be191ab77..ef0c90e2a9 100644 --- a/doc/html/fix_bond_break.html +++ b/doc/html/fix_bond_break.html @@ -224,10 +224,8 @@ dramatically released when the bond is broken. More generally, you may need to thermostat your system to compensate for energy changes resulting from broken bonds (and angles, dihedrals, impropers).</p> </div> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes two statistics which it stores in a global vector of diff --git a/doc/html/fix_bond_create.html b/doc/html/fix_bond_create.html index 8ab79a00a5..8854f57578 100644 --- a/doc/html/fix_bond_create.html +++ b/doc/html/fix_bond_create.html @@ -265,7 +265,7 @@ percolation simulation.</p> 1st, 2nd, and 3rd neighbors of each atom (within the bond topology of the system) for use in weighting pairwise interactions for bonded atoms. Note that adding a single bond always adds a new 1st neighbor -but may also induce <em>many</em> new 2nd and 3rd neighbors, depending on the +but may also induce *many* new 2nd and 3rd neighbors, depending on the molecular topology of your system. The “extra special per atom” parameter must typically be set to allow for the new maximum total size (1st + 2nd + 3rd neighbors) of this per-atom list. There are 3 @@ -320,10 +320,8 @@ dramatically when the bond is formed. More generally, you may need to thermostat your system to compensate for energy changes resulting from created bonds (and angles, dihedrals, impropers).</p> </div> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes two statistics which it stores in a global vector of diff --git a/doc/html/fix_bond_swap.html b/doc/html/fix_bond_swap.html index 27a56cba19..a3ae59400a 100644 --- a/doc/html/fix_bond_swap.html +++ b/doc/html/fix_bond_swap.html @@ -229,9 +229,9 @@ quantities or the printing of unwrapped coordinates to a dump file.</p> <p>This fix computes a temperature each time it is invoked for use by the Boltzmann criterion. To do this, the fix creates its own compute of style <em>temp</em>, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="nb">all</span> <span class="n">temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp all temp +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> command for details. Note that the ID of the new compute is the fix-ID with underscore + “temp” appended and the group for the new compute is “all”, so that the diff --git a/doc/html/fix_box_relax.html b/doc/html/fix_box_relax.html index ea16211584..e81bc87098 100644 --- a/doc/html/fix_box_relax.html +++ b/doc/html/fix_box_relax.html @@ -371,10 +371,10 @@ temperature is used to compute the kinetic contribution to the pressure, even though this is subsequently ignored by default. To do this, the fix creates its own computes of style “temp” and “pressure”, as if these commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">virial</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp +compute fix-ID_press group-ID pressure fix-ID_temp virial +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”, and the group for the new computes is the same @@ -388,10 +388,8 @@ fix’s temperature or pressure via the or pressure during thermodynamic output via the <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style custom</span></a> command using the appropriate compute-ID. It also means that changing attributes of <em>thermo_temp</em> or <em>thermo_press</em> will have no effect on this fix.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>temp</em> and <em>press</em> options are supported by this fix. You can use them to assign a @@ -425,12 +423,12 @@ potential energy. This fix does not support the because that would result in double-counting of the fix energy in the minimization energy. Instead, the fix energy can be explicitly added to the potential energy using one of these two variants:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">emin</span> <span class="n">equal</span> <span class="n">pe</span><span class="o">+</span><span class="n">f_1</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">emin</span> <span class="n">equal</span> <span class="n">pe</span><span class="o">+</span><span class="n">f_1</span><span class="o">/</span><span class="n">atoms</span> -</pre></div> -</div> +<pre class="literal-block"> +variable emin equal pe+f_1 +</pre> +<pre class="literal-block"> +variable emin equal pe+f_1/atoms +</pre> <p>No parameter of this fix can be used with the <em>start/stop</em> keywords of the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command.</p> <p>This fix is invoked during <a class="reference internal" href="minimize.html"><span class="doc">energy minimization</span></a>, but diff --git a/doc/html/fix_colvars.html b/doc/html/fix_colvars.html index 8ac1624b80..367d9b091c 100644 --- a/doc/html/fix_colvars.html +++ b/doc/html/fix_colvars.html @@ -200,9 +200,7 @@ wrapped back into the simulation cell at each re-neighboring instead.</p> fix that thermostats all atoms in the fix colvars group. This will be used to provide the colvars module with the current thermostat target temperature.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the current status of the colvars module into <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. This is in addition to the text mode status file that is written by the colvars module itself and the diff --git a/doc/html/fix_controller.html b/doc/html/fix_controller.html index e6608bc009..e9e662670c 100644 --- a/doc/html/fix_controller.html +++ b/doc/html/fix_controller.html @@ -141,13 +141,13 @@ <li>Kd = derivative gain in PID equation (unitless)</li> <li>pvar = process variable of form c_ID, c_ID[I], f_ID, f_ID[I], or v_name</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">c_ID</span> <span class="o">=</span> <span class="k">global</span> <span class="n">scalar</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="k">global</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="k">global</span> <span class="n">scalar</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">component</span> <span class="n">of</span> <span class="k">global</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="n">value</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">equal</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -</pre></div> -</div> +<pre class="literal-block"> +c_ID = global scalar calculated by a compute with ID +c_ID[I] = Ith component of global vector calculated by a compute with ID +f_ID = global scalar calculated by a fix with ID +f_ID[I] = Ith component of global vector calculated by a fix with ID +v_name = value calculated by an equal-style variable with name +</pre> <ul class="simple"> <li>setpoint = desired value of process variable (same units as process variable)</li> <li>cvar = name of control variable</li> @@ -155,11 +155,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">controller</span> <span class="mi">100</span> <span class="mf">1.0</span> <span class="mf">0.5</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="n">c_thermo_temp</span> <span class="mf">1.5</span> <span class="n">tcontrol</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">controller</span> <span class="mi">100</span> <span class="mf">0.2</span> <span class="mf">0.5</span> <span class="mi">0</span> <span class="mf">100.0</span> <span class="n">v_pxxwall</span> <span class="mf">1.01325</span> <span class="n">xwall</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">controller</span> <span class="mi">10000</span> <span class="mf">0.2</span> <span class="mf">0.5</span> <span class="mi">0</span> <span class="mi">2000</span> <span class="n">v_avpe</span> <span class="o">-</span><span class="mf">3.785</span> <span class="n">tcontrol</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all controller 100 1.0 0.5 0.0 0.0 c_thermo_temp 1.5 tcontrol +fix 1 all controller 100 0.2 0.5 0 100.0 v_pxxwall 1.01325 xwall +fix 1 all controller 10000 0.2 0.5 0 2000 v_avpe -3.785 tcontrol +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -269,14 +269,14 @@ because the value of <em>e_n-1</em> is not yet defined.</p> <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> or <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> or the evaluation of a <a class="reference internal" href="variable.html"><span class="doc">variable</span></a>. In each case, the compute, fix, or variable must produce a global quantity, not a per-atom or local quantity.</p> -<p>If <em>pvar</em> begins with “<a href="#id1"><span class="problematic" id="id2">c_</span></a>”, a compute ID must follow which has been +<p>If <em>pvar</em> begins with “c_”, a compute ID must follow which has been previously defined in the input script and which generates a global scalar or vector. See the individual <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> doc page for details. If no bracketed integer is appended, the scalar calculated by the compute is used. If a bracketed integer is appended, the Ith value of the vector calculated by the compute is used. Users can also write code for their own compute styles and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>.</p> -<p>If <em>pvar</em> begins with “<a href="#id3"><span class="problematic" id="id4">f_</span></a>”, a fix ID must follow which has been +<p>If <em>pvar</em> begins with “f_”, a fix ID must follow which has been previously defined in the input script and which generates a global scalar or vector. See the individual <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> doc page for details. Note that some fixes only produce their values on certain @@ -285,7 +285,7 @@ references the values, or else an error results. If no bracketed integer is appended, the scalar calculated by the fix is used. If a bracketed integer is appended, the Ith value of the vector calculated by the fix is used. Users can also write code for their own fix style and <a class="reference internal" href="Section_modify.html"><span class="doc">add them to LAMMPS</span></a>.</p> -<p>If <em>pvar</em> begins with “<a href="#id5"><span class="problematic" id="id6">v_</span></a>”, a variable name must follow which has been +<p>If <em>pvar</em> begins with “v_”, a variable name must follow which has been previously defined in the input script. Only equal-style variables can be referenced. See the <a class="reference internal" href="variable.html"><span class="doc">variable</span></a> command for details. Note that variables of style <em>equal</em> define a formula which @@ -296,14 +296,12 @@ variable.</p> <p>The target value <em>setpoint</em> for the process variable must be a numeric value, in whatever units <em>pvar</em> is defined for.</p> <p>The control variable <em>cvar</em> must be the name of an <a class="reference internal" href="variable.html"><span class="doc">internal-style variable</span></a> previously defined in the input script. Note -that it is not specified with a “<a href="#id7"><span class="problematic" id="id8">v_</span></a>” prefix, just the name of the +that it is not specified with a “v_” prefix, just the name of the variable. It must be an internal-style variable, because this fix updates its value directly. Note that other commands can use an equal-style versus internal-style variable interchangeably.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Currenlty, no information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix produces a global vector with 3 values which can be accessed diff --git a/doc/html/fix_deform.html b/doc/html/fix_deform.html index e8ad31ffb0..d23425a85b 100644 --- a/doc/html/fix_deform.html +++ b/doc/html/fix_deform.html @@ -272,9 +272,9 @@ e.g. picoseconds for “metal” units). Tensile strain is unitless and is defined as delta/L0, where L0 is the original box length and delta is the change relative to the original length. The box length L as a function of time will change as</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">L</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">=</span> <span class="n">L0</span> <span class="p">(</span><span class="mi">1</span> <span class="o">+</span> <span class="n">erate</span><span class="o">*</span><span class="n">dt</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +L(t) = L0 (1 + erate*dt) +</pre> <p>where dt is the elapsed time (in time units). Thus if <em>erate</em> R is specified as 0.1 and time units are picoseconds, this means the box length will increase by 10% of its original length every picosecond. @@ -295,9 +295,9 @@ e.g. picoseconds for “metal” units). Tensile strain is unitless and is defined as delta/L0, where L0 is the original box length and delta is the change relative to the original length.</p> <p>The box length L as a function of time will change as</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">L</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">=</span> <span class="n">L0</span> <span class="n">exp</span><span class="p">(</span><span class="n">trate</span><span class="o">*</span><span class="n">dt</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +L(t) = L0 exp(trate*dt) +</pre> <p>where dt is the elapsed time (in time units). Thus if <em>trate</em> R is specified as ln(1.1) and time units are picoseconds, this means the box length will increase by 10% of its current (not original) length @@ -341,9 +341,9 @@ dimensions, so that they respond to the tensile strain dynamically.</p> <p>The <em>wiggle</em> style oscillates the specified box length dimension sinusoidally with the specified amplitude and period. I.e. the box length L as a function of time is given by</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">L</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">=</span> <span class="n">L0</span> <span class="o">+</span> <span class="n">A</span> <span class="n">sin</span><span class="p">(</span><span class="mi">2</span><span class="o">*</span><span class="n">pi</span> <span class="n">t</span><span class="o">/</span><span class="n">Tp</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +L(t) = L0 + A sin(2*pi t/Tp) +</pre> <p>where L0 is its initial length. If the amplitude A is a positive number the box initially expands, then contracts, etc. If A is negative then the box initially contracts, then expands, etc. The @@ -370,13 +370,13 @@ arbitrary variable.</p> <p>Here is an example of using the <em>variable</em> style to perform the same box deformation as the <em>wiggle</em> style formula listed above, where we assume that the current timestep = 0.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">A</span> <span class="n">equal</span> <span class="mf">5.0</span> -<span class="n">variable</span> <span class="n">Tp</span> <span class="n">equal</span> <span class="mf">10.0</span> -<span class="n">variable</span> <span class="n">displace</span> <span class="n">equal</span> <span class="s2">"v_A * sin(2*PI * step*dt/v_Tp)"</span> -<span class="n">variable</span> <span class="n">rate</span> <span class="n">equal</span> <span class="s2">"2*PI*v_A/v_Tp * cos(2*PI * step*dt/v_Tp)"</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">deform</span> <span class="mi">1</span> <span class="n">x</span> <span class="n">variable</span> <span class="n">v_displace</span> <span class="n">v_rate</span> <span class="n">remap</span> <span class="n">v</span> -</pre></div> -</div> +<pre class="literal-block"> +variable A equal 5.0 +variable Tp equal 10.0 +variable displace equal "v_A * sin(2*PI * step*dt/v_Tp)" +variable rate equal "2*PI*v_A/v_Tp * cos(2*PI * step*dt/v_Tp)" +fix 2 all deform 1 x variable v_displace v_rate remap v +</pre> <p>For the <em>scale</em>, <em>vel</em>, <em>erate</em>, <em>trate</em>, <em>volume</em>, <em>wiggle</em>, and <em>variable</em> styles, the box length is expanded or compressed around its mid point.</p> @@ -413,9 +413,9 @@ to the shear direction (e.g. y box length for xy deformation) and offset is the displacement distance in the shear direction (e.g. x direction for xy deformation) from the unstrained orientation.</p> <p>The tilt factor T as a function of time will change as</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">T</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">=</span> <span class="n">T0</span> <span class="o">+</span> <span class="n">L0</span><span class="o">*</span><span class="n">erate</span><span class="o">*</span><span class="n">dt</span> -</pre></div> -</div> +<pre class="literal-block"> +T(t) = T0 + L0*erate*dt +</pre> <p>where T0 is the initial tilt factor, L0 is the original length of the box perpendicular to the shear direction (e.g. y box length for xy deformation), and dt is the elapsed time (in time units). Thus if @@ -441,9 +441,9 @@ where length is the box length perpendicular to the shear direction distance in the shear direction (e.g. x direction for xy deformation) from the unstrained orientation.</p> <p>The tilt factor T as a function of time will change as</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">T</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">=</span> <span class="n">T0</span> <span class="n">exp</span><span class="p">(</span><span class="n">trate</span><span class="o">*</span><span class="n">dt</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +T(t) = T0 exp(trate*dt) +</pre> <p>where T0 is the initial tilt factor and dt is the elapsed time (in time units). Thus if <em>trate</em> R is specified as ln(1.1) and time units are picoseconds, this means the shear strain or tilt factor will @@ -464,9 +464,9 @@ parameter), then this effect on the shear strain is ignored.</p> <p>The <em>wiggle</em> style oscillates the specified tilt factor sinusoidally with the specified amplitude and period. I.e. the tilt factor T as a function of time is given by</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">T</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">=</span> <span class="n">T0</span> <span class="o">+</span> <span class="n">A</span> <span class="n">sin</span><span class="p">(</span><span class="mi">2</span><span class="o">*</span><span class="n">pi</span> <span class="n">t</span><span class="o">/</span><span class="n">Tp</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +T(t) = T0 + A sin(2*pi t/Tp) +</pre> <p>where T0 is its initial value. If the amplitude A is a positive number the tilt factor initially becomes more positive, then more negative, etc. If A is negative then the tilt factor initially @@ -492,13 +492,13 @@ arbitrary variable.</p> <p>Here is an example of using the <em>variable</em> style to perform the same box deformation as the <em>wiggle</em> style formula listed above, where we assume that the current timestep = 0.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">A</span> <span class="n">equal</span> <span class="mf">5.0</span> -<span class="n">variable</span> <span class="n">Tp</span> <span class="n">equal</span> <span class="mf">10.0</span> -<span class="n">variable</span> <span class="n">displace</span> <span class="n">equal</span> <span class="s2">"v_A * sin(2*PI * step*dt/v_Tp)"</span> -<span class="n">variable</span> <span class="n">rate</span> <span class="n">equal</span> <span class="s2">"2*PI*v_A/v_Tp * cos(2*PI * step*dt/v_Tp)"</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">deform</span> <span class="mi">1</span> <span class="n">xy</span> <span class="n">variable</span> <span class="n">v_displace</span> <span class="n">v_rate</span> <span class="n">remap</span> <span class="n">v</span> -</pre></div> -</div> +<pre class="literal-block"> +variable A equal 5.0 +variable Tp equal 10.0 +variable displace equal "v_A * sin(2*PI * step*dt/v_Tp)" +variable rate equal "2*PI*v_A/v_Tp * cos(2*PI * step*dt/v_Tp)" +fix 2 all deform 1 xy variable v_displace v_rate remap v +</pre> <hr class="docutils" /> <p>All of the tilt styles change the xy, xz, yz tilt factors during a simulation. In LAMMPS, tilt factors (xy,xz,yz) for triclinic boxes @@ -633,9 +633,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>.</p> diff --git a/doc/html/fix_deposit.html b/doc/html/fix_deposit.html index 6e7e0be54f..566b353255 100644 --- a/doc/html/fix_deposit.html +++ b/doc/html/fix_deposit.html @@ -355,9 +355,7 @@ count is changing due to adding particles, you typically should use the <a class="reference internal" href="compute_modify.html"><span class="doc">compute_modify dynamic yes</span></a> command for the temperature compute you are using.</p> </div> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the deposition to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. This includes information about how many particles have been depositied, the random number generator seed, the next timestep for deposition, etc. See the diff --git a/doc/html/fix_drag.html b/doc/html/fix_drag.html index c464c735a2..5864fe2ce5 100644 --- a/doc/html/fix_drag.html +++ b/doc/html/fix_drag.html @@ -156,9 +156,7 @@ include that dimension in the distance calculation or force application.</p> <p>This command can be used to steer one or more atoms to a new location in the simulation.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>respa</em> option is supported by this fix. This allows to set at which level of the <a class="reference internal" href="run_style.html"><span class="doc">r-RESPA</span></a> diff --git a/doc/html/fix_drude_transform.html b/doc/html/fix_drude_transform.html index 7134e2dbf5..6a078677dc 100644 --- a/doc/html/fix_drude_transform.html +++ b/doc/html/fix_drude_transform.html @@ -219,14 +219,14 @@ Nose-Hoover thermostating fixes. The <em>fix drude/transform/inverse</em> command must appear after any Nose-Hoover thermostating fixes.</p> </div> <p>Example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">fDIRECT</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">direct</span> -<span class="n">fix</span> <span class="n">fNVT</span> <span class="n">gCORES</span> <span class="n">nvt</span> <span class="n">temp</span> <span class="mf">300.0</span> <span class="mf">300.0</span> <span class="mi">100</span> -<span class="n">fix</span> <span class="n">fNVT</span> <span class="n">gDRUDES</span> <span class="n">nvt</span> <span class="n">temp</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mi">100</span> -<span class="n">fix</span> <span class="n">fINVERSE</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">inverse</span> -<span class="n">compute</span> <span class="n">TDRUDE</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">drude</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">cpu</span> <span class="n">etotal</span> <span class="n">ke</span> <span class="n">pe</span> <span class="n">ebond</span> <span class="n">ecoul</span> <span class="n">elong</span> <span class="n">press</span> <span class="n">vol</span> <span class="n">temp</span> <span class="n">c_TDRUDE</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_TDRUDE</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +fix fDIRECT all drude/transform/direct +fix fNVT gCORES nvt temp 300.0 300.0 100 +fix fNVT gDRUDES nvt temp 1.0 1.0 100 +fix fINVERSE all drude/transform/inverse +compute TDRUDE all temp/drude +thermo_style custom step cpu etotal ke pe ebond ecoul elong press vol temp c_TDRUDE[1] c_TDRUDE[2] +</pre> <p>In this example, <em>gCORES</em> is the group of the atom cores and <em>gDRUDES</em> is the group of the Drude particles (electrons). The centers of mass of the Drude oscillators will be thermostated at 300.0 and the @@ -240,14 +240,14 @@ the other one should be <em>nvt</em>. You must add a <em>compute temp/com</em> a that of its group (the Drude cores) but the pressure be the overall pressure <em>thermo_press</em>.</p> <p>Example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">cTEMP_CORE</span> <span class="n">gCORES</span> <span class="n">temp</span><span class="o">/</span><span class="n">com</span> -<span class="n">fix</span> <span class="n">fDIRECT</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">direct</span> -<span class="n">fix</span> <span class="n">fNPT</span> <span class="n">gCORES</span> <span class="n">npt</span> <span class="n">temp</span> <span class="mf">298.0</span> <span class="mf">298.0</span> <span class="mi">100</span> <span class="n">iso</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mi">500</span> -<span class="n">fix_modify</span> <span class="n">fNPT</span> <span class="n">temp</span> <span class="n">cTEMP_CORE</span> <span class="n">press</span> <span class="n">thermo_press</span> -<span class="n">fix</span> <span class="n">fNVT</span> <span class="n">gDRUDES</span> <span class="n">nvt</span> <span class="n">temp</span> <span class="mf">5.0</span> <span class="mf">5.0</span> <span class="mi">100</span> -<span class="n">fix</span> <span class="n">fINVERSE</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">inverse</span> -</pre></div> -</div> +<pre class="literal-block"> +compute cTEMP_CORE gCORES temp/com +fix fDIRECT all drude/transform/direct +fix fNPT gCORES npt temp 298.0 298.0 100 iso 1.0 1.0 500 +fix_modify fNPT temp cTEMP_CORE press thermo_press +fix fNVT gDRUDES nvt temp 5.0 5.0 100 +fix fINVERSE all drude/transform/inverse +</pre> <p>In this example, <em>gCORES</em> is the group of the atom cores and <em>gDRUDES</em> is the group of the Drude particles. The centers of mass of the Drude oscillators will be thermostated at 298.0 and the internal degrees of @@ -259,10 +259,8 @@ to add a <em>fix momentum</em> command:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">fMOMENTUM</span> <span class="nb">all</span> <span class="n">momentum</span> <span class="mi">100</span> <span class="n">linear</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> </pre></div> </div> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> </div> <div class="section" id="restrictions"> diff --git a/doc/html/fix_efield.html b/doc/html/fix_efield.html index c724217123..6ddd5f9067 100644 --- a/doc/html/fix_efield.html +++ b/doc/html/fix_efield.html @@ -148,10 +148,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">kick</span> <span class="n">external</span><span class="o">-</span><span class="n">field</span> <span class="n">efield</span> <span class="mf">1.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> -<span class="n">fix</span> <span class="n">kick</span> <span class="n">external</span><span class="o">-</span><span class="n">field</span> <span class="n">efield</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="n">v_oscillate</span> -</pre></div> -</div> +<pre class="literal-block"> +fix kick external-field efield 1.0 0.0 0.0 +fix kick external-field efield 0.0 0.0 v_oscillate +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -218,10 +218,8 @@ variable formulas, i.e. that -Grad(E) = F. For example, if the force due to the electric field were a spring-like F = kx, then the energy formula should be E = -0.5kx^2. If you don’t do this correctly, the minimization will not converge properly.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the potential “energy” inferred by the added force due to diff --git a/doc/html/fix_ehex.html b/doc/html/fix_ehex.html index f1cc66f404..a753adb554 100644 --- a/doc/html/fix_ehex.html +++ b/doc/html/fix_ehex.html @@ -262,10 +262,8 @@ be on the order of <span class="math">\(10^{-7}\)</span> for relatively large temperature gradients. A higher precision can be achieved by decreasing the timestep.</p> </div> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>No parameter of this fix can be used with the <em>start/stop</em> keywords of diff --git a/doc/html/fix_external.html b/doc/html/fix_external.html index d2a176da50..264a4cf9ba 100644 --- a/doc/html/fix_external.html +++ b/doc/html/fix_external.html @@ -167,9 +167,9 @@ in the group, once every <em>Napply</em> steps, similar to the way the <a class= <em>Napply</em>, the force values produced by one callback will persist, and be used multiple times to update atom forces.</p> <p>The callback function “foo” is invoked by the fix as:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">foo</span><span class="p">(</span><span class="n">void</span> <span class="o">*</span><span class="n">ptr</span><span class="p">,</span> <span class="n">bigint</span> <span class="n">timestep</span><span class="p">,</span> <span class="nb">int</span> <span class="n">nlocal</span><span class="p">,</span> <span class="nb">int</span> <span class="o">*</span><span class="n">ids</span><span class="p">,</span> <span class="n">double</span> <span class="o">**</span><span class="n">x</span><span class="p">,</span> <span class="n">double</span> <span class="o">**</span><span class="n">fexternal</span><span class="p">);</span> -</pre></div> -</div> +<pre class="literal-block"> +foo(void *ptr, bigint timestep, int nlocal, int *ids, double **x, double **fexternal); +</pre> <p>The arguments are as follows:</p> <ul class="simple"> <li>ptr = pointer provided by and simply passed back to external driver</li> @@ -194,9 +194,9 @@ array. The fix adds these forces to each atom in the group, once every <em>Napply</em> steps, similar to the way the <a class="reference internal" href="fix_addforce.html"><span class="doc">fix addforce</span></a> command works.</p> <p>The name of the public force array provided by the FixExternal class is</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">double</span> <span class="o">**</span><span class="n">fexternal</span><span class="p">;</span> -</pre></div> -</div> +<pre class="literal-block"> +double **fexternal; +</pre> <p>It is allocated by the FixExternal class as an (N,3) array where N is the number of atoms owned by a processor. The 3 corresponds to the fx, fy, fz components of force.</p> @@ -212,18 +212,16 @@ to the added forces must also be set so as to be consistent with the added forces. Otherwise the minimization will not converge correctly.</p> <p>This can be done from the external driver by calling this public method of the FixExternal class:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">void</span> <span class="n">set_energy</span><span class="p">(</span><span class="n">double</span> <span class="n">eng</span><span class="p">);</span> -</pre></div> -</div> +<pre class="literal-block"> +void set_energy(double eng); +</pre> <p>where eng is the potential energy. Eng is an extensive quantity, meaning it should be the sum over per-atom energies of all affected atoms. It should also be provided in <a class="reference internal" href="units.html"><span class="doc">energy units</span></a> consistent with the simulation. See the details below for how to insure this energy setting is used appropriately in a minimization.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the potential “energy” set by the external driver to the diff --git a/doc/html/fix_gcmc.html b/doc/html/fix_gcmc.html index 02f1da98e6..2210a5c5c4 100644 --- a/doc/html/fix_gcmc.html +++ b/doc/html/fix_gcmc.html @@ -168,11 +168,11 @@ keyword = <em>mol</em>, <em>region</em>, <em>maxangle</em>, <em>pressure</em>, < </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">2</span> <span class="n">gas</span> <span class="n">gcmc</span> <span class="mi">10</span> <span class="mi">1000</span> <span class="mi">1000</span> <span class="mi">2</span> <span class="mi">29494</span> <span class="mf">298.0</span> <span class="o">-</span><span class="mf">0.5</span> <span class="mf">0.01</span> -<span class="n">fix</span> <span class="mi">3</span> <span class="n">water</span> <span class="n">gcmc</span> <span class="mi">10</span> <span class="mi">100</span> <span class="mi">100</span> <span class="mi">0</span> <span class="mi">3456543</span> <span class="mf">3.0</span> <span class="o">-</span><span class="mf">2.5</span> <span class="mf">0.1</span> <span class="n">mol</span> <span class="n">my_one_water</span> <span class="n">maxangle</span> <span class="mi">180</span> <span class="n">full_energy</span> -<span class="n">fix</span> <span class="mi">4</span> <span class="n">my_gas</span> <span class="n">gcmc</span> <span class="mi">1</span> <span class="mi">10</span> <span class="mi">10</span> <span class="mi">1</span> <span class="mi">123456543</span> <span class="mf">300.0</span> <span class="o">-</span><span class="mf">12.5</span> <span class="mf">1.0</span> <span class="n">region</span> <span class="n">disk</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 2 gas gcmc 10 1000 1000 2 29494 298.0 -0.5 0.01 +fix 3 water gcmc 10 100 100 0 3456543 3.0 -2.5 0.1 mol my_one_water maxangle 180 full_energy +fix 4 my_gas gcmc 1 10 10 1 123456543 300.0 -12.5 1.0 region disk +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -239,12 +239,12 @@ used in fix nvt. Otherwise, the imaginary reservoir will not be in thermal equilibrium with the simulation cell. Also, it is important that the temperature used by fix nvt be dynamic, which can be achieved as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">mdtemp</span> <span class="n">mdatoms</span> <span class="n">temp</span> -<span class="n">compute_modify</span> <span class="n">mdtemp</span> <span class="n">dynamic</span> <span class="n">yes</span> -<span class="n">fix</span> <span class="n">mdnvt</span> <span class="n">mdatoms</span> <span class="n">nvt</span> <span class="n">temp</span> <span class="mf">300.0</span> <span class="mf">300.0</span> <span class="mf">10.0</span> -<span class="n">fix_modify</span> <span class="n">mdnvt</span> <span class="n">temp</span> <span class="n">mdtemp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute mdtemp mdatoms temp +compute_modify mdtemp dynamic yes +fix mdnvt mdatoms nvt temp 300.0 300.0 10.0 +fix_modify mdnvt temp mdtemp +</pre> <p>Note that neighbor lists are re-built every timestep that this fix is invoked, so you should not set N to be too small. However, periodic rebuilds are necessary in order to avoid dangerous rebuilds and missed @@ -363,9 +363,9 @@ therefore, you will want to use the <a class="reference internal" href="compute_modify.html"><span class="doc">compute_modify</span></a> command to insure that the current number of atoms is used as a normalizing factor each time temperature is computed. Here is the necessary command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute_modify</span> <span class="n">thermo_temp</span> <span class="n">dynamic</span> <span class="n">yes</span> -</pre></div> -</div> +<pre class="literal-block"> +compute_modify thermo_temp dynamic yes +</pre> <p>If LJ units are used, note that a value of 0.18292026 is used by this fix as the reduced value for Planck’s constant. This value was derived from LJ parameters for argon, where h* = h/sqrt(sigma^2 * @@ -375,9 +375,7 @@ mass = 39.948 amu.</p> of the group-ID value. The <em>grouptype</em> keyword assigns all inserted atoms of the specified type to the <a class="reference internal" href="group.html"><span class="doc">group</span></a> of the group-ID value.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the fix to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. This includes information about the random number generator seed, the next timestep for MC exchanges, etc. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to diff --git a/doc/html/fix_gld.html b/doc/html/fix_gld.html index aba80b6a9d..96beaab03f 100644 --- a/doc/html/fix_gld.html +++ b/doc/html/fix_gld.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix gld command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">gld</span> <span class="n">Tstart</span> <span class="n">Tstop</span> <span class="n">N_k</span> <span class="n">seed</span> <span class="n">series</span> <span class="n">c_1</span> <span class="n">tau_1</span> <span class="o">...</span> <span class="n">c_N_k</span> <span class="n">tau_N_k</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID gld Tstart Tstop N_k seed series c_1 tau_1 ... c_N_k tau_N_k keyword values ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>gld = style name of this fix command</li> diff --git a/doc/html/fix_gle.html b/doc/html/fix_gle.html index 9f9296aea3..e51ed41bf3 100644 --- a/doc/html/fix_gle.html +++ b/doc/html/fix_gle.html @@ -145,7 +145,7 @@ <dd><p class="first"><em>noneq</em> Cmatrix = file to read the non-equilibrium covariance matrix from <em>every</em> stride = apply the GLE once every time steps. Reduces the accuracy</p> <blockquote class="last"> -<div>of the integration of the GLE, but has <em>no effect</em> on the accuracy of equilibrium +<div>of the integration of the GLE, but has *no effect* on the accuracy of equilibrium sampling. It might change sampling properties when used together with <em>noneq</em>.</div></blockquote> </dd> </dl> @@ -207,9 +207,7 @@ Prony series form of the memory kernel used by GLD into an appropriate input matrix for <a class="reference internal" href="#"><span class="doc">fix gle</span></a>. While the GLE scheme is more general, the form used by <a class="reference internal" href="fix_gld.html"><span class="doc">fix gld</span></a> can be more directly related to the representation of an implicit solvent environment.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>The instantaneous values of the extended variables are written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. Because the state of the random number generator is not saved in restart files, this means you cannot diff --git a/doc/html/fix_gravity.html b/doc/html/fix_gravity.html index e770f8e7fe..f10e0f3416 100644 --- a/doc/html/fix_gravity.html +++ b/doc/html/fix_gravity.html @@ -156,13 +156,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">gravity</span> <span class="mf">1.0</span> <span class="n">chute</span> <span class="mf">24.0</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">gravity</span> <span class="n">v_increase</span> <span class="n">chute</span> <span class="mf">24.0</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">gravity</span> <span class="mf">1.0</span> <span class="n">spherical</span> <span class="mf">0.0</span> <span class="o">-</span><span class="mf">180.0</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">gravity</span> <span class="mf">10.0</span> <span class="n">spherical</span> <span class="n">v_phi</span> <span class="n">v_theta</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">gravity</span> <span class="mf">100.0</span> <span class="n">vector</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">0</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all gravity 1.0 chute 24.0 +fix 1 all gravity v_increase chute 24.0 +fix 1 all gravity 1.0 spherical 0.0 -180.0 +fix 1 all gravity 10.0 spherical v_phi v_theta +fix 1 all gravity 100.0 vector 1 1 0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -220,10 +220,8 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the gravitational potential energy of the system to the diff --git a/doc/html/fix_heat.html b/doc/html/fix_heat.html index fb5b0f55e7..2e88845d31 100644 --- a/doc/html/fix_heat.html +++ b/doc/html/fix_heat.html @@ -147,11 +147,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">3</span> <span class="n">qin</span> <span class="n">heat</span> <span class="mi">1</span> <span class="mf">1.0</span> -<span class="n">fix</span> <span class="mi">3</span> <span class="n">qin</span> <span class="n">heat</span> <span class="mi">10</span> <span class="n">v_flux</span> -<span class="n">fix</span> <span class="mi">4</span> <span class="n">qout</span> <span class="n">heat</span> <span class="mi">1</span> <span class="o">-</span><span class="mf">1.0</span> <span class="n">region</span> <span class="n">top</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 3 qin heat 1 1.0 +fix 3 qin heat 10 v_flux +fix 4 qout heat 1 -1.0 region top +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -219,9 +219,7 @@ their velocities. Thus you must still use an integration fix (e.g. <a class="reference internal" href="fix_nve.html"><span class="doc">fix nve</span></a>) on the affected atoms. This fix should not normally be used on atoms that have their temperature controlled by another fix - e.g. <a class="reference internal" href="fix_nh.html"><span class="doc">fix nvt</span></a> or <a class="reference internal" href="fix_langevin.html"><span class="doc">fix langevin</span></a> fix.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes a global scalar which can be accessed by various diff --git a/doc/html/fix_imd.html b/doc/html/fix_imd.html index 5c92083e88..3245c8523d 100644 --- a/doc/html/fix_imd.html +++ b/doc/html/fix_imd.html @@ -237,9 +237,7 @@ they were real objects. See the <a class="reference external" href="http://www.k <p>If IMD control messages are received, a line of text describing the message and its effect will be printed to the LAMMPS output screen, if screen output is active.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global scalar or vector or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_ipi.html b/doc/html/fix_ipi.html index 615515d668..40917601b7 100644 --- a/doc/html/fix_ipi.html +++ b/doc/html/fix_ipi.html @@ -173,9 +173,7 @@ configurations make sense. It is assumed that the species in the i-PI input are listed in the same order as in the data file of LAMMPS. The initial configuration is ignored, as it will be substituted with the coordinates received from i-PI before forces are ever evaluated.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>There is no restart information associated with this fix, since all the dynamical parameters are dealt with by i-PI.</p> </div> diff --git a/doc/html/fix_langevin.html b/doc/html/fix_langevin.html index 40cfbcd9cc..bf67a0e983 100644 --- a/doc/html/fix_langevin.html +++ b/doc/html/fix_langevin.html @@ -375,10 +375,8 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. Because the state of the random number generator is not saved in restart files, this means you cannot do “exact” restarts with this fix, where the simulation continues on the same as diff --git a/doc/html/fix_langevin_drude.html b/doc/html/fix_langevin_drude.html index f01d0bd451..ea9f9510a0 100644 --- a/doc/html/fix_langevin_drude.html +++ b/doc/html/fix_langevin_drude.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix langevin/drude command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">langevin</span><span class="o">/</span><span class="n">drude</span> <span class="n">Tcom</span> <span class="n">damp_com</span> <span class="n">seed_com</span> <span class="n">Tdrude</span> <span class="n">damp_drude</span> <span class="n">seed_drude</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID langevin/drude Tcom damp_com seed_com Tdrude damp_drude seed_drude keyword values ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>langevin/drude = style name of this fix command</li> @@ -236,9 +236,9 @@ partner (electron).</p> correctly. You must use the <a class="reference internal" href="comm_modify.html"><span class="doc">comm_modify</span></a> command to enable this, e.g.</p> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">comm_modify</span> <span class="n">vel</span> <span class="n">yes</span> -</pre></div> -</div> +<pre class="literal-block"> +comm_modify vel yes +</pre> <hr class="docutils" /> <p><em>Tcom</em> is the target temperature of the centers of mass, which would be used to thermostate the non-polarizable atoms. <em>Tdrude</em> is the @@ -299,14 +299,14 @@ calculated using the <a class="reference internal" href="compute_temp_drude.html command.</p> <hr class="docutils" /> <p>Usage example for rigid bodies in the NPT ensemble:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">comm_modify</span> <span class="n">vel</span> <span class="n">yes</span> -<span class="n">fix</span> <span class="n">TEMP</span> <span class="nb">all</span> <span class="n">langevin</span><span class="o">/</span><span class="n">drude</span> <span class="mf">300.</span> <span class="mf">100.</span> <span class="mi">1256</span> <span class="mf">1.</span> <span class="mf">20.</span> <span class="mi">13977</span> <span class="n">zero</span> <span class="n">yes</span> -<span class="n">fix</span> <span class="n">NPH</span> <span class="n">ATOMS</span> <span class="n">rigid</span><span class="o">/</span><span class="n">nph</span><span class="o">/</span><span class="n">small</span> <span class="n">molecule</span> <span class="n">iso</span> <span class="mf">1.</span> <span class="mf">1.</span> <span class="mf">500.</span> -<span class="n">fix</span> <span class="n">NVE</span> <span class="n">DRUDES</span> <span class="n">nve</span> -<span class="n">compute</span> <span class="n">TDRUDE</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">drude</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">cpu</span> <span class="n">etotal</span> <span class="n">ke</span> <span class="n">pe</span> <span class="n">ebond</span> <span class="n">ecoul</span> <span class="n">elong</span> <span class="n">press</span> <span class="n">vol</span> <span class="n">temp</span> <span class="n">c_TDRUDE</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_TDRUDE</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +comm_modify vel yes +fix TEMP all langevin/drude 300. 100. 1256 1. 20. 13977 zero yes +fix NPH ATOMS rigid/nph/small molecule iso 1. 1. 500. +fix NVE DRUDES nve +compute TDRUDE all temp/drude +thermo_style custom step cpu etotal ke pe ebond ecoul elong press vol temp c_TDRUDE[1] c_TDRUDE[2] +</pre> <p>Comments:</p> <ul class="simple"> <li>Drude particles should not be in the rigid group, otherwise the Drude @@ -332,10 +332,8 @@ should be the global one, but the temperature should be only that of the cores. That’s why the command <em>fix_modify</em> should be called in that case.</li> </ul> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. Because the state of the random number generator is not saved in restart files, this means you cannot do “exact” restarts with this fix, where the simulation continues on the same as diff --git a/doc/html/fix_langevin_eff.html b/doc/html/fix_langevin_eff.html index 506e61e35c..dea014ff7b 100644 --- a/doc/html/fix_langevin_eff.html +++ b/doc/html/fix_langevin_eff.html @@ -178,9 +178,7 @@ interactions (<a class="reference internal" href="pair_style.html"><span class=" <p>The operation of this fix is exactly like that described by the <a class="reference internal" href="fix_langevin.html"><span class="doc">fix langevin</span></a> command, except that the thermostatting is also applied to the radial electron velocity for electron particles.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. Because the state of the random number generator is not saved in restart files, this means you cannot do “exact” restarts with this fix, where the simulation continues on the same as diff --git a/doc/html/fix_lb_fluid.html b/doc/html/fix_lb_fluid.html index 51eefacda2..fadee5ceb3 100644 --- a/doc/html/fix_lb_fluid.html +++ b/doc/html/fix_lb_fluid.html @@ -374,10 +374,8 @@ screen every N timesteps.</p> test runs, see <a class="reference internal" href="#fluid-mackay"><span class="std std-ref">Mackay et al.</span></a>. Please include a citation to this paper if the lb_fluid fix is used in work contributing to published research.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Due to the large size of the fluid data, this fix writes it’s own binary restart files, if requested, independent of the main LAMMPS <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>; no information about <em>lb_fluid</em> diff --git a/doc/html/fix_lb_momentum.html b/doc/html/fix_lb_momentum.html index aefe19517d..5ca4e990b6 100644 --- a/doc/html/fix_lb_momentum.html +++ b/doc/html/fix_lb_momentum.html @@ -167,9 +167,7 @@ and the fluid velocities at each lattice site.</p> be changed by specifying the keyword <em>linear</em>, along with a set of three flags set to 0/1 in order to exclude/ include the corresponding dimension.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can be diff --git a/doc/html/fix_lb_pc.html b/doc/html/fix_lb_pc.html index 4fe4f72ced..8d27f6cd24 100644 --- a/doc/html/fix_lb_pc.html +++ b/doc/html/fix_lb_pc.html @@ -146,12 +146,10 @@ <h2>Description</h2> <p>Update the positions and velocities of the individual particles described by <em>group-ID</em>, experiencing velocity-dependent hydrodynamic -forces, using the integration algorithm described in <a class="reference internal" href="#mackay"><span class="std std-ref">Mackay et al.</span></a>. This integration algorithm should only be used if a +forces, using the integration algorithm described in <a class="reference internal" href="fix_lb_viscous.html#mackay"><span class="std std-ref">Mackay et al.</span></a>. This integration algorithm should only be used if a user-specified value for the force-coupling constant used in <a class="reference internal" href="fix_lb_fluid.html"><span class="doc">fix lb/fluid</span></a> has been set; do not use this integration algorithm if the force coupling constant has been set by default.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can be diff --git a/doc/html/fix_lb_rigid_pc_sphere.html b/doc/html/fix_lb_rigid_pc_sphere.html index ca3adc0748..8bda0b4a82 100644 --- a/doc/html/fix_lb_rigid_pc_sphere.html +++ b/doc/html/fix_lb_rigid_pc_sphere.html @@ -202,9 +202,7 @@ central atoms interact with one another.</p> the rigid fix (although it includes fewer optional arguments, and assumes the constituent atoms are point particles); see <a class="reference internal" href="fix_rigid.html"><span class="doc">fix rigid</span></a> for a complete documentation.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about the <em>rigid</em> and <em>rigid/nve</em> fixes are written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>Similar to the <a class="reference internal" href="fix_rigid.html"><span class="doc">fix rigid</span></a> command: The rigid diff --git a/doc/html/fix_lb_viscous.html b/doc/html/fix_lb_viscous.html index efc00565c9..876c9eb1f0 100644 --- a/doc/html/fix_lb_viscous.html +++ b/doc/html/fix_lb_viscous.html @@ -164,10 +164,8 @@ hydrodynamic forces to the particles.</p> test runs, see <a class="reference internal" href="#mackay"><span class="std std-ref">Mackay et al.</span></a>. Please include a citation to this paper if this fix is used in work contributing to published research.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>As described in the <a class="reference internal" href="fix_viscous.html"><span class="doc">fix viscous</span></a> documentation:</p> <p>“No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored diff --git a/doc/html/fix_lineforce.html b/doc/html/fix_lineforce.html index 5ca8460a42..2734d0ff4e 100644 --- a/doc/html/fix_lineforce.html +++ b/doc/html/fix_lineforce.html @@ -151,9 +151,7 @@ remains. This is done by subtracting out components of force in the plane perpendicular to the line.</p> <p>If the initial velocity of the atom is 0.0 (or along the line), then it should continue to move along the line thereafter.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_move.html b/doc/html/fix_move.html index 66cf61d80e..ad7177b2bd 100644 --- a/doc/html/fix_move.html +++ b/doc/html/fix_move.html @@ -160,11 +160,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="n">boundary</span> <span class="n">move</span> <span class="n">wiggle</span> <span class="mf">3.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">1.0</span> <span class="n">units</span> <span class="n">box</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="n">boundary</span> <span class="n">move</span> <span class="n">rotate</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">1.0</span> <span class="mf">5.0</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="n">boundary</span> <span class="n">move</span> <span class="n">variable</span> <span class="n">v_myx</span> <span class="n">v_myy</span> <span class="n">NULL</span> <span class="n">v_VX</span> <span class="n">v_VY</span> <span class="n">NULL</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 boundary move wiggle 3.0 0.0 0.0 1.0 units box +fix 2 boundary move rotate 0.0 0.0 0.0 0.0 0.0 1.0 5.0 +fix 2 boundary move variable v_myx v_myy NULL v_VX v_VY NULL +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -202,9 +202,9 @@ command.</p> <p>The <em>linear</em> style moves atoms at a constant velocity, so that their position <em>X</em> = (x,y,z) as a function of time is given in vector notation as</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">X</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">=</span> <span class="n">X0</span> <span class="o">+</span> <span class="n">V</span> <span class="o">*</span> <span class="n">delta</span> -</pre></div> -</div> +<pre class="literal-block"> +X(t) = X0 + V * delta +</pre> <p>where <em>X0</em> = (x0,y0,z0) is their position at the time the fix is specified, <em>V</em> is the specified velocity vector with components (Vx,Vy,Vz), and <em>delta</em> is the time elapsed since the fix was @@ -216,17 +216,17 @@ the corresponding force component on the atom.</p> <p>Note that the <em>linear</em> style is identical to using the <em>variable</em> style with an <a class="reference internal" href="variable.html"><span class="doc">equal-style variable</span></a> that uses the vdisplace() function. E.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable V equal 10.0 +<pre class="literal-block"> +variable V equal 10.0 variable x equal vdisplace(0.0,$V) fix 1 boundary move variable v_x NULL NULL v_V NULL NULL -</pre></div> -</div> +</pre> <p>The <em>wiggle</em> style moves atoms in an oscillatory fashion, so that their position <em>X</em> = (x,y,z) as a function of time is given in vector notation as</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">X</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">=</span> <span class="n">X0</span> <span class="o">+</span> <span class="n">A</span> <span class="n">sin</span><span class="p">(</span><span class="n">omega</span><span class="o">*</span><span class="n">delta</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +X(t) = X0 + A sin(omega*delta) +</pre> <p>where <em>X0</em> = (x0,y0,z0) is their position at the time the fix is specified, <em>A</em> is the specified amplitude vector with components (Ax,Ay,Az), <em>omega</em> is 2 PI / <em>period</em>, and <em>delta</em> is the time @@ -239,14 +239,14 @@ corresponding force component on the atom.</p> <p>Note that the <em>wiggle</em> style is identical to using the <em>variable</em> style with <a class="reference internal" href="variable.html"><span class="doc">equal-style variables</span></a> that use the swiggle() and cwiggle() functions. E.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable A equal 10.0 +<pre class="literal-block"> +variable A equal 10.0 variable T equal 5.0 variable omega equal 2.0*PI/$T variable x equal swiggle(0.0,$A,$T) variable v equal v_omega*($A-cwiggle(0.0,$A,$T)) fix 1 boundary move variable v_x NULL NULL v_v NULL NULL -</pre></div> -</div> +</pre> <p>The <em>rotate</em> style rotates atoms around a rotation axis <em>R</em> = (Rx,Ry,Rz) that goes thru a point <em>P</em> = (Px,Py,Pz). The <em>period</em> of the rotation is also specified. The direction of rotation for the @@ -302,10 +302,8 @@ are in lattice spacings. The <a class="reference internal" href="lattice.html"> been previously used to define the lattice spacing. Each of these 3 quantities may be dependent on the x,y,z dimension, since the lattice spacings can be different in x,y,z.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the original coordinates of moving atoms to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>, as well as the initial timestep, so that the motion can be continuous in a restarted simulation. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify diff --git a/doc/html/fix_msst.html b/doc/html/fix_msst.html index f5a8d09ba8..c54106e01e 100644 --- a/doc/html/fix_msst.html +++ b/doc/html/fix_msst.html @@ -197,16 +197,14 @@ LAMMPS, but are not implemented for MSST.</p> <p>This fix computes a temperature and pressure each timestep. To do this, the fix creates its own computes of style “temp” and “pressure”, as if these commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp +compute fix-ID_press group-ID pressure fix-ID_temp +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”. The group for the new computes is “all”.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of all internal variables to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of the fix continues in an @@ -230,15 +228,15 @@ equations. See also <a class="reference internal" href="thermo_style.html"><span </ol> <p>To print these quantities to the log file with descriptive column headers, the following LAMMPS commands are suggested:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">msst</span> <span class="nb">all</span> <span class="n">msst</span> <span class="n">z</span> -<span class="n">fix_modify</span> <span class="n">msst</span> <span class="n">energy</span> <span class="n">yes</span> -<span class="n">variable</span> <span class="n">dhug</span> <span class="n">equal</span> <span class="n">f_msst</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">dray</span> <span class="n">equal</span> <span class="n">f_msst</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">lgr_vel</span> <span class="n">equal</span> <span class="n">f_msst</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">lgr_pos</span> <span class="n">equal</span> <span class="n">f_msst</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">ke</span> <span class="n">pe</span> <span class="n">lz</span> <span class="n">pzz</span> <span class="n">etotal</span> <span class="n">v_dhug</span> <span class="n">v_dray</span> <span class="n">v_lgr_vel</span> <span class="n">v_lgr_pos</span> <span class="n">f_msst</span> -</pre></div> -</div> +<pre class="literal-block"> +fix msst all msst z +fix_modify msst energy yes +variable dhug equal f_msst[1] +variable dray equal f_msst[2] +variable lgr_vel equal f_msst[3] +variable lgr_pos equal f_msst[4] +thermo_style custom step temp ke pe lz pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos f_msst +</pre> <p>These fixes compute a global scalar and a global vector of 4 quantities, which can be accessed by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. The scalar values calculated by this fix are “extensive”; the vector values are “intensive”.</p> diff --git a/doc/html/fix_neb.html b/doc/html/fix_neb.html index 4b5777e1e2..1e50f393e0 100644 --- a/doc/html/fix_neb.html +++ b/doc/html/fix_neb.html @@ -190,9 +190,7 @@ forces on atoms in this replica are described in the </div> <p>The inter-replica forces for the other replicas are unchanged from the first equation.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_nh.html b/doc/html/fix_nh.html index ff55e4e302..8cbee0b46f 100644 --- a/doc/html/fix_nh.html +++ b/doc/html/fix_nh.html @@ -158,9 +158,9 @@ <h1>fix nph/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">style_name</span> <span class="n">keyword</span> <span class="n">value</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID style_name keyword value ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>style_name = <em>nvt</em> or <em>npt</em> or <em>nph</em></li> @@ -508,14 +508,14 @@ thermostatting and barostatting.</p> <p>These fixes compute a temperature and pressure each timestep. To do this, the fix creates its own computes of style “temp” and “pressure”, as if one of these two sets of commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="nb">all</span> <span class="n">temp</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp +compute fix-ID_press group-ID pressure fix-ID_temp +</pre> +<pre class="literal-block"> +compute fix-ID_temp all temp +compute fix-ID_press all pressure fix-ID_temp +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”. For fix nvt, the group for the new computes @@ -606,10 +606,8 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>These fixes writes the state of all the thermostat and barostat variables to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify diff --git a/doc/html/fix_nh_eff.html b/doc/html/fix_nh_eff.html index 5e8d66853c..d11bbb105e 100644 --- a/doc/html/fix_nh_eff.html +++ b/doc/html/fix_nh_eff.html @@ -134,9 +134,9 @@ <h1>fix nph/eff command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">style_name</span> <span class="n">keyword</span> <span class="n">value</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID style_name keyword value ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>style_name = <em>nvt/eff</em> or <em>npt/eff</em> or <em>nph/eff</em></li> @@ -223,9 +223,7 @@ degrees of freedom with the <a class="reference internal" href="velocity.html">< the user must allow for these degrees of freedom to equilibrate (i.e. equi-partitioning of energy) through time integration.</p> </div> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>See the doc page for the <a class="reference internal" href="fix_nh.html"><span class="doc">fix nvt, npt, and nph</span></a> commands for details.</p> </div> diff --git a/doc/html/fix_nph_asphere.html b/doc/html/fix_nph_asphere.html index d7c91846db..2c2d1a4d0a 100644 --- a/doc/html/fix_nph_asphere.html +++ b/doc/html/fix_nph_asphere.html @@ -175,10 +175,10 @@ unchanged and controlling the pressure of a surrounding fluid.</p> <p>This fix computes a temperature and pressure each timestep. To do this, the fix creates its own computes of style “temp/asphere” and “pressure”, as if these commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">asphere</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp all temp/asphere +compute fix-ID_press all pressure fix-ID_temp +</pre> <p>See the <a class="reference internal" href="compute_temp_asphere.html"><span class="doc">compute temp/asphere</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”, and the group for the new computes is “all” @@ -207,9 +207,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover barostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of the fix continues in an diff --git a/doc/html/fix_nph_sphere.html b/doc/html/fix_nph_sphere.html index 0529dba9db..ec7a15a0cd 100644 --- a/doc/html/fix_nph_sphere.html +++ b/doc/html/fix_nph_sphere.html @@ -175,10 +175,10 @@ unchanged and controlling the pressure of a surrounding fluid.</p> <p>This fix computes a temperature and pressure each timestep. To do this, the fix creates its own computes of style “temp/sphere” and “pressure”, as if these commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">sphere</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp all temp/sphere +compute fix-ID_press all pressure fix-ID_temp +</pre> <p>See the <a class="reference internal" href="compute_temp_sphere.html"><span class="doc">compute temp/sphere</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”, and the group for the new computes is “all” @@ -207,9 +207,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover barostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of the fix continues in an diff --git a/doc/html/fix_nphug.html b/doc/html/fix_nphug.html index da32f6307b..85dd234fe3 100644 --- a/doc/html/fix_nphug.html +++ b/doc/html/fix_nphug.html @@ -229,14 +229,14 @@ controlled by another fix - e.g. by <a class="reference internal" href="fix_nh.h <p>This fix computes a temperature and pressure at each timestep. To do this, the fix creates its own computes of style “temp” and “pressure”, as if one of these two sets of commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="nb">all</span> <span class="n">temp</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp +compute fix-ID_press group-ID pressure fix-ID_temp +</pre> +<pre class="literal-block"> +compute fix-ID_temp all temp +compute fix-ID_press all pressure fix-ID_temp +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”. The group for @@ -266,10 +266,8 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the values of E0, V0, and P0, as well as the state of all the thermostat and barostat variables to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the @@ -293,7 +291,7 @@ compute temperature on a subset of atoms.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by these fixes to add the energy change induced by Nose/Hoover thermostatting and barostatting to the system’s potential energy as part of -<a class="reference internal" href="thermo_style.html"><span class="doc">thermodynamic output</span></a>. Either way, this energy is <em>not</em> +<a class="reference internal" href="thermo_style.html"><span class="doc">thermodynamic output</span></a>. Either way, this energy is *not* included in the definition of internal energy E when calculating the value of Delta in the above equation.</p> <p>These fixes compute a global scalar and a global vector of quantities, diff --git a/doc/html/fix_npt_asphere.html b/doc/html/fix_npt_asphere.html index 203bb248e0..2216a34678 100644 --- a/doc/html/fix_npt_asphere.html +++ b/doc/html/fix_npt_asphere.html @@ -182,10 +182,10 @@ unchanged and controlling the pressure of a surrounding fluid.</p> <p>This fix computes a temperature and pressure each timestep. To do this, the fix creates its own computes of style “temp/asphere” and “pressure”, as if these commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">asphere</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp all temp/asphere +compute fix-ID_press all pressure fix-ID_temp +</pre> <p>See the <a class="reference internal" href="compute_temp_asphere.html"><span class="doc">compute temp/asphere</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”, and the group for the new computes is “all” @@ -227,9 +227,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover thermostat and barostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify diff --git a/doc/html/fix_npt_body.html b/doc/html/fix_npt_body.html index 7a21169513..b037898463 100644 --- a/doc/html/fix_npt_body.html +++ b/doc/html/fix_npt_body.html @@ -179,10 +179,10 @@ unchanged and controlling the pressure of a surrounding fluid.</p> <p>This fix computes a temperature and pressure each timestep. To do this, the fix creates its own computes of style “temp/body” and “pressure”, as if these commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">body</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp all temp/body +compute fix-ID_press all pressure fix-ID_temp +</pre> <p>See the <a class="reference internal" href="compute_temp_body.html"><span class="doc">compute temp/body</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”, and the group for the new computes is “all” @@ -224,9 +224,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover thermostat and barostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify diff --git a/doc/html/fix_npt_sphere.html b/doc/html/fix_npt_sphere.html index 1d5d6ed867..f05e786221 100644 --- a/doc/html/fix_npt_sphere.html +++ b/doc/html/fix_npt_sphere.html @@ -181,10 +181,10 @@ unchanged and controlling the pressure of a surrounding fluid.</p> <p>This fix computes a temperature and pressure each timestep. To do this, the fix creates its own computes of style “temp/sphere” and “pressure”, as if these commands had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="nb">all</span> <span class="n">temp</span><span class="o">/</span><span class="n">sphere</span> -<span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp all temp/sphere +compute fix-ID_press all pressure fix-ID_temp +</pre> <p>See the <a class="reference internal" href="compute_temp_sphere.html"><span class="doc">compute temp/sphere</span></a> and <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> commands for details. Note that the IDs of the new computes are the fix-ID + underscore + “temp” or fix_ID + underscore + “press”, and the group for the new computes is “all” @@ -226,9 +226,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover thermostat and barostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify diff --git a/doc/html/fix_nve_asphere.html b/doc/html/fix_nve_asphere.html index 435fea89b4..88dbabd521 100644 --- a/doc/html/fix_nve_asphere.html +++ b/doc/html/fix_nve_asphere.html @@ -153,9 +153,7 @@ group each timestep. V is volume; E is energy. This creates a system trajectory consistent with the microcanonical ensemble.</p> <p>This fix differs from the <a class="reference internal" href="fix_nve.html"><span class="doc">fix nve</span></a> command, which assumes point particles and only updates their position and velocity.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_nve_asphere_noforce.html b/doc/html/fix_nve_asphere_noforce.html index 75760b0c6a..dd98e2ce40 100644 --- a/doc/html/fix_nve_asphere_noforce.html +++ b/doc/html/fix_nve_asphere_noforce.html @@ -150,10 +150,8 @@ angularm momenta are used to update their positions and orientation.</p> <p>This is useful as an implicit time integrator for Fast Lubrication Dynamics, since the velocity and angular momentum are updated by the <a class="reference external" href="pair_lubricateU.txt">pair_style lubricuteU</a> command.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_nve_body.html b/doc/html/fix_nve_body.html index cd459a4379..45816df757 100644 --- a/doc/html/fix_nve_body.html +++ b/doc/html/fix_nve_body.html @@ -151,9 +151,7 @@ consistent with the microcanonical ensemble. See <a class="reference internal" doc page for more details on using body particles.</p> <p>This fix differs from the <a class="reference internal" href="fix_nve.html"><span class="doc">fix nve</span></a> command, which assumes point particles and only updates their position and velocity.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_nve_line.html b/doc/html/fix_nve_line.html index 5168b08db0..5b6a9bb8ab 100644 --- a/doc/html/fix_nve_line.html +++ b/doc/html/fix_nve_line.html @@ -152,9 +152,7 @@ trajectory consistent with the microcanonical ensemble. See using line segment particles.</p> <p>This fix differs from the <a class="reference internal" href="fix_nve.html"><span class="doc">fix nve</span></a> command, which assumes point particles and only updates their position and velocity.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_nve_manifold_rattle.html b/doc/html/fix_nve_manifold_rattle.html index 06d68cd6ae..149e6de046 100644 --- a/doc/html/fix_nve_manifold_rattle.html +++ b/doc/html/fix_nve_manifold_rattle.html @@ -159,7 +159,7 @@ keyword = <em>every</em> atoms constrained to a curved surface (manifold) in the group each timestep. The constraint is handled by RATTLE <a class="reference internal" href="fix_shake.html#andersen"><span class="std std-ref">(Andersen)</span></a> written out for the special case of single-particle constraints as -explained in <a class="reference internal" href="manifolds.html#paquay"><span class="std std-ref">(Paquay)</span></a>. V is volume; E is energy. This way, +explained in <a class="reference internal" href="#paquay"><span class="std std-ref">(Paquay)</span></a>. V is volume; E is energy. This way, the dynamics of particles constrained to curved surfaces can be studied. If combined with <a class="reference internal" href="fix_langevin.html"><span class="doc">fix langevin</span></a>, this generates Brownian motion of particles constrained to a curved @@ -172,20 +172,18 @@ manifolds this can be achieved with <em>region</em> and <em>create_atoms</em> commands, but for more complex surfaces it might be more useful to write a script.</p> <p>The manifold args may be equal-style variables, like so:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">R</span> <span class="n">equal</span> <span class="s2">"ramp(5.0,3.0)"</span> -<span class="n">fix</span> <span class="n">shrink_sphere</span> <span class="nb">all</span> <span class="n">nve</span><span class="o">/</span><span class="n">manifold</span><span class="o">/</span><span class="n">rattle</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">4</span> <span class="mi">10</span> <span class="n">sphere</span> <span class="n">v_R</span> -</pre></div> -</div> +<pre class="literal-block"> +variable R equal "ramp(5.0,3.0)" +fix shrink_sphere all nve/manifold/rattle 1e-4 10 sphere v_R +</pre> <p>In this case, the manifold parameter will change in time according to the variable. This is not a problem for the time integrator as long as the change of the manifold is slow with respect to the dynamics of the particles. Note that if the manifold has to exert work on the particles because of these changes, the total energy might not be conserved.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_nve_sphere.html b/doc/html/fix_nve_sphere.html index e0e8bf5189..2a70998598 100644 --- a/doc/html/fix_nve_sphere.html +++ b/doc/html/fix_nve_sphere.html @@ -189,10 +189,8 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_nve_tri.html b/doc/html/fix_nve_tri.html index e707401c30..1462555ef2 100644 --- a/doc/html/fix_nve_tri.html +++ b/doc/html/fix_nve_tri.html @@ -152,9 +152,7 @@ trajectory consistent with the microcanonical ensemble. See using triangular particles.</p> <p>This fix differs from the <a class="reference internal" href="fix_nve.html"><span class="doc">fix nve</span></a> command, which assumes point particles and only updates their position and velocity.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_nvt_asphere.html b/doc/html/fix_nvt_asphere.html index 08a1bea12b..473db13d7f 100644 --- a/doc/html/fix_nvt_asphere.html +++ b/doc/html/fix_nvt_asphere.html @@ -169,9 +169,9 @@ keywords.</p> <p>This fix computes a temperature each timestep. To do this, the fix creates its own compute of style “temp/asphere”, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span><span class="o">/</span><span class="n">asphere</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp/asphere +</pre> <p>See the <a class="reference internal" href="compute_temp_asphere.html"><span class="doc">compute temp/asphere</span></a> command for details. Note that the ID of the new compute is the fix-ID + underscore + “temp”, and the group for the new compute is the same as @@ -213,9 +213,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover thermostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of the fix continues in an diff --git a/doc/html/fix_nvt_body.html b/doc/html/fix_nvt_body.html index 9fecb55fc4..57ba66659d 100644 --- a/doc/html/fix_nvt_body.html +++ b/doc/html/fix_nvt_body.html @@ -166,9 +166,9 @@ keywords.</p> <p>This fix computes a temperature each timestep. To do this, the fix creates its own compute of style “temp/body”, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span><span class="o">/</span><span class="n">body</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp/body +</pre> <p>See the <a class="reference internal" href="compute_temp_body.html"><span class="doc">compute temp/body</span></a> command for details. Note that the ID of the new compute is the fix-ID + underscore + “temp”, and the group for the new compute is the same as @@ -210,9 +210,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover thermostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of the fix continues in an diff --git a/doc/html/fix_nvt_sllod.html b/doc/html/fix_nvt_sllod.html index a2592ab7e7..09875bceb8 100644 --- a/doc/html/fix_nvt_sllod.html +++ b/doc/html/fix_nvt_sllod.html @@ -194,9 +194,9 @@ keywords.</p> <p>This fix computes a temperature each timestep. To do this, the fix creates its own compute of style “temp/deform”, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span><span class="o">/</span><span class="n">deform</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp/deform +</pre> <p>See the <a class="reference internal" href="compute_temp_deform.html"><span class="doc">compute temp/deform</span></a> command for details. Note that the ID of the new compute is the fix-ID + underscore + “temp”, and the group for the new compute is the same as @@ -238,9 +238,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover thermostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of the fix continues in an diff --git a/doc/html/fix_nvt_sllod_eff.html b/doc/html/fix_nvt_sllod_eff.html index 8492983e42..c175a68bdc 100644 --- a/doc/html/fix_nvt_sllod_eff.html +++ b/doc/html/fix_nvt_sllod_eff.html @@ -157,9 +157,7 @@ creates (as discussed in the <a class="reference internal" href="fix_nh.html"><s page), is performed with a <a class="reference internal" href="compute_temp_deform_eff.html"><span class="doc">compute temp/deform/eff</span></a> commmand that includes the eFF contribution to the temperature from the electron radial velocity.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover thermostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of the fix continues in an diff --git a/doc/html/fix_nvt_sphere.html b/doc/html/fix_nvt_sphere.html index fc5b3ddab1..6a27b967ed 100644 --- a/doc/html/fix_nvt_sphere.html +++ b/doc/html/fix_nvt_sphere.html @@ -169,9 +169,9 @@ keywords.</p> <p>This fix computes a temperature each timestep. To do this, the fix creates its own compute of style “temp/sphere”, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span><span class="o">/</span><span class="n">sphere</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp/sphere +</pre> <p>See the <a class="reference internal" href="compute_temp_sphere.html"><span class="doc">compute temp/sphere</span></a> command for details. Note that the ID of the new compute is the fix-ID + underscore + “temp”, and the group for the new compute is the same as @@ -213,9 +213,7 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the state of the Nose/Hoover thermostat to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of the fix continues in an diff --git a/doc/html/fix_orient.html b/doc/html/fix_orient.html index 74dd4d3477..9b01605d28 100644 --- a/doc/html/fix_orient.html +++ b/doc/html/fix_orient.html @@ -232,9 +232,7 @@ symmetry, so the list must include one from each pair of equal-and-opposite neighbors. A pair of orientation files for a Sigma=5 tilt boundary are shown below. A tutorial that can help for writing the orientation files is given in <a class="reference internal" href="#wicaksono2"><span class="std std-ref">(Wicaksono2)</span></a></p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the potential energy of atom interactions with the grain diff --git a/doc/html/fix_phonon.html b/doc/html/fix_phonon.html index 40d369afee..3094e830ae 100644 --- a/doc/html/fix_phonon.html +++ b/doc/html/fix_phonon.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix phonon command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">phonon</span> <span class="n">N</span> <span class="n">Noutput</span> <span class="n">Nwait</span> <span class="n">map_file</span> <span class="n">prefix</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID phonon N Noutput Nwait map_file prefix keyword values ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>phonon = style name of this fix command</li> @@ -239,9 +239,7 @@ even degrade the performance of lammps in case the unit cell is too large.</p> <a class="reference internal" href="units.html"><span class="doc">energy/distance^2/mass</span></a> units. The coordinates for <em>q</em> points in the log file is in the units of the basis vectors of the corresponding reciprocal lattice.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>temp</em> option is supported by this fix. You can use it to change the temperature compute from thermo_temp diff --git a/doc/html/fix_pimd.html b/doc/html/fix_pimd.html index 57ee90e294..545be26b57 100644 --- a/doc/html/fix_pimd.html +++ b/doc/html/fix_pimd.html @@ -232,9 +232,9 @@ ring.</p> <p>To run a PIMD simulation with M quasi-beads in each ring polymer using N MPI tasks for each partition’s domain-decomposition, you would use P = MxN processors (cores) and run the simulation as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="n">P</span> <span class="n">lmp_mpi</span> <span class="o">-</span><span class="n">partition</span> <span class="n">MxN</span> <span class="o">-</span><span class="ow">in</span> <span class="n">script</span> -</pre></div> -</div> +<pre class="literal-block"> +mpirun -np P lmp_mpi -partition MxN -in script +</pre> <p>Note that in the LAMMPS input script for a multi-partition simulation, it is often very useful to define a <a class="reference internal" href="variable.html"><span class="doc">uloop-style variable</span></a> such as</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">ibead</span> <span class="n">uloop</span> <span class="n">M</span> <span class="n">pad</span> @@ -243,11 +243,11 @@ it is often very useful to define a <a class="reference internal" href="variable <p>where M is the number of quasi-beads (partitions) used in the calculation. The uloop variable can then be used to manage I/O related tasks for each of the partitions, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>dump dcd all dcd 10 system_${ibead}.dcd +<pre class="literal-block"> +dump dcd all dcd 10 system_${ibead}.dcd restart 1000 system_${ibead}.restart1 system_${ibead}.restart2 read_restart system_${ibead}.restart2 -</pre></div> -</div> +</pre> </div> <div class="section" id="restrictions"> <h2>Restrictions</h2> diff --git a/doc/html/fix_pour.html b/doc/html/fix_pour.html index ca471ec2c3..ee3f050be4 100644 --- a/doc/html/fix_pour.html +++ b/doc/html/fix_pour.html @@ -316,10 +316,8 @@ can prevent particles from being inserted. The <em>ignore</em> keyword causes the overlap check to skip any line or triangle particles. Obviously you should only use it if there is in fact no overlap of the line or triangle particles with the insertion region.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. This means you must be careful when restarting a pouring simulation, when the restart file was written in the middle of the pouring operation. Specifically, you should use a new fix pour diff --git a/doc/html/fix_qbmsst.html b/doc/html/fix_qbmsst.html index 1fb67f4518..f3dca0ee47 100644 --- a/doc/html/fix_qbmsst.html +++ b/doc/html/fix_qbmsst.html @@ -157,10 +157,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">qbmsst</span> <span class="n">z</span> <span class="mf">0.122</span> <span class="n">q</span> <span class="mi">25</span> <span class="n">mu</span> <span class="mf">0.9</span> <span class="n">tscale</span> <span class="mf">0.01</span> <span class="n">damp</span> <span class="mi">200</span> <span class="n">seed</span> <span class="mi">35082</span> <span class="n">f_max</span> <span class="mf">0.3</span> <span class="n">N_f</span> <span class="mi">100</span> <span class="n">eta</span> <span class="mi">1</span> <span class="n">beta</span> <span class="mi">400</span> <span class="n">T_init</span> <span class="mi">110</span> <span class="p">(</span><span class="n">liquid</span> <span class="n">methane</span> <span class="n">modeled</span> <span class="k">with</span> <span class="n">the</span> <span class="n">REAX</span> <span class="n">force</span> <span class="n">field</span><span class="p">,</span> <span class="n">real</span> <span class="n">units</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">qbmsst</span> <span class="n">z</span> <span class="mi">72</span> <span class="n">q</span> <span class="mi">40</span> <span class="n">tscale</span> <span class="mf">0.05</span> <span class="n">damp</span> <span class="mi">1</span> <span class="n">seed</span> <span class="mi">47508</span> <span class="n">f_max</span> <span class="mf">120.0</span> <span class="n">N_f</span> <span class="mi">100</span> <span class="n">eta</span> <span class="mf">1.0</span> <span class="n">beta</span> <span class="mi">500</span> <span class="n">T_init</span> <span class="mi">300</span> <span class="p">(</span><span class="n">quartz</span> <span class="n">modeled</span> <span class="k">with</span> <span class="n">the</span> <span class="n">BKS</span> <span class="n">force</span> <span class="n">field</span><span class="p">,</span> <span class="n">metal</span> <span class="n">units</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all qbmsst z 0.122 q 25 mu 0.9 tscale 0.01 damp 200 seed 35082 f_max 0.3 N_f 100 eta 1 beta 400 T_init 110 (liquid methane modeled with the REAX force field, real units) +fix 2 all qbmsst z 72 q 40 tscale 0.05 damp 1 seed 47508 f_max 120.0 N_f 100 eta 1.0 beta 500 T_init 300 (quartz modeled with the BKS force field, metal units) +</pre> <p>Two example input scripts are given, including shocked alpha quartz and shocked liquid methane. The input script first equilibrate an initial state with the quantum thermal bath at the target temperature @@ -242,10 +242,8 @@ thermal bath and the system before shock loading.</p> <p>For all pressure styles, the simulation box stays orthorhombic in shape. Parrinello-Rahman boundary conditions (tilted box) are supported by LAMMPS, but are not implemented for QBMSST.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Because the state of the random number generator is not written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>, this fix cannot be restarted “exactly” in an uninterrupted fashion. However, in a statistical @@ -271,16 +269,16 @@ headers, the following LAMMPS commands are suggested. Here the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> energy command is also enabled to allow the thermo keyword <em>etotal</em> to print the quantity <i>etot</i>. See also the <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style</span></a> command.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">fix_id</span> <span class="nb">all</span> <span class="n">msst</span> <span class="n">z</span> -<span class="n">fix_modify</span> <span class="n">fix_id</span> <span class="n">energy</span> <span class="n">yes</span> -<span class="n">variable</span> <span class="n">dhug</span> <span class="n">equal</span> <span class="n">f_fix_id</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">dray</span> <span class="n">equal</span> <span class="n">f_fix_id</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">lgr_vel</span> <span class="n">equal</span> <span class="n">f_fix_id</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">lgr_pos</span> <span class="n">equal</span> <span class="n">f_fix_id</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">T_qm</span> <span class="n">equal</span> <span class="n">f_fix_id</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">ke</span> <span class="n">pe</span> <span class="n">lz</span> <span class="n">pzz</span> <span class="n">etotal</span> <span class="n">v_dhug</span> <span class="n">v_dray</span> <span class="n">v_lgr_vel</span> <span class="n">v_lgr_pos</span> <span class="n">v_T_qm</span> <span class="n">f_fix_id</span> -</pre></div> -</div> +<pre class="literal-block"> +fix fix_id all msst z +fix_modify fix_id energy yes +variable dhug equal f_fix_id[1] +variable dray equal f_fix_id[2] +variable lgr_vel equal f_fix_id[3] +variable lgr_pos equal f_fix_id[4] +variable T_qm equal f_fix_id[5] +thermo_style custom step temp ke pe lz pzz etotal v_dhug v_dray v_lgr_vel v_lgr_pos v_T_qm f_fix_id +</pre> <p>The global scalar under the entry f_fix_id is the quantity of thermo energy as an extra part of <i>etot</i>. This global scalar and the vector of 5 quantities can be accessed by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. It is worth noting that the diff --git a/doc/html/fix_qeq.html b/doc/html/fix_qeq.html index addd4b9ecf..05e428f671 100644 --- a/doc/html/fix_qeq.html +++ b/doc/html/fix_qeq.html @@ -162,13 +162,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">qeq</span><span class="o">/</span><span class="n">point</span> <span class="mi">1</span> <span class="mi">10</span> <span class="mf">1.0e-6</span> <span class="mi">200</span> <span class="n">param</span><span class="o">.</span><span class="n">qeq1</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">qeq</span> <span class="n">qeq</span><span class="o">/</span><span class="n">shielded</span> <span class="mi">1</span> <span class="mi">8</span> <span class="mf">1.0e-6</span> <span class="mi">100</span> <span class="n">param</span><span class="o">.</span><span class="n">qeq2</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">qeq</span><span class="o">/</span><span class="n">slater</span> <span class="mi">5</span> <span class="mi">10</span> <span class="mf">1.0e-6</span> <span class="mi">100</span> <span class="n">params</span> <span class="n">alpha</span> <span class="mf">0.2</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">qeq</span> <span class="n">qeq</span><span class="o">/</span><span class="n">dynamic</span> <span class="mi">1</span> <span class="mi">12</span> <span class="mf">1.0e-3</span> <span class="mi">100</span> <span class="n">my_qeq</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">qeq</span><span class="o">/</span><span class="n">fire</span> <span class="mi">1</span> <span class="mi">10</span> <span class="mf">1.0e-3</span> <span class="mi">100</span> <span class="n">my_qeq</span> <span class="n">qdamp</span> <span class="mf">0.2</span> <span class="n">qstep</span> <span class="mf">0.1</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all qeq/point 1 10 1.0e-6 200 param.qeq1 +fix 1 qeq qeq/shielded 1 8 1.0e-6 100 param.qeq2 +fix 1 all qeq/slater 5 10 1.0e-6 100 params alpha 0.2 +fix 1 qeq qeq/dynamic 1 12 1.0e-3 100 my_qeq +fix 1 all qeq/fire 1 10 1.0e-3 100 my_qeq qdamp 0.2 qstep 0.1 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -292,9 +292,7 @@ non-trivial. Charges on atoms are not guaranteed to equilibrate with arbitrary choices of these parameters. We do not develop these QEq paramters. See the examples/qeq directory for some examples.</p> </div> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about these fixes is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. No global scalar or vector or per-atom quantities are stored by these fixes for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of these fixes can be used with the <em>start/stop</em> keywords of the <a class="reference internal" href="run.html"><span class="doc">run</span></a> diff --git a/doc/html/fix_qeq_comb.html b/doc/html/fix_qeq_comb.html index c7382d021d..3bf7a12a5c 100644 --- a/doc/html/fix_qeq_comb.html +++ b/doc/html/fix_qeq_comb.html @@ -195,10 +195,8 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>respa</em> option is supported by this fix. This allows to set at which level of the <a class="reference internal" href="run_style.html"><span class="doc">r-RESPA</span></a> diff --git a/doc/html/fix_qeq_reax.html b/doc/html/fix_qeq_reax.html index cc02c2516a..665de2e845 100644 --- a/doc/html/fix_qeq_reax.html +++ b/doc/html/fix_qeq_reax.html @@ -180,9 +180,7 @@ exponent. Note that these 3 quantities are also in the ReaxFF potential file, except that eta is defined here as twice the eta value in the ReaxFF file. Note that unlike the rest of LAMMPS, the units of this fix are hard-coded to be A, eV, and electronic charge.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. No global scalar or vector or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can be used with the <em>start/stop</em> keywords of the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command.</p> diff --git a/doc/html/fix_qmmm.html b/doc/html/fix_qmmm.html index 1adbcf6567..fa8cf47576 100644 --- a/doc/html/fix_qmmm.html +++ b/doc/html/fix_qmmm.html @@ -156,9 +156,7 @@ other QM codes. This will allow the LAMMPS side of the implementation to be adapted if necessary before being finalized.</p> <p>Details about how to use this fix are currently documented in the description of the QM/MM interface code itself in lib/qmmm/README.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global scalar or vector or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_qtb.html b/doc/html/fix_qtb.html index 2f8934ddd0..cffd9b2764 100644 --- a/doc/html/fix_qtb.html +++ b/doc/html/fix_qtb.html @@ -147,12 +147,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">nve</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">qtb</span> <span class="n">temp</span> <span class="mi">110</span> <span class="n">damp</span> <span class="mi">200</span> <span class="n">seed</span> <span class="mi">35082</span> <span class="n">f_max</span> <span class="mf">0.3</span> <span class="n">N_f</span> <span class="mi">100</span> <span class="p">(</span><span class="n">liquid</span> <span class="n">methane</span> <span class="n">modeled</span> <span class="k">with</span> <span class="n">the</span> <span class="n">REAX</span> <span class="n">force</span> <span class="n">field</span><span class="p">,</span> <span class="n">real</span> <span class="n">units</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">nph</span> <span class="n">iso</span> <span class="mf">1.01325</span> <span class="mf">1.01325</span> <span class="mi">1</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">qtb</span> <span class="n">temp</span> <span class="mi">300</span> <span class="n">damp</span> <span class="mi">1</span> <span class="n">seed</span> <span class="mi">47508</span> <span class="n">f_max</span> <span class="mf">120.0</span> <span class="n">N_f</span> <span class="mi">100</span> <span class="p">(</span><span class="n">quartz</span> <span class="n">modeled</span> <span class="k">with</span> <span class="n">the</span> <span class="n">BKS</span> <span class="n">force</span> <span class="n">field</span><span class="p">,</span> <span class="n">metal</span> <span class="n">units</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all nve +fix 1 all qtb temp 110 damp 200 seed 35082 f_max 0.3 N_f 100 (liquid methane modeled with the REAX force field, real units) +fix 2 all nph iso 1.01325 1.01325 1 +fix 2 all qtb temp 300 damp 1 seed 47508 f_max 120.0 N_f 100 (quartz modeled with the BKS force field, metal units) +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -219,7 +219,7 @@ runs on different numbers of processors.</p> vibrational modes with frequencies higher than <em>f_max</em> will not be modulated. If we denote &Delta;<i>t</i> as the time interval for the MD integration, <em>f_max</em> is always reset by the code to make -<i>&alpha;</i> = (int)(2<em>f_max</em>&Delta;<i>t</i>)<sup><i>-1</i></sup> a +<i>&alpha;</i> = (int)(2*f_max*&Delta;<i>t</i>)<sup><i>-1</i></sup> a positive integer and print out relative information. An appropriate value for the cutoff frequency <em>f_max</em> would be around 2~3 <i>f</i><sub>D</sub>, where <i>f</i><sub>D</sub> is the Debye diff --git a/doc/html/fix_reax_bonds.html b/doc/html/fix_reax_bonds.html index 0275b0ad0e..e8c6d12136 100644 --- a/doc/html/fix_reax_bonds.html +++ b/doc/html/fix_reax_bonds.html @@ -157,10 +157,8 @@ written to <em>filename</em> on timesteps that are multiples of <em>Nevery</em>, including timestep 0. For time-averaged chemical species analysis, please see the <a class="reference internal" href="fix_reaxc_species.html"><span class="doc">fix reaxc/c/species</span></a> command.</p> <p>The format of the output file should be self-explantory.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_reaxc_species.html b/doc/html/fix_reaxc_species.html index d4f4f182bd..fb72dd69c4 100644 --- a/doc/html/fix_reaxc_species.html +++ b/doc/html/fix_reaxc_species.html @@ -215,10 +215,8 @@ i.e. Nrepeat*Nevery can not exceed Nfreq.</p> <p>For example, if Nevery=2, Nrepeat=6, and Nfreq=100, then bond-order values on timesteps 90,92,94,96,98,100 will be used to compute the average bond-order for the species analysis output on timestep 100.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes both a global vector of length 2 and a per-atom diff --git a/doc/html/fix_restrain.html b/doc/html/fix_restrain.html index 34228509c9..ef8c9949c2 100644 --- a/doc/html/fix_restrain.html +++ b/doc/html/fix_restrain.html @@ -154,12 +154,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">holdem</span> <span class="nb">all</span> <span class="n">restrain</span> <span class="n">bond</span> <span class="mi">45</span> <span class="mi">48</span> <span class="mf">2000.0</span> <span class="mf">2000.0</span> <span class="mf">2.75</span> -<span class="n">fix</span> <span class="n">holdem</span> <span class="nb">all</span> <span class="n">restrain</span> <span class="n">dihedral</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mi">4</span> <span class="mf">2000.0</span> <span class="mf">2000.0</span> <span class="mf">120.0</span> -<span class="n">fix</span> <span class="n">holdem</span> <span class="nb">all</span> <span class="n">restrain</span> <span class="n">bond</span> <span class="mi">45</span> <span class="mi">48</span> <span class="mf">2000.0</span> <span class="mf">2000.0</span> <span class="mf">2.75</span> <span class="n">dihedral</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mi">4</span> <span class="mf">2000.0</span> <span class="mf">2000.0</span> <span class="mf">120.0</span> -<span class="n">fix</span> <span class="n">texas_holdem</span> <span class="nb">all</span> <span class="n">restrain</span> <span class="n">dihedral</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mi">4</span> <span class="mf">0.0</span> <span class="mf">2000.0</span> <span class="mf">120.0</span> <span class="n">dihedral</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mi">5</span> <span class="mf">0.0</span> <span class="mf">2000.0</span> <span class="o">-</span><span class="mf">120.0</span> <span class="n">dihedral</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mi">6</span> <span class="mf">0.0</span> <span class="mf">2000.0</span> <span class="mf">0.0</span> -</pre></div> -</div> +<pre class="literal-block"> +fix holdem all restrain bond 45 48 2000.0 2000.0 2.75 +fix holdem all restrain dihedral 1 2 3 4 2000.0 2000.0 120.0 +fix holdem all restrain bond 45 48 2000.0 2000.0 2.75 dihedral 1 2 3 4 2000.0 2000.0 120.0 +fix texas_holdem all restrain dihedral 1 2 3 4 0.0 2000.0 120.0 dihedral 1 2 3 5 0.0 2000.0 -120.0 dihedral 1 2 3 6 0.0 2000.0 0.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -202,7 +202,8 @@ works best for a given application.</p> molecule with particular restratins (e.g. for fitting forcefield parameters or constructing a potential energy surface), commands such as the following may be useful:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span># minimize molecule energy with restraints +<pre class="literal-block"> +# minimize molecule energy with restraints velocity all create 600.0 8675309 mom yes rot yes dist gaussian fix NVE all nve fix TFIX all langevin 600.0 0.0 100 24601 @@ -218,8 +219,7 @@ minimize 1e-6 1e-9 1000 100000 # report unrestrained energies unfix REST run 0 -</pre></div> -</div> +</pre> <hr class="docutils" /> <p>The <em>bond</em> keyword applies a bond restraint to the specified atoms using the same functional form used by the <a class="reference internal" href="bond_harmonic.html"><span class="doc">bond_style harmonic</span></a> command. The potential associated with @@ -259,10 +259,8 @@ associated with the restraint is</p> <p>K and phi0 are specified with the fix. Note that the value of n is hard-wired to 1. Also note that the energy will be a minimum when the current dihedral angle phi is equal to phi0.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the potential energy associated with this fix to the diff --git a/doc/html/fix_rigid.html b/doc/html/fix_rigid.html index 8b0eef3e3a..3dc4ef9053 100644 --- a/doc/html/fix_rigid.html +++ b/doc/html/fix_rigid.html @@ -211,19 +211,19 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="n">clump</span> <span class="n">rigid</span> <span class="n">single</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">clump</span> <span class="n">rigid</span><span class="o">/</span><span class="n">small</span> <span class="n">molecule</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">clump</span> <span class="n">rigid</span> <span class="n">single</span> <span class="n">force</span> <span class="mi">1</span> <span class="n">off</span> <span class="n">off</span> <span class="n">on</span> <span class="n">langevin</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mi">428984</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">polychains</span> <span class="n">rigid</span><span class="o">/</span><span class="n">nvt</span> <span class="n">molecule</span> <span class="n">temp</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">5.0</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">polychains</span> <span class="n">rigid</span> <span class="n">molecule</span> <span class="n">force</span> <span class="mi">1</span><span class="o">*</span><span class="mi">5</span> <span class="n">off</span> <span class="n">off</span> <span class="n">off</span> <span class="n">force</span> <span class="mi">6</span><span class="o">*</span><span class="mi">10</span> <span class="n">off</span> <span class="n">off</span> <span class="n">on</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">polychains</span> <span class="n">rigid</span><span class="o">/</span><span class="n">small</span> <span class="n">molecule</span> <span class="n">langevin</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mi">428984</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="n">fluid</span> <span class="n">rigid</span> <span class="n">group</span> <span class="mi">3</span> <span class="n">clump1</span> <span class="n">clump2</span> <span class="n">clump3</span> <span class="n">torque</span> <span class="o">*</span> <span class="n">off</span> <span class="n">off</span> <span class="n">off</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">rods</span> <span class="n">rigid</span><span class="o">/</span><span class="n">npt</span> <span class="n">molecule</span> <span class="n">temp</span> <span class="mf">300.0</span> <span class="mf">300.0</span> <span class="mf">100.0</span> <span class="n">iso</span> <span class="mf">0.5</span> <span class="mf">0.5</span> <span class="mf">10.0</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">particles</span> <span class="n">rigid</span><span class="o">/</span><span class="n">npt</span> <span class="n">molecule</span> <span class="n">temp</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">5.0</span> <span class="n">x</span> <span class="mf">0.5</span> <span class="mf">0.5</span> <span class="mf">1.0</span> <span class="n">z</span> <span class="mf">0.5</span> <span class="mf">0.5</span> <span class="mf">1.0</span> <span class="n">couple</span> <span class="n">xz</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">water</span> <span class="n">rigid</span><span class="o">/</span><span class="n">nph</span> <span class="n">molecule</span> <span class="n">iso</span> <span class="mf">0.5</span> <span class="mf">0.5</span> <span class="mf">1.0</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="n">particles</span> <span class="n">rigid</span><span class="o">/</span><span class="n">npt</span><span class="o">/</span><span class="n">small</span> <span class="n">molecule</span> <span class="n">temp</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="n">iso</span> <span class="mf">0.5</span> <span class="mf">0.5</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 clump rigid single +fix 1 clump rigid/small molecule +fix 1 clump rigid single force 1 off off on langevin 1.0 1.0 1.0 428984 +fix 1 polychains rigid/nvt molecule temp 1.0 1.0 5.0 +fix 1 polychains rigid molecule force 1*5 off off off force 6*10 off off on +fix 1 polychains rigid/small molecule langevin 1.0 1.0 1.0 428984 +fix 2 fluid rigid group 3 clump1 clump2 clump3 torque * off off off +fix 1 rods rigid/npt molecule temp 300.0 300.0 100.0 iso 0.5 0.5 10.0 +fix 1 particles rigid/npt molecule temp 1.0 1.0 5.0 x 0.5 0.5 1.0 z 0.5 0.5 1.0 couple xz +fix 1 water rigid/nph molecule iso 0.5 0.5 1.0 +fix 1 particles rigid/npt/small molecule temp 1.0 1.0 1.0 iso 0.5 0.5 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -385,8 +385,8 @@ apply to is determined by the first argument of the <em>force</em> and <em>torque</em> keywords. It can be an integer M from 1 to Nbody, where Nbody is the number of rigid bodies defined. A wild-card asterisk can be used in place of, or in conjunction with, the M argument to set the -flags for multiple rigid bodies. This takes the form “*” or “<em>n” or -“n</em>” or “m*n”. If N = the number of rigid bodies, then an asterisk +flags for multiple rigid bodies. This takes the form “*” or “*n” or +“n*” or “m*n”. If N = the number of rigid bodies, then an asterisk with no numeric values means all bodies from 1 to N. A leading asterisk means all bodies from 1 to n (inclusive). A trailing asterisk means all bodies from n to N (inclusive). A middle asterisk @@ -745,10 +745,8 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about the 4 NVE rigid styles is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. The exception is if the <em>infile</em> or <em>mol</em> keyword is used, in which case an auxiliary file is written out with rigid body information each time a restart file is written, as diff --git a/doc/html/fix_rx.html b/doc/html/fix_rx.html index b39fe17f46..6d337133f8 100644 --- a/doc/html/fix_rx.html +++ b/doc/html/fix_rx.html @@ -147,13 +147,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">rx</span> <span class="n">kinetics</span><span class="o">.</span><span class="n">rx</span> <span class="n">none</span> <span class="n">dense</span> <span class="n">lammps_rk4</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">rx</span> <span class="n">kinetics</span><span class="o">.</span><span class="n">rx</span> <span class="n">none</span> <span class="n">sparse</span> <span class="n">lammps_rk4</span> <span class="mi">1</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">rx</span> <span class="n">kinetics</span><span class="o">.</span><span class="n">rx</span> <span class="n">lucy</span> <span class="n">sparse</span> <span class="n">lammps_rk4</span> <span class="mi">10</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">rx</span> <span class="n">kinetics</span><span class="o">.</span><span class="n">rx</span> <span class="n">none</span> <span class="n">dense</span> <span class="n">rkf45</span> <span class="mi">1</span> <span class="mi">100</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">6</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">8</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">rx</span> <span class="n">kinetics</span><span class="o">.</span><span class="n">rx</span> <span class="n">none</span> <span class="n">dense</span> <span class="n">rkf45</span> <span class="mi">1</span> <span class="mi">100</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">6</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">8</span> <span class="o">-</span><span class="mi">1</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all rx kinetics.rx none dense lammps_rk4 +fix 1 all rx kinetics.rx none sparse lammps_rk4 1 +fix 1 all rx kinetics.rx lucy sparse lammps_rk4 10 +fix 1 all rx kinetics.rx none dense rkf45 1 100 1e-6 1e-8 +fix 1 all rx kinetics.rx none dense rkf45 1 100 1e-6 1e-8 -1 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -271,7 +271,7 @@ temperature exponent <em>n</em>, and the activation energy <em>Ea</em>.</p> are used by the <a class="reference internal" href="fix_eos_table_rx.html"><span class="doc">fix eos/table/rx</span></a> command to define the thermodynamic properties of each species. Furthermore, the number of species molecules (i.e., concentration) can be specified -either with the <a class="reference internal" href="set.html"><span class="doc">set</span></a> command using the “<a href="#id3"><span class="problematic" id="id4">d_</span></a>” prefix or by +either with the <a class="reference internal" href="set.html"><span class="doc">set</span></a> command using the “d_” prefix or by reading directly the concentrations from a data file. For the latter case, the <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> command with the fix keyword should be specified, where the fix-ID will be the “fix rx`ID with a <SPECIES”>`_ suffix, e.g.</p> diff --git a/doc/html/fix_saed_vtk.html b/doc/html/fix_saed_vtk.html index 29f7570dc9..08de66a8eb 100644 --- a/doc/html/fix_saed_vtk.html +++ b/doc/html/fix_saed_vtk.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix saed/vtk command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">saed</span><span class="o">/</span><span class="n">vtk</span> <span class="n">Nevery</span> <span class="n">Nrepeat</span> <span class="n">Nfreak</span> <span class="n">c_ID</span> <span class="n">attribute</span> <span class="n">args</span> <span class="o">...</span> <span class="n">keyword</span> <span class="n">args</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID saed/vtk Nevery Nrepeat Nfreak c_ID attribute args ... keyword args ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>saed/vtk = style name of this fix command</li> @@ -154,14 +154,14 @@ keyword = <em>file</em> or <em>ave</em> or <em>start</em> or <em>file</em> or <e </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">saed</span> <span class="mf">0.0251</span> <span class="n">Al</span> <span class="n">O</span> <span class="n">Kmax</span> <span class="mf">1.70</span> <span class="n">Zone</span> <span class="mi">0</span> <span class="mi">0</span> <span class="mi">1</span> <span class="n">dR_Ewald</span> <span class="mf">0.01</span> <span class="n">c</span> <span class="mf">0.5</span> <span class="mf">0.5</span> <span class="mf">0.5</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">saed</span> <span class="mf">0.0251</span> <span class="n">Ni</span> <span class="n">Kmax</span> <span class="mf">1.70</span> <span class="n">Zone</span> <span class="mi">0</span> <span class="mi">0</span> <span class="mi">0</span> <span class="n">c</span> <span class="mf">0.05</span> <span class="mf">0.05</span> <span class="mf">0.05</span> <span class="n">manual</span> <span class="n">echo</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">saed</span><span class="o">/</span><span class="n">vtk</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">c_1</span> <span class="n">file</span> <span class="n">Al2O3_001</span><span class="o">.</span><span class="n">saed</span> -<span class="n">fix</span> <span class="n">saed</span><span class="o">/</span><span class="n">vtk</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">c_2</span> <span class="n">file</span> <span class="n">Ni_000</span><span class="o">.</span><span class="n">saed</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all saed 0.0251 Al O Kmax 1.70 Zone 0 0 1 dR_Ewald 0.01 c 0.5 0.5 0.5 +compute 2 all saed 0.0251 Ni Kmax 1.70 Zone 0 0 0 c 0.05 0.05 0.05 manual echo +</pre> +<pre class="literal-block"> +fix saed/vtk 1 1 1 c_1 file Al2O3_001.saed +fix saed/vtk 1 1 1 c_2 file Ni_000.saed +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -182,10 +182,10 @@ specified values may represent calculations performed by saed computes which store their own “group” definitions.</p> <p>Fix saed/vtk is designed to work only with <a class="reference internal" href="compute_saed.html"><span class="doc">compute saed</span></a> values, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">3</span> <span class="n">top</span> <span class="n">saed</span> <span class="mf">0.0251</span> <span class="n">Al</span> <span class="n">O</span> -<span class="n">fix</span> <span class="n">saed</span><span class="o">/</span><span class="n">vtk</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">c_3</span> <span class="n">file</span> <span class="n">Al2O3_001</span><span class="o">.</span><span class="n">saed</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 3 top saed 0.0251 Al O +fix saed/vtk 1 1 1 c_3 file Al2O3_001.saed +</pre> <hr class="docutils" /> <p>The <em>Nevery</em>, <em>Nrepeat</em>, and <em>Nfreq</em> arguments specify on what timesteps the input values will be used in order to contribute to the @@ -209,19 +209,19 @@ vtk image data formatting. The filename assigned by the <em>file</em> keyword i appended with _N.vtk where N is an index (0,1,2...) to account for multiple diffraction intensity outputs.</p> <p>By default the header contains the following information (with example data):</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># vtk DataFile Version 3.0 c_SAED</span> -<span class="n">Image</span> <span class="n">data</span> <span class="nb">set</span> -<span class="n">ASCII</span> -<span class="n">DATASET</span> <span class="n">STRUCTURED_POINTS</span> -<span class="n">DIMENSIONS</span> <span class="mi">337</span> <span class="mi">219</span> <span class="mi">209</span> -<span class="n">ASPECT_RATIO</span> <span class="mf">0.00507953</span> <span class="mf">0.00785161</span> <span class="mf">0.00821458</span> -<span class="n">ORIGIN</span> <span class="o">-</span><span class="mf">0.853361</span> <span class="o">-</span><span class="mf">0.855826</span> <span class="o">-</span><span class="mf">0.854316</span> -<span class="n">POINT_DATA</span> <span class="mi">15424827</span> -<span class="n">SCALARS</span> <span class="n">intensity</span> <span class="nb">float</span> -<span class="n">LOOKUP_TABLE</span> <span class="n">default</span> -<span class="o">...</span><span class="n">data</span> -</pre></div> -</div> +<pre class="literal-block"> +# vtk DataFile Version 3.0 c_SAED +Image data set +ASCII +DATASET STRUCTURED_POINTS +DIMENSIONS 337 219 209 +ASPECT_RATIO 0.00507953 0.00785161 0.00821458 +ORIGIN -0.853361 -0.855826 -0.854316 +POINT_DATA 15424827 +SCALARS intensity float +LOOKUP_TABLE default +...data +</pre> <p>In this example, kspace is sampled across a 337 x 219 x 209 point mesh where the mesh spacing is approximately 0.005, 0.007, and 0.008 inv(length) units in the k1, k2, and k3 directions, respectively. @@ -264,9 +264,7 @@ intensity outputs.</p> <p>The <em>overwrite</em> keyword will continuously overwrite the output file with the latest output, so that it only contains one timestep worth of output. This option can only be used with the <em>ave running</em> setting.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>No parameter of this fix can be used with the <em>start/stop</em> keywords of diff --git a/doc/html/fix_shake.html b/doc/html/fix_shake.html index 7cfb03e019..6c279062d0 100644 --- a/doc/html/fix_shake.html +++ b/doc/html/fix_shake.html @@ -289,10 +289,8 @@ the RATTLE constraints. You can check whether the constraints work correctly by setting the value of RATTLE_DEBUG in src/fix_rattle.cpp to 1 and recompiling LAMMPS.</p> </div> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about these fixes is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to these fixes. No global or per-atom quantities are stored by these fixes for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of these fixes diff --git a/doc/html/fix_smd.html b/doc/html/fix_smd.html index 5be23f5d7b..0c2d9bc519 100644 --- a/doc/html/fix_smd.html +++ b/doc/html/fix_smd.html @@ -212,9 +212,7 @@ over the pulling force in direction of the spring is recorded and can then later be used to compute the potential of mean force (PMF) by averaging over multiple independent trajectories along the same pulling path.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>The fix stores the direction of the spring, current pulling target distance and the running PMF to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to diff --git a/doc/html/fix_smd_adjust_dt.html b/doc/html/fix_smd_adjust_dt.html index ebf49b94ca..734c433f36 100644 --- a/doc/html/fix_smd_adjust_dt.html +++ b/doc/html/fix_smd_adjust_dt.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix smd/adjust_dt command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">smd</span><span class="o">/</span><span class="n">adjust_dt</span> <span class="n">arg</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID smd/adjust_dt arg +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>smd/adjust_dt = style name of this fix command</li> @@ -142,9 +142,9 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">smd</span><span class="o">/</span><span class="n">adjust_dt</span> <span class="mf">0.1</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all smd/adjust_dt 0.1 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -157,9 +157,7 @@ stable maximum time step.</p> <p>This fix inquires the minimum stable time increment across all particles contained in the group for which this fix is defined. An additional safety factor <em>s_fact</em> is applied to the time increment.</p> <p>See <a class="reference external" href="USER/smd/SMD_LAMMPS_userguide.pdf">this PDF guide</a> to use Smooth Mach Dynamics in LAMMPS.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Currently, no part of USER-SMD supports restarting nor minimization.</p> </div> <div class="section" id="restrictions"> diff --git a/doc/html/fix_smd_integrate_tlsph.html b/doc/html/fix_smd_integrate_tlsph.html index 194f99be37..04c9db062a 100644 --- a/doc/html/fix_smd_integrate_tlsph.html +++ b/doc/html/fix_smd_integrate_tlsph.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix smd/integrate_tlsph command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">smd</span><span class="o">/</span><span class="n">integrate_tlsph</span> <span class="n">keyword</span> <span class="n">values</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID smd/integrate_tlsph keyword values +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>smd/integrate_tlsph = style name of this fix command</li> @@ -144,10 +144,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">smd</span><span class="o">/</span><span class="n">integrate_tlsph</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">smd</span><span class="o">/</span><span class="n">integrate_tlsph</span> <span class="n">limit_velocity</span> <span class="mi">1000</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all smd/integrate_tlsph +fix 1 all smd/integrate_tlsph limit_velocity 1000 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -155,9 +155,7 @@ <p>See <a class="reference external" href="USER/smd/SMD_LAMMPS_userguide.pdf">this PDF guide</a> to using Smooth Mach Dynamics in LAMMPS.</p> <p>The <em>limit_velocity</em> keyword will control the velocity, scaling the norm of the velocity vector to max_vel in case it exceeds this velocity limit.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Currently, no part of USER-SMD supports restarting nor minimization. This fix has no outputs.</p> </div> <div class="section" id="restrictions"> diff --git a/doc/html/fix_smd_integrate_ulsph.html b/doc/html/fix_smd_integrate_ulsph.html index e45d7d3f31..58bd9fda2c 100644 --- a/doc/html/fix_smd_integrate_ulsph.html +++ b/doc/html/fix_smd_integrate_ulsph.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix smd/integrate_ulsph command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">smd</span><span class="o">/</span><span class="n">integrate_ulsph</span> <span class="n">keyword</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID smd/integrate_ulsph keyword +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>smd/integrate_ulsph = style name of this fix command</li> @@ -148,12 +148,12 @@ max_nn = maximum number of neighbors</dd> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">smd</span><span class="o">/</span><span class="n">integrate_ulsph</span> <span class="n">adjust_radius</span> <span class="mf">1.02</span> <span class="mi">25</span> <span class="mi">50</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">smd</span><span class="o">/</span><span class="n">integrate_ulsph</span> <span class="n">limit_velocity</span> <span class="mi">1000</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 all smd/integrate_ulsph adjust_radius 1.02 25 50 +</pre> +<pre class="literal-block"> +fix 1 all smd/integrate_ulsph limit_velocity 1000 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -161,12 +161,10 @@ max_nn = maximum number of neighbors</dd> See <a class="reference external" href="USER/smd/SMD_LAMMPS_userguide.pdf">this PDF guide</a> to using Smooth Mach Dynamics in LAMMPS.</p> <p>The <em>adjust_radius</em> keyword activates dynamic adjustment of the per-particle SPH smoothing kernel radius such that the number of neighbors per particles remains within the interval <em>min_nn</em> to <em>max_nn</em>. The parameter <em>adjust_radius_factor</em> determines the amount of adjustment per timestep. Typical values are -<em>adjust_radius_factor</em>=1.02, <em>min_nn</em>=15, and <em>max_nn</em>=20.</p> +<a href="#id1"><span class="problematic" id="id2">*</span></a>adjust_radius_factor*=1.02, <a href="#id3"><span class="problematic" id="id4">*</span></a>min_nn*=15, and <a href="#id5"><span class="problematic" id="id6">*</span></a>max_nn*=20.</p> <p>The <em>limit_velocity</em> keyword will control the velocity, scaling the norm of the velocity vector to max_vel in case it exceeds this velocity limit.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Currently, no part of USER-SMD supports restarting nor minimization. This fix has no outputs.</p> </div> <div class="section" id="restrictions"> diff --git a/doc/html/fix_smd_move_triangulated_surface.html b/doc/html/fix_smd_move_triangulated_surface.html index 689017806f..e3c04397e7 100644 --- a/doc/html/fix_smd_move_triangulated_surface.html +++ b/doc/html/fix_smd_move_triangulated_surface.html @@ -128,55 +128,53 @@ <span id="index-0"></span><h1>fix smd/move_tri_surf command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">smd</span><span class="o">/</span><span class="n">move_tri_surf</span> <span class="n">keyword</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID smd/move_tri_surf keyword +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>smd/move_tri_surf keyword = style name of this fix command</li> -<li>keyword = <a href="#id1"><span class="problematic" id="id2">**</span></a>LINEAR* or <a href="#id3"><span class="problematic" id="id4">**</span></a>WIGGLE* or <a href="#id5"><span class="problematic" id="id6">**</span></a>ROTATE*</li> +<li>keyword = <em>*LINEAR</em> or <em>*WIGGLE</em> or <em>*ROTATE</em></li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="o">**</span><span class="n">LINEAR</span><span class="o">*</span> <span class="n">args</span> <span class="o">=</span> <span class="n">Vx</span> <span class="n">Vy</span> <span class="n">Vz</span> - <span class="n">Vx</span><span class="p">,</span><span class="n">Vy</span><span class="p">,</span><span class="n">Vz</span> <span class="o">=</span> <span class="n">components</span> <span class="n">of</span> <span class="n">velocity</span> <span class="n">vector</span> <span class="p">(</span><span class="n">velocity</span> <span class="n">units</span><span class="p">),</span> <span class="nb">any</span> <span class="n">component</span> <span class="n">can</span> <span class="n">be</span> <span class="n">specified</span> <span class="k">as</span> <span class="n">NULL</span> -<span class="o">**</span><span class="n">WIGGLE</span><span class="o">*</span> <span class="n">args</span> <span class="o">=</span> <span class="n">Vx</span> <span class="n">Vy</span> <span class="n">Vz</span> <span class="n">max_travel</span> - <span class="n">vx</span><span class="p">,</span><span class="n">vy</span><span class="p">,</span><span class="n">vz</span> <span class="o">=</span> <span class="n">components</span> <span class="n">of</span> <span class="n">velocity</span> <span class="n">vector</span> <span class="p">(</span><span class="n">velocity</span> <span class="n">units</span><span class="p">),</span> <span class="nb">any</span> <span class="n">component</span> <span class="n">can</span> <span class="n">be</span> <span class="n">specified</span> <span class="k">as</span> <span class="n">NULL</span> - <span class="n">max_travel</span> <span class="o">=</span> <span class="n">wiggle</span> <span class="n">amplitude</span> -<span class="o">**</span><span class="n">ROTATE</span><span class="o">*</span> <span class="n">args</span> <span class="o">=</span> <span class="n">Px</span> <span class="n">Py</span> <span class="n">Pz</span> <span class="n">Rx</span> <span class="n">Ry</span> <span class="n">Rz</span> <span class="n">period</span> - <span class="n">Px</span><span class="p">,</span><span class="n">Py</span><span class="p">,</span><span class="n">Pz</span> <span class="o">=</span> <span class="n">origin</span> <span class="n">point</span> <span class="n">of</span> <span class="n">axis</span> <span class="n">of</span> <span class="n">rotation</span> <span class="p">(</span><span class="n">distance</span> <span class="n">units</span><span class="p">)</span> - <span class="n">Rx</span><span class="p">,</span><span class="n">Ry</span><span class="p">,</span><span class="n">Rz</span> <span class="o">=</span> <span class="n">axis</span> <span class="n">of</span> <span class="n">rotation</span> <span class="n">vector</span> - <span class="n">period</span> <span class="o">=</span> <span class="n">period</span> <span class="n">of</span> <span class="n">rotation</span> <span class="p">(</span><span class="n">time</span> <span class="n">units</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +<em>*LINEAR</em> args = Vx Vy Vz + Vx,Vy,Vz = components of velocity vector (velocity units), any component can be specified as NULL +<em>*WIGGLE</em> args = Vx Vy Vz max_travel + vx,vy,vz = components of velocity vector (velocity units), any component can be specified as NULL + max_travel = wiggle amplitude +<em>*ROTATE</em> args = Px Py Pz Rx Ry Rz period + Px,Py,Pz = origin point of axis of rotation (distance units) + Rx,Ry,Rz = axis of rotation vector + period = period of rotation (time units) +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">1</span> <span class="n">tool</span> <span class="n">smd</span><span class="o">/</span><span class="n">move_tri_surf</span> <span class="o">*</span><span class="n">LINEAR</span> <span class="mi">20</span> <span class="mi">20</span> <span class="mi">10</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="n">tool</span> <span class="n">smd</span><span class="o">/</span><span class="n">move_tri_surf</span> <span class="o">*</span><span class="n">WIGGLE</span> <span class="mi">20</span> <span class="mi">20</span> <span class="mi">10</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="n">tool</span> <span class="n">smd</span><span class="o">/</span><span class="n">move_tri_surf</span> <span class="o">*</span><span class="n">ROTATE</span> <span class="mi">0</span> <span class="mi">0</span> <span class="mi">0</span> <span class="mi">5</span> <span class="mi">2</span> <span class="mi">1</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 1 tool smd/move_tri_surf *LINEAR 20 20 10 +fix 2 tool smd/move_tri_surf *WIGGLE 20 20 10 +fix 2 tool smd/move_tri_surf *ROTATE 0 0 0 5 2 1 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> <p>This fix applies only to rigid surfaces read from .STL files via fix <a class="reference internal" href="fix_smd_wall_surface.html"><span class="doc">smd/wall_surface</span></a> . It updates position and velocity for the particles in the group each timestep without regard to forces on the particles. The rigid surfaces can thus be moved along simple trajectories during the simulation.</p> -<p>The <a href="#id19"><span class="problematic" id="id20">**</span></a>LINEAR* style moves particles with the specified constant velocity +<p>The <em>*LINEAR</em> style moves particles with the specified constant velocity vector V = (Vx,Vy,Vz). This style also sets the velocity of each particle to V = (Vx,Vy,Vz).</p> -<p>The <a href="#id21"><span class="problematic" id="id22">**</span></a>WIGGLE* style moves particles in an oscillatory fashion. +<p>The <em>*WIGGLE</em> style moves particles in an oscillatory fashion. Particles are moved along (vx, vy, vz) with constant velocity until a displacement of max_travel is reached. Then, the velocity vector is reversed. This process is repeated.</p> -<p>The <a href="#id23"><span class="problematic" id="id24">**</span></a>ROTATE* style rotates particles around a rotation axis R = (Rx,Ry,Rz) that +<p>The <em>*ROTATE</em> style rotates particles around a rotation axis R = (Rx,Ry,Rz) that goes through a point P = (Px,Py,Pz). The period of the rotation is also specified. This style also sets the velocity of each particle to (omega cross Rperp) where omega is its angular velocity around the rotation axis and Rperp is a perpendicular vector from the rotation axis to the particle.</p> <p>See <a class="reference external" href="USER/smd/SMD_LAMMPS_userguide.pdf">this PDF guide</a> to using Smooth Mach Dynamics in LAMMPS.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Currently, no part of USER-SMD supports restarting nor minimization. This fix has no outputs.</p> </div> <div class="section" id="restrictions"> diff --git a/doc/html/fix_smd_setvel.html b/doc/html/fix_smd_setvel.html index cb8449f1c0..16fc5abc50 100644 --- a/doc/html/fix_smd_setvel.html +++ b/doc/html/fix_smd_setvel.html @@ -146,9 +146,9 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">top_velocity</span> <span class="n">top_group</span> <span class="n">setvel</span> <span class="mf">1.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> -</pre></div> -</div> +<pre class="literal-block"> +fix top_velocity top_group setvel 1.0 0.0 0.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -174,10 +174,8 @@ coordinates. Thus it is easy to specify a spatially-dependent velocity field with optional time-dependence as well.</p> <p>If the <em>region</em> keyword is used, the particle must also be in the specified geometric <a class="reference internal" href="region.html"><span class="doc">region</span></a> in order to have its velocity set by this command.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Currently, no part of USER-SMD supports restarting nor minimization None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> diff --git a/doc/html/fix_smd_wall_surface.html b/doc/html/fix_smd_wall_surface.html index 92d197d542..f51d51f6a6 100644 --- a/doc/html/fix_smd_wall_surface.html +++ b/doc/html/fix_smd_wall_surface.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix smd/wall_surface command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">smd</span><span class="o">/</span><span class="n">wall_surface</span> <span class="n">arg</span> <span class="nb">type</span> <span class="n">mol</span><span class="o">-</span><span class="n">ID</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID smd/wall_surface arg type mol-ID +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>smd/wall_surface = style name of this fix command</li> @@ -146,9 +146,9 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">stl_surf</span> <span class="nb">all</span> <span class="n">smd</span><span class="o">/</span><span class="n">wall_surface</span> <span class="n">tool</span><span class="o">.</span><span class="n">stl</span> <span class="mi">2</span> <span class="mi">65535</span> -</pre></div> -</div> +<pre class="literal-block"> +fix stl_surf all smd/wall_surface tool.stl 2 65535 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -160,9 +160,7 @@ It is possible to move the triangulated surface via the <a class="reference inte <p>Immediately after a .STL file has been read, the simulation needs to be run for 0 timesteps in order to properly register the new particles in the system. See the “funnel_flow” example in the USER-SMD examples directory.</p> <p>See <a class="reference external" href="USER/smd/SMD_LAMMPS_userguide.pdf">this PDF guide</a> to use Smooth Mach Dynamics in LAMMPS.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>Currently, no part of USER-SMD supports restarting nor minimization. This fix has no outputs.</p> </div> <div class="section" id="restrictions"> diff --git a/doc/html/fix_spring.html b/doc/html/fix_spring.html index a1d40fbf68..413066a788 100644 --- a/doc/html/fix_spring.html +++ b/doc/html/fix_spring.html @@ -215,9 +215,7 @@ spring command, if the rigid body will cross a periodic boundary. This is because image flags for rigid bodies are used in a different way, as explained on the <a class="reference internal" href="fix_rigid.html"><span class="doc">fix rigid</span></a> doc page.</p> </div> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the energy stored in the spring to the system’s potential diff --git a/doc/html/fix_spring_chunk.html b/doc/html/fix_spring_chunk.html index 7373fd8e56..5ea20d8a43 100644 --- a/doc/html/fix_spring_chunk.html +++ b/doc/html/fix_spring_chunk.html @@ -166,9 +166,7 @@ the mass of the atom, and Mm is the total mass of all atoms in the chunk. Note that <em>K</em> thus represents the spring constant for the total force on each chunk of atoms, not for a spring applied to each atom.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the energy stored in all the springs to the system’s potential diff --git a/doc/html/fix_spring_rg.html b/doc/html/fix_spring_rg.html index aeaa3bece4..8cb641326c 100644 --- a/doc/html/fix_spring_rg.html +++ b/doc/html/fix_spring_rg.html @@ -166,9 +166,7 @@ the mass of the entire group. Note that K is thus a force constant for the aggregate force on the group of atoms, not a per-atom force.</p> <p>If RG0 is specified as NULL, then the RG of the group is computed at the time the fix is specified, and that value is used as the target.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_spring_self.html b/doc/html/fix_spring_self.html index dbc542e600..28e33fc5ed 100644 --- a/doc/html/fix_spring_self.html +++ b/doc/html/fix_spring_self.html @@ -160,9 +160,7 @@ spring force is applied. By default, the restraint is applied in all directions, but it can be limited to the xy-, xz-, yz-plane and the x-, y-, or z-direction, thus restraining the atoms to a line or a plane, respectively.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the original coordinates of tethered atoms to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>, so that the spring effect will be the same in a restarted simulation. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify diff --git a/doc/html/fix_store_state.html b/doc/html/fix_store_state.html index 9d236aa13f..0a885ed683 100644 --- a/doc/html/fix_store_state.html +++ b/doc/html/fix_store_state.html @@ -137,43 +137,43 @@ <li>N = store atom attributes every N steps, N = 0 for initial store only</li> <li>input = one or more atom attributes</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">possible</span> <span class="n">attributes</span> <span class="o">=</span> <span class="nb">id</span><span class="p">,</span> <span class="n">mol</span><span class="p">,</span> <span class="nb">type</span><span class="p">,</span> <span class="n">mass</span><span class="p">,</span> - <span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">,</span> <span class="n">z</span><span class="p">,</span> <span class="n">xs</span><span class="p">,</span> <span class="n">ys</span><span class="p">,</span> <span class="n">zs</span><span class="p">,</span> <span class="n">xu</span><span class="p">,</span> <span class="n">yu</span><span class="p">,</span> <span class="n">zu</span><span class="p">,</span> <span class="n">xsu</span><span class="p">,</span> <span class="n">ysu</span><span class="p">,</span> <span class="n">zsu</span><span class="p">,</span> <span class="n">ix</span><span class="p">,</span> <span class="n">iy</span><span class="p">,</span> <span class="n">iz</span><span class="p">,</span> - <span class="n">vx</span><span class="p">,</span> <span class="n">vy</span><span class="p">,</span> <span class="n">vz</span><span class="p">,</span> <span class="n">fx</span><span class="p">,</span> <span class="n">fy</span><span class="p">,</span> <span class="n">fz</span><span class="p">,</span> - <span class="n">q</span><span class="p">,</span> <span class="n">mux</span><span class="p">,</span> <span class="n">muy</span><span class="p">,</span> <span class="n">muz</span><span class="p">,</span> <span class="n">mu</span><span class="p">,</span> - <span class="n">radius</span><span class="p">,</span> <span class="n">diameter</span><span class="p">,</span> <span class="n">omegax</span><span class="p">,</span> <span class="n">omegay</span><span class="p">,</span> <span class="n">omegaz</span><span class="p">,</span> - <span class="n">angmomx</span><span class="p">,</span> <span class="n">angmomy</span><span class="p">,</span> <span class="n">angmomz</span><span class="p">,</span> <span class="n">tqx</span><span class="p">,</span> <span class="n">tqy</span><span class="p">,</span> <span class="n">tqz</span><span class="p">,</span> - <span class="n">c_ID</span><span class="p">,</span> <span class="n">c_ID</span><span class="p">[</span><span class="n">N</span><span class="p">],</span> <span class="n">f_ID</span><span class="p">,</span> <span class="n">f_ID</span><span class="p">[</span><span class="n">N</span><span class="p">],</span> <span class="n">v_name</span><span class="p">,</span> - <span class="n">d_name</span><span class="p">,</span> <span class="n">i_name</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="nb">id</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">ID</span> -<span class="n">mol</span> <span class="o">=</span> <span class="n">molecule</span> <span class="n">ID</span> -<span class="nb">type</span> <span class="o">=</span> <span class="n">atom</span> <span class="nb">type</span> -<span class="n">mass</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">mass</span> -<span class="n">x</span><span class="p">,</span><span class="n">y</span><span class="p">,</span><span class="n">z</span> <span class="o">=</span> <span class="n">unscaled</span> <span class="n">atom</span> <span class="n">coordinates</span> -<span class="n">xs</span><span class="p">,</span><span class="n">ys</span><span class="p">,</span><span class="n">zs</span> <span class="o">=</span> <span class="n">scaled</span> <span class="n">atom</span> <span class="n">coordinates</span> -<span class="n">xu</span><span class="p">,</span><span class="n">yu</span><span class="p">,</span><span class="n">zu</span> <span class="o">=</span> <span class="n">unwrapped</span> <span class="n">atom</span> <span class="n">coordinates</span> -<span class="n">xsu</span><span class="p">,</span><span class="n">ysu</span><span class="p">,</span><span class="n">zsu</span> <span class="o">=</span> <span class="n">scaled</span> <span class="n">unwrapped</span> <span class="n">atom</span> <span class="n">coordinates</span> -<span class="n">ix</span><span class="p">,</span><span class="n">iy</span><span class="p">,</span><span class="n">iz</span> <span class="o">=</span> <span class="n">box</span> <span class="n">image</span> <span class="n">that</span> <span class="n">the</span> <span class="n">atom</span> <span class="ow">is</span> <span class="ow">in</span> -<span class="n">vx</span><span class="p">,</span><span class="n">vy</span><span class="p">,</span><span class="n">vz</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">velocities</span> -<span class="n">fx</span><span class="p">,</span><span class="n">fy</span><span class="p">,</span><span class="n">fz</span> <span class="o">=</span> <span class="n">forces</span> <span class="n">on</span> <span class="n">atoms</span> -<span class="n">q</span> <span class="o">=</span> <span class="n">atom</span> <span class="n">charge</span> -<span class="n">mux</span><span class="p">,</span><span class="n">muy</span><span class="p">,</span><span class="n">muz</span> <span class="o">=</span> <span class="n">orientation</span> <span class="n">of</span> <span class="n">dipolar</span> <span class="n">atom</span> -<span class="n">mu</span> <span class="o">=</span> <span class="n">magnitued</span> <span class="n">of</span> <span class="n">dipole</span> <span class="n">moment</span> <span class="n">of</span> <span class="n">atom</span> -<span class="n">radius</span><span class="p">,</span><span class="n">diameter</span> <span class="o">=</span> <span class="n">radius</span><span class="o">.</span><span class="n">diameter</span> <span class="n">of</span> <span class="n">spherical</span> <span class="n">particle</span> -<span class="n">omegax</span><span class="p">,</span><span class="n">omegay</span><span class="p">,</span><span class="n">omegaz</span> <span class="o">=</span> <span class="n">angular</span> <span class="n">velocity</span> <span class="n">of</span> <span class="n">spherical</span> <span class="n">particle</span> -<span class="n">angmomx</span><span class="p">,</span><span class="n">angmomy</span><span class="p">,</span><span class="n">angmomz</span> <span class="o">=</span> <span class="n">angular</span> <span class="n">momentum</span> <span class="n">of</span> <span class="n">aspherical</span> <span class="n">particle</span> -<span class="n">tqx</span><span class="p">,</span><span class="n">tqy</span><span class="p">,</span><span class="n">tqz</span> <span class="o">=</span> <span class="n">torque</span> <span class="n">on</span> <span class="n">finite</span><span class="o">-</span><span class="n">size</span> <span class="n">particles</span> -<span class="n">c_ID</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">c_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">compute</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">f_ID</span><span class="p">[</span><span class="n">I</span><span class="p">]</span> <span class="o">=</span> <span class="n">Ith</span> <span class="n">column</span> <span class="n">of</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">array</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">a</span> <span class="n">fix</span> <span class="k">with</span> <span class="n">ID</span> -<span class="n">v_name</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">vector</span> <span class="n">calculated</span> <span class="n">by</span> <span class="n">an</span> <span class="n">atom</span><span class="o">-</span><span class="n">style</span> <span class="n">variable</span> <span class="k">with</span> <span class="n">name</span> -<span class="n">d_name</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">floating</span> <span class="n">point</span> <span class="n">vector</span> <span class="n">name</span><span class="p">,</span> <span class="n">managed</span> <span class="n">by</span> <span class="n">fix</span> <span class="nb">property</span><span class="o">/</span><span class="n">atom</span> -<span class="n">i_name</span> <span class="o">=</span> <span class="n">per</span><span class="o">-</span><span class="n">atom</span> <span class="n">integer</span> <span class="n">vector</span> <span class="n">name</span><span class="p">,</span> <span class="n">managed</span> <span class="n">by</span> <span class="n">fix</span> <span class="nb">property</span><span class="o">/</span><span class="n">atom</span> -</pre></div> -</div> +<pre class="literal-block"> +possible attributes = id, mol, type, mass, + x, y, z, xs, ys, zs, xu, yu, zu, xsu, ysu, zsu, ix, iy, iz, + vx, vy, vz, fx, fy, fz, + q, mux, muy, muz, mu, + radius, diameter, omegax, omegay, omegaz, + angmomx, angmomy, angmomz, tqx, tqy, tqz, + c_ID, c_ID[N], f_ID, f_ID[N], v_name, + d_name, i_name +</pre> +<pre class="literal-block"> +id = atom ID +mol = molecule ID +type = atom type +mass = atom mass +x,y,z = unscaled atom coordinates +xs,ys,zs = scaled atom coordinates +xu,yu,zu = unwrapped atom coordinates +xsu,ysu,zsu = scaled unwrapped atom coordinates +ix,iy,iz = box image that the atom is in +vx,vy,vz = atom velocities +fx,fy,fz = forces on atoms +q = atom charge +mux,muy,muz = orientation of dipolar atom +mu = magnitued of dipole moment of atom +radius,diameter = radius.diameter of spherical particle +omegax,omegay,omegaz = angular velocity of spherical particle +angmomx,angmomy,angmomz = angular momentum of aspherical particle +tqx,tqy,tqz = torque on finite-size particles +c_ID = per-atom vector calculated by a compute with ID +c_ID[I] = Ith column of per-atom array calculated by a compute with ID +f_ID = per-atom vector calculated by a fix with ID +f_ID[I] = Ith column of per-atom array calculated by a fix with ID +v_name = per-atom vector calculated by an atom-style variable with name +d_name = per-atom floating point vector name, managed by fix property/atom +i_name = per-atom integer vector name, managed by fix property/atom +</pre> <ul class="simple"> <li>zero or more keyword/value pairs may be appended</li> <li>keyword = <em>com</em></li> @@ -217,9 +217,7 @@ of the group of atoms, instead of storing the absolute position.</p> <p>The requested values are stored in a per-atom vector or array as discussed below. Zeroes are stored for atoms not in the specified group.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the per-atom values it stores to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>, so that the values can be restored when a simulation is restarted. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that diff --git a/doc/html/fix_temp_berendsen.html b/doc/html/fix_temp_berendsen.html index d628854ba7..56ae7e3339 100644 --- a/doc/html/fix_temp_berendsen.html +++ b/doc/html/fix_temp_berendsen.html @@ -192,9 +192,9 @@ thermostatting.</p> <p>This fix computes a temperature each timestep. To do this, the fix creates its own compute of style “temp”, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> command for details. Note that the ID of the new compute is the fix-ID + underscore + “temp”, and the group for the new compute is the same as the fix group.</p> @@ -219,10 +219,8 @@ this case, the thermostat works in the following manner: the current temperature is calculated taking the bias into account, bias is removed from each atom, thermostatting is performed on the remaining thermal degrees of freedom, and the bias is added back in.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>temp</em> option is supported by this fix. You can use it to assign a temperature <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> diff --git a/doc/html/fix_temp_csvr.html b/doc/html/fix_temp_csvr.html index 0d3874ecdd..1a1b23cc0d 100644 --- a/doc/html/fix_temp_csvr.html +++ b/doc/html/fix_temp_csvr.html @@ -210,9 +210,9 @@ thermostatting.</p> <p>These fixes compute a temperature each timestep. To do this, the fix creates its own compute of style “temp”, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> command for details. Note that the ID of the new compute is the fix-ID + underscore + “temp”, and the group for the new compute is the same as the fix group.</p> @@ -237,10 +237,8 @@ this case, the thermostat works in the following manner: the current temperature is calculated taking the bias into account, bias is removed from each atom, thermostatting is performed on the remaining thermal degrees of freedom, and the bias is added back in.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about these fixes are written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>temp</em> option is supported by these fixes. You can use it to assign a temperature <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> diff --git a/doc/html/fix_temp_rescale.html b/doc/html/fix_temp_rescale.html index bfa398c38e..2b96f60e2e 100644 --- a/doc/html/fix_temp_rescale.html +++ b/doc/html/fix_temp_rescale.html @@ -198,9 +198,9 @@ thermostatting.</p> <p>This fix computes a temperature each timestep. To do this, the fix creates its own compute of style “temp”, as if one of this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">fix</span><span class="o">-</span><span class="n">ID_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute fix-ID_temp group-ID temp +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> for details. Note that the ID of the new compute is the fix-ID + underscore + “temp”, and the group for the new compute is the same as the fix group.</p> @@ -225,10 +225,8 @@ this case, the thermostat works in the following manner: the current temperature is calculated taking the bias into account, bias is removed from each atom, thermostatting is performed on the remaining thermal degrees of freedom, and the bias is added back in.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>temp</em> option is supported by this fix. You can use it to assign a temperature <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> diff --git a/doc/html/fix_temp_rescale_eff.html b/doc/html/fix_temp_rescale_eff.html index 826fcfb6f4..4a5b09b42a 100644 --- a/doc/html/fix_temp_rescale_eff.html +++ b/doc/html/fix_temp_rescale_eff.html @@ -154,9 +154,7 @@ their velocities.</p> <p>The operation of this fix is exactly like that described by the <a class="reference internal" href="fix_temp_rescale.html"><span class="doc">fix temp/rescale</span></a> command, except that the rescaling is also applied to the radial electron velocity for electron particles.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>temp</em> option is supported by this fix. You can use it to assign a temperature <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> diff --git a/doc/html/fix_tfmc.html b/doc/html/fix_tfmc.html index 1fa84393e7..32b9de3cbb 100644 --- a/doc/html/fix_tfmc.html +++ b/doc/html/fix_tfmc.html @@ -228,10 +228,8 @@ translations or rotations of the fix group could be induced by these external forces, and removing them will lead to a violation of detailed balance.</p> </div> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> diff --git a/doc/html/fix_thermal_conductivity.html b/doc/html/fix_thermal_conductivity.html index 97325bd91e..05f63ab2de 100644 --- a/doc/html/fix_thermal_conductivity.html +++ b/doc/html/fix_thermal_conductivity.html @@ -180,12 +180,12 @@ of the 2 atoms is performed, to conserve kinetic energy. Over time, this induces a temperature gradient in the system which can be measured using commands such as the following, which writes the temperature profile (assuming z = edim) to the file tmp.profile:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">ke</span> <span class="nb">all</span> <span class="n">ke</span><span class="o">/</span><span class="n">atom</span> -<span class="n">variable</span> <span class="n">temp</span> <span class="n">atom</span> <span class="n">c_ke</span><span class="o">/</span><span class="mf">1.5</span> -<span class="n">compute</span> <span class="n">layers</span> <span class="nb">all</span> <span class="n">chunk</span><span class="o">/</span><span class="n">atom</span> <span class="nb">bin</span><span class="o">/</span><span class="mi">1</span><span class="n">d</span> <span class="n">z</span> <span class="n">lower</span> <span class="mf">0.05</span> <span class="n">units</span> <span class="n">reduced</span> -<span class="n">fix</span> <span class="mi">3</span> <span class="nb">all</span> <span class="n">ave</span><span class="o">/</span><span class="n">chunk</span> <span class="mi">10</span> <span class="mi">100</span> <span class="mi">1000</span> <span class="n">layers</span> <span class="n">v_temp</span> <span class="n">file</span> <span class="n">tmp</span><span class="o">.</span><span class="n">profile</span> -</pre></div> -</div> +<pre class="literal-block"> +compute ke all ke/atom +variable temp atom c_ke/1.5 +compute layers all chunk/atom bin/1d z lower 0.05 units reduced +fix 3 all ave/chunk 10 100 1000 layers v_temp file tmp.profile +</pre> <p>Note that by default, Nswap = 1, though this can be changed by the optional <em>swap</em> keyword. Setting this parameter appropriately, in conjunction with the swap rate N, allows the heat flux to be adjusted @@ -221,9 +221,7 @@ not in a regime of linear response. In this case you cannot accurately infer a thermal conductivity and should try increasing the Nevery parameter.</p> </div> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes a global scalar which can be accessed by various diff --git a/doc/html/fix_ti_rs.html b/doc/html/fix_ti_rs.html index 311cabb702..f298fc952d 100644 --- a/doc/html/fix_ti_rs.html +++ b/doc/html/fix_ti_rs.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix ti/rs command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">ti</span><span class="o">/</span><span class="n">rs</span> <span class="n">lambda_initial</span> <span class="n">lambda_final</span> <span class="n">t_switch</span> <span class="n">t_equil</span> <span class="n">keyword</span> <span class="n">value</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID ti/rs lambda_initial lambda_final t_switch t_equil keyword value ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>ti/rs = style name of this fix command</li> @@ -198,9 +198,7 @@ scaling is faster at temperatures closer to the initial temperature of the procedure.</p> <p>An example script using this command is provided in the examples/USER/misc/ti directory.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>This fix computes a global vector quantitie which can be accessed by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. The vector has diff --git a/doc/html/fix_ti_spring.html b/doc/html/fix_ti_spring.html index a0a3a6db23..e7d63d947a 100644 --- a/doc/html/fix_ti_spring.html +++ b/doc/html/fix_ti_spring.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix ti/spring command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">ti</span><span class="o">/</span><span class="n">spring</span> <span class="n">K</span> <span class="n">t_switch</span> <span class="n">t_equil</span> <span class="n">keyword</span> <span class="n">value</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID ti/spring K t_switch t_equil keyword value ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>ti/spring = style name of this fix command</li> @@ -205,9 +205,7 @@ issues with the canonical sampling of harmonic degrees of freedom (notice that the <em>chain</em> option will NOT solve this problem). The Langevin thermostat (<a class="reference external" href="fix_langevin.html"">fix langevin</a>) works fine.</p> </div> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the original coordinates of tethered atoms to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>, so that the spring effect will be the same in a restarted simulation. See the <a class="reference internal" href="read_restart.html"><span class="doc">read restart</span></a> command for info on how to re-specify a fix in an input script that reads a restart file, so that the operation of diff --git a/doc/html/fix_ttm.html b/doc/html/fix_ttm.html index af630d2964..1b12323895 100644 --- a/doc/html/fix_ttm.html +++ b/doc/html/fix_ttm.html @@ -131,50 +131,50 @@ <h1>fix ttm/mod command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">ttm</span> <span class="n">seed</span> <span class="n">C_e</span> <span class="n">rho_e</span> <span class="n">kappa_e</span> <span class="n">gamma_p</span> <span class="n">gamma_s</span> <span class="n">v_0</span> <span class="n">Nx</span> <span class="n">Ny</span> <span class="n">Nz</span> <span class="n">T_infile</span> <span class="n">N</span> <span class="n">T_outfile</span> -<span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">ttm</span><span class="o">/</span><span class="n">mod</span> <span class="n">seed</span> <span class="n">init_file</span> <span class="n">Nx</span> <span class="n">Ny</span> <span class="n">Nz</span> <span class="n">T_infile</span> <span class="n">N</span> <span class="n">T_outfile</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID ttm seed C_e rho_e kappa_e gamma_p gamma_s v_0 Nx Ny Nz T_infile N T_outfile +fix ID group-ID ttm/mod seed init_file Nx Ny Nz T_infile N T_outfile +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>style = <em>ttm</em> or <em>ttm_mod</em></li> <li>seed = random number seed to use for white noise (positive integer)</li> <li>remaining arguments for fix ttm:</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">C_e</span> <span class="o">=</span> <span class="n">electronic</span> <span class="n">specific</span> <span class="n">heat</span> <span class="p">(</span><span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">electron</span><span class="o">*</span><span class="n">temperature</span><span class="p">)</span> <span class="n">units</span><span class="p">)</span> -<span class="n">rho_e</span> <span class="o">=</span> <span class="n">electronic</span> <span class="n">density</span> <span class="p">(</span><span class="n">electrons</span><span class="o">/</span><span class="n">volume</span> <span class="n">units</span><span class="p">)</span> -<span class="n">kappa_e</span> <span class="o">=</span> <span class="n">electronic</span> <span class="n">thermal</span> <span class="n">conductivity</span> <span class="p">(</span><span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">time</span><span class="o">*</span><span class="n">distance</span><span class="o">*</span><span class="n">temperature</span><span class="p">)</span> <span class="n">units</span><span class="p">)</span> -<span class="n">gamma_p</span> <span class="o">=</span> <span class="n">friction</span> <span class="n">coefficient</span> <span class="n">due</span> <span class="n">to</span> <span class="n">electron</span><span class="o">-</span><span class="n">ion</span> <span class="n">interactions</span> <span class="p">(</span><span class="n">mass</span><span class="o">/</span><span class="n">time</span> <span class="n">units</span><span class="p">)</span> -<span class="n">gamma_s</span> <span class="o">=</span> <span class="n">friction</span> <span class="n">coefficient</span> <span class="n">due</span> <span class="n">to</span> <span class="n">electronic</span> <span class="n">stopping</span> <span class="p">(</span><span class="n">mass</span><span class="o">/</span><span class="n">time</span> <span class="n">units</span><span class="p">)</span> -<span class="n">v_0</span> <span class="o">=</span> <span class="n">electronic</span> <span class="n">stopping</span> <span class="n">critical</span> <span class="n">velocity</span> <span class="p">(</span><span class="n">velocity</span> <span class="n">units</span><span class="p">)</span> -<span class="n">Nx</span> <span class="o">=</span> <span class="n">number</span> <span class="n">of</span> <span class="n">thermal</span> <span class="n">solve</span> <span class="n">grid</span> <span class="n">points</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">x</span><span class="o">-</span><span class="n">direction</span> <span class="p">(</span><span class="n">positive</span> <span class="n">integer</span><span class="p">)</span> -<span class="n">Ny</span> <span class="o">=</span> <span class="n">number</span> <span class="n">of</span> <span class="n">thermal</span> <span class="n">solve</span> <span class="n">grid</span> <span class="n">points</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">y</span><span class="o">-</span><span class="n">direction</span> <span class="p">(</span><span class="n">positive</span> <span class="n">integer</span><span class="p">)</span> -<span class="n">Nz</span> <span class="o">=</span> <span class="n">number</span> <span class="n">of</span> <span class="n">thermal</span> <span class="n">solve</span> <span class="n">grid</span> <span class="n">points</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">z</span><span class="o">-</span><span class="n">direction</span> <span class="p">(</span><span class="n">positive</span> <span class="n">integer</span><span class="p">)</span> -<span class="n">T_infile</span> <span class="o">=</span> <span class="n">filename</span> <span class="n">to</span> <span class="n">read</span> <span class="n">initial</span> <span class="n">electronic</span> <span class="n">temperature</span> <span class="kn">from</span> -<span class="nn">N</span> <span class="o">=</span> <span class="n">dump</span> <span class="n">TTM</span> <span class="n">temperatures</span> <span class="n">every</span> <span class="n">this</span> <span class="n">many</span> <span class="n">timesteps</span><span class="p">,</span> <span class="mi">0</span> <span class="o">=</span> <span class="n">no</span> <span class="n">dump</span> -<span class="n">T_outfile</span> <span class="o">=</span> <span class="n">filename</span> <span class="n">to</span> <span class="n">write</span> <span class="n">TTM</span> <span class="n">temperatures</span> <span class="n">to</span> <span class="p">(</span><span class="n">only</span> <span class="n">needed</span> <span class="k">if</span> <span class="n">N</span> <span class="o">></span> <span class="mi">0</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +C_e = electronic specific heat (energy/(electron*temperature) units) +rho_e = electronic density (electrons/volume units) +kappa_e = electronic thermal conductivity (energy/(time*distance*temperature) units) +gamma_p = friction coefficient due to electron-ion interactions (mass/time units) +gamma_s = friction coefficient due to electronic stopping (mass/time units) +v_0 = electronic stopping critical velocity (velocity units) +Nx = number of thermal solve grid points in the x-direction (positive integer) +Ny = number of thermal solve grid points in the y-direction (positive integer) +Nz = number of thermal solve grid points in the z-direction (positive integer) +T_infile = filename to read initial electronic temperature from +N = dump TTM temperatures every this many timesteps, 0 = no dump +T_outfile = filename to write TTM temperatures to (only needed if N > 0) +</pre> <ul class="simple"> <li>remaining arguments for fix ttm/mod:</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">init_file</span> <span class="o">=</span> <span class="n">file</span> <span class="k">with</span> <span class="n">the</span> <span class="n">parameters</span> <span class="n">to</span> <span class="n">TTM</span> -<span class="n">Nx</span> <span class="o">=</span> <span class="n">number</span> <span class="n">of</span> <span class="n">thermal</span> <span class="n">solve</span> <span class="n">grid</span> <span class="n">points</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">x</span><span class="o">-</span><span class="n">direction</span> <span class="p">(</span><span class="n">positive</span> <span class="n">integer</span><span class="p">)</span> -<span class="n">Ny</span> <span class="o">=</span> <span class="n">number</span> <span class="n">of</span> <span class="n">thermal</span> <span class="n">solve</span> <span class="n">grid</span> <span class="n">points</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">y</span><span class="o">-</span><span class="n">direction</span> <span class="p">(</span><span class="n">positive</span> <span class="n">integer</span><span class="p">)</span> -<span class="n">Nz</span> <span class="o">=</span> <span class="n">number</span> <span class="n">of</span> <span class="n">thermal</span> <span class="n">solve</span> <span class="n">grid</span> <span class="n">points</span> <span class="ow">in</span> <span class="n">the</span> <span class="n">z</span><span class="o">-</span><span class="n">direction</span> <span class="p">(</span><span class="n">positive</span> <span class="n">integer</span><span class="p">)</span> -<span class="n">T_infile</span> <span class="o">=</span> <span class="n">filename</span> <span class="n">to</span> <span class="n">read</span> <span class="n">initial</span> <span class="n">electronic</span> <span class="n">temperature</span> <span class="kn">from</span> -<span class="nn">N</span> <span class="o">=</span> <span class="n">dump</span> <span class="n">TTM</span> <span class="n">temperatures</span> <span class="n">every</span> <span class="n">this</span> <span class="n">many</span> <span class="n">timesteps</span><span class="p">,</span> <span class="mi">0</span> <span class="o">=</span> <span class="n">no</span> <span class="n">dump</span> -<span class="n">T_outfile</span> <span class="o">=</span> <span class="n">filename</span> <span class="n">to</span> <span class="n">write</span> <span class="n">TTM</span> <span class="n">temperatures</span> <span class="n">to</span> <span class="p">(</span><span class="n">only</span> <span class="n">needed</span> <span class="k">if</span> <span class="n">N</span> <span class="o">></span> <span class="mi">0</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +init_file = file with the parameters to TTM +Nx = number of thermal solve grid points in the x-direction (positive integer) +Ny = number of thermal solve grid points in the y-direction (positive integer) +Nz = number of thermal solve grid points in the z-direction (positive integer) +T_infile = filename to read initial electronic temperature from +N = dump TTM temperatures every this many timesteps, 0 = no dump +T_outfile = filename to write TTM temperatures to (only needed if N > 0) +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">ttm</span> <span class="mi">699489</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mi">10</span> <span class="mf">0.1</span> <span class="mf">0.0</span> <span class="mf">2.0</span> <span class="mi">1</span> <span class="mi">12</span> <span class="mi">1</span> <span class="n">initialTs</span> <span class="mi">1000</span> <span class="n">T</span><span class="o">.</span><span class="n">out</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">ttm</span> <span class="mi">123456</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">5.0</span> <span class="mi">5</span> <span class="mi">5</span> <span class="mi">5</span> <span class="n">Te</span><span class="o">.</span><span class="ow">in</span> <span class="mi">1</span> <span class="n">Te</span><span class="o">.</span><span class="n">out</span> -<span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">ttm</span><span class="o">/</span><span class="n">mod</span> <span class="mi">34277</span> <span class="n">parameters</span><span class="o">.</span><span class="n">txt</span> <span class="mi">5</span> <span class="mi">5</span> <span class="mi">5</span> <span class="n">T_init</span> <span class="mi">10</span> <span class="n">T_out</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 2 all ttm 699489 1.0 1.0 10 0.1 0.0 2.0 1 12 1 initialTs 1000 T.out +fix 2 all ttm 123456 1.0 1.0 1.0 1.0 1.0 5.0 5 5 5 Te.in 1 Te.out +fix 2 all ttm/mod 34277 parameters.txt 5 5 5 T_init 10 T_out +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -330,34 +330,32 @@ is calculated as</p> <p>The fix ttm/mod parameter file <em>init_file</em> has the following syntax/ Every line with the odd number is considered as a comment and ignored. The lines with the even numbers are treated as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">a_0</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">temperature</span><span class="o">*</span><span class="n">electron</span><span class="p">)</span> <span class="n">units</span> -<span class="n">a_1</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">temperature</span><span class="o">^</span><span class="mi">2</span><span class="o">*</span><span class="n">electron</span><span class="p">)</span> <span class="n">units</span> -<span class="n">a_2</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">temperature</span><span class="o">^</span><span class="mi">3</span><span class="o">*</span><span class="n">electron</span><span class="p">)</span> <span class="n">units</span> -<span class="n">a_3</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">temperature</span><span class="o">^</span><span class="mi">4</span><span class="o">*</span><span class="n">electron</span><span class="p">)</span> <span class="n">units</span> -<span class="n">a_4</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">temperature</span><span class="o">^</span><span class="mi">5</span><span class="o">*</span><span class="n">electron</span><span class="p">)</span> <span class="n">units</span> -<span class="n">C_0</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">temperature</span><span class="o">*</span><span class="n">electron</span><span class="p">)</span> <span class="n">units</span> -<span class="n">A</span><span class="p">,</span> <span class="mi">1</span><span class="o">/</span><span class="n">temperature</span> <span class="n">units</span> -<span class="n">rho_e</span><span class="p">,</span> <span class="n">electrons</span><span class="o">/</span><span class="n">volume</span> <span class="n">units</span> -<span class="n">D_e</span><span class="p">,</span> <span class="n">length</span><span class="o">^</span><span class="mi">2</span><span class="o">/</span><span class="n">time</span> <span class="n">units</span> -<span class="n">gamma_p</span><span class="p">,</span> <span class="n">mass</span><span class="o">/</span><span class="n">time</span> <span class="n">units</span> -<span class="n">gamma_s</span><span class="p">,</span> <span class="n">mass</span><span class="o">/</span><span class="n">time</span> <span class="n">units</span> -<span class="n">v_0</span><span class="p">,</span> <span class="n">length</span><span class="o">/</span><span class="n">time</span> <span class="n">units</span> -<span class="n">I_0</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="p">(</span><span class="n">time</span><span class="o">*</span><span class="n">length</span><span class="o">^</span><span class="mi">2</span><span class="p">)</span> <span class="n">units</span> -<span class="n">lsurface</span><span class="p">,</span> <span class="n">electron</span> <span class="n">grid</span> <span class="n">units</span> <span class="p">(</span><span class="n">positive</span> <span class="n">integer</span><span class="p">)</span> -<span class="n">rsurface</span><span class="p">,</span> <span class="n">electron</span> <span class="n">grid</span> <span class="n">units</span> <span class="p">(</span><span class="n">positive</span> <span class="n">integer</span><span class="p">)</span> -<span class="n">l_skin</span><span class="p">,</span> <span class="n">length</span> <span class="n">units</span> -<span class="n">tau</span><span class="p">,</span> <span class="n">time</span> <span class="n">units</span> -<span class="n">B</span><span class="p">,</span> <span class="n">dimensionless</span> -<span class="k">lambda</span><span class="p">,</span> <span class="n">length</span> <span class="n">units</span> -<span class="n">n_ion</span><span class="p">,</span> <span class="n">ions</span><span class="o">/</span><span class="n">volume</span> <span class="n">units</span> -<span class="n">surface_movement</span><span class="p">:</span> <span class="mi">0</span> <span class="n">to</span> <span class="n">disable</span> <span class="n">tracking</span> <span class="n">of</span> <span class="n">surface</span> <span class="n">motion</span><span class="p">,</span> <span class="mi">1</span> <span class="n">to</span> <span class="n">enable</span> -<span class="n">T_e_min</span><span class="p">,</span> <span class="n">temperature</span> <span class="n">units</span> -</pre></div> -</div> -</div> +<pre class="literal-block"> +a_0, energy/(temperature*electron) units +a_1, energy/(temperature^2*electron) units +a_2, energy/(temperature^3*electron) units +a_3, energy/(temperature^4*electron) units +a_4, energy/(temperature^5*electron) units +C_0, energy/(temperature*electron) units +A, 1/temperature units +rho_e, electrons/volume units +D_e, length^2/time units +gamma_p, mass/time units +gamma_s, mass/time units +v_0, length/time units +I_0, energy/(time*length^2) units +lsurface, electron grid units (positive integer) +rsurface, electron grid units (positive integer) +l_skin, length units +tau, time units +B, dimensionless +lambda, length units +n_ion, ions/volume units +surface_movement: 0 to disable tracking of surface motion, 1 to enable +T_e_min, temperature units +</pre> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>These fixes write the state of the electronic subsystem and the energy exchange between the subsystems to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for info on how to re-specify a fix in an input script that reads a diff --git a/doc/html/fix_viscosity.html b/doc/html/fix_viscosity.html index 03773104e4..16fa977a8f 100644 --- a/doc/html/fix_viscosity.html +++ b/doc/html/fix_viscosity.html @@ -226,9 +226,7 @@ deform the simmulation box via the <a class="reference internal" href="fix_defor command. Thus they cannot be run on a charged system using a <a class="reference internal" href="kspace_style.html"><span class="doc">PPPM solver</span></a> since PPPM does not currently support non-orthogonal boxes. Using fix viscosity keeps the box orthogonal; thus it does not suffer from this limitation.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix.</p> <p>This fix computes a global scalar which can be accessed by various diff --git a/doc/html/fix_viscous.html b/doc/html/fix_viscous.html index 5bf3e54e0a..e63286eaeb 100644 --- a/doc/html/fix_viscous.html +++ b/doc/html/fix_viscous.html @@ -194,10 +194,8 @@ performing the same operation as fix viscous. Also note that the gamma of fix viscous is related to the damping parameter of <a class="reference internal" href="fix_langevin.html"><span class="doc">fix langevin</span></a>, however the former is specified in units of force/velocity and the latter in units of time, so that it can more easily be used as a thermostat.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_wall.html b/doc/html/fix_wall.html index 8f3ac46551..0a1d123b92 100644 --- a/doc/html/fix_wall.html +++ b/doc/html/fix_wall.html @@ -179,12 +179,12 @@ args = coord epsilon sigma cutoff </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">wallhi</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">lj93</span> <span class="n">xlo</span> <span class="o">-</span><span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> <span class="n">units</span> <span class="n">box</span> -<span class="n">fix</span> <span class="n">wallhi</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">lj93</span> <span class="n">xhi</span> <span class="n">EDGE</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -<span class="n">fix</span> <span class="n">wallhi</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">lj126</span> <span class="n">v_wiggle</span> <span class="mf">23.2</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -<span class="n">fix</span> <span class="n">zwalls</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">colloid</span> <span class="n">zlo</span> <span class="mf">0.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">0.858</span> <span class="n">zhi</span> <span class="mf">40.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">0.858</span> -</pre></div> -</div> +<pre class="literal-block"> +fix wallhi all wall/lj93 xlo -1.0 1.0 1.0 2.5 units box +fix wallhi all wall/lj93 xhi EDGE 1.0 1.0 2.5 +fix wallhi all wall/lj126 v_wiggle 23.2 1.0 1.0 2.5 +fix zwalls all wall/colloid zlo 0.0 1.0 1.0 0.858 zhi 40.0 1.0 1.0 0.858 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -321,22 +321,22 @@ want.</p> in a time-dependent fashion using equal-style <a class="reference internal" href="variable.html"><span class="doc">variables</span></a>. The wall interaction parameters (epsilon, sigma) could be varied with additional variable definitions.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">ramp</span> <span class="n">equal</span> <span class="n">ramp</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">10</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">wall</span> <span class="n">xlo</span> <span class="n">v_ramp</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">linear</span> <span class="n">equal</span> <span class="n">vdisplace</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">20</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">wall</span> <span class="n">xlo</span> <span class="n">v_linear</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">wiggle</span> <span class="n">equal</span> <span class="n">swiggle</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">5.0</span><span class="p">,</span><span class="mf">3.0</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">wall</span> <span class="n">xlo</span> <span class="n">v_wiggle</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">wiggle</span> <span class="n">equal</span> <span class="n">cwiggle</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">5.0</span><span class="p">,</span><span class="mf">3.0</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">wall</span> <span class="n">xlo</span> <span class="n">v_wiggle</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +variable ramp equal ramp(0,10) +fix 1 all wall xlo v_ramp 1.0 1.0 2.5 +</pre> +<pre class="literal-block"> +variable linear equal vdisplace(0,20) +fix 1 all wall xlo v_linear 1.0 1.0 2.5 +</pre> +<pre class="literal-block"> +variable wiggle equal swiggle(0.0,5.0,3.0) +fix 1 all wall xlo v_wiggle 1.0 1.0 2.5 +</pre> +<pre class="literal-block"> +variable wiggle equal cwiggle(0.0,5.0,3.0) +fix 1 all wall xlo v_wiggle 1.0 1.0 2.5 +</pre> <p>The ramp(lo,hi) function adjusts the wall position linearly from lo to hi over the course of a run. The vdisplace(c0,velocity) function does something similar using the equation position = c0 + velocity*delta, @@ -344,20 +344,18 @@ where delta is the elapsed time.</p> <p>The swiggle(c0,A,period) function causes the wall position to oscillate sinusoidally according to this equation, where omega = 2 PI / period:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">position</span> <span class="o">=</span> <span class="n">c0</span> <span class="o">+</span> <span class="n">A</span> <span class="n">sin</span><span class="p">(</span><span class="n">omega</span><span class="o">*</span><span class="n">delta</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +position = c0 + A sin(omega*delta) +</pre> <p>The cwiggle(c0,A,period) function causes the wall position to oscillate sinusoidally according to this equation, which will have an initial wall velocity of 0.0, and thus may impose a gentler perturbation on the particles:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">position</span> <span class="o">=</span> <span class="n">c0</span> <span class="o">+</span> <span class="n">A</span> <span class="p">(</span><span class="mi">1</span> <span class="o">-</span> <span class="n">cos</span><span class="p">(</span><span class="n">omega</span><span class="o">*</span><span class="n">delta</span><span class="p">))</span> -</pre></div> -</div> -</div> +<pre class="literal-block"> +position = c0 + A (1 - cos(omega*delta)) +</pre> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the energy of interaction between atoms and each wall to diff --git a/doc/html/fix_wall_gran.html b/doc/html/fix_wall_gran.html index 08178f888a..b6360f4ffb 100644 --- a/doc/html/fix_wall_gran.html +++ b/doc/html/fix_wall_gran.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>fix wall/gran command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">ID</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">wall</span><span class="o">/</span><span class="n">gran</span> <span class="n">Kn</span> <span class="n">Kt</span> <span class="n">fstyle</span> <span class="n">gamma_n</span> <span class="n">gamma_t</span> <span class="n">xmu</span> <span class="n">dampflag</span> <span class="n">wallstyle</span> <span class="n">args</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +fix ID group-ID wall/gran Kn Kt fstyle gamma_n gamma_t xmu dampflag wallstyle args keyword values ... +</pre> <ul class="simple"> <li>ID, group-ID are documented in <a class="reference internal" href="fix.html"><span class="doc">fix</span></a> command</li> <li>wall/gran = style name of this fix command</li> @@ -241,9 +241,9 @@ is perpendicular to the wall, it is more of a shaking motion. A <em>zcylinder</em> wall can only be wiggled in the z dimension.</p> <p>Each timestep, the position of a wiggled wall in the appropriate <em>dim</em> is set according to this equation:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">position</span> <span class="o">=</span> <span class="n">coord</span> <span class="o">+</span> <span class="n">A</span> <span class="o">-</span> <span class="n">A</span> <span class="n">cos</span> <span class="p">(</span><span class="n">omega</span> <span class="o">*</span> <span class="n">delta</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +position = coord + A - A cos (omega * delta) +</pre> <p>where <em>coord</em> is the specified initial position of the wall, <em>A</em> is the <em>amplitude</em>, <em>omega</em> is 2 PI / <em>period</em>, and <em>delta</em> is the time elapsed since the fix was specified. The velocity of the wall is set @@ -257,9 +257,7 @@ cylinder is moving in the z-direction along it’s axis. A dimension of the clockwise direction for <em>vshear</em> > 0 or counter-clockwise for <em>vshear</em> < 0. In this case, <em>vshear</em> is the tangential velocity of the wall at whatever <em>radius</em> has been defined.</p> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>This fix writes the shear friction state of atoms interacting with the wall to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>, so that a simulation can continue correctly if granular potentials with shear “history” effects diff --git a/doc/html/fix_wall_piston.html b/doc/html/fix_wall_piston.html index ade80b4497..baed71d961 100644 --- a/doc/html/fix_wall_piston.html +++ b/doc/html/fix_wall_piston.html @@ -199,10 +199,8 @@ to define a wall position, but only when a numeric constant is used.</p> A <em>lattice</em> value means the distance units are in lattice spacings. The <a class="reference internal" href="lattice.html"><span class="doc">lattice</span></a> command must have been previously used to define the lattice spacings.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_wall_reflect.html b/doc/html/fix_wall_reflect.html index 4c6467cd42..9df5dfe8ef 100644 --- a/doc/html/fix_wall_reflect.html +++ b/doc/html/fix_wall_reflect.html @@ -162,11 +162,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">xwalls</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">reflect</span> <span class="n">xlo</span> <span class="n">EDGE</span> <span class="n">xhi</span> <span class="n">EDGE</span> -<span class="n">fix</span> <span class="n">walls</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">reflect</span> <span class="n">xlo</span> <span class="mf">0.0</span> <span class="n">ylo</span> <span class="mf">10.0</span> <span class="n">units</span> <span class="n">box</span> -<span class="n">fix</span> <span class="n">top</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">reflect</span> <span class="n">zhi</span> <span class="n">v_pressdown</span> -</pre></div> -</div> +<pre class="literal-block"> +fix xwalls all wall/reflect xlo EDGE xhi EDGE +fix walls all wall/reflect xlo 0.0 ylo 10.0 units box +fix top all wall/reflect zhi v_pressdown +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -215,22 +215,22 @@ define the lattice spacings.</p> <p>Here are examples of variable definitions that move the wall position in a time-dependent fashion using equal-style <a class="reference internal" href="variable.html"><span class="doc">variables</span></a>.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">ramp</span> <span class="n">equal</span> <span class="n">ramp</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">10</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">reflect</span> <span class="n">xlo</span> <span class="n">v_ramp</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">linear</span> <span class="n">equal</span> <span class="n">vdisplace</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">20</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">reflect</span> <span class="n">xlo</span> <span class="n">v_linear</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">wiggle</span> <span class="n">equal</span> <span class="n">swiggle</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">5.0</span><span class="p">,</span><span class="mf">3.0</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">reflect</span> <span class="n">xlo</span> <span class="n">v_wiggle</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">wiggle</span> <span class="n">equal</span> <span class="n">cwiggle</span><span class="p">(</span><span class="mf">0.0</span><span class="p">,</span><span class="mf">5.0</span><span class="p">,</span><span class="mf">3.0</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">wall</span><span class="o">/</span><span class="n">reflect</span> <span class="n">xlo</span> <span class="n">v_wiggle</span> -</pre></div> -</div> +<pre class="literal-block"> +variable ramp equal ramp(0,10) +fix 1 all wall/reflect xlo v_ramp +</pre> +<pre class="literal-block"> +variable linear equal vdisplace(0,20) +fix 1 all wall/reflect xlo v_linear +</pre> +<pre class="literal-block"> +variable wiggle equal swiggle(0.0,5.0,3.0) +fix 1 all wall/reflect xlo v_wiggle +</pre> +<pre class="literal-block"> +variable wiggle equal cwiggle(0.0,5.0,3.0) +fix 1 all wall/reflect xlo v_wiggle +</pre> <p>The ramp(lo,hi) function adjusts the wall position linearly from lo to hi over the course of a run. The vdisplace(c0,velocity) function does something similar using the equation position = c0 + velocity*delta, @@ -238,16 +238,16 @@ where delta is the elapsed time.</p> <p>The swiggle(c0,A,period) function causes the wall position to oscillate sinusoidally according to this equation, where omega = 2 PI / period:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">position</span> <span class="o">=</span> <span class="n">c0</span> <span class="o">+</span> <span class="n">A</span> <span class="n">sin</span><span class="p">(</span><span class="n">omega</span><span class="o">*</span><span class="n">delta</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +position = c0 + A sin(omega*delta) +</pre> <p>The cwiggle(c0,A,period) function causes the wall position to oscillate sinusoidally according to this equation, which will have an initial wall velocity of 0.0, and thus may impose a gentler perturbation on the particles:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">position</span> <span class="o">=</span> <span class="n">c0</span> <span class="o">+</span> <span class="n">A</span> <span class="p">(</span><span class="mi">1</span> <span class="o">-</span> <span class="n">cos</span><span class="p">(</span><span class="n">omega</span><span class="o">*</span><span class="n">delta</span><span class="p">))</span> -</pre></div> -</div> +<pre class="literal-block"> +position = c0 + A (1 - cos(omega*delta)) +</pre> <hr class="docutils" /> <p>Styles with a <em>gpu</em>, <em>intel</em>, <em>kk</em>, <em>omp</em>, or <em>opt</em> suffix are functionally the same as the corresponding style without the suffix. @@ -264,10 +264,8 @@ by including their suffix, or you can use the <a class="reference internal" href use the <a class="reference internal" href="suffix.html"><span class="doc">suffix</span></a> command in your input script.</p> <p>See <a class="reference internal" href="Section_accelerate.html"><span class="doc">Section_accelerate</span></a> of the manual for more instructions on how to use the accelerated styles effectively.</p> -</div> <hr class="docutils" /> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>. None of the <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> options are relevant to this fix. No global or per-atom quantities are stored by this fix for access by various <a class="reference internal" href="Section_howto.html#howto-15"><span class="std std-ref">output commands</span></a>. No parameter of this fix can diff --git a/doc/html/fix_wall_region.html b/doc/html/fix_wall_region.html index 4f24bee99a..ba645d66ef 100644 --- a/doc/html/fix_wall_region.html +++ b/doc/html/fix_wall_region.html @@ -280,9 +280,7 @@ and does not blow up as r -> 0, but you must use a large enough <em>epsilon</em> that particles always reamin on the correct side of the region surface (r > 0).</p> </div> -</div> -<div class="section" id="restart-fix-modify-output-run-start-stop-minimize-info"> -<h2>Restart, fix_modify, output, run start/stop, minimize info</h2> +<p><strong>Restart, fix_modify, output, run start/stop, minimize info:</strong></p> <p>No information about this fix is written to <a class="reference internal" href="restart.html"><span class="doc">binary restart files</span></a>.</p> <p>The <a class="reference internal" href="fix_modify.html"><span class="doc">fix_modify</span></a> <em>energy</em> option is supported by this fix to add the energy of interaction between atoms and the wall to the diff --git a/doc/html/genindex.html b/doc/html/genindex.html index b30e351edf..b40e27bf00 100644 --- a/doc/html/genindex.html +++ b/doc/html/genindex.html @@ -156,93 +156,93 @@ <table style="width: 100%" class="indextable genindextable"><tr> <td style="width: 33%" valign="top"><dl> - <dt><a href="angle_coeff.html#index-0">angle_coeff</a> + <dt><a href="angle_coeff.html#index-0">angle\_coeff</a> </dt> - <dt><a href="angle_style.html#index-0">angle_style</a> + <dt><a href="angle_style.html#index-0">angle\_style</a> </dt> - <dt><a href="angle_charmm.html#index-0">angle_style charmm</a> + <dt><a href="angle_charmm.html#index-0">angle\_style charmm</a> </dt> - <dt><a href="angle_class2.html#index-0">angle_style class2</a> + <dt><a href="angle_class2.html#index-0">angle\_style class2</a> </dt> - <dt><a href="angle_cosine.html#index-0">angle_style cosine</a> + <dt><a href="angle_cosine.html#index-0">angle\_style cosine</a> </dt> - <dt><a href="angle_cosine_delta.html#index-0">angle_style cosine/delta</a> + <dt><a href="angle_cosine_delta.html#index-0">angle\_style cosine/delta</a> </dt> - <dt><a href="angle_cosine_periodic.html#index-0">angle_style cosine/periodic</a> + <dt><a href="angle_cosine_periodic.html#index-0">angle\_style cosine/periodic</a> </dt> - <dt><a href="angle_cosine_shift.html#index-0">angle_style cosine/shift</a> + <dt><a href="angle_cosine_shift.html#index-0">angle\_style cosine/shift</a> </dt> - <dt><a href="angle_cosine_shift_exp.html#index-0">angle_style cosine/shift/exp</a> + <dt><a href="angle_cosine_shift_exp.html#index-0">angle\_style cosine/shift/exp</a> </dt> - <dt><a href="angle_cosine_squared.html#index-0">angle_style cosine/squared</a> + <dt><a href="angle_cosine_squared.html#index-0">angle\_style cosine/squared</a> </dt> - <dt><a href="angle_dipole.html#index-0">angle_style dipole</a> + <dt><a href="angle_dipole.html#index-0">angle\_style dipole</a> </dt> </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="angle_fourier.html#index-0">angle_style fourier</a> + <dt><a href="angle_fourier.html#index-0">angle\_style fourier</a> </dt> - <dt><a href="angle_fourier_simple.html#index-0">angle_style fourier/simple</a> + <dt><a href="angle_fourier_simple.html#index-0">angle\_style fourier/simple</a> </dt> - <dt><a href="angle_harmonic.html#index-0">angle_style harmonic</a> + <dt><a href="angle_harmonic.html#index-0">angle\_style harmonic</a> </dt> - <dt><a href="angle_hybrid.html#index-0">angle_style hybrid</a> + <dt><a href="angle_hybrid.html#index-0">angle\_style hybrid</a> </dt> - <dt><a href="angle_none.html#index-0">angle_style none</a> + <dt><a href="angle_none.html#index-0">angle\_style none</a> </dt> - <dt><a href="angle_quartic.html#index-0">angle_style quartic</a> + <dt><a href="angle_quartic.html#index-0">angle\_style quartic</a> </dt> - <dt><a href="angle_sdk.html#index-0">angle_style sdk</a> + <dt><a href="angle_sdk.html#index-0">angle\_style sdk</a> </dt> - <dt><a href="angle_table.html#index-0">angle_style table</a> + <dt><a href="angle_table.html#index-0">angle\_style table</a> </dt> - <dt><a href="angle_zero.html#index-0">angle_style zero</a> + <dt><a href="angle_zero.html#index-0">angle\_style zero</a> </dt> - <dt><a href="atom_modify.html#index-0">atom_modify</a> + <dt><a href="atom_modify.html#index-0">atom\_modify</a> </dt> - <dt><a href="atom_style.html#index-0">atom_style</a> + <dt><a href="atom_style.html#index-0">atom\_style</a> </dt> </dl></td> @@ -256,69 +256,69 @@ </dt> - <dt><a href="bond_coeff.html#index-0">bond_coeff</a> + <dt><a href="bond_coeff.html#index-0">bond\_coeff</a> </dt> - <dt><a href="bond_style.html#index-0">bond_style</a> + <dt><a href="bond_style.html#index-0">bond\_style</a> </dt> - <dt><a href="bond_class2.html#index-0">bond_style class2</a> + <dt><a href="bond_class2.html#index-0">bond\_style class2</a> </dt> - <dt><a href="bond_fene.html#index-0">bond_style fene</a> + <dt><a href="bond_fene.html#index-0">bond\_style fene</a> </dt> - <dt><a href="bond_fene_expand.html#index-0">bond_style fene/expand</a> + <dt><a href="bond_fene_expand.html#index-0">bond\_style fene/expand</a> </dt> - <dt><a href="bond_harmonic.html#index-0">bond_style harmonic</a> + <dt><a href="bond_harmonic.html#index-0">bond\_style harmonic</a> </dt> - <dt><a href="bond_harmonic_shift.html#index-0">bond_style harmonic/shift</a> + <dt><a href="bond_harmonic_shift.html#index-0">bond\_style harmonic/shift</a> </dt> - <dt><a href="bond_harmonic_shift_cut.html#index-0">bond_style harmonic/shift/cut</a> + <dt><a href="bond_harmonic_shift_cut.html#index-0">bond\_style harmonic/shift/cut</a> </dt> - <dt><a href="bond_hybrid.html#index-0">bond_style hybrid</a> + <dt><a href="bond_hybrid.html#index-0">bond\_style hybrid</a> </dt> </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="bond_morse.html#index-0">bond_style morse</a> + <dt><a href="bond_morse.html#index-0">bond\_style morse</a> </dt> - <dt><a href="bond_none.html#index-0">bond_style none</a> + <dt><a href="bond_none.html#index-0">bond\_style none</a> </dt> - <dt><a href="bond_nonlinear.html#index-0">bond_style nonlinear</a> + <dt><a href="bond_nonlinear.html#index-0">bond\_style nonlinear</a> </dt> - <dt><a href="bond_quartic.html#index-0">bond_style quartic</a> + <dt><a href="bond_quartic.html#index-0">bond\_style quartic</a> </dt> - <dt><a href="bond_table.html#index-0">bond_style table</a> + <dt><a href="bond_table.html#index-0">bond\_style table</a> </dt> - <dt><a href="bond_zero.html#index-0">bond_style zero</a> + <dt><a href="bond_zero.html#index-0">bond\_style zero</a> </dt> - <dt><a href="bond_write.html#index-0">bond_write</a> + <dt><a href="bond_write.html#index-0">bond\_write</a> </dt> @@ -336,7 +336,7 @@ <table style="width: 100%" class="indextable genindextable"><tr> <td style="width: 33%" valign="top"><dl> - <dt><a href="change_box.html#index-0">change_box</a> + <dt><a href="change_box.html#index-0">change\_box</a> </dt> @@ -344,11 +344,11 @@ </dt> - <dt><a href="comm_modify.html#index-0">comm_modify</a> + <dt><a href="comm_modify.html#index-0">comm\_modify</a> </dt> - <dt><a href="comm_style.html#index-0">comm_style</a> + <dt><a href="comm_style.html#index-0">comm\_style</a> </dt> @@ -798,19 +798,19 @@ </dt> - <dt><a href="compute_modify.html#index-0">compute_modify</a> + <dt><a href="compute_modify.html#index-0">compute\_modify</a> </dt> - <dt><a href="create_atoms.html#index-0">create_atoms</a> + <dt><a href="create_atoms.html#index-0">create\_atoms</a> </dt> - <dt><a href="create_bonds.html#index-0">create_bonds</a> + <dt><a href="create_bonds.html#index-0">create\_bonds</a> </dt> - <dt><a href="create_box.html#index-0">create_box</a> + <dt><a href="create_box.html#index-0">create\_box</a> </dt> </dl></td> @@ -820,11 +820,11 @@ <table style="width: 100%" class="indextable genindextable"><tr> <td style="width: 33%" valign="top"><dl> - <dt><a href="delete_atoms.html#index-0">delete_atoms</a> + <dt><a href="delete_atoms.html#index-0">delete\_atoms</a> </dt> - <dt><a href="delete_bonds.html#index-0">delete_bonds</a> + <dt><a href="delete_bonds.html#index-0">delete\_bonds</a> </dt> @@ -832,73 +832,73 @@ </dt> - <dt><a href="dihedral_coeff.html#index-0">dihedral_coeff</a> + <dt><a href="dihedral_coeff.html#index-0">dihedral\_coeff</a> </dt> - <dt><a href="dihedral_style.html#index-0">dihedral_style</a> + <dt><a href="dihedral_style.html#index-0">dihedral\_style</a> </dt> - <dt><a href="dihedral_charmm.html#index-0">dihedral_style charmm</a> + <dt><a href="dihedral_charmm.html#index-0">dihedral\_style charmm</a> </dt> - <dt><a href="dihedral_class2.html#index-0">dihedral_style class2</a> + <dt><a href="dihedral_class2.html#index-0">dihedral\_style class2</a> </dt> - <dt><a href="dihedral_cosine_shift_exp.html#index-0">dihedral_style cosine/shift/exp</a> + <dt><a href="dihedral_cosine_shift_exp.html#index-0">dihedral\_style cosine/shift/exp</a> </dt> - <dt><a href="dihedral_fourier.html#index-0">dihedral_style fourier</a> + <dt><a href="dihedral_fourier.html#index-0">dihedral\_style fourier</a> </dt> - <dt><a href="dihedral_harmonic.html#index-0">dihedral_style harmonic</a> + <dt><a href="dihedral_harmonic.html#index-0">dihedral\_style harmonic</a> </dt> - <dt><a href="dihedral_helix.html#index-0">dihedral_style helix</a> + <dt><a href="dihedral_helix.html#index-0">dihedral\_style helix</a> </dt> - <dt><a href="dihedral_hybrid.html#index-0">dihedral_style hybrid</a> + <dt><a href="dihedral_hybrid.html#index-0">dihedral\_style hybrid</a> </dt> - <dt><a href="dihedral_multi_harmonic.html#index-0">dihedral_style multi/harmonic</a> + <dt><a href="dihedral_multi_harmonic.html#index-0">dihedral\_style multi/harmonic</a> </dt> - <dt><a href="dihedral_nharmonic.html#index-0">dihedral_style nharmonic</a> + <dt><a href="dihedral_nharmonic.html#index-0">dihedral\_style nharmonic</a> </dt> </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="dihedral_none.html#index-0">dihedral_style none</a> + <dt><a href="dihedral_none.html#index-0">dihedral\_style none</a> </dt> - <dt><a href="dihedral_opls.html#index-0">dihedral_style opls</a> + <dt><a href="dihedral_opls.html#index-0">dihedral\_style opls</a> </dt> - <dt><a href="dihedral_quadratic.html#index-0">dihedral_style quadratic</a> + <dt><a href="dihedral_quadratic.html#index-0">dihedral\_style quadratic</a> </dt> - <dt><a href="dihedral_spherical.html#index-0">dihedral_style spherical</a> + <dt><a href="dihedral_spherical.html#index-0">dihedral\_style spherical</a> </dt> - <dt><a href="dihedral_table.html#index-0">dihedral_style table</a> + <dt><a href="dihedral_table.html#index-0">dihedral\_style table</a> </dt> - <dt><a href="dihedral_zero.html#index-0">dihedral_style zero</a> + <dt><a href="dihedral_zero.html#index-0">dihedral\_style zero</a> </dt> @@ -906,7 +906,7 @@ </dt> - <dt><a href="displace_atoms.html#index-0">displace_atoms</a> + <dt><a href="displace_atoms.html#index-0">displace\_atoms</a> </dt> @@ -930,7 +930,7 @@ </dt> - <dt><a href="dump_modify.html#index-0">dump_modify</a> + <dt><a href="dump_modify.html#index-0">dump\_modify</a> </dt> </dl></td> @@ -1408,19 +1408,19 @@ </dt> - <dt><a href="fix_smd_adjust_dt.html#index-0">fix smd/adjust_dt</a> + <dt><a href="fix_smd_adjust_dt.html#index-0">fix smd/adjust\_dt</a> </dt> - <dt><a href="fix_smd_integrate_tlsph.html#index-0">fix smd/integrate_tlsph</a> + <dt><a href="fix_smd_integrate_tlsph.html#index-0">fix smd/integrate\_tlsph</a> </dt> - <dt><a href="fix_smd_integrate_ulsph.html#index-0">fix smd/integrate_ulsph</a> + <dt><a href="fix_smd_integrate_ulsph.html#index-0">fix smd/integrate\_ulsph</a> </dt> - <dt><a href="fix_smd_move_triangulated_surface.html#index-0">fix smd/move_tri_surf</a> + <dt><a href="fix_smd_move_triangulated_surface.html#index-0">fix smd/move\_tri\_surf</a> </dt> @@ -1428,7 +1428,7 @@ </dt> - <dt><a href="fix_smd_wall_surface.html#index-0">fix smd/wall_surface</a> + <dt><a href="fix_smd_wall_surface.html#index-0">fix smd/wall\_surface</a> </dt> @@ -1540,7 +1540,7 @@ </dt> - <dt><a href="fix_modify.html#index-0">fix_modify</a> + <dt><a href="fix_modify.html#index-0">fix\_modify</a> </dt> </dl></td> @@ -1570,57 +1570,57 @@ </dt> - <dt><a href="improper_coeff.html#index-0">improper_coeff</a> + <dt><a href="improper_coeff.html#index-0">improper\_coeff</a> </dt> - <dt><a href="improper_style.html#index-0">improper_style</a> + <dt><a href="improper_style.html#index-0">improper\_style</a> </dt> - <dt><a href="improper_class2.html#index-0">improper_style class2</a> + <dt><a href="improper_class2.html#index-0">improper\_style class2</a> </dt> - <dt><a href="improper_cossq.html#index-0">improper_style cossq</a> + <dt><a href="improper_cossq.html#index-0">improper\_style cossq</a> </dt> - <dt><a href="improper_cvff.html#index-0">improper_style cvff</a> + <dt><a href="improper_cvff.html#index-0">improper\_style cvff</a> </dt> - <dt><a href="improper_distance.html#index-0">improper_style distance</a> + <dt><a href="improper_distance.html#index-0">improper\_style distance</a> </dt> - <dt><a href="improper_fourier.html#index-0">improper_style fourier</a> + <dt><a href="improper_fourier.html#index-0">improper\_style fourier</a> </dt> </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="improper_harmonic.html#index-0">improper_style harmonic</a> + <dt><a href="improper_harmonic.html#index-0">improper\_style harmonic</a> </dt> - <dt><a href="improper_hybrid.html#index-0">improper_style hybrid</a> + <dt><a href="improper_hybrid.html#index-0">improper\_style hybrid</a> </dt> - <dt><a href="improper_none.html#index-0">improper_style none</a> + <dt><a href="improper_none.html#index-0">improper\_style none</a> </dt> - <dt><a href="improper_ring.html#index-0">improper_style ring</a> + <dt><a href="improper_ring.html#index-0">improper\_style ring</a> </dt> - <dt><a href="improper_umbrella.html#index-0">improper_style umbrella</a> + <dt><a href="improper_umbrella.html#index-0">improper\_style umbrella</a> </dt> - <dt><a href="improper_zero.html#index-0">improper_style zero</a> + <dt><a href="improper_zero.html#index-0">improper\_style zero</a> </dt> @@ -1648,13 +1648,13 @@ <table style="width: 100%" class="indextable genindextable"><tr> <td style="width: 33%" valign="top"><dl> - <dt><a href="kspace_modify.html#index-0">kspace_modify</a> + <dt><a href="kspace_modify.html#index-0">kspace\_modify</a> </dt> </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="kspace_style.html#index-0">kspace_style</a> + <dt><a href="kspace_style.html#index-0">kspace\_style</a> </dt> </dl></td> @@ -1688,11 +1688,11 @@ </dt> - <dt><a href="min_modify.html#index-0">min_modify</a> + <dt><a href="min_modify.html#index-0">min\_modify</a> </dt> - <dt><a href="min_style.html#index-0">min_style</a> + <dt><a href="min_style.html#index-0">min\_style</a> </dt> </dl></td> @@ -1716,7 +1716,7 @@ </dt> - <dt><a href="neigh_modify.html#index-0">neigh_modify</a> + <dt><a href="neigh_modify.html#index-0">neigh\_modify</a> </dt> @@ -1744,385 +1744,385 @@ </dt> - <dt><a href="pair_coeff.html#index-0">pair_coeff</a> + <dt><a href="pair_coeff.html#index-0">pair\_coeff</a> </dt> - <dt><a href="pair_modify.html#index-0">pair_modify</a> + <dt><a href="pair_modify.html#index-0">pair\_modify</a> </dt> - <dt><a href="pair_style.html#index-0">pair_style</a> + <dt><a href="pair_style.html#index-0">pair\_style</a> </dt> - <dt><a href="pair_adp.html#index-0">pair_style adp</a> + <dt><a href="pair_adp.html#index-0">pair\_style adp</a> </dt> - <dt><a href="pair_airebo.html#index-0">pair_style airebo</a> + <dt><a href="pair_airebo.html#index-0">pair\_style airebo</a> </dt> - <dt><a href="pair_awpmd.html#index-0">pair_style awpmd/cut</a> + <dt><a href="pair_awpmd.html#index-0">pair\_style awpmd/cut</a> </dt> - <dt><a href="pair_beck.html#index-0">pair_style beck</a> + <dt><a href="pair_beck.html#index-0">pair\_style beck</a> </dt> - <dt><a href="pair_body.html#index-0">pair_style body</a> + <dt><a href="pair_body.html#index-0">pair\_style body</a> </dt> - <dt><a href="pair_bop.html#index-0">pair_style bop</a> + <dt><a href="pair_bop.html#index-0">pair\_style bop</a> </dt> - <dt><a href="pair_born.html#index-0">pair_style born</a> + <dt><a href="pair_born.html#index-0">pair\_style born</a> </dt> - <dt><a href="pair_cs.html#index-0">pair_style born/coul/long/cs</a> + <dt><a href="pair_cs.html#index-0">pair\_style born/coul/long/cs</a> </dt> - <dt><a href="pair_brownian.html#index-0">pair_style brownian</a> + <dt><a href="pair_brownian.html#index-0">pair\_style brownian</a> </dt> - <dt><a href="pair_buck.html#index-0">pair_style buck</a> + <dt><a href="pair_buck.html#index-0">pair\_style buck</a> </dt> - <dt><a href="pair_buck_long.html#index-0">pair_style buck/long/coul/long</a> + <dt><a href="pair_buck_long.html#index-0">pair\_style buck/long/coul/long</a> </dt> - <dt><a href="pair_colloid.html#index-0">pair_style colloid</a> + <dt><a href="pair_colloid.html#index-0">pair\_style colloid</a> </dt> - <dt><a href="pair_comb.html#index-0">pair_style comb</a> + <dt><a href="pair_comb.html#index-0">pair\_style comb</a> </dt> - <dt><a href="pair_coul.html#index-0">pair_style coul/cut</a> + <dt><a href="pair_coul.html#index-0">pair\_style coul/cut</a> </dt> - <dt><a href="pair_coul_diel.html#index-0">pair_style coul/diel</a> + <dt><a href="pair_coul_diel.html#index-0">pair\_style coul/diel</a> </dt> - <dt><a href="pair_dpd.html#index-0">pair_style dpd</a> + <dt><a href="pair_dpd.html#index-0">pair\_style dpd</a> </dt> - <dt><a href="pair_dpd_fdt.html#index-0">pair_style dpd/fdt</a> + <dt><a href="pair_dpd_fdt.html#index-0">pair\_style dpd/fdt</a> </dt> - <dt><a href="pair_dsmc.html#index-0">pair_style dsmc</a> + <dt><a href="pair_dsmc.html#index-0">pair\_style dsmc</a> </dt> - <dt><a href="pair_eam.html#index-0">pair_style eam</a> + <dt><a href="pair_eam.html#index-0">pair\_style eam</a> </dt> - <dt><a href="pair_edip.html#index-0">pair_style edip</a> + <dt><a href="pair_edip.html#index-0">pair\_style edip</a> </dt> - <dt><a href="pair_eff.html#index-0">pair_style eff/cut</a> + <dt><a href="pair_eff.html#index-0">pair\_style eff/cut</a> </dt> - <dt><a href="pair_eim.html#index-0">pair_style eim</a> + <dt><a href="pair_eim.html#index-0">pair\_style eim</a> </dt> - <dt><a href="pair_exp6_rx.html#index-0">pair_style exp6/rx</a> + <dt><a href="pair_exp6_rx.html#index-0">pair\_style exp6/rx</a> </dt> - <dt><a href="pair_gauss.html#index-0">pair_style gauss</a> + <dt><a href="pair_gauss.html#index-0">pair\_style gauss</a> </dt> - <dt><a href="pair_gayberne.html#index-0">pair_style gayberne</a> + <dt><a href="pair_gayberne.html#index-0">pair\_style gayberne</a> </dt> - <dt><a href="pair_gran.html#index-0">pair_style gran/hooke</a> + <dt><a href="pair_gran.html#index-0">pair\_style gran/hooke</a> </dt> - <dt><a href="pair_hbond_dreiding.html#index-0">pair_style hbond/dreiding/lj</a> + <dt><a href="pair_hbond_dreiding.html#index-0">pair\_style hbond/dreiding/lj</a> </dt> - <dt><a href="pair_hybrid.html#index-0">pair_style hybrid</a> + <dt><a href="pair_hybrid.html#index-0">pair\_style hybrid</a> </dt> - <dt><a href="pair_kim.html#index-0">pair_style kim</a> + <dt><a href="pair_kim.html#index-0">pair\_style kim</a> </dt> - <dt><a href="pair_lcbop.html#index-0">pair_style lcbop</a> + <dt><a href="pair_lcbop.html#index-0">pair\_style lcbop</a> </dt> - <dt><a href="pair_line_lj.html#index-0">pair_style line/lj</a> + <dt><a href="pair_line_lj.html#index-0">pair\_style line/lj</a> </dt> - <dt><a href="pair_list.html#index-0">pair_style list</a> + <dt><a href="pair_list.html#index-0">pair\_style list</a> </dt> - <dt><a href="pair_charmm.html#index-0">pair_style lj/charmm/coul/charmm</a> + <dt><a href="pair_charmm.html#index-0">pair\_style lj/charmm/coul/charmm</a> </dt> - <dt><a href="pair_class2.html#index-0">pair_style lj/class2</a> + <dt><a href="pair_class2.html#index-0">pair\_style lj/class2</a> </dt> - <dt><a href="pair_lj_cubic.html#index-0">pair_style lj/cubic</a> + <dt><a href="pair_lj_cubic.html#index-0">pair\_style lj/cubic</a> </dt> - <dt><a href="pair_lj.html#index-0">pair_style lj/cut</a> + <dt><a href="pair_lj.html#index-0">pair\_style lj/cut</a> </dt> - <dt><a href="pair_dipole.html#index-0">pair_style lj/cut/dipole/cut</a> + <dt><a href="pair_dipole.html#index-0">pair\_style lj/cut/dipole/cut</a> </dt> - <dt><a href="pair_lj_soft.html#index-0">pair_style lj/cut/soft</a> + <dt><a href="pair_lj_soft.html#index-0">pair\_style lj/cut/soft</a> </dt> - <dt><a href="pair_lj_expand.html#index-0">pair_style lj/expand</a> + <dt><a href="pair_lj_expand.html#index-0">pair\_style lj/expand</a> </dt> - <dt><a href="pair_gromacs.html#index-0">pair_style lj/gromacs</a> + <dt><a href="pair_gromacs.html#index-0">pair\_style lj/gromacs</a> </dt> - <dt><a href="pair_lj_long.html#index-0">pair_style lj/long/coul/long</a> + <dt><a href="pair_lj_long.html#index-0">pair\_style lj/long/coul/long</a> </dt> - <dt><a href="pair_mdf.html#index-0">pair_style lj/mdf</a> + <dt><a href="pair_mdf.html#index-0">pair\_style lj/mdf</a> </dt> - <dt><a href="pair_sdk.html#index-0">pair_style lj/sdk</a> + <dt><a href="pair_sdk.html#index-0">pair\_style lj/sdk</a> </dt> - <dt><a href="pair_lj_sf.html#index-0">pair_style lj/sf</a> + <dt><a href="pair_lj_sf.html#index-0">pair\_style lj/sf</a> </dt> - <dt><a href="pair_lj_smooth.html#index-0">pair_style lj/smooth</a> + <dt><a href="pair_lj_smooth.html#index-0">pair\_style lj/smooth</a> </dt> - <dt><a href="pair_lj_smooth_linear.html#index-0">pair_style lj/smooth/linear</a> + <dt><a href="pair_lj_smooth_linear.html#index-0">pair\_style lj/smooth/linear</a> </dt> - <dt><a href="pair_lj96.html#index-0">pair_style lj96/cut</a> + <dt><a href="pair_lj96.html#index-0">pair\_style lj96/cut</a> </dt> </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="pair_lubricate.html#index-0">pair_style lubricate</a> + <dt><a href="pair_lubricate.html#index-0">pair\_style lubricate</a> </dt> - <dt><a href="pair_lubricateU.html#index-0">pair_style lubricateU</a> + <dt><a href="pair_lubricateU.html#index-0">pair\_style lubricateU</a> </dt> - <dt><a href="pair_meam.html#index-0">pair_style meam</a> + <dt><a href="pair_meam.html#index-0">pair\_style meam</a> </dt> - <dt><a href="pair_mgpt.html#index-0">pair_style mgpt</a> + <dt><a href="pair_mgpt.html#index-0">pair\_style mgpt</a> </dt> - <dt><a href="pair_mie.html#index-0">pair_style mie/cut</a> + <dt><a href="pair_mie.html#index-0">pair\_style mie/cut</a> </dt> - <dt><a href="pair_morse.html#index-0">pair_style morse</a> + <dt><a href="pair_morse.html#index-0">pair\_style morse</a> </dt> - <dt><a href="pair_multi_lucy.html#index-0">pair_style multi/lucy</a> + <dt><a href="pair_multi_lucy.html#index-0">pair\_style multi/lucy</a> </dt> - <dt><a href="pair_multi_lucy_rx.html#index-0">pair_style multi/lucy/rx</a> + <dt><a href="pair_multi_lucy_rx.html#index-0">pair\_style multi/lucy/rx</a> </dt> - <dt><a href="pair_nb3b_harmonic.html#index-0">pair_style nb3b/harmonic</a> + <dt><a href="pair_nb3b_harmonic.html#index-0">pair\_style nb3b/harmonic</a> </dt> - <dt><a href="pair_nm.html#index-0">pair_style nm/cut</a> + <dt><a href="pair_nm.html#index-0">pair\_style nm/cut</a> </dt> - <dt><a href="pair_none.html#index-0">pair_style none</a> + <dt><a href="pair_none.html#index-0">pair\_style none</a> </dt> - <dt><a href="pair_peri.html#index-0">pair_style peri/pmb</a> + <dt><a href="pair_peri.html#index-0">pair\_style peri/pmb</a> </dt> - <dt><a href="pair_polymorphic.html#index-0">pair_style polymorphic</a> + <dt><a href="pair_polymorphic.html#index-0">pair\_style polymorphic</a> </dt> - <dt><a href="pair_quip.html#index-0">pair_style quip</a> + <dt><a href="pair_quip.html#index-0">pair\_style quip</a> </dt> - <dt><a href="pair_reax.html#index-0">pair_style reax</a> + <dt><a href="pair_reax.html#index-0">pair\_style reax</a> </dt> - <dt><a href="pair_reax_c.html#index-0">pair_style reax/c</a> + <dt><a href="pair_reax_c.html#index-0">pair\_style reax/c</a> </dt> - <dt><a href="pair_resquared.html#index-0">pair_style resquared</a> + <dt><a href="pair_resquared.html#index-0">pair\_style resquared</a> </dt> - <dt><a href="pair_smd_hertz.html#index-0">pair_style smd/hertz</a> + <dt><a href="pair_smd_hertz.html#index-0">pair\_style smd/hertz</a> </dt> - <dt><a href="pair_smd_tlsph.html#index-0">pair_style smd/tlsph</a> + <dt><a href="pair_smd_tlsph.html#index-0">pair\_style smd/tlsph</a> </dt> - <dt><a href="pair_smd_triangulated_surface.html#index-0">pair_style smd/tri_surface</a> + <dt><a href="pair_smd_triangulated_surface.html#index-0">pair\_style smd/tri\_surface</a> </dt> - <dt><a href="pair_smd_ulsph.html#index-0">pair_style smd/ulsph</a> + <dt><a href="pair_smd_ulsph.html#index-0">pair\_style smd/ulsph</a> </dt> - <dt><a href="pair_smtbq.html#index-0">pair_style smtbq</a> + <dt><a href="pair_smtbq.html#index-0">pair\_style smtbq</a> </dt> - <dt><a href="pair_snap.html#index-0">pair_style snap</a> + <dt><a href="pair_snap.html#index-0">pair\_style snap</a> </dt> - <dt><a href="pair_soft.html#index-0">pair_style soft</a> + <dt><a href="pair_soft.html#index-0">pair\_style soft</a> </dt> - <dt><a href="pair_sph_heatconduction.html#index-0">pair_style sph/heatconduction</a> + <dt><a href="pair_sph_heatconduction.html#index-0">pair\_style sph/heatconduction</a> </dt> - <dt><a href="pair_sph_idealgas.html#index-0">pair_style sph/idealgas</a> + <dt><a href="pair_sph_idealgas.html#index-0">pair\_style sph/idealgas</a> </dt> - <dt><a href="pair_sph_lj.html#index-0">pair_style sph/lj</a> + <dt><a href="pair_sph_lj.html#index-0">pair\_style sph/lj</a> </dt> - <dt><a href="pair_sph_rhosum.html#index-0">pair_style sph/rhosum</a> + <dt><a href="pair_sph_rhosum.html#index-0">pair\_style sph/rhosum</a> </dt> - <dt><a href="pair_sph_taitwater.html#index-0">pair_style sph/taitwater</a> + <dt><a href="pair_sph_taitwater.html#index-0">pair\_style sph/taitwater</a> </dt> - <dt><a href="pair_sph_taitwater_morris.html#index-0">pair_style sph/taitwater/morris</a> + <dt><a href="pair_sph_taitwater_morris.html#index-0">pair\_style sph/taitwater/morris</a> </dt> - <dt><a href="pair_srp.html#index-0">pair_style srp</a> + <dt><a href="pair_srp.html#index-0">pair\_style srp</a> </dt> - <dt><a href="pair_sw.html#index-0">pair_style sw</a> + <dt><a href="pair_sw.html#index-0">pair\_style sw</a> </dt> - <dt><a href="pair_table.html#index-0">pair_style table</a> + <dt><a href="pair_table.html#index-0">pair\_style table</a> </dt> - <dt><a href="pair_table_rx.html#index-0">pair_style table/rx</a> + <dt><a href="pair_table_rx.html#index-0">pair\_style table/rx</a> </dt> - <dt><a href="pair_tersoff.html#index-0">pair_style tersoff</a> + <dt><a href="pair_tersoff.html#index-0">pair\_style tersoff</a> </dt> - <dt><a href="pair_tersoff_mod.html#index-0">pair_style tersoff/mod</a> + <dt><a href="pair_tersoff_mod.html#index-0">pair\_style tersoff/mod</a> </dt> - <dt><a href="pair_tersoff_zbl.html#index-0">pair_style tersoff/zbl</a> + <dt><a href="pair_tersoff_zbl.html#index-0">pair\_style tersoff/zbl</a> </dt> - <dt><a href="pair_thole.html#index-0">pair_style thole</a> + <dt><a href="pair_thole.html#index-0">pair\_style thole</a> </dt> - <dt><a href="pair_tri_lj.html#index-0">pair_style tri/lj</a> + <dt><a href="pair_tri_lj.html#index-0">pair\_style tri/lj</a> </dt> - <dt><a href="pair_vashishta.html#index-0">pair_style vashishta</a> + <dt><a href="pair_vashishta.html#index-0">pair\_style vashishta</a> </dt> - <dt><a href="pair_yukawa.html#index-0">pair_style yukawa</a> + <dt><a href="pair_yukawa.html#index-0">pair\_style yukawa</a> </dt> - <dt><a href="pair_yukawa_colloid.html#index-0">pair_style yukawa/colloid</a> + <dt><a href="pair_yukawa_colloid.html#index-0">pair\_style yukawa/colloid</a> </dt> - <dt><a href="pair_zbl.html#index-0">pair_style zbl</a> + <dt><a href="pair_zbl.html#index-0">pair\_style zbl</a> </dt> - <dt><a href="pair_zero.html#index-0">pair_style zero</a> + <dt><a href="pair_zero.html#index-0">pair\_style zero</a> </dt> - <dt><a href="pair_write.html#index-0">pair_write</a> + <dt><a href="pair_write.html#index-0">pair\_write</a> </dt> @@ -2162,15 +2162,15 @@ <table style="width: 100%" class="indextable genindextable"><tr> <td style="width: 33%" valign="top"><dl> - <dt><a href="read_data.html#index-0">read_data</a> + <dt><a href="read_data.html#index-0">read\_data</a> </dt> - <dt><a href="read_dump.html#index-0">read_dump</a> + <dt><a href="read_dump.html#index-0">read\_dump</a> </dt> - <dt><a href="read_restart.html#index-0">read_restart</a> + <dt><a href="read_restart.html#index-0">read\_restart</a> </dt> @@ -2188,7 +2188,7 @@ </dt> - <dt><a href="reset_timestep.html#index-0">reset_timestep</a> + <dt><a href="reset_timestep.html#index-0">reset\_timestep</a> </dt> @@ -2200,7 +2200,7 @@ </dt> - <dt><a href="run_style.html#index-0">run_style</a> + <dt><a href="run_style.html#index-0">run\_style</a> </dt> </dl></td> @@ -2220,7 +2220,7 @@ </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="special_bonds.html#index-0">special_bonds</a> + <dt><a href="special_bonds.html#index-0">special\_bonds</a> </dt> @@ -2246,13 +2246,13 @@ </dt> - <dt><a href="thermo_modify.html#index-0">thermo_modify</a> + <dt><a href="thermo_modify.html#index-0">thermo\_modify</a> </dt> </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="thermo_style.html#index-0">thermo_style</a> + <dt><a href="thermo_style.html#index-0">thermo\_style</a> </dt> @@ -2310,21 +2310,21 @@ <table style="width: 100%" class="indextable genindextable"><tr> <td style="width: 33%" valign="top"><dl> - <dt><a href="write_coeff.html#index-0">write_coeff</a> + <dt><a href="write_coeff.html#index-0">write\_coeff</a> </dt> - <dt><a href="write_data.html#index-0">write_data</a> + <dt><a href="write_data.html#index-0">write\_data</a> </dt> </dl></td> <td style="width: 33%" valign="top"><dl> - <dt><a href="write_dump.html#index-0">write_dump</a> + <dt><a href="write_dump.html#index-0">write\_dump</a> </dt> - <dt><a href="write_restart.html#index-0">write_restart</a> + <dt><a href="write_restart.html#index-0">write\_restart</a> </dt> </dl></td> diff --git a/doc/html/group.html b/doc/html/group.html index d21faf214a..009ce0deea 100644 --- a/doc/html/group.html +++ b/doc/html/group.html @@ -257,22 +257,22 @@ or exclude from a group.</p> <p>For example, these lines define a variable “eatom” that calculates the potential energy of each atom and includes it in the group if its potential energy is above the threshhold value -3.0.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">pe</span><span class="o">/</span><span class="n">atom</span> -<span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">sum</span> <span class="n">c_1</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">pe</span> <span class="n">c_2</span> -<span class="n">run</span> <span class="mi">0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">eatom</span> <span class="n">atom</span> <span class="s2">"c_1 > -3.0"</span> -<span class="n">group</span> <span class="n">hienergy</span> <span class="n">variable</span> <span class="n">eatom</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 1 all pe/atom +compute 2 all reduce sum c_1 +thermo_style custom step temp pe c_2 +run 0 +</pre> +<pre class="literal-block"> +variable eatom atom "c_1 > -3.0" +group hienergy variable eatom +</pre> <p>Note that these lines</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">reduce</span> <span class="nb">sum</span> <span class="n">c_1</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">pe</span> <span class="n">c_2</span> -<span class="n">run</span> <span class="mi">0</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 2 all reduce sum c_1 +thermo_style custom step temp pe c_2 +run 0 +</pre> <p>are necessary to insure that the “eatom” variable is current when the group command invokes it. Because the eatom variable computes the per-atom energy via the pe/atom compute, it will only be current if a @@ -353,7 +353,8 @@ being integrated by using a spherical region with a variable radius used to model a quench of the system, freezing atoms outside the shrinking sphere, then converting the remaining atoms to a static group and running further.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable nsteps equal 5000 +<pre class="literal-block"> +variable nsteps equal 5000 variable rad equal 18-(step/v_nsteps)*(18-5) region ss sphere 20 20 0 v_rad group mobile dynamic all region ss @@ -361,8 +362,7 @@ fix 1 mobile nve run ${nsteps} group mobile static run ${nsteps} -</pre></div> -</div> +</pre> <div class="admonition note"> <p class="first admonition-title">Note</p> <p class="last">All fixes and computes take a group ID as an argument, but they diff --git a/doc/html/if.html b/doc/html/if.html index f2ba9d34e7..fe0350f9d5 100644 --- a/doc/html/if.html +++ b/doc/html/if.html @@ -143,7 +143,8 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span>if "${steps} > 1000" then quit +<pre class="literal-block"> +if "${steps} > 1000" then quit if "${myString} == a10" then quit if "$x <= $y" then "print X is smaller = $x" else "print Y is smaller = $y" if "(${eng} > 0.0) || ($n < 1000)" then & @@ -152,10 +153,9 @@ elif $n<10000 & "timestep 0.01" & else & "timestep 0.02" & - "print 'Max step reached'" + "print 'Max step reached'" if "${eng} > ${eng_previous}" then "jump file1" else "jump file2" -</pre></div> -</div> +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -249,10 +249,10 @@ clarity, you must enclose the entire expression in quotes.</p> <p>An expression is built out of numbers (which start with a digit or period or minus sign) or strings (which start with a letter and can contain alphanumeric characters or underscores):</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="mf">0.2</span><span class="p">,</span> <span class="mi">100</span><span class="p">,</span> <span class="mf">1.0e20</span><span class="p">,</span> <span class="o">-</span><span class="mf">15.4</span><span class="p">,</span> <span class="n">etc</span> -<span class="n">InP</span><span class="p">,</span> <span class="n">myString</span><span class="p">,</span> <span class="n">a123</span><span class="p">,</span> <span class="n">ab_23_cd</span><span class="p">,</span> <span class="n">etc</span> -</pre></div> -</div> +<pre class="literal-block"> +0.2, 100, 1.0e20, -15.4, etc +InP, myString, a123, ab_23_cd, etc +</pre> <p>and Boolean operators:</p> <div class="highlight-default"><div class="highlight"><pre><span></span>A == B, A != B, A < B, A <= B, A > B, A >= B, A && B, A || B, !A </pre></div> diff --git a/doc/html/improper_class2.html b/doc/html/improper_class2.html index c6758cff97..0d39e5935a 100644 --- a/doc/html/improper_class2.html +++ b/doc/html/improper_class2.html @@ -131,17 +131,17 @@ <h1>improper_style class2/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">class2</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style class2 +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">class2</span> -<span class="n">improper_coeff</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mi">0</span> -<span class="n">improper_coeff</span> <span class="o">*</span> <span class="n">aa</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">115.06</span> <span class="mf">130.01</span> <span class="mf">115.06</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style class2 +improper_coeff 1 100.0 0 +improper_coeff * aa 0.0 0.0 0.0 115.06 130.01 115.06 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/improper_cossq.html b/doc/html/improper_cossq.html index 9a7aa85c8d..28c2370f09 100644 --- a/doc/html/improper_cossq.html +++ b/doc/html/improper_cossq.html @@ -131,16 +131,16 @@ <h1>improper_style cossq/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">cossq</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style cossq +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">cossq</span> -<span class="n">improper_coeff</span> <span class="mi">1</span> <span class="mf">4.0</span> <span class="mf">0.0</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style cossq +improper_coeff 1 4.0 0.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/improper_cvff.html b/doc/html/improper_cvff.html index 186c5aa3e1..461f02eeab 100644 --- a/doc/html/improper_cvff.html +++ b/doc/html/improper_cvff.html @@ -134,16 +134,16 @@ <h1>improper_style cvff/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">cvff</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style cvff +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">cvff</span> -<span class="n">improper_coeff</span> <span class="mi">1</span> <span class="mf">80.0</span> <span class="o">-</span><span class="mi">1</span> <span class="mi">4</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style cvff +improper_coeff 1 80.0 -1 4 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/improper_distance.html b/doc/html/improper_distance.html index 69718ece9a..3f42cef8d0 100644 --- a/doc/html/improper_distance.html +++ b/doc/html/improper_distance.html @@ -132,10 +132,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">distance</span> -<span class="n">improper_coeff</span> <span class="mi">1</span> <span class="mf">80.0</span> <span class="mf">100.0</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style distance +improper_coeff 1 80.0 100.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/improper_fourier.html b/doc/html/improper_fourier.html index 545282aa2a..be22144ccf 100644 --- a/doc/html/improper_fourier.html +++ b/doc/html/improper_fourier.html @@ -131,16 +131,16 @@ <h1>improper_style fourier/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">fourier</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style fourier +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">fourier</span> -<span class="n">improper_coeff</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">180.0</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style fourier +improper_coeff 1 100.0 180.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/improper_harmonic.html b/doc/html/improper_harmonic.html index d268c62014..11553c0187 100644 --- a/doc/html/improper_harmonic.html +++ b/doc/html/improper_harmonic.html @@ -137,16 +137,16 @@ <h1>improper_style harmonic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">harmonic</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style harmonic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">harmonic</span> -<span class="n">improper_coeff</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mi">0</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style harmonic +improper_coeff 1 100.0 0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/improper_ring.html b/doc/html/improper_ring.html index aa3b557a57..0e7e4330b0 100644 --- a/doc/html/improper_ring.html +++ b/doc/html/improper_ring.html @@ -131,16 +131,16 @@ <h1>improper_style ring/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">ring</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style ring +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">ring</span> -<span class="n">improper_coeff</span> <span class="mi">1</span> <span class="mi">8000</span> <span class="mf">70.5</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style ring +improper_coeff 1 8000 70.5 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -150,8 +150,8 @@ specified by (i,j,k,l) indices and theta0 its equilibrium value.</p> <p>If the 4 atoms in an improper quadruplet (listed in the data file read by the <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> command) are ordered i,j,k,l then -<a href="#id1"><span class="problematic" id="id2">theta_</span></a><em>ijl</em> is the angle between atoms i,j and l, <a href="#id3"><span class="problematic" id="id4">theta_</span></a><em>ijk</em> is the -angle between atoms i,j and k, <a href="#id5"><span class="problematic" id="id6">theta_</span></a><em>kjl</em> is the angle between atoms +theta_<em>ijl</em> is the angle between atoms i,j and l, theta_<em>ijk</em> is the +angle between atoms i,j and k, theta_<em>kjl</em> is the angle between atoms j,k, and l.</p> <p>The “ring” improper style implements the improper potential introduced by Destree et al., in Equation (9) of <a class="reference internal" href="#destree"><span class="std std-ref">(Destree)</span></a>. This diff --git a/doc/html/improper_umbrella.html b/doc/html/improper_umbrella.html index f1fb943d5e..de79db67ef 100644 --- a/doc/html/improper_umbrella.html +++ b/doc/html/improper_umbrella.html @@ -131,16 +131,16 @@ <h1>improper_style umbrella/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">umbrella</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style umbrella +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">improper_style</span> <span class="n">umbrella</span> -<span class="n">improper_coeff</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">180.0</span> -</pre></div> -</div> +<pre class="literal-block"> +improper_style umbrella +improper_coeff 1 100.0 180.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/info.html b/doc/html/info.html index 8b263884ae..b60c5a6b9d 100644 --- a/doc/html/info.html +++ b/doc/html/info.html @@ -131,10 +131,11 @@ <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">info</span> <span class="n">args</span> </pre></div> </div> -<dl class="docutils"> -<dt>args = one or more of the following keywords: <em>out</em>, <em>all</em>, <em>system</em>, <em>communication</em>, <em>computes</em>, <em>dumps</em>, <em>fixes</em>, <em>groups</em>, <em>regions</em>, <em>variables</em>, <em>time</em>, or <em>configuration</em></dt> -<dd><em>out</em> values = <em>screen</em>, <em>log</em>, <em>append</em> filename, <em>overwrite</em> filename:ul</dd> -</dl> +<ul class="simple"> +<li>args = one or more of the following keywords: <em>out</em>, <em>all</em>, <em>system</em>, <em>communication</em>, <em>computes</em>, <em>dumps</em>, <em>fixes</em>, <em>groups</em>, <em>regions</em>, <em>variables</em>, <em>styles</em>, <em>time</em>, or <em>configuration</em></li> +<li><em>out</em> values = <em>screen</em>, <em>log</em>, <em>append</em> filename, <em>overwrite</em> filename</li> +<li><em>styles</em> values = <em>all</em>, <em>angle</em>, <em>atom</em>, <em>bond</em>, <em>compute</em>, <em>command</em>, <em>dump</em>, <em>dihedral</em>, <em>fix</em>, <em>improper</em>, <em>integrate</em>, <em>kspace</em>, <em>minimize</em>, <em>region</em></li> +</ul> </div> <div class="section" id="examples"> <h2>Examples</h2> @@ -142,6 +143,8 @@ <span class="n">info</span> <span class="n">groups</span> <span class="n">computes</span> <span class="n">variables</span> <span class="n">info</span> <span class="nb">all</span> <span class="n">out</span> <span class="n">log</span> <span class="n">info</span> <span class="nb">all</span> <span class="n">out</span> <span class="n">append</span> <span class="n">info</span><span class="o">.</span><span class="n">txt</span> +<span class="n">info</span> <span class="n">styles</span> <span class="nb">all</span> +<span class="n">info</span> <span class="n">styles</span> <span class="n">atom</span> </pre></div> </div> </div> @@ -179,6 +182,24 @@ selected.</p> <p>The <em>variables</em> category prints a list of all currently defined variables, their names, styles, definition and last computed value, if available.</p> +<p>The <em>styles</em> category prints the list of styles available in LAMMPS. It +supports one of the following options to control what is printed out:</p> +<ul class="simple"> +<li>all</li> +<li>angle</li> +<li>atom</li> +<li>bond</li> +<li>compute</li> +<li>command</li> +<li>dump</li> +<li>dihedral</li> +<li>fix</li> +<li>improper</li> +<li>integrate</li> +<li>kspace</li> +<li>minimize</li> +<li>region</li> +</ul> <p>The <em>time</em> category prints the accumulated CPU and wall time for the process that writes output (usually MPI rank 0).</p> <p>The <em>configuration</em> command prints some information about the LAMMPS @@ -198,6 +219,7 @@ reported.</p> <div class="section" id="default"> <h2>Default</h2> <p>The <em>out</em> option has the default <em>screen</em>.</p> +<p>The <em>styles</em> option has the default <em>all</em>.</p> </div> </div> diff --git a/doc/html/jump.html b/doc/html/jump.html index a87db9100d..8b2f4578a4 100644 --- a/doc/html/jump.html +++ b/doc/html/jump.html @@ -158,22 +158,22 @@ script is re-opened and read again.</p> <p class="last">The SELF option is not guaranteed to work when the current input script is being read through stdin (standard input), e.g.</p> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_g</span><span class="o">++</span> <span class="o"><</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_g++ < in.script +</pre> <p>since the SELF option invokes the C-library rewind() call, which may not be supported for stdin on some systems or by some MPI implementations. This can be worked around by using the <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">-in command-line argument</span></a>, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_g++ -in in.script +</pre> <p>or by using the <a class="reference internal" href="Section_start.html#start-7"><span class="std std-ref">-var command-line argument</span></a> to pass the script name as a variable to the input script. In the latter case, a <a class="reference internal" href="variable.html"><span class="doc">variable</span></a> called “fname” could be used in place of SELF, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp_g</span><span class="o">++</span> <span class="o">-</span><span class="n">var</span> <span class="n">fname</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> <span class="o"><</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> -</pre></div> -</div> +<pre class="literal-block"> +lmp_g++ -var fname in.script < in.script +</pre> <p>The 2nd argument to the jump command is optional. If specified, it is treated as a label and the new file is scanned (without executing commands) until the label is found, and commands are executed from @@ -198,9 +198,9 @@ scripts. In this example, LAMMPS is run on 40 processors, with 4 partitions of 10 procs each. An in.file containing the example variable and jump command will cause each partition to run a different simulation.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">40</span> <span class="n">lmp_ibm</span> <span class="o">-</span><span class="n">partition</span> <span class="mi">4</span><span class="n">x10</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">file</span> -</pre></div> -</div> +<pre class="literal-block"> +mpirun -np 40 lmp_ibm -partition 4x10 -in in.file +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span>variable f world script.1 script.2 script.3 script.4 jump $f </pre></div> diff --git a/doc/html/kspace_modify.html b/doc/html/kspace_modify.html index 961ea342d6..2019d48cff 100644 --- a/doc/html/kspace_modify.html +++ b/doc/html/kspace_modify.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>kspace_modify command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">kspace_modify</span> <span class="n">keyword</span> <span class="n">value</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +kspace_modify keyword value ... +</pre> <ul class="simple"> <li>one or more keyword/value pairs may be listed</li> </ul> @@ -174,10 +174,10 @@ keyword = <em>mesh</em> or <em>order</em> or <em>order/disp</em> or <em>mix/disp </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">kspace_modify</span> <span class="n">mesh</span> <span class="mi">24</span> <span class="mi">24</span> <span class="mi">30</span> <span class="n">order</span> <span class="mi">6</span> -<span class="n">kspace_modify</span> <span class="n">slab</span> <span class="mf">3.0</span> -</pre></div> -</div> +<pre class="literal-block"> +kspace_modify mesh 24 24 30 order 6 +kspace_modify slab 3.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/kspace_style.html b/doc/html/kspace_style.html index 53a0c22ce2..5cecc5b41d 100644 --- a/doc/html/kspace_style.html +++ b/doc/html/kspace_style.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>kspace_style command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">kspace_style</span> <span class="n">style</span> <span class="n">value</span> -</pre></div> -</div> +<pre class="literal-block"> +kspace_style style value +</pre> <ul class="simple"> <li>style = <em>none</em> or <em>ewald</em> or <em>ewald/disp</em> or <em>ewald/omp</em> or <em>pppm</em> or <em>pppm/cg</em> or <em>pppm/disp</em> or <em>pppm/tip4p</em> or <em>pppm/stagger</em> or <em>pppm/disp/tip4p</em> or <em>pppm/gpu</em> or <em>pppm/kk</em> or <em>pppm/omp</em> or <em>pppm/cg/omp</em> or <em>pppm/tip4p/omp</em> or <em>msm</em> or <em>msm/cg</em> or <em>msm/omp</em> or <em>msm/cg/omp</em></li> </ul> @@ -179,12 +179,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">kspace_style</span> <span class="n">pppm</span> <span class="mf">1.0e-4</span> -<span class="n">kspace_style</span> <span class="n">pppm</span><span class="o">/</span><span class="n">cg</span> <span class="mf">1.0e-5</span> <span class="mf">1.0e-6</span> -<span class="n">kspace</span> <span class="n">style</span> <span class="n">msm</span> <span class="mf">1.0e-4</span> -<span class="n">kspace_style</span> <span class="n">none</span> -</pre></div> -</div> +<pre class="literal-block"> +kspace_style pppm 1.0e-4 +kspace_style pppm/cg 1.0e-5 1.0e-6 +kspace style msm 1.0e-4 +kspace_style none +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -422,9 +422,9 @@ must be periodic and the z dimension must be non-periodic.</p> </div> <div class="section" id="default"> <h2>Default</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">kspace_style</span> <span class="n">none</span> -</pre></div> -</div> +<pre class="literal-block"> +kspace_style none +</pre> <hr class="docutils" /> <p id="darden"><strong>(Darden)</strong> Darden, York, Pedersen, J Chem Phys, 98, 10089 (1993).</p> <p id="deserno"><strong>(Deserno)</strong> Deserno and Holm, J Chem Phys, 109, 7694 (1998).</p> diff --git a/doc/html/lattice.html b/doc/html/lattice.html index 636cba7437..07d659915c 100644 --- a/doc/html/lattice.html +++ b/doc/html/lattice.html @@ -135,10 +135,10 @@ <li>style = <em>none</em> or <em>sc</em> or <em>bcc</em> or <em>fcc</em> or <em>hcp</em> or <em>diamond</em> or <em>sq</em> or <em>sq2</em> or <em>hex</em> or <em>custom</em></li> <li>scale = scale factor between lattice and simulation box</li> </ul> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">scale</span> <span class="o">=</span> <span class="n">reduced</span> <span class="n">density</span> <span class="n">rho</span><span class="o">*</span> <span class="p">(</span><span class="k">for</span> <span class="n">LJ</span> <span class="n">units</span><span class="p">)</span> -<span class="n">scale</span> <span class="o">=</span> <span class="n">lattice</span> <span class="n">constant</span> <span class="ow">in</span> <span class="n">distance</span> <span class="n">units</span> <span class="p">(</span><span class="k">for</span> <span class="nb">all</span> <span class="n">other</span> <span class="n">units</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +scale = reduced density rho* (for LJ units) +scale = lattice constant in distance units (for all other units) +</pre> <ul class="simple"> <li>zero or more keyword/value pairs may be appended</li> <li>keyword = <em>origin</em> or <em>orient</em> or <em>spacing</em> or <em>a1</em> or <em>a2</em> or <em>a3</em> or <em>basis</em></li> @@ -349,20 +349,21 @@ in commands that use the spacings should be decipherable.</p> <hr class="docutils" /> <p>Example commands for generating a Wurtzite crystal (courtesy of Aidan Thompson), with its 8 atom unit cell.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable a equal 4.340330 +<pre class="literal-block"> +variable a equal 4.340330 variable b equal $a*sqrt(3.0) variable c equal $a*sqrt(8.0/3.0) -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="mi">1</span><span class="n">_3</span> <span class="n">equal</span> <span class="mf">1.0</span><span class="o">/</span><span class="mf">3.0</span> -<span class="n">variable</span> <span class="mi">2</span><span class="n">_3</span> <span class="n">equal</span> <span class="mf">2.0</span><span class="o">/</span><span class="mf">3.0</span> -<span class="n">variable</span> <span class="mi">1</span><span class="n">_6</span> <span class="n">equal</span> <span class="mf">1.0</span><span class="o">/</span><span class="mf">6.0</span> -<span class="n">variable</span> <span class="mi">5</span><span class="n">_6</span> <span class="n">equal</span> <span class="mf">5.0</span><span class="o">/</span><span class="mf">6.0</span> -<span class="n">variable</span> <span class="mi">1</span><span class="n">_12</span> <span class="n">equal</span> <span class="mf">1.0</span><span class="o">/</span><span class="mf">12.0</span> -<span class="n">variable</span> <span class="mi">5</span><span class="n">_12</span> <span class="n">equal</span> <span class="mf">5.0</span><span class="o">/</span><span class="mf">12.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span>lattice custom 1.0 & +</pre> +<pre class="literal-block"> +variable 1_3 equal 1.0/3.0 +variable 2_3 equal 2.0/3.0 +variable 1_6 equal 1.0/6.0 +variable 5_6 equal 5.0/6.0 +variable 1_12 equal 1.0/12.0 +variable 5_12 equal 5.0/12.0 +</pre> +<pre class="literal-block"> +lattice custom 1.0 & a1 $a 0.0 0.0 & a2 0.0 $b 0.0 & a3 0.0 0.0 $c & @@ -374,17 +375,16 @@ variable c equal $a*sqrt(8.0/3.0) basis 0.5 0.5 0.625 & basis ${1_3} 0.0 0.125 & basis ${5_6} 0.5 0.125 -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">region</span> <span class="n">myreg</span> <span class="n">block</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mi">0</span> <span class="mi">1</span> -<span class="n">create_box</span> <span class="mi">2</span> <span class="n">myreg</span> -<span class="n">create_atoms</span> <span class="mi">1</span> <span class="n">box</span> <span class="o">&</span> - <span class="n">basis</span> <span class="mi">5</span> <span class="mi">2</span> <span class="o">&</span> - <span class="n">basis</span> <span class="mi">6</span> <span class="mi">2</span> <span class="o">&</span> - <span class="n">basis</span> <span class="mi">7</span> <span class="mi">2</span> <span class="o">&</span> - <span class="n">basis</span> <span class="mi">8</span> <span class="mi">2</span> -</pre></div> -</div> +</pre> +<pre class="literal-block"> +region myreg block 0 1 0 1 0 1 +create_box 2 myreg +create_atoms 1 box & + basis 5 2 & + basis 6 2 & + basis 7 2 & + basis 8 2 +</pre> </div> <hr class="docutils" /> <div class="section" id="restrictions"> diff --git a/doc/html/min_modify.html b/doc/html/min_modify.html index 5434586014..bd9a1f285f 100644 --- a/doc/html/min_modify.html +++ b/doc/html/min_modify.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>min_modify command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">min_modify</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +min_modify keyword values ... +</pre> <ul class="simple"> <li>one or more keyword/value pairs may be listed</li> </ul> @@ -144,9 +144,9 @@ keyword = <em>dmax</em> or <em>line</em> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">min_modify</span> <span class="n">dmax</span> <span class="mf">0.2</span> -</pre></div> -</div> +<pre class="literal-block"> +min_modify dmax 0.2 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/min_style.html b/doc/html/min_style.html index 158cf94d45..c2c66e37b9 100644 --- a/doc/html/min_style.html +++ b/doc/html/min_style.html @@ -128,19 +128,19 @@ <span id="index-0"></span><h1>min_style command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">min_style</span> <span class="n">style</span> -</pre></div> -</div> +<pre class="literal-block"> +min_style style +</pre> <ul class="simple"> <li>style = <em>cg</em> or <em>hftn</em> or <em>sd</em> or <em>quickmin</em> or <em>fire</em></li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">min_style</span> <span class="n">cg</span> -<span class="n">min_style</span> <span class="n">fire</span> -</pre></div> -</div> +<pre class="literal-block"> +min_style cg +min_style fire +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -206,9 +206,9 @@ involving the electron radius in <a class="reference internal" href="pair_eff.ht </div> <div class="section" id="default"> <h2>Default</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">min_style</span> <span class="n">cg</span> -</pre></div> -</div> +<pre class="literal-block"> +min_style cg +</pre> <hr class="docutils" /> <p id="sheppard"><strong>(Sheppard)</strong> Sheppard, Terrell, Henkelman, J Chem Phys, 128, 134106 (2008). See ref 1 in this paper for original reference to Qmin in diff --git a/doc/html/neigh_modify.html b/doc/html/neigh_modify.html index cdad858eee..991e8aaf9b 100644 --- a/doc/html/neigh_modify.html +++ b/doc/html/neigh_modify.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>neigh_modify command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">neigh_modify</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +neigh_modify keyword values ... +</pre> <ul class="simple"> <li>one or more keyword/value pairs may be listed</li> </ul> @@ -170,13 +170,13 @@ keyword = <em>delay</em> or <em>every</em> or <em>check</em> or <em>once</em> or </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">neigh_modify</span> <span class="n">every</span> <span class="mi">2</span> <span class="n">delay</span> <span class="mi">10</span> <span class="n">check</span> <span class="n">yes</span> <span class="n">page</span> <span class="mi">100000</span> -<span class="n">neigh_modify</span> <span class="n">exclude</span> <span class="nb">type</span> <span class="mi">2</span> <span class="mi">3</span> -<span class="n">neigh_modify</span> <span class="n">exclude</span> <span class="n">group</span> <span class="n">frozen</span> <span class="n">frozen</span> <span class="n">check</span> <span class="n">no</span> -<span class="n">neigh_modify</span> <span class="n">exclude</span> <span class="n">group</span> <span class="n">residue1</span> <span class="n">chain3</span> -<span class="n">neigh_modify</span> <span class="n">exclude</span> <span class="n">molecule</span> <span class="n">rigid</span> -</pre></div> -</div> +<pre class="literal-block"> +neigh_modify every 2 delay 10 check yes page 100000 +neigh_modify exclude type 2 3 +neigh_modify exclude group frozen frozen check no +neigh_modify exclude group residue1 chain3 +neigh_modify exclude molecule rigid +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/next.html b/doc/html/next.html index 91a180f677..e8b2338450 100644 --- a/doc/html/next.html +++ b/doc/html/next.html @@ -196,7 +196,8 @@ see in your directory during and after such a LAMMPS run.</p> command with an <em>index</em>-style variable. If this input script is named in.polymer, 8 simulations would be run using data files from directories run1 thru run8.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable d index run1 run2 run3 run4 run5 run6 run7 run8 +<pre class="literal-block"> +variable d index run1 run2 run3 run4 run5 run6 run7 run8 shell cd $d read_data data.polymer run 10000 @@ -204,8 +205,7 @@ shell cd .. clear next d jump in.polymer -</pre></div> -</div> +</pre> <p>If the variable “d” were of style <em>universe</em>, and the same in.polymer input script were run on 3 partitions of processors, then the first 3 simulations would begin, one on each set of processors. Whichever @@ -214,7 +214,8 @@ and run another simulation, and so forth until all 8 simulations were finished.</p> <p>Jump and next commands can also be nested to enable multi-level loops. For example, this script will run 15 simulations in a double loop.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable i loop 3 +<pre class="literal-block"> +variable i loop 3 variable j loop 5 clear ... @@ -225,8 +226,7 @@ For example, this script will run 15 simulations in a double loop.</p> jump in.script next i jump in.script -</pre></div> -</div> +</pre> <p>Here is an example of a double loop which uses the <a class="reference internal" href="if.html"><span class="doc">if</span></a> and <a class="reference internal" href="jump.html"><span class="doc">jump</span></a> commands to break out of the inner loop when a condition is met, then continues iterating thru the outer loop.</p> diff --git a/doc/html/package.html b/doc/html/package.html index 90477fc5ec..7146faef4d 100644 --- a/doc/html/package.html +++ b/doc/html/package.html @@ -572,11 +572,11 @@ compilers is to use one thread for each available CPU core when performance.</p> <p>Here are examples of how to set the environment variable when launching LAMMPS:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">env</span> <span class="n">OMP_NUM_THREADS</span><span class="o">=</span><span class="mi">4</span> <span class="n">lmp_machine</span> <span class="o">-</span><span class="n">sf</span> <span class="n">omp</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> -<span class="n">env</span> <span class="n">OMP_NUM_THREADS</span><span class="o">=</span><span class="mi">2</span> <span class="n">mpirun</span> <span class="o">-</span><span class="n">np</span> <span class="mi">2</span> <span class="n">lmp_machine</span> <span class="o">-</span><span class="n">sf</span> <span class="n">omp</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> -<span class="n">mpirun</span> <span class="o">-</span><span class="n">x</span> <span class="n">OMP_NUM_THREADS</span><span class="o">=</span><span class="mi">2</span> <span class="o">-</span><span class="n">np</span> <span class="mi">2</span> <span class="n">lmp_machine</span> <span class="o">-</span><span class="n">sf</span> <span class="n">omp</span> <span class="o">-</span><span class="ow">in</span> <span class="ow">in</span><span class="o">.</span><span class="n">script</span> -</pre></div> -</div> +<pre class="literal-block"> +env OMP_NUM_THREADS=4 lmp_machine -sf omp -in in.script +env OMP_NUM_THREADS=2 mpirun -np 2 lmp_machine -sf omp -in in.script +mpirun -x OMP_NUM_THREADS=2 -np 2 lmp_machine -sf omp -in in.script +</pre> <p>or you can set it permanently in your shell’s start-up script. All three of these examples use a total of 4 CPU cores.</p> <p>Note that different MPI implementations have different ways of passing diff --git a/doc/html/pair_adp.html b/doc/html/pair_adp.html index c38bbab6b5..5bc88ab7d0 100644 --- a/doc/html/pair_adp.html +++ b/doc/html/pair_adp.html @@ -131,17 +131,17 @@ <h1>pair_style adp/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">adp</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style adp +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">adp</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Ta</span><span class="o">.</span><span class="n">adp</span> <span class="n">Ta</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">AlCu</span><span class="o">.</span><span class="n">adp</span> <span class="n">Al</span> <span class="n">Al</span> <span class="n">Cu</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style adp +pair_coeff * * Ta.adp Ta +pair_coeff * * ../potentials/AlCu.adp Al Al Cu +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -188,9 +188,9 @@ file which has tabulated ADP values for w elements and their alloy interactions: Cu and Al. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Al, and the 4th to be Cu, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">AlCu</span><span class="o">.</span><span class="n">adp</span> <span class="n">Al</span> <span class="n">Al</span> <span class="n">Al</span> <span class="n">Cu</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * AlCu.adp Al Al Al Cu +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Al arguments map LAMMPS atom types 1,2,3 to the Al element in the extended <em>setfl</em> file. The final Cu argument maps diff --git a/doc/html/pair_airebo.html b/doc/html/pair_airebo.html index 503da5ef6a..6827568073 100644 --- a/doc/html/pair_airebo.html +++ b/doc/html/pair_airebo.html @@ -143,9 +143,9 @@ <h1>pair_style rebo/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">cutoff</span> <span class="n">LJ_flag</span> <span class="n">TORSION_flag</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style cutoff LJ_flag TORSION_flag +</pre> <ul class="simple"> <li>style = <em>airebo</em> or <em>airebo/morse</em> or <em>rebo</em></li> <li>cutoff = LJ or Morse cutoff (sigma scale factor) (AIREBO and AIREBO-M only)</li> @@ -155,19 +155,19 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">airebo</span> <span class="mf">3.0</span> -<span class="n">pair_style</span> <span class="n">airebo</span> <span class="mf">2.5</span> <span class="mi">1</span> <span class="mi">0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">CH</span><span class="o">.</span><span class="n">airebo</span> <span class="n">H</span> <span class="n">C</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">airebo</span><span class="o">/</span><span class="n">morse</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">CH</span><span class="o">.</span><span class="n">airebo</span><span class="o">-</span><span class="n">m</span> <span class="n">H</span> <span class="n">C</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">rebo</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">CH</span><span class="o">.</span><span class="n">airebo</span> <span class="n">H</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style airebo 3.0 +pair_style airebo 2.5 1 0 +pair_coeff * * ../potentials/CH.airebo H C +</pre> +<pre class="literal-block"> +pair_style airebo/morse 3.0 +pair_coeff * * ../potentials/CH.airebo-m H C +</pre> +<pre class="literal-block"> +pair_style rebo +pair_coeff * * ../potentials/CH.airebo H C +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -242,9 +242,9 @@ to specify the path for the potential file.</p> <p>As an example, if your LAMMPS simulation has 4 atom types and you want the 1st 3 to be C, and the 4th to be H, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">CH</span><span class="o">.</span><span class="n">airebo</span> <span class="n">C</span> <span class="n">C</span> <span class="n">C</span> <span class="n">H</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * CH.airebo C C C H +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three C arguments map LAMMPS atom types 1,2,3 to the C element in the AIREBO file. The final H argument maps LAMMPS atom @@ -273,13 +273,13 @@ The 3 values correspond to the following sub-categories:</p> </ol> <p>To print these quantities to the log file (with descriptive column headings) the following commands could be included in an input script:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="mi">0</span> <span class="nb">all</span> <span class="n">pair</span> <span class="n">airebo</span> -<span class="n">variable</span> <span class="n">REBO</span> <span class="n">equal</span> <span class="n">c_0</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">LJ</span> <span class="n">equal</span> <span class="n">c_0</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">TORSION</span> <span class="n">equal</span> <span class="n">c_0</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">epair</span> <span class="n">v_REBO</span> <span class="n">v_LJ</span> <span class="n">v_TORSION</span> -</pre></div> -</div> +<pre class="literal-block"> +compute 0 all pair airebo +variable REBO equal c_0[1] +variable LJ equal c_0[2] +variable TORSION equal c_0[3] +thermo_style custom step temp epair v_REBO v_LJ v_TORSION +</pre> <hr class="docutils" /> <p>Styles with a <em>gpu</em>, <em>intel</em>, <em>kk</em>, <em>omp</em>, or <em>opt</em> suffix are functionally the same as the corresponding style without the suffix. diff --git a/doc/html/pair_beck.html b/doc/html/pair_beck.html index 10325668e8..baf69eecfa 100644 --- a/doc/html/pair_beck.html +++ b/doc/html/pair_beck.html @@ -134,20 +134,20 @@ <h1>pair_style beck/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">beck</span> <span class="n">Rc</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style beck Rc +</pre> <ul class="simple"> <li>Rc = cutoff for interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">beck</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">399.671876712</span> <span class="mf">0.0000867636112694</span> <span class="mf">0.675</span> <span class="mf">4.390</span> <span class="mf">0.0003746</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">399.671876712</span> <span class="mf">0.0000867636112694</span> <span class="mf">0.675</span> <span class="mf">4.390</span> <span class="mf">0.0003746</span> <span class="mf">6.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style beck 8.0 +pair_coeff * * 399.671876712 0.0000867636112694 0.675 4.390 0.0003746 +pair_coeff 1 1 399.671876712 0.0000867636112694 0.675 4.390 0.0003746 6.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_body.html b/doc/html/pair_body.html index 5f4df83aa4..5f623fb0b7 100644 --- a/doc/html/pair_body.html +++ b/doc/html/pair_body.html @@ -128,18 +128,18 @@ <span id="index-0"></span><h1>pair_style body command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">body</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style body cutoff +</pre> <p>cutoff = global cutoff for interactions (distance units)</p> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">body</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.5</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style body 3.0 +pair_coeff * * 1.0 1.0 +pair_coeff 1 1 1.0 1.5 2.5 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_bop.html b/doc/html/pair_bop.html index 1c1d5e2ce7..f3b0785cd0 100644 --- a/doc/html/pair_bop.html +++ b/doc/html/pair_bop.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style bop command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">bop</span> <span class="n">keyword</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style bop keyword ... +</pre> <ul class="simple"> <li>zero or more keywords may be appended</li> <li>keyword = <em>save</em></li> @@ -141,13 +141,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">bop</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">CdTe_bop</span> <span class="n">Cd</span> <span class="n">Te</span> -<span class="n">pair_style</span> <span class="n">bop</span> <span class="n">save</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">CdTe</span><span class="o">.</span><span class="n">bop</span><span class="o">.</span><span class="n">table</span> <span class="n">Cd</span> <span class="n">Te</span> <span class="n">Te</span> -<span class="n">comm_modify</span> <span class="n">cutoff</span> <span class="mf">14.70</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style bop +pair_coeff * * ../potentials/CdTe_bop Cd Te +pair_style bop save +pair_coeff * * ../potentials/CdTe.bop.table Cd Te Te +comm_modify cutoff 14.70 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -238,9 +238,9 @@ where N is the number of LAMMPS atom types:</p> and Te. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Cd, and the 4th to be Te, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">CdTe</span> <span class="n">Cd</span> <span class="n">Cd</span> <span class="n">Cd</span> <span class="n">Te</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * CdTe Cd Cd Cd Te +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Cd arguments map LAMMPS atom types 1,2,3 to the Cd element in the BOP file. The final Te argument maps LAMMPS atom type diff --git a/doc/html/pair_born.html b/doc/html/pair_born.html index 3740bb4699..c73ca9761f 100644 --- a/doc/html/pair_born.html +++ b/doc/html/pair_born.html @@ -161,9 +161,9 @@ <h1>pair_style born/coul/wolf/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>born</em> or <em>born/coul/long</em> or <em>born/coul/long/cs</em> or <em>born/coul/msm</em> or <em>born/coul/wolf</em></li> <li>args = list of arguments for a particular style</li> @@ -185,31 +185,31 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">born</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">wolf</span> <span class="mf">0.25</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">wolf</span> <span class="mf">0.25</span> <span class="mf">10.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style born 10.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 class="literal-block"> +pair_style born/coul/long 10.0 +pair_style born/coul/long/cs 10.0 +pair_style born/coul/long 10.0 8.0 +pair_style born/coul/long/cs 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 class="literal-block"> +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 class="literal-block"> +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 +pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_brownian.html b/doc/html/pair_brownian.html index eaf0a723c3..777cb46f10 100644 --- a/doc/html/pair_brownian.html +++ b/doc/html/pair_brownian.html @@ -137,9 +137,9 @@ <h1>pair_style brownian/poly/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">mu</span> <span class="n">flaglog</span> <span class="n">flagfld</span> <span class="n">cutinner</span> <span class="n">cutoff</span> <span class="n">t_target</span> <span class="n">seed</span> <span class="n">flagHI</span> <span class="n">flagVF</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style mu flaglog flagfld cutinner cutoff t_target seed flagHI flagVF +</pre> <ul class="simple"> <li>style = <em>brownian</em> or <em>brownian/poly</em></li> <li>mu = dynamic viscosity (dynamic viscosity units)</li> @@ -155,11 +155,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">brownian</span> <span class="mf">1.5</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">2.01</span> <span class="mf">2.5</span> <span class="mf">2.0</span> <span class="mi">5878567</span> <span class="p">(</span><span class="n">assuming</span> <span class="n">radius</span> <span class="o">=</span> <span class="mi">1</span><span class="p">)</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">2.05</span> <span class="mf">2.8</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style brownian 1.5 1 1 2.01 2.5 2.0 5878567 (assuming radius = 1) +pair_coeff 1 1 2.05 2.8 +pair_coeff * * +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_buck.html b/doc/html/pair_buck.html index 58eccb8ce8..fa537931bf 100644 --- a/doc/html/pair_buck.html +++ b/doc/html/pair_buck.html @@ -179,9 +179,9 @@ <h1>pair_style buck/coul/msm/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>buck</em> or <em>buck/coul/cut</em> or <em>buck/coul/long</em> or <em>buck/coul/long/cs</em> or <em>buck/coul/msm</em></li> <li>args = list of arguments for a particular style</li> @@ -202,32 +202,32 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">buck</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> <span class="mf">3.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> <span class="mf">9.0</span> <span class="mf">8.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> <span class="mf">9.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> <span class="mf">9.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style buck 2.5 +pair_coeff * * 100.0 1.5 200.0 +pair_coeff * * 100.0 1.5 200.0 3.0 +</pre> +<pre class="literal-block"> +pair_style buck/coul/cut 10.0 +pair_style buck/coul/cut 10.0 8.0 +pair_coeff * * 100.0 1.5 200.0 +pair_coeff 1 1 100.0 1.5 200.0 9.0 +pair_coeff 1 1 100.0 1.5 200.0 9.0 8.0 +</pre> +<pre class="literal-block"> +pair_style buck/coul/long 10.0 +pair_style buck/coul/long/cs 10.0 +pair_style buck/coul/long 10.0 8.0 +pair_style buck/coul/long/cs 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 class="literal-block"> +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> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_buck_long.html b/doc/html/pair_buck_long.html index a9e6b7e670..82fc5d5641 100644 --- a/doc/html/pair_buck_long.html +++ b/doc/html/pair_buck_long.html @@ -131,9 +131,9 @@ <h1>pair_style buck/long/coul/long/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">flag_buck</span> <span class="n">flag_coul</span> <span class="n">cutoff</span> <span class="p">(</span><span class="n">cutoff2</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style buck/long/coul/long flag_buck flag_coul cutoff (cutoff2) +</pre> <ul class="simple"> <li>flag_buck = <em>long</em> or <em>cut</em></li> </ul> @@ -155,13 +155,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">cut</span> <span class="n">off</span> <span class="mf">2.5</span> -<span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">cut</span> <span class="n">long</span> <span class="mf">2.5</span> <span class="mf">4.0</span> -<span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">long</span> <span class="n">long</span> <span class="mf">4.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">1</span> <span class="mi">1</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">3</span> <span class="mi">4</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style buck/long/coul/long cut off 2.5 +pair_style buck/long/coul/long cut long 2.5 4.0 +pair_style buck/long/coul/long long long 4.0 +pair_coeff * * 1 1 +pair_coeff 1 1 1 3 4 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_charmm.html b/doc/html/pair_charmm.html index 75994eddd2..93e44709ce 100644 --- a/doc/html/pair_charmm.html +++ b/doc/html/pair_charmm.html @@ -158,9 +158,9 @@ <h1>pair_style lj/charmm/coul/msm/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>lj/charmm/coul/charmm</em> or <em>lj/charmm/coul/charmm/implicit</em> or <em>lj/charmm/coul/long</em> or <em>lj/charmm/coul/msm</em></li> <li>args = list of arguments for a particular style</li> @@ -182,30 +182,30 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">charmm</span> <span class="mf">8.0</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">charmm</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="mf">7.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">2.0</span> <span class="mf">150.0</span> <span class="mf">3.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">implicit</span> <span class="mf">8.0</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">implicit</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="mf">7.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">2.0</span> <span class="mf">150.0</span> <span class="mf">3.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">8.0</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">2.0</span> <span class="mf">150.0</span> <span class="mf">3.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">8.0</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">2.0</span> <span class="mf">150.0</span> <span class="mf">3.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/charmm/coul/charmm 8.0 10.0 +pair_style lj/charmm/coul/charmm 8.0 10.0 7.0 9.0 +pair_coeff * * 100.0 2.0 +pair_coeff 1 1 100.0 2.0 150.0 3.5 +</pre> +<pre class="literal-block"> +pair_style lj/charmm/coul/charmm/implicit 8.0 10.0 +pair_style lj/charmm/coul/charmm/implicit 8.0 10.0 7.0 9.0 +pair_coeff * * 100.0 2.0 +pair_coeff 1 1 100.0 2.0 150.0 3.5 +</pre> +<pre class="literal-block"> +pair_style lj/charmm/coul/long 8.0 10.0 +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 class="literal-block"> +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> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_class2.html b/doc/html/pair_class2.html index 5e62dd99ef..a2dee8a442 100644 --- a/doc/html/pair_class2.html +++ b/doc/html/pair_class2.html @@ -158,9 +158,9 @@ <h1>pair_style lj/class2/coul/long/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>lj/class2</em> or <em>lj/class2/coul/cut</em> or <em>lj/class2/coul/long</em></li> <li>args = list of arguments for a particular style</li> @@ -178,24 +178,24 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">class2</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span><span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.5</span> <span class="mf">9.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">class2</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">class2</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> <span class="mf">9.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">class2</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">class2</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/class2 10.0 +pair_coeff * * 100.0 2.5 +pair_coeff 1 2* 100.0 2.5 9.0 +</pre> +<pre class="literal-block"> +pair_style lj/class2/coul/cut 10.0 +pair_style lj/class2/coul/cut 10.0 8.0 +pair_coeff * * 100.0 3.0 +pair_coeff 1 1 100.0 3.5 9.0 +pair_coeff 1 1 100.0 3.5 9.0 9.0 +</pre> +<pre class="literal-block"> +pair_style lj/class2/coul/long 10.0 +pair_style lj/class2/coul/long 10.0 8.0 +pair_coeff * * 100.0 3.0 +pair_coeff 1 1 100.0 3.5 9.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_colloid.html b/doc/html/pair_colloid.html index c4254f1606..a1520bc730 100644 --- a/doc/html/pair_colloid.html +++ b/doc/html/pair_colloid.html @@ -134,22 +134,22 @@ <h1>pair_style colloid/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">colloid</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style colloid cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for colloidal interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">colloid</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">25</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">144</span> <span class="mf">1.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mf">75.398</span> <span class="mf">1.0</span> <span class="mf">0.0</span> <span class="mf">10.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mf">39.478</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="mf">10.0</span> <span class="mf">25.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style colloid 10.0 +pair_coeff * * 25 1.0 10.0 10.0 +pair_coeff 1 1 144 1.0 0.0 0.0 3.0 +pair_coeff 1 2 75.398 1.0 0.0 10.0 9.0 +pair_coeff 2 2 39.478 1.0 10.0 10.0 25.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_comb.html b/doc/html/pair_comb.html index d7ca86f242..c0768ee36a 100644 --- a/doc/html/pair_comb.html +++ b/doc/html/pair_comb.html @@ -134,10 +134,10 @@ <h1>pair_style comb3 command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">comb</span> -<span class="n">pair_style</span> <span class="n">comb3</span> <span class="n">keyword</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style comb +pair_style comb3 keyword +</pre> <pre class="literal-block"> keyword = <em>polar</em> <em>polar</em> value = <em>polar_on</em> or <em>polar_off</em> = whether or not to include atomic polarization @@ -145,15 +145,15 @@ keyword = <em>polar</em> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">comb</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">ffield</span><span class="o">.</span><span class="n">comb</span> <span class="n">Si</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">ffield</span><span class="o">.</span><span class="n">comb</span> <span class="n">Hf</span> <span class="n">Si</span> <span class="n">O</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">comb3</span> <span class="n">polar_off</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">ffield</span><span class="o">.</span><span class="n">comb3</span> <span class="n">O</span> <span class="n">Cu</span> <span class="n">N</span> <span class="n">C</span> <span class="n">O</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style comb +pair_coeff * * ../potentials/ffield.comb Si +pair_coeff * * ../potentials/ffield.comb Hf Si O +</pre> +<pre class="literal-block"> +pair_style comb3 polar_off +pair_coeff * * ../potentials/ffield.comb3 O Cu N C O +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -191,9 +191,9 @@ command, where N is the number of LAMMPS atom types.</p> HfO<sub>2</sub> interface has 4 atom types, and you want the 1st and last to be Si, the 2nd to be Hf, and the 3rd to be O, and you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">ffield</span><span class="o">.</span><span class="n">comb</span> <span class="n">Si</span> <span class="n">Hf</span> <span class="n">O</span> <span class="n">Si</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * ../potentials/ffield.comb Si Hf O Si +</pre> <p>The first two arguments must be * * so as to span all LAMMPS atom types. The first and last Si arguments map LAMMPS atom types 1 and 4 to the Si element in the <em>ffield.comb</em> file. The second Hf argument diff --git a/doc/html/pair_coul.html b/doc/html/pair_coul.html index 1df9e6791a..98cba31724 100644 --- a/doc/html/pair_coul.html +++ b/doc/html/pair_coul.html @@ -206,18 +206,18 @@ <h1>pair_style tip4p/long/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">debye</span> <span class="n">kappa</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">dsf</span> <span class="n">alpha</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">gpu</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">wolf</span> <span class="n">alpha</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">streitz</span> <span class="n">cutoff</span> <span class="n">keyword</span> <span class="n">alpha</span> -<span class="n">pair_style</span> <span class="n">tip4p</span><span class="o">/</span><span class="n">cut</span> <span class="n">otype</span> <span class="n">htype</span> <span class="n">btype</span> <span class="n">atype</span> <span class="n">qdist</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">tip4p</span><span class="o">/</span><span class="n">long</span> <span class="n">otype</span> <span class="n">htype</span> <span class="n">btype</span> <span class="n">atype</span> <span class="n">qdist</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style coul/cut cutoff +pair_style coul/debye kappa cutoff +pair_style coul/dsf alpha cutoff +pair_style coul/long cutoff +pair_style coul/long/cs cutoff +pair_style coul/long/gpu cutoff +pair_style coul/wolf alpha cutoff +pair_style coul/streitz cutoff keyword alpha +pair_style tip4p/cut otype htype btype atype qdist cutoff +pair_style tip4p/long otype htype btype atype qdist cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for Coulombic interactions</li> <li>kappa = Debye length (inverse distance units)</li> @@ -226,46 +226,46 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mf">3.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">debye</span> <span class="mf">1.4</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mf">3.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">dsf</span> <span class="mf">0.05</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">wolf</span> <span class="mf">0.2</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">streitz</span> <span class="mf">12.0</span> <span class="n">ewald</span> -<span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">streitz</span> <span class="mf">12.0</span> <span class="n">wolf</span> <span class="mf">0.30</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">AlO</span><span class="o">.</span><span class="n">streitz</span> <span class="n">Al</span> <span class="n">O</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tip4p</span><span class="o">/</span><span class="n">cut</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">12.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tip4p</span><span class="o">/</span><span class="n">long</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style coul/cut 2.5 +pair_coeff * * +pair_coeff 2 2 3.5 +</pre> +<pre class="literal-block"> +pair_style coul/debye 1.4 3.0 +pair_coeff * * +pair_coeff 2 2 3.5 +</pre> +<pre class="literal-block"> +pair_style coul/dsf 0.05 10.0 +pair_coeff * * +</pre> +<pre class="literal-block"> +pair_style coul/long 10.0 +pair_style coul/long/cs 10.0 +pair_coeff * * +</pre> +<pre class="literal-block"> +pair_style coul/msm 10.0 +pair_coeff * * +</pre> +<pre class="literal-block"> +pair_style coul/wolf 0.2 9.0 +pair_coeff * * +</pre> +<pre class="literal-block"> +pair_style coul/streitz 12.0 ewald +pair_style coul/streitz 12.0 wolf 0.30 +pair_coeff * * AlO.streitz Al O +</pre> +<pre class="literal-block"> +pair_style tip4p/cut 1 2 7 8 0.15 12.0 +pair_coeff * * +</pre> +<pre class="literal-block"> +pair_style tip4p/long 1 2 7 8 0.15 10.0 +pair_coeff * * +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -317,21 +317,21 @@ used with <a class="reference internal" href="pair_eam.html"><span class="doc">p short-range potential that has been parameterized appropriately) via the <a class="reference internal" href="pair_hybrid.html"><span class="doc">pair_style hybrid/overlay</span></a> command. Likewise, charge equilibration must be performed via the <a class="reference internal" href="fix_qeq.html"><span class="doc">fix qeq/slater</span></a> command. For example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">coul</span><span class="o">/</span><span class="n">streitz</span> <span class="mf">12.0</span> <span class="n">wolf</span> <span class="mf">0.31</span> <span class="n">eam</span><span class="o">/</span><span class="n">alloy</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">coul</span><span class="o">/</span><span class="n">streitz</span> <span class="n">AlO</span><span class="o">.</span><span class="n">streitz</span> <span class="n">Al</span> <span class="n">O</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">eam</span><span class="o">/</span><span class="n">alloy</span> <span class="n">AlO</span><span class="o">.</span><span class="n">eam</span><span class="o">.</span><span class="n">alloy</span> <span class="n">Al</span> <span class="n">O</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">qeq</span><span class="o">/</span><span class="n">slater</span> <span class="mi">1</span> <span class="mf">12.0</span> <span class="mf">1.0e-6</span> <span class="mi">100</span> <span class="n">coul</span><span class="o">/</span><span class="n">streitz</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid/overlay coul/streitz 12.0 wolf 0.31 eam/alloy +pair_coeff * * coul/streitz AlO.streitz Al O +pair_coeff * * eam/alloy AlO.eam.alloy Al O +fix 1 all qeq/slater 1 12.0 1.0e-6 100 coul/streitz +</pre> <p>The keyword <em>wolf</em> in the coul/streitz command denotes computing Coulombic interactions via Wolf summation. An additional damping parameter is required for the Wolf summation, as described for the coul/wolf potential above. Alternatively, Coulombic interactions can be computed via an Ewald summation. For example:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">coul</span><span class="o">/</span><span class="n">streitz</span> <span class="mf">12.0</span> <span class="n">ewald</span> <span class="n">eam</span><span class="o">/</span><span class="n">alloy</span> -<span class="n">kspace_style</span> <span class="n">ewald</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">6</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid/overlay coul/streitz 12.0 ewald eam/alloy +kspace_style ewald 1e-6 +</pre> <p>Keyword <em>ewald</em> does not need a damping parameter, but a <a class="reference internal" href="kspace_style.html"><span class="doc">kspace_style</span></a> must be defined, which can be style <em>ewald</em> or <em>pppm</em>. The Ewald method was used in Streitz and diff --git a/doc/html/pair_coul_diel.html b/doc/html/pair_coul_diel.html index 1f7d3e04af..88e078dfd5 100644 --- a/doc/html/pair_coul_diel.html +++ b/doc/html/pair_coul_diel.html @@ -131,17 +131,17 @@ <h1>pair_style coul/diel/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">diel</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style coul/diel cutoff +</pre> <p>cutoff = global cutoff (distance units)</p> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">diel</span> <span class="mf">3.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">4</span> <span class="mf">78.</span> <span class="mf">1.375</span> <span class="mf">0.112</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style coul/diel 3.5 +pair_coeff 1 4 78. 1.375 0.112 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_cs.html b/doc/html/pair_cs.html index 75b462f741..12d0c515ef 100644 --- a/doc/html/pair_cs.html +++ b/doc/html/pair_cs.html @@ -131,9 +131,9 @@ <h1>pair_style buck/coul/long/cs command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>born/coul/long/cs</em> or <em>buck/coul/long/cs</em></li> <li>args = list of arguments for a particular style</li> @@ -149,16 +149,16 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">born</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">6.08</span> <span class="mf">0.317</span> <span class="mf">2.340</span> <span class="mf">24.18</span> <span class="mf">11.51</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">buck</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> <span class="mf">9.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style born/coul/long/cs 10.0 8.0 +pair_coeff 1 1 6.08 0.317 2.340 24.18 11.51 +</pre> +<pre class="literal-block"> +pair_style buck/coul/long/cs 10.0 +pair_style buck/coul/long/cs 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> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_dipole.html b/doc/html/pair_dipole.html index a8b5437180..25e82fc6e3 100644 --- a/doc/html/pair_dipole.html +++ b/doc/html/pair_dipole.html @@ -149,12 +149,12 @@ <h1>pair_style lj/long/dipole/long command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">dipole</span><span class="o">/</span><span class="n">cut</span> <span class="n">cutoff</span> <span class="p">(</span><span class="n">cutoff2</span><span class="p">)</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">sf</span><span class="o">/</span><span class="n">dipole</span><span class="o">/</span><span class="n">sf</span> <span class="n">cutoff</span> <span class="p">(</span><span class="n">cutoff2</span><span class="p">)</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">dipole</span><span class="o">/</span><span class="n">long</span> <span class="n">cutoff</span> <span class="p">(</span><span class="n">cutoff2</span><span class="p">)</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">dipole</span><span class="o">/</span><span class="n">long</span> <span class="n">flag_lj</span> <span class="n">flag_coul</span> <span class="n">cutoff</span> <span class="p">(</span><span class="n">cutoff2</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut/dipole/cut cutoff (cutoff2) +pair_style lj/sf/dipole/sf cutoff (cutoff2) +pair_style lj/cut/dipole/long cutoff (cutoff2) +pair_style lj/long/dipole/long flag_lj flag_coul cutoff (cutoff2) +</pre> <ul class="simple"> <li>cutoff = global cutoff LJ (and Coulombic if only 1 arg) (distance units)</li> <li>cutoff2 = global cutoff for Coulombic and dipole (optional) (distance units)</li> @@ -175,26 +175,26 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">dipole</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> <span class="mf">4.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">sf</span><span class="o">/</span><span class="n">dipole</span><span class="o">/</span><span class="n">sf</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> <span class="mf">4.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">dipole</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> <span class="mf">4.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">dipole</span><span class="o">/</span><span class="n">long</span> <span class="n">long</span> <span class="n">long</span> <span class="mf">3.5</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> <span class="mf">4.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut/dipole/cut 10.0 +pair_coeff * * 1.0 1.0 +pair_coeff 2 3 1.0 1.0 2.5 4.0 +</pre> +<pre class="literal-block"> +pair_style lj/sf/dipole/sf 9.0 +pair_coeff * * 1.0 1.0 +pair_coeff 2 3 1.0 1.0 2.5 4.0 +</pre> +<pre class="literal-block"> +pair_style lj/cut/dipole/long 10.0 +pair_coeff * * 1.0 1.0 +pair_coeff 2 3 1.0 1.0 2.5 4.0 +</pre> +<pre class="literal-block"> +pair_style lj/long/dipole/long long long 3.5 10.0 +pair_coeff * * 1.0 1.0 +pair_coeff 2 3 1.0 1.0 2.5 4.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_dpd.html b/doc/html/pair_dpd.html index f605baaa87..1275469c41 100644 --- a/doc/html/pair_dpd.html +++ b/doc/html/pair_dpd.html @@ -143,10 +143,10 @@ <h1>pair_style dpd/tstat/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">dpd</span> <span class="n">T</span> <span class="n">cutoff</span> <span class="n">seed</span> -<span class="n">pair_style</span> <span class="n">dpd</span><span class="o">/</span><span class="n">tstat</span> <span class="n">Tstart</span> <span class="n">Tstop</span> <span class="n">cutoff</span> <span class="n">seed</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style dpd T cutoff seed +pair_style dpd/tstat Tstart Tstop cutoff seed +</pre> <ul class="simple"> <li>T = temperature (temperature units)</li> <li>Tstart,Tstop = desired temperature at start/end of run (temperature units)</li> @@ -156,16 +156,16 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">dpd</span> <span class="mf">1.0</span> <span class="mf">2.5</span> <span class="mi">34387</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">3.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">3.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">dpd</span><span class="o">/</span><span class="n">tstat</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> <span class="mi">34387</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style dpd 1.0 2.5 34387 +pair_coeff * * 3.0 1.0 +pair_coeff 1 1 3.0 1.0 1.0 +</pre> +<pre class="literal-block"> +pair_style dpd/tstat 1.0 1.0 2.5 34387 +pair_coeff * * 1.0 +pair_coeff 1 1 1.0 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_dpd_fdt.html b/doc/html/pair_dpd_fdt.html index cd8033694c..e6132b19d2 100644 --- a/doc/html/pair_dpd_fdt.html +++ b/doc/html/pair_dpd_fdt.html @@ -131,9 +131,9 @@ <h1>pair_style dpd/fdt/energy command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>dpd/fdt</em> or <em>dpd/fdt/energy</em></li> <li>args = list of arguments for a particular style</li> @@ -150,14 +150,14 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">dpd</span><span class="o">/</span><span class="n">fdt</span> <span class="mf">300.0</span> <span class="mf">2.5</span> <span class="mi">34387</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">3.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">dpd</span><span class="o">/</span><span class="n">fdt</span><span class="o">/</span><span class="n">energy</span> <span class="mf">2.5</span> <span class="mi">34387</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">3.0</span> <span class="mf">1.0</span> <span class="mf">0.1</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style dpd/fdt 300.0 2.5 34387 +pair_coeff * * 3.0 1.0 2.5 +</pre> +<pre class="literal-block"> +pair_style dpd/fdt/energy 2.5 34387 +pair_coeff * * 3.0 1.0 0.1 2.5 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_dsmc.html b/doc/html/pair_dsmc.html index 5f8ddd5600..4c971f1dd1 100644 --- a/doc/html/pair_dsmc.html +++ b/doc/html/pair_dsmc.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style dsmc command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">dsmc</span> <span class="n">max_cell_size</span> <span class="n">seed</span> <span class="n">weighting</span> <span class="n">Tref</span> <span class="n">Nrecompute</span> <span class="n">Nsample</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style dsmc max_cell_size seed weighting Tref Nrecompute Nsample +</pre> <ul class="simple"> <li>max_cell_size = global maximum cell size for DSMC interactions (distance units)</li> <li>seed = random # seed (positive integer)</li> @@ -142,11 +142,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">dsmc</span> <span class="mf">2.5</span> <span class="mi">34387</span> <span class="mi">10</span> <span class="mf">1.0</span> <span class="mi">100</span> <span class="mi">20</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style dsmc 2.5 34387 10 1.0 100 20 +pair_coeff * * 1.0 +pair_coeff 1 1 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -191,12 +191,12 @@ neighboring processors every timestep as they move. This makes it possible to perform all collisions between pairs of particles that are on the same processor. To ensure this occurs, you should use these commands:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">neighbor</span> <span class="mf">0.0</span> <span class="nb">bin</span> -<span class="n">neigh_modify</span> <span class="n">every</span> <span class="mi">1</span> <span class="n">delay</span> <span class="mi">0</span> <span class="n">check</span> <span class="n">no</span> -<span class="n">atom_modify</span> <span class="n">sort</span> <span class="mi">0</span> <span class="mf">0.0</span> -<span class="n">communicate</span> <span class="n">single</span> <span class="n">cutoff</span> <span class="mf">0.0</span> -</pre></div> -</div> +<pre class="literal-block"> +neighbor 0.0 bin +neigh_modify every 1 delay 0 check no +atom_modify sort 0 0.0 +communicate single cutoff 0.0 +</pre> <p>These commands ensure that LAMMPS communicates particles to neighboring processors every timestep and that no ghost atoms are created. The output statistics for a simulation run should indicate diff --git a/doc/html/pair_eam.html b/doc/html/pair_eam.html index 81abf57a5a..62a0305a0c 100644 --- a/doc/html/pair_eam.html +++ b/doc/html/pair_eam.html @@ -176,32 +176,32 @@ <h1>pair_style eam/fs/opt command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style +</pre> <ul class="simple"> <li>style = <em>eam</em> or <em>eam/alloy</em> or <em>eam/cd</em> or <em>eam/fs</em></li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">eam</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">cuu3</span> -<span class="n">pair_coeff</span> <span class="mi">1</span><span class="o">*</span><span class="mi">3</span> <span class="mi">1</span><span class="o">*</span><span class="mi">3</span> <span class="n">niu3</span><span class="o">.</span><span class="n">eam</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">eam</span><span class="o">/</span><span class="n">alloy</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">NiAlH_jea</span><span class="o">.</span><span class="n">eam</span><span class="o">.</span><span class="n">alloy</span> <span class="n">Ni</span> <span class="n">Al</span> <span class="n">Ni</span> <span class="n">Ni</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">eam</span><span class="o">/</span><span class="n">cd</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">FeCr</span><span class="o">.</span><span class="n">cdeam</span> <span class="n">Fe</span> <span class="n">Cr</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">eam</span><span class="o">/</span><span class="n">fs</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">NiAlH_jea</span><span class="o">.</span><span class="n">eam</span><span class="o">.</span><span class="n">fs</span> <span class="n">Ni</span> <span class="n">Al</span> <span class="n">Ni</span> <span class="n">Ni</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style eam +pair_coeff * * cuu3 +pair_coeff 1*3 1*3 niu3.eam +</pre> +<pre class="literal-block"> +pair_style eam/alloy +pair_coeff * * ../potentials/NiAlH_jea.eam.alloy Ni Al Ni Ni +</pre> +<pre class="literal-block"> +pair_style eam/cd +pair_coeff * * ../potentials/FeCr.cdeam Fe Cr +</pre> +<pre class="literal-block"> +pair_style eam/fs +pair_coeff * * NiAlH_jea.eam.fs Ni Al Ni Ni +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -270,9 +270,9 @@ single argument:</p> <li>filename</li> </ul> <p>Thus the following command</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span><span class="mi">2</span> <span class="mi">1</span><span class="o">*</span><span class="mi">2</span> <span class="n">cuu3</span><span class="o">.</span><span class="n">eam</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff *2 1*2 cuu3.eam +</pre> <p>will read the cuu3 potential file and use the tabulated Cu values for F, phi, rho that it contains for type pairs 1,1 and 2,2 (type pairs 1,2 and 2,1 are ignored). See the <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a> doc @@ -315,9 +315,9 @@ density). The units for the effective charge Z are “atomic charge” sqrt(Hartree * Bohr-radii). For two interacting atoms i,j this is used by LAMMPS to compute the pair potential term in the EAM energy expression as r*phi, in units of eV-Angstroms, via the formula</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">r</span><span class="o">*</span><span class="n">phi</span> <span class="o">=</span> <span class="mf">27.2</span> <span class="o">*</span> <span class="mf">0.529</span> <span class="o">*</span> <span class="n">Zi</span> <span class="o">*</span> <span class="n">Zj</span> -</pre></div> -</div> +<pre class="literal-block"> +r*phi = 27.2 * 0.529 * Zi * Zj +</pre> <p>where 1 Hartree = 27.2 eV and 1 Bohr = 0.529 Angstroms.</p> <hr class="docutils" /> <p>Style <em>eam/alloy</em> computes pairwise interactions using the same @@ -350,9 +350,9 @@ page for alternate ways to specify the path for the potential file. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Ni, and the 4th to be Al, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">NiAlH_jea</span><span class="o">.</span><span class="n">eam</span><span class="o">.</span><span class="n">alloy</span> <span class="n">Ni</span> <span class="n">Ni</span> <span class="n">Ni</span> <span class="n">Al</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * NiAlH_jea.eam.alloy Ni Ni Ni Al +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Ni arguments map LAMMPS atom types 1,2,3 to the Ni element in the <em>setfl</em> file. The final Al argument maps LAMMPS atom @@ -446,9 +446,9 @@ require that; the user can tabulate any functional form desired in the FS potential files.</p> <p>For style <em>eam/fs</em>, the form of the pair_coeff command is exactly the same as for style <em>eam/alloy</em>, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">NiAlH_jea</span><span class="o">.</span><span class="n">eam</span><span class="o">.</span><span class="n">fs</span> <span class="n">Ni</span> <span class="n">Ni</span> <span class="n">Ni</span> <span class="n">Al</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * NiAlH_jea.eam.fs Ni Ni Ni Al +</pre> <p>where there are N additional arguments after the filename, where N is the number of LAMMPS atom types. See the <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a> doc page for alternate ways to specify the path for the potential diff --git a/doc/html/pair_edip.html b/doc/html/pair_edip.html index 8c9d9ccdee..54a690dde1 100644 --- a/doc/html/pair_edip.html +++ b/doc/html/pair_edip.html @@ -128,12 +128,12 @@ <span id="index-0"></span><h1>pair_style edip command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">edip</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">edip</span><span class="o">/</span><span class="n">omp</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style edip +</pre> +<pre class="literal-block"> +pair_style edip/omp +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> diff --git a/doc/html/pair_eff.html b/doc/html/pair_eff.html index 6bcd28cef2..939cdbbf5c 100644 --- a/doc/html/pair_eff.html +++ b/doc/html/pair_eff.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style eff/cut command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">eff</span><span class="o">/</span><span class="n">cut</span> <span class="n">cutoff</span> <span class="n">keyword</span> <span class="n">args</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style eff/cut cutoff keyword args ... +</pre> <ul class="simple"> <li>cutoff = global cutoff for Coulombic interactions</li> <li>zero or more keyword/value pairs may be appended</li> @@ -146,16 +146,16 @@ keyword = <em>limit/eradius</em> or <em>pressure/evirials</em> or <em>ecp</em> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">eff</span><span class="o">/</span><span class="n">cut</span> <span class="mf">39.7</span> -<span class="n">pair_style</span> <span class="n">eff</span><span class="o">/</span><span class="n">cut</span> <span class="mf">40.0</span> <span class="n">limit</span><span class="o">/</span><span class="n">eradius</span> -<span class="n">pair_style</span> <span class="n">eff</span><span class="o">/</span><span class="n">cut</span> <span class="mf">40.0</span> <span class="n">limit</span><span class="o">/</span><span class="n">eradius</span> <span class="n">pressure</span><span class="o">/</span><span class="n">evirials</span> -<span class="n">pair_style</span> <span class="n">eff</span><span class="o">/</span><span class="n">cut</span> <span class="mf">40.0</span> <span class="n">ecp</span> <span class="mi">1</span> <span class="n">Si</span> <span class="mi">3</span> <span class="n">C</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mf">20.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="n">s</span> <span class="mf">0.320852</span> <span class="mf">2.283269</span> <span class="mf">0.814857</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="n">p</span> <span class="mf">22.721015</span> <span class="mf">0.728733</span> <span class="mf">1.103199</span> <span class="mf">17.695345</span> <span class="mf">6.693621</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style eff/cut 39.7 +pair_style eff/cut 40.0 limit/eradius +pair_style eff/cut 40.0 limit/eradius pressure/evirials +pair_style eff/cut 40.0 ecp 1 Si 3 C +pair_coeff * * +pair_coeff 2 2 20.0 +pair_coeff 1 s 0.320852 2.283269 0.814857 +pair_coeff 3 p 22.721015 0.728733 1.103199 17.695345 6.693621 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_eim.html b/doc/html/pair_eim.html index 62c5a4a918..831c9f00dc 100644 --- a/doc/html/pair_eim.html +++ b/doc/html/pair_eim.html @@ -131,21 +131,21 @@ <h1>pair_style eim/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style +</pre> <ul class="simple"> <li>style = <em>eim</em></li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">eim</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Na</span> <span class="n">Cl</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">ffield</span><span class="o">.</span><span class="n">eim</span> <span class="n">Na</span> <span class="n">Cl</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Na</span> <span class="n">Cl</span> <span class="n">ffield</span><span class="o">.</span><span class="n">eim</span> <span class="n">Na</span> <span class="n">Na</span> <span class="n">Na</span> <span class="n">Cl</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Na</span> <span class="n">Cl</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">ffield</span><span class="o">.</span><span class="n">eim</span> <span class="n">Cl</span> <span class="n">NULL</span> <span class="n">Na</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style eim +pair_coeff * * Na Cl ../potentials/ffield.eim Na Cl +pair_coeff * * Na Cl ffield.eim Na Na Na Cl +pair_coeff * * Na Cl ../potentials/ffield.eim Cl NULL Na +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -207,9 +207,9 @@ to specify the path for the potential file.</p> system with Na and Cl atoms. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Na, and the 4th to be Cl, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Na</span> <span class="n">Cl</span> <span class="n">ffield</span><span class="o">.</span><span class="n">eim</span> <span class="n">Na</span> <span class="n">Na</span> <span class="n">Na</span> <span class="n">Cl</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * Na Cl ffield.eim Na Na Na Cl +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The filename is the EIM potential file. The Na and Cl arguments (before the file name) are the two elements for which info will be diff --git a/doc/html/pair_exp6_rx.html b/doc/html/pair_exp6_rx.html index 6bd4ae6865..79f0a9b4ae 100644 --- a/doc/html/pair_exp6_rx.html +++ b/doc/html/pair_exp6_rx.html @@ -128,21 +128,21 @@ <span id="index-0"></span><h1>pair_style exp6/rx command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">exp6</span><span class="o">/</span><span class="n">rx</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style exp6/rx cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for DPD interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">exp6</span><span class="o">/</span><span class="n">rx</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">exp6</span><span class="o">.</span><span class="n">params</span> <span class="n">h2o</span> <span class="n">h2o</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">exp6</span><span class="o">.</span><span class="n">params</span> <span class="n">h2o</span> <span class="mi">1</span><span class="n">fluid</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">exp6</span><span class="o">.</span><span class="n">params</span> <span class="mi">1</span><span class="n">fluid</span> <span class="mi">1</span><span class="n">fluid</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">10.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style exp6/rx 10.0 +pair_coeff * * exp6.params h2o h2o 1.0 1.0 10.0 +pair_coeff * * exp6.params h2o 1fluid 1.0 1.0 10.0 +pair_coeff * * exp6.params 1fluid 1fluid 1.0 1.0 10.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_gauss.html b/doc/html/pair_gauss.html index 2f167476f8..d90d449b83 100644 --- a/doc/html/pair_gauss.html +++ b/doc/html/pair_gauss.html @@ -140,25 +140,25 @@ <h1>pair_style gauss/cut/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">gauss</span> <span class="n">cutoff</span> -<span class="n">pair_style</span> <span class="n">gauss</span><span class="o">/</span><span class="n">cut</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style gauss cutoff +pair_style gauss/cut cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for Gauss interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">gauss</span> <span class="mf">12.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">0.9</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">4</span> <span class="mf">1.0</span> <span class="mf">0.9</span> <span class="mf">10.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">gauss</span><span class="o">/</span><span class="n">cut</span> <span class="mf">3.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">4</span> <span class="mf">0.2805</span> <span class="mf">1.45</span> <span class="mf">0.112</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style gauss 12.0 +pair_coeff * * 1.0 0.9 +pair_coeff 1 4 1.0 0.9 10.0 +</pre> +<pre class="literal-block"> +pair_style gauss/cut 3.5 +pair_coeff 1 4 0.2805 1.45 0.112 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -239,11 +239,11 @@ sites have an atom within the distance at which the force is a maximum = sqrt(0.5/b). This quantity can be accessed via the <a class="reference internal" href="compute_pair.html"><span class="doc">compute pair</span></a> command as a vector of values of length 1.</p> <p>To print this quantity to the log file (with a descriptive column heading) the following commands could be included in an input script:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">gauss</span> <span class="nb">all</span> <span class="n">pair</span> <span class="n">gauss</span> -<span class="n">variable</span> <span class="n">occ</span> <span class="n">equal</span> <span class="n">c_gauss</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">epair</span> <span class="n">v_occ</span> -</pre></div> -</div> +<pre class="literal-block"> +compute gauss all pair gauss +variable occ equal c_gauss[1] +thermo_style custom step temp epair v_occ +</pre> </div> <hr class="docutils" /> <div class="section" id="restrictions"> diff --git a/doc/html/pair_gayberne.html b/doc/html/pair_gayberne.html index 0b02a49a51..68e46bd2d8 100644 --- a/doc/html/pair_gayberne.html +++ b/doc/html/pair_gayberne.html @@ -137,9 +137,9 @@ <h1>pair_style gayberne/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">gayberne</span> <span class="n">gamma</span> <span class="n">upsilon</span> <span class="n">mu</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style gayberne gamma upsilon mu cutoff +</pre> <ul class="simple"> <li>gamma = shift for potential minimum (typically 1)</li> <li>upsilon = exponent for eta orientation-dependent energy function</li> @@ -149,10 +149,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">gayberne</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.7</span> <span class="mf">1.7</span> <span class="mf">3.4</span> <span class="mf">3.4</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style gayberne 1.0 1.0 1.0 10.0 +pair_coeff * * 1.0 1.7 1.7 3.4 3.4 1.0 1.0 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_gran.html b/doc/html/pair_gran.html index a1fb53f824..37946c96aa 100644 --- a/doc/html/pair_gran.html +++ b/doc/html/pair_gran.html @@ -143,9 +143,9 @@ <h1>pair_style gran/hertz/history/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">Kn</span> <span class="n">Kt</span> <span class="n">gamma_n</span> <span class="n">gamma_t</span> <span class="n">xmu</span> <span class="n">dampflag</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style Kn Kt gamma_n gamma_t xmu dampflag +</pre> <ul class="simple"> <li>style = <em>gran/hooke</em> or <em>gran/hooke/history</em> or <em>gran/hertz/history</em></li> <li>Kn = elastic constant for normal particle repulsion (force/distance units or pressure units - see discussion below)</li> @@ -169,10 +169,10 @@ for details.</p> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">gran</span><span class="o">/</span><span class="n">hooke</span><span class="o">/</span><span class="n">history</span> <span class="mf">200000.0</span> <span class="n">NULL</span> <span class="mf">50.0</span> <span class="n">NULL</span> <span class="mf">0.5</span> <span class="mi">1</span> -<span class="n">pair_style</span> <span class="n">gran</span><span class="o">/</span><span class="n">hooke</span> <span class="mf">200000.0</span> <span class="mf">70000.0</span> <span class="mf">50.0</span> <span class="mf">30.0</span> <span class="mf">0.5</span> <span class="mi">0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style gran/hooke/history 200000.0 NULL 50.0 NULL 0.5 1 +pair_style gran/hooke 200000.0 70000.0 50.0 30.0 0.5 0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -287,9 +287,9 @@ each pair of atom types via the <a class="reference internal" href="pair_coeff.h All settings are global and are made via the pair_style command. However you must still use the <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a> for all pairs of granular atom types. For example the command</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * +</pre> <p>should be used if all atoms in the simulation interact via a granular potential (i.e. one of the pair styles above is used). If a granular potential is used as a sub-style of <a class="reference internal" href="pair_hybrid.html"><span class="doc">pair_style hybrid</span></a>, then specific atom types can be used in the diff --git a/doc/html/pair_gromacs.html b/doc/html/pair_gromacs.html index 7cc3aee2ce..a58a10912a 100644 --- a/doc/html/pair_gromacs.html +++ b/doc/html/pair_gromacs.html @@ -140,9 +140,9 @@ <h1>pair_style lj/gromacs/coul/gromacs/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>lj/gromacs</em> or <em>lj/gromacs/coul/gromacs</em></li> <li>args = list of arguments for a particular style</li> @@ -157,16 +157,16 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">gromacs</span> <span class="mf">9.0</span> <span class="mf">12.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.0</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mf">100.0</span> <span class="mf">2.0</span> <span class="mf">8.0</span> <span class="mf">10.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">gromacs</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">gromacs</span> <span class="mf">9.0</span> <span class="mf">12.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">gromacs</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">gromacs</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="mf">7.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/gromacs 9.0 12.0 +pair_coeff * * 100.0 2.0 +pair_coeff 2 2 100.0 2.0 8.0 10.0 +</pre> +<pre class="literal-block"> +pair_style lj/gromacs/coul/gromacs 9.0 12.0 +pair_style lj/gromacs/coul/gromacs 8.0 10.0 7.0 9.0 +pair_coeff * * 100.0 2.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_hbond_dreiding.html b/doc/html/pair_hbond_dreiding.html index 659f637dec..e639ba34e8 100644 --- a/doc/html/pair_hbond_dreiding.html +++ b/doc/html/pair_hbond_dreiding.html @@ -137,9 +137,9 @@ <h1>pair_style hbond/dreiding/morse/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">N</span> <span class="n">inner_distance_cutoff</span> <span class="n">outer_distance_cutoff</span> <span class="n">angle_cutof</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style N inner_distance_cutoff outer_distance_cutoff angle_cutof +</pre> <ul class="simple"> <li>style = <em>hbond/dreiding/lj</em> or <em>hbond/dreiding/morse</em></li> <li>n = cosine angle periodicity</li> @@ -151,14 +151,14 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> <span class="n">hbond</span><span class="o">/</span><span class="n">dreiding</span><span class="o">/</span><span class="n">lj</span> <span class="mi">4</span> <span class="mf">9.0</span> <span class="mf">11.0</span> <span class="mi">90</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">hbond</span><span class="o">/</span><span class="n">dreiding</span><span class="o">/</span><span class="n">lj</span> <span class="mi">3</span> <span class="n">i</span> <span class="mf">9.5</span> <span class="mf">2.75</span> <span class="mi">4</span> <span class="mf">9.0</span> <span class="mf">11.0</span> <span class="mf">90.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> <span class="n">hbond</span><span class="o">/</span><span class="n">dreiding</span><span class="o">/</span><span class="n">morse</span> <span class="mi">2</span> <span class="mf">9.0</span> <span class="mf">11.0</span> <span class="mi">90</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">hbond</span><span class="o">/</span><span class="n">dreiding</span><span class="o">/</span><span class="n">morse</span> <span class="mi">3</span> <span class="n">i</span> <span class="mf">3.88</span> <span class="mf">1.7241379</span> <span class="mf">2.9</span> <span class="mi">2</span> <span class="mi">9</span> <span class="mi">11</span> <span class="mi">90</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid/overlay lj/cut 10.0 hbond/dreiding/lj 4 9.0 11.0 90 +pair_coeff 1 2 hbond/dreiding/lj 3 i 9.5 2.75 4 9.0 11.0 90.0 +</pre> +<pre class="literal-block"> +pair_style hybrid/overlay lj/cut 10.0 hbond/dreiding/morse 2 9.0 11.0 90 +pair_coeff 1 2 hbond/dreiding/morse 3 i 3.88 1.7241379 2.9 2 9 11 90 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -265,7 +265,7 @@ follows:</p> <p>A single hydrogen atom type K can be specified, or a wild-card asterisk can be used in place of or in conjunction with the K arguments to select multiple types as hydrogens. This takes the form -“*” or “<em>n” or “n</em>” or “m*n”. See the <a class="reference external" href="pair_coeff">pair_coeff</a> command +“*” or “*n” or “n*” or “m*n”. See the <a class="reference external" href="pair_coeff">pair_coeff</a> command doc page for details.</p> <p>If the donor flag is <em>i</em>, then the atom of type I in the pair_coeff command is treated as the donor, and J is the acceptor. If the donor @@ -321,12 +321,12 @@ quantities can be accessed via the <a class="reference internal" href="compute_p command as a vector of values of length 2.</p> <p>To print these quantities to the log file (with a descriptive column heading) the following commands could be included in an input script:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">hb</span> <span class="nb">all</span> <span class="n">pair</span> <span class="n">hbond</span><span class="o">/</span><span class="n">dreiding</span><span class="o">/</span><span class="n">lj</span> -<span class="n">variable</span> <span class="n">n_hbond</span> <span class="n">equal</span> <span class="n">c_hb</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="c1">#number hbonds</span> -<span class="n">variable</span> <span class="n">E_hbond</span> <span class="n">equal</span> <span class="n">c_hb</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="c1">#hbond energy</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">epair</span> <span class="n">v_E_hbond</span> -</pre></div> -</div> +<pre class="literal-block"> +compute hb all pair hbond/dreiding/lj +variable n_hbond equal c_hb[1] #number hbonds +variable E_hbond equal c_hb[2] #hbond energy +thermo_style custom step temp epair v_E_hbond +</pre> </div> <hr class="docutils" /> <div class="section" id="restrictions"> diff --git a/doc/html/pair_hybrid.html b/doc/html/pair_hybrid.html index afe0cebcd6..60044d0faf 100644 --- a/doc/html/pair_hybrid.html +++ b/doc/html/pair_hybrid.html @@ -137,27 +137,27 @@ <h1>pair_style hybrid/overlay/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">style1</span> <span class="n">args</span> <span class="n">style2</span> <span class="n">args</span> <span class="o">...</span> -<span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">style1</span> <span class="n">args</span> <span class="n">style2</span> <span class="n">args</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid style1 args style2 args ... +pair_style hybrid/overlay style1 args style2 args ... +</pre> <ul class="simple"> <li>style1,style2 = list of one or more pair styles and their arguments</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> <span class="n">eam</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">5.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span><span class="o">*</span><span class="mi">2</span> <span class="mi">1</span><span class="o">*</span><span class="mi">2</span> <span class="n">eam</span> <span class="n">niu3</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">3</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span><span class="o">*</span><span class="mi">2</span> <span class="mi">3</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">0.5</span> <span class="mf">1.2</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">2.5</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">2.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid lj/cut/coul/cut 10.0 eam lj/cut 5.0 +pair_coeff 1*2 1*2 eam niu3 +pair_coeff 3 3 lj/cut/coul/cut 1.0 1.0 +pair_coeff 1*2 3 lj/cut 0.5 1.2 +</pre> +<pre class="literal-block"> +pair_style hybrid/overlay lj/cut 2.5 coul/long 2.0 +pair_coeff * * lj/cut 1.0 1.0 +pair_coeff * * coul/long +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -218,22 +218,22 @@ these coefficients apply to.</p> <p>For example, consider a simulation with 3 atom types: types 1 and 2 are Ni atoms, type 3 are LJ atoms with charges. The following commands would set up a hybrid simulation:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">eam</span><span class="o">/</span><span class="n">alloy</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">eam</span><span class="o">/</span><span class="n">alloy</span> <span class="n">nialhjea</span> <span class="n">Ni</span> <span class="n">Ni</span> <span class="n">NULL</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">3</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span><span class="o">*</span><span class="mi">2</span> <span class="mi">3</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">0.8</span> <span class="mf">1.3</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid eam/alloy lj/cut/coul/cut 10.0 lj/cut 8.0 +pair_coeff * * eam/alloy nialhjea Ni Ni NULL +pair_coeff 3 3 lj/cut/coul/cut 1.0 1.0 +pair_coeff 1*2 3 lj/cut 0.8 1.3 +</pre> <p>As an example of using the same pair style multiple times, consider a simulation with 2 atom types. Type 1 is Si, type 2 is C. The following commands would model the Si atoms with Tersoff, the C atoms with Tersoff, and the cross-interactions with Lennard-Jones:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">2.5</span> <span class="n">tersoff</span> <span class="n">tersoff</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">tersoff</span> <span class="mi">1</span> <span class="n">Si</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">Si</span> <span class="n">NULL</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">tersoff</span> <span class="mi">2</span> <span class="n">C</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">NULL</span> <span class="n">C</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.0</span> <span class="mf">1.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid lj/cut 2.5 tersoff tersoff +pair_coeff * * tersoff 1 Si.tersoff Si NULL +pair_coeff * * tersoff 2 C.tersoff NULL C +pair_coeff 1 2 lj/cut 1.0 1.5 +</pre> <p>If pair coefficients are specified in the data file read via the <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> command, then the same rule applies. E.g. “eam/alloy” or “lj/cut” must be added after the atom type, for @@ -266,16 +266,16 @@ sub-style that has already been defined for that pair of atoms, then the new pair coefficients simply override the previous ones, as in the normal usage of the pair_coeff command. E.g. these two sets of commands are the same:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mf">1.5</span> <span class="mf">0.8</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.5</span> <span class="mf">0.8</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut 2.5 +pair_coeff * * 1.0 1.0 +pair_coeff 2 2 1.5 0.8 +</pre> +<pre class="literal-block"> +pair_style hybrid/overlay lj/cut 2.5 +pair_coeff * * lj/cut 1.0 1.0 +pair_coeff 2 2 lj/cut 1.5 0.8 +</pre> <p>Coefficients must be defined for each pair of atoms types via the <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a> command as described above, or in the data file or restart files read by the <a class="reference internal" href="read_data.html"><span class="doc">read_data</span></a> or @@ -293,9 +293,9 @@ command. You can assign it to some sub-style and set the coefficients so that there is effectively no interaction (e.g. epsilon = 0.0 in a LJ potential). Or, for <em>hybrid</em> and <em>hybrid/overlay</em> simulations, you can use this form of the pair_coeff command in your input script:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">3</span> <span class="n">none</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff 2 3 none +</pre> <p>or this form in the “Pair Coeffs” section of the data file:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="mi">3</span> <span class="n">none</span> </pre></div> @@ -321,29 +321,29 @@ described by the different force fields do not mix.</p> <p>Here is an example for mixing CHARMM and AMBER: The global <em>amber</em> setting sets the 1-4 interactions to non-zero scaling factors and then overrides them with 0.0 only for CHARMM:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">special_bonds</span> <span class="n">amber</span> -<span class="n">pair_hybrid</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_modify</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">special</span> <span class="n">lj</span><span class="o">/</span><span class="n">coul</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> -</pre></div> -</div> +<pre class="literal-block"> +special_bonds amber +pair_hybrid lj/charmm/coul/long 8.0 10.0 lj/cut/coul/long 10.0 +pair_modify pair lj/charmm/coul/long special lj/coul 0.0 0.0 0.0 +</pre> <p>The this input achieves the same effect:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">special_bonds</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.1</span> -<span class="n">pair_hybrid</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_modify</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">special</span> <span class="n">lj</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.5</span> -<span class="n">pair_modify</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">special</span> <span class="n">coul</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.83333333</span> -<span class="n">pair_modify</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">special</span> <span class="n">lj</span><span class="o">/</span><span class="n">coul</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> -</pre></div> -</div> +<pre class="literal-block"> +special_bonds 0.0 0.0 0.1 +pair_hybrid lj/charmm/coul/long 8.0 10.0 lj/cut/coul/long 10.0 +pair_modify pair lj/cut/coul/long special lj 0.0 0.0 0.5 +pair_modify pair lj/cut/coul/long special coul 0.0 0.0 0.83333333 +pair_modify pair lj/charmm/coul/long special lj/coul 0.0 0.0 0.0 +</pre> <p>Here is an example for mixing Tersoff with OPLS/AA based on a data file that defines bonds for all atoms where for the Tersoff part of the system the force constants for the bonded interactions have been set to 0. Note the global settings are effectively <em>lj/coul 0.0 0.0 0.5</em> as required for OPLS/AA:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">special_bonds</span> <span class="n">lj</span><span class="o">/</span><span class="n">coul</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">20</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">20</span> <span class="mf">0.5</span> -<span class="n">pair_hybrid</span> <span class="n">tersoff</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">12.0</span> -<span class="n">pair_modify</span> <span class="n">pair</span> <span class="n">tersoff</span> <span class="n">special</span> <span class="n">lj</span><span class="o">/</span><span class="n">coul</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +special_bonds lj/coul 1e-20 1e-20 0.5 +pair_hybrid tersoff lj/cut/coul/long 12.0 +pair_modify pair tersoff special lj/coul 1.0 1.0 1.0 +</pre> <p>See the <a class="reference internal" href="pair_modify.html"><span class="doc">pair_modify</span></a> doc page for details on the specific syntax, requirements and restrictions.</p> <hr class="docutils" /> @@ -358,7 +358,7 @@ ReaxFF, etc. The way to think about using these potentials in a hybrid setting is as follows.</p> </div> <p>A subset of atom types is assigned to the many-body potential with a -single <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a> command, using “* <a href="#id1"><span class="problematic" id="id2">*</span></a>” to include +single <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a> command, using “* *” to include all types and the NULL keywords described above to exclude specific types not assigned to that potential. If types 1,3,4 were assigned in that way (but not type 2), this means that all many-body interactions @@ -388,16 +388,16 @@ atoms in one surface, and type 2 for atoms in the other, and you wish to use a Tersoff potential to compute interactions within each surface, but not between surfaces. Then either of these two command sequences would implement that model:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">tersoff</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">tersoff</span> <span class="n">SiC</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">C</span> <span class="n">C</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">none</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tersoff</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">C</span> <span class="n">C</span> -<span class="n">neigh_modify</span> <span class="n">exclude</span> <span class="nb">type</span> <span class="mi">1</span> <span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid tersoff +pair_coeff * * tersoff SiC.tersoff C C +pair_coeff 1 2 none +</pre> +<pre class="literal-block"> +pair_style tersoff +pair_coeff * * SiC.tersoff C C +neigh_modify exclude type 1 2 +</pre> <p>Either way, only neighbor lists with 1-1 or 2-2 interactions would be passed to the Tersoff potential, which means it would compute no 3-body interactions containing both type 1 and 2 atoms.</p> @@ -406,11 +406,11 @@ potentials together, in an overlapping manner. Imagine you have CNT (C atoms) on a Si surface. You want to use Tersoff for Si/Si and Si/C interactions, and AIREBO for C/C interactions. Si atoms are type 1; C atoms are type 2. Something like this will work:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">tersoff</span> <span class="n">airebo</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">tersoff</span> <span class="n">SiC</span><span class="o">.</span><span class="n">tersoff</span><span class="o">.</span><span class="n">custom</span> <span class="n">Si</span> <span class="n">C</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">airebo</span> <span class="n">CH</span><span class="o">.</span><span class="n">airebo</span> <span class="n">NULL</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid/overlay tersoff airebo 3.0 +pair_coeff * * tersoff SiC.tersoff.custom Si C +pair_coeff * * airebo CH.airebo NULL C +</pre> <p>Note that to prevent the Tersoff potential from computing C/C interactions, you would need to modify the SiC.tersoff file to turn off C/C interaction, i.e. by setting the appropriate coefficients to diff --git a/doc/html/pair_line_lj.html b/doc/html/pair_line_lj.html index f36f573822..c79f73301e 100644 --- a/doc/html/pair_line_lj.html +++ b/doc/html/pair_line_lj.html @@ -128,19 +128,19 @@ <span id="index-0"></span><h1>pair_style line/lj command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">line</span><span class="o">/</span><span class="n">lj</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style line/lj cutoff +</pre> <p>cutoff = global cutoff for interactions (distance units)</p> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">line</span><span class="o">/</span><span class="n">lj</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">0.8</span> <span class="mf">1.12</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mf">1.0</span> <span class="mf">2.0</span> <span class="mf">1.0</span> <span class="mf">1.5</span> <span class="mf">1.12</span> <span class="mf">5.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mf">1.0</span> <span class="mf">0.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style line/lj 3.0 +pair_coeff * * 1.0 1.0 1.0 0.8 1.12 +pair_coeff 1 2 1.0 2.0 1.0 1.5 1.12 5.0 +pair_coeff 1 2 1.0 0.0 1.0 1.0 2.5 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_list.html b/doc/html/pair_list.html index f7d59aba21..2897df868b 100644 --- a/doc/html/pair_list.html +++ b/doc/html/pair_list.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style list command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="nb">list</span> <span class="n">listfile</span> <span class="n">cutoff</span> <span class="n">keyword</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style list listfile cutoff keyword +</pre> <ul class="simple"> <li>listfile = name of file with list of pairwise interactions</li> <li>cutoff = global cutoff (distance units)</li> @@ -139,15 +139,15 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="nb">list</span> <span class="n">restraints</span><span class="o">.</span><span class="n">txt</span> <span class="mf">200.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.1225</span> <span class="nb">list</span> <span class="n">pair_list</span><span class="o">.</span><span class="n">txt</span> <span class="mf">300.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">3</span><span class="o">*</span> <span class="mi">3</span><span class="o">*</span> <span class="nb">list</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style list restraints.txt 200.0 +pair_coeff * * +</pre> +<pre class="literal-block"> +pair_style hybrid/overlay lj/cut 1.1225 list pair_list.txt 300.0 +pair_coeff * * lj/cut 1.0 1.0 +pair_coeff 3* 3* list +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj.html b/doc/html/pair_lj.html index fd46ab5d3b..73f9948c27 100644 --- a/doc/html/pair_lj.html +++ b/doc/html/pair_lj.html @@ -218,9 +218,9 @@ <h1>pair_style lj/cut/tip4p/long/opt command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>lj/cut</em> or <em>lj/cut/coul/cut</em> or <em>lj/cut/coul/debye</em> or <em>lj/cut/coul/dsf</em> or <em>lj/cut/coul/long</em> or <em>lj/cut/coul/long/cs</em> or <em>lj/cut/coul/msm</em> or <em>lj/cut/tip4p/long</em></li> <li>args = list of arguments for a particular style</li> @@ -261,56 +261,56 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">1</span> <span class="mi">1</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.1</span> <span class="mf">2.8</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> <span class="mf">9.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">debye</span> <span class="mf">1.5</span> <span class="mf">3.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">debye</span> <span class="mf">1.5</span> <span class="mf">2.5</span> <span class="mf">5.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.5</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.5</span> <span class="mf">2.5</span> <span class="mf">5.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">dsf</span> <span class="mf">0.05</span> <span class="mf">2.5</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">2.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">cs</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">msm</span> <span class="mf">10.0</span> <span class="mf">8.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">tip4p</span><span class="o">/</span><span class="n">cut</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">12.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">tip4p</span><span class="o">/</span><span class="n">cut</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">12.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">tip4p</span><span class="o">/</span><span class="n">long</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">12.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">tip4p</span><span class="o">/</span><span class="n">long</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">12.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut 2.5 +pair_coeff * * 1 1 +pair_coeff 1 1 1 1.1 2.8 +</pre> +<pre class="literal-block"> +pair_style lj/cut/coul/cut 10.0 +pair_style lj/cut/coul/cut 10.0 8.0 +pair_coeff * * 100.0 3.0 +pair_coeff 1 1 100.0 3.5 9.0 +pair_coeff 1 1 100.0 3.5 9.0 9.0 +</pre> +<pre class="literal-block"> +pair_style lj/cut/coul/debye 1.5 3.0 +pair_style lj/cut/coul/debye 1.5 2.5 5.0 +pair_coeff * * 1.0 1.0 +pair_coeff 1 1 1.0 1.5 2.5 +pair_coeff 1 1 1.0 1.5 2.5 5.0 +</pre> +<pre class="literal-block"> +pair_style lj/cut/coul/dsf 0.05 2.5 10.0 +pair_coeff * * 1.0 1.0 +pair_coeff 1 1 1.0 1.0 2.5 +</pre> +<pre class="literal-block"> +pair_style lj/cut/coul/long 10.0 +pair_style lj/cut/coul/long/cs 10.0 +pair_style lj/cut/coul/long 10.0 8.0 +pair_style lj/cut/coul/long/cs 10.0 8.0 +pair_coeff * * 100.0 3.0 +pair_coeff 1 1 100.0 3.5 9.0 +</pre> +<pre class="literal-block"> +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 class="literal-block"> +pair_style lj/cut/tip4p/cut 1 2 7 8 0.15 12.0 +pair_style lj/cut/tip4p/cut 1 2 7 8 0.15 12.0 10.0 +pair_coeff * * 100.0 3.0 +pair_coeff 1 1 100.0 3.5 9.0 +</pre> +<pre class="literal-block"> +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 +pair_coeff 1 1 100.0 3.5 9.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj96.html b/doc/html/pair_lj96.html index 25b68df4b4..3f7e8fdd9b 100644 --- a/doc/html/pair_lj96.html +++ b/doc/html/pair_lj96.html @@ -134,20 +134,20 @@ <h1>pair_style lj96/cut/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj96</span><span class="o">/</span><span class="n">cut</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj96/cut cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for lj96/cut interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj96</span><span class="o">/</span><span class="n">cut</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">4.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj96/cut 2.5 +pair_coeff * * 1.0 1.0 4.0 +pair_coeff 1 1 1.0 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj_cubic.html b/doc/html/pair_lj_cubic.html index 6032650397..6dad5de332 100644 --- a/doc/html/pair_lj_cubic.html +++ b/doc/html/pair_lj_cubic.html @@ -134,16 +134,16 @@ <h1>pair_style lj/cubic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cubic</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cubic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cubic</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">0.8908987</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cubic +pair_coeff * * 1.0 0.8908987 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj_expand.html b/doc/html/pair_lj_expand.html index fef3f21c46..69fc39c046 100644 --- a/doc/html/pair_lj_expand.html +++ b/doc/html/pair_lj_expand.html @@ -134,20 +134,20 @@ <h1>pair_style lj/expand/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">expand</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/expand cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for lj/expand interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">expand</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">0.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="o">-</span><span class="mf">0.2</span> <span class="mf">2.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/expand 2.5 +pair_coeff * * 1.0 1.0 0.5 +pair_coeff 1 1 1.0 1.0 -0.2 2.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj_long.html b/doc/html/pair_lj_long.html index fd2fa29241..2256d2d48e 100644 --- a/doc/html/pair_lj_long.html +++ b/doc/html/pair_lj_long.html @@ -137,9 +137,9 @@ <h1>pair_style lj/long/tip4p/long command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>lj/long/coul/long</em> or <em>lj/long/tip4p/long</em></li> <li>args = list of arguments for a particular style</li> @@ -171,19 +171,19 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">cut</span> <span class="n">off</span> <span class="mf">2.5</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">cut</span> <span class="n">long</span> <span class="mf">2.5</span> <span class="mf">4.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="n">long</span> <span class="n">long</span> <span class="mf">2.5</span> <span class="mf">4.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">1</span> <span class="mi">1</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">3</span> <span class="mi">4</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">tip4p</span><span class="o">/</span><span class="n">long</span> <span class="n">long</span> <span class="n">long</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">12.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">tip4p</span><span class="o">/</span><span class="n">long</span> <span class="n">long</span> <span class="n">long</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">12.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">9.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/long/coul/long cut off 2.5 +pair_style lj/long/coul/long cut long 2.5 4.0 +pair_style lj/long/coul/long long long 2.5 4.0 +pair_coeff * * 1 1 +pair_coeff 1 1 1 3 4 +</pre> +<pre class="literal-block"> +pair_style lj/long/tip4p/long long long 1 2 7 8 0.15 12.0 +pair_style lj/long/tip4p/long long long 1 2 7 8 0.15 12.0 10.0 +pair_coeff * * 100.0 3.0 +pair_coeff 1 1 100.0 3.5 9.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj_sf.html b/doc/html/pair_lj_sf.html index 8505d91cf5..b09ff7e036 100644 --- a/doc/html/pair_lj_sf.html +++ b/doc/html/pair_lj_sf.html @@ -131,20 +131,20 @@ <h1>pair_style lj/sf/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">sf</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/sf cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for Lennard-Jones interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">sf</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">3.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/sf 2.5 +pair_coeff * * 1.0 1.0 +pair_coeff 1 1 1.0 1.0 3.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj_smooth.html b/doc/html/pair_lj_smooth.html index 22565da2d7..0973d95ff9 100644 --- a/doc/html/pair_lj_smooth.html +++ b/doc/html/pair_lj_smooth.html @@ -131,9 +131,9 @@ <h1>pair_style lj/smooth/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">smooth</span> <span class="n">Rin</span> <span class="n">Rc</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/smooth Rin Rc +</pre> <ul class="simple"> <li>Rin = inner cutoff beyond which force smoothing will be applied (distance units)</li> <li>Rc = outer cutoff for lj/smooth interactions (distance units)</li> @@ -141,11 +141,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">smooth</span> <span class="mf">8.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">10.0</span> <span class="mf">1.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">20.0</span> <span class="mf">1.3</span> <span class="mf">7.0</span> <span class="mf">9.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/smooth 8.0 10.0 +pair_coeff * * 10.0 1.5 +pair_coeff 1 1 20.0 1.3 7.0 9.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj_smooth_linear.html b/doc/html/pair_lj_smooth_linear.html index f19e28551e..edd6d68386 100644 --- a/doc/html/pair_lj_smooth_linear.html +++ b/doc/html/pair_lj_smooth_linear.html @@ -131,20 +131,20 @@ <h1>pair_style lj/smooth/linear/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">smooth</span><span class="o">/</span><span class="n">linear</span> <span class="n">Rc</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/smooth/linear Rc +</pre> <ul class="simple"> <li>Rc = cutoff for lj/smooth/linear interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">smooth</span><span class="o">/</span><span class="n">linear</span> <span class="mf">5.456108274435118</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.7242785984051078</span> <span class="mf">2.598146797350056</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">20.0</span> <span class="mf">1.3</span> <span class="mf">9.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/smooth/linear 5.456108274435118 +pair_coeff * * 0.7242785984051078 2.598146797350056 +pair_coeff 1 1 20.0 1.3 9.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lj_soft.html b/doc/html/pair_lj_soft.html index e253536083..f67e200935 100644 --- a/doc/html/pair_lj_soft.html +++ b/doc/html/pair_lj_soft.html @@ -173,9 +173,9 @@ <h1>pair_style tip4p/long/soft/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>lj/cut/soft</em> or <em>lj/cut/coul/cut/soft</em> or <em>lj/cut/coul/long/soft</em> or <em>lj/cut/tip4p/long/soft</em> or <em>lj/charmm/coul/long/soft</em> or <em>coul/cut/soft</em> or <em>coul/long/soft</em> or <em>tip4p/long/soft</em></li> <li>args = list of arguments for a particular style</li> @@ -219,47 +219,47 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">soft</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">9.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">1.0</span> <span class="mf">9.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">soft</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">9.5</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">soft</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">9.5</span> <span class="mf">9.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">0.5</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">9.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">soft</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">9.5</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">soft</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">9.5</span> <span class="mf">9.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">0.0</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">0.0</span> <span class="mf">10.0</span> <span class="mf">9.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">tip4p</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">soft</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">9.8</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">tip4p</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">soft</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">9.8</span> <span class="mf">9.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.155</span> <span class="mf">3.1536</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.155</span> <span class="mf">3.1536</span> <span class="mf">1.0</span> <span class="mf">9.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">8.0</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="mf">9.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.28</span> <span class="mf">3.1</span> <span class="mf">1.0</span> <span class="mf">0.14</span> <span class="mf">3.1</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">coul</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">soft</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="mf">9.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">9.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tip4p</span><span class="o">/</span><span class="n">long</span><span class="o">/</span><span class="n">soft</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">7</span> <span class="mi">8</span> <span class="mf">0.15</span> <span class="mf">2.0</span> <span class="mf">0.5</span> <span class="mf">10.0</span> <span class="mf">9.8</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">9.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut/soft 2.0 0.5 9.5 +pair_coeff * * 0.28 3.1 1.0 +pair_coeff 1 1 0.28 3.1 1.0 9.5 +</pre> +<pre class="literal-block"> +pair_style lj/cut/coul/cut/soft 2.0 0.5 10.0 9.5 +pair_style lj/cut/coul/cut/soft 2.0 0.5 10.0 9.5 9.5 +pair_coeff * * 0.28 3.1 1.0 +pair_coeff 1 1 0.28 3.1 0.5 10.0 +pair_coeff 1 1 0.28 3.1 0.5 10.0 9.5 +</pre> +<pre class="literal-block"> +pair_style lj/cut/coul/long/soft 2.0 0.5 10.0 9.5 +pair_style lj/cut/coul/long/soft 2.0 0.5 10.0 9.5 9.5 +pair_coeff * * 0.28 3.1 1.0 +pair_coeff 1 1 0.28 3.1 0.0 10.0 +pair_coeff 1 1 0.28 3.1 0.0 10.0 9.5 +</pre> +<pre class="literal-block"> +pair_style lj/cut/tip4p/long/soft 1 2 7 8 0.15 2.0 0.5 10.0 9.8 +pair_style lj/cut/tip4p/long/soft 1 2 7 8 0.15 2.0 0.5 10.0 9.8 9.5 +pair_coeff * * 0.155 3.1536 1.0 +pair_coeff 1 1 0.155 3.1536 1.0 9.5 +</pre> +<pre class="literal-block"> +pair_style lj/charmm/coul/long 2.0 0.5 10.0 8.0 10.0 +pair_style lj/charmm/coul/long 2.0 0.5 10.0 8.0 10.0 9.0 +pair_coeff * * 0.28 3.1 1.0 +pair_coeff 1 1 0.28 3.1 1.0 0.14 3.1 +</pre> +<pre class="literal-block"> +pair_style coul/long/soft 1.0 10.0 9.5 +pair_coeff * * 1.0 +pair_coeff 1 1 1.0 9.5 +</pre> +<pre class="literal-block"> +pair_style tip4p/long/soft 1 2 7 8 0.15 2.0 0.5 10.0 9.8 +pair_coeff * * 1.0 +pair_coeff 1 1 1.0 9.5 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lubricate.html b/doc/html/pair_lubricate.html index 2cae3906c3..b415ee6c3a 100644 --- a/doc/html/pair_lubricate.html +++ b/doc/html/pair_lubricate.html @@ -137,9 +137,9 @@ <h1>pair_style lubricate/poly/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">mu</span> <span class="n">flaglog</span> <span class="n">flagfld</span> <span class="n">cutinner</span> <span class="n">cutoff</span> <span class="n">flagHI</span> <span class="n">flagVF</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style mu flaglog flagfld cutinner cutoff flagHI flagVF +</pre> <ul class="simple"> <li>style = <em>lubricate</em> or <em>lubricate/poly</em></li> <li>mu = dynamic viscosity (dynamic viscosity units)</li> @@ -151,17 +151,17 @@ <li>flagVF (optional) = 0/1 to exclude/include volume fraction corrections in the long-range isotropic terms</li> </ul> <p><strong>Examples:</strong> (all assume radius = 1)</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lubricate</span> <span class="mf">1.5</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">2.01</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">2.05</span> <span class="mf">2.8</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lubricate</span> <span class="mf">1.5</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">2.01</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -<span class="n">variable</span> <span class="n">mu</span> <span class="n">equal</span> <span class="n">ramp</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">adapt</span> <span class="mi">1</span> <span class="n">pair</span> <span class="n">lubricate</span> <span class="n">mu</span> <span class="o">*</span> <span class="o">*</span> <span class="n">v_mu</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lubricate 1.5 1 1 2.01 2.5 +pair_coeff 1 1 2.05 2.8 +pair_coeff * * +</pre> +<pre class="literal-block"> +pair_style lubricate 1.5 1 1 2.01 2.5 +pair_coeff * * +variable mu equal ramp(1,2) +fix 1 all adapt 1 pair lubricate mu * * v_mu +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_lubricateU.html b/doc/html/pair_lubricateU.html index 4d518c72e8..deca70058e 100644 --- a/doc/html/pair_lubricateU.html +++ b/doc/html/pair_lubricateU.html @@ -131,9 +131,9 @@ <h1>pair_style lubricateU/poly command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">mu</span> <span class="n">flaglog</span> <span class="n">cutinner</span> <span class="n">cutoff</span> <span class="n">gdot</span> <span class="n">flagHI</span> <span class="n">flagVF</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style mu flaglog cutinner cutoff gdot flagHI flagVF +</pre> <ul class="simple"> <li>style = <em>lubricateU</em> or <em>lubricateU/poly</em></li> <li>mu = dynamic viscosity (dynamic viscosity units)</li> @@ -145,11 +145,11 @@ <li>flagVF (optional) = 0/1 to exclude/include volume fraction corrections in the long-range isotropic terms</li> </ul> <p><strong>Examples:</strong> (all assume radius = 1)</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lubricateU</span> <span class="mf">1.5</span> <span class="mi">1</span> <span class="mf">2.01</span> <span class="mf">2.5</span> <span class="mf">0.01</span> <span class="mi">1</span> <span class="mi">1</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">2.05</span> <span class="mf">2.8</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lubricateU 1.5 1 2.01 2.5 0.01 1 1 +pair_coeff 1 1 2.05 2.8 +pair_coeff * * +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_mdf.html b/doc/html/pair_mdf.html index 9f78149009..477829e523 100644 --- a/doc/html/pair_mdf.html +++ b/doc/html/pair_mdf.html @@ -134,9 +134,9 @@ <h1>pair_style lennard/mdf command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>lj/mdf</em> or <em>buck/mdf</em> or <em>lennard/mdf</em></li> <li>args = list of arguments for a particular style</li> @@ -155,21 +155,21 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">mdf</span> <span class="mf">2.5</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">1</span> <span class="mi">1</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.1</span> <span class="mf">2.8</span> <span class="mf">3.0</span> <span class="mf">3.2</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">buck</span> <span class="mf">2.5</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">1.5</span> <span class="mf">200.0</span> <span class="mf">3.0</span> <span class="mf">3.5</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lennard</span><span class="o">/</span><span class="n">mdf</span> <span class="mf">2.5</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">1</span> <span class="mi">1</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.1</span> <span class="mf">2.8</span> <span class="mf">3.0</span> <span class="mf">3.2</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/mdf 2.5 3.0 +pair_coeff * * 1 1 +pair_coeff 1 1 1 1.1 2.8 3.0 3.2 +</pre> +<pre class="literal-block"> +pair_style buck 2.5 3.0 +pair_coeff * * 100.0 1.5 200.0 +pair_coeff * * 100.0 1.5 200.0 3.0 3.5 +</pre> +<pre class="literal-block"> +pair_style lennard/mdf 2.5 3.0 +pair_coeff * * 1 1 +pair_coeff 1 1 1 1.1 2.8 3.0 3.2 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -198,7 +198,7 @@ below:</p> <li>epsilon (energy units)</li> <li>sigma (distance units)</li> <li>r_m (distance units)</li> -<li><a href="#id1"><span class="problematic" id="id2">r_</span></a><em>cut</em> (distance units)</li> +<li>r_<em>cut</em> (distance units)</li> </ul> <hr class="docutils" /> <p>For the <em>buck/mdf</em> pair_style, the potential energy, <em>E(r)</em>, is the @@ -209,7 +209,7 @@ standard Buckingham potential:</p> <li>rho (distance units)</li> <li>C (energy-distance^6 units)</li> <li>r_m (distance units)</li> -<li><a href="#id3"><span class="problematic" id="id4">r_</span></a><em>cut</em>$ (distance units)</li> +<li>r_<em>cut</em>$ (distance units)</li> </ul> <hr class="docutils" /> <p>For the <em>lennard/mdf</em> pair_style, the potential energy, <em>E(r)</em>, is the @@ -223,7 +223,7 @@ commands, or by mixing as described below:</p> <li>A (energy-distance^12 units)</li> <li>B (energy-distance^6 units)</li> <li>r_m (distance units)</li> -<li><a href="#id5"><span class="problematic" id="id6">r_</span></a><em>cut</em> (distance units)</li> +<li>r_<em>cut</em> (distance units)</li> </ul> <hr class="docutils" /> <p><strong>Mixing, shift, table, tail correction, restart, rRESPA info</strong>:</p> diff --git a/doc/html/pair_meam.html b/doc/html/pair_meam.html index 4c704bc583..e9ec4ac13b 100644 --- a/doc/html/pair_meam.html +++ b/doc/html/pair_meam.html @@ -128,17 +128,17 @@ <span id="index-0"></span><h1>pair_style meam command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">meam</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style meam +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">meam</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">library</span><span class="o">.</span><span class="n">meam</span> <span class="n">Si</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">si</span><span class="o">.</span><span class="n">meam</span> <span class="n">Si</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="o">../</span><span class="n">potentials</span><span class="o">/</span><span class="n">library</span><span class="o">.</span><span class="n">meam</span> <span class="n">Ni</span> <span class="n">Al</span> <span class="n">NULL</span> <span class="n">Ni</span> <span class="n">Al</span> <span class="n">Ni</span> <span class="n">Ni</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style meam +pair_coeff * * ../potentials/library.meam Si ../potentials/si.meam Si +pair_coeff * * ../potentials/library.meam Ni Al NULL Ni Al Ni Ni +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -194,9 +194,9 @@ settings for a variety of elements. The potentials/sic.meam file has specific parameter settings for a Si and C alloy system. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Si, and the 4th to be C, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">library</span><span class="o">.</span><span class="n">meam</span> <span class="n">Si</span> <span class="n">C</span> <span class="n">sic</span><span class="o">.</span><span class="n">meam</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * library.meam Si C sic.meam Si Si Si C +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The two filenames are for the library and parameter file respectively. The Si and C arguments (between the file names) are the two elements @@ -390,14 +390,14 @@ parameter erose_form, can be used to modify the Rose energy function used to compute the pair potential. This function gives the energy of the reference state as a function of interatomic spacing. The form of this function is:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">astar</span> <span class="o">=</span> <span class="n">alpha</span> <span class="o">*</span> <span class="p">(</span><span class="n">r</span><span class="o">/</span><span class="n">re</span> <span class="o">-</span> <span class="mf">1.</span><span class="n">d0</span><span class="p">)</span> -<span class="k">if</span> <span class="n">erose_form</span> <span class="o">=</span> <span class="mi">0</span><span class="p">:</span> <span class="n">erose</span> <span class="o">=</span> <span class="o">-</span><span class="n">Ec</span><span class="o">*</span><span class="p">(</span><span class="mi">1</span><span class="o">+</span><span class="n">astar</span><span class="o">+</span><span class="n">a3</span><span class="o">*</span><span class="p">(</span><span class="n">astar</span><span class="o">**</span><span class="mi">3</span><span class="p">)</span><span class="o">/</span><span class="p">(</span><span class="n">r</span><span class="o">/</span><span class="n">re</span><span class="p">))</span><span class="o">*</span><span class="n">exp</span><span class="p">(</span><span class="o">-</span><span class="n">astar</span><span class="p">)</span> -<span class="k">if</span> <span class="n">erose_form</span> <span class="o">=</span> <span class="mi">1</span><span class="p">:</span> <span class="n">erose</span> <span class="o">=</span> <span class="o">-</span><span class="n">Ec</span><span class="o">*</span><span class="p">(</span><span class="mi">1</span><span class="o">+</span><span class="n">astar</span><span class="o">+</span><span class="p">(</span><span class="o">-</span><span class="n">attrac</span><span class="o">+</span><span class="n">repuls</span><span class="o">/</span><span class="n">r</span><span class="p">)</span><span class="o">*</span><span class="p">(</span><span class="n">astar</span><span class="o">**</span><span class="mi">3</span><span class="p">))</span><span class="o">*</span><span class="n">exp</span><span class="p">(</span><span class="o">-</span><span class="n">astar</span><span class="p">)</span> -<span class="k">if</span> <span class="n">erose_form</span> <span class="o">=</span> <span class="mi">2</span><span class="p">:</span> <span class="n">erose</span> <span class="o">=</span> <span class="o">-</span><span class="n">Ec</span><span class="o">*</span><span class="p">(</span><span class="mi">1</span> <span class="o">+</span><span class="n">astar</span> <span class="o">+</span> <span class="n">a3</span><span class="o">*</span><span class="p">(</span><span class="n">astar</span><span class="o">**</span><span class="mi">3</span><span class="p">))</span><span class="o">*</span><span class="n">exp</span><span class="p">(</span><span class="o">-</span><span class="n">astar</span><span class="p">)</span> -<span class="n">a3</span> <span class="o">=</span> <span class="n">repuls</span><span class="p">,</span> <span class="n">astar</span> <span class="o"><</span> <span class="mi">0</span> -<span class="n">a3</span> <span class="o">=</span> <span class="n">attrac</span><span class="p">,</span> <span class="n">astar</span> <span class="o">>=</span> <span class="mi">0</span> -</pre></div> -</div> +<pre class="literal-block"> +astar = alpha * (r/re - 1.d0) +if erose_form = 0: erose = -Ec*(1+astar+a3*(astar**3)/(r/re))*exp(-astar) +if erose_form = 1: erose = -Ec*(1+astar+(-attrac+repuls/r)*(astar**3))*exp(-astar) +if erose_form = 2: erose = -Ec*(1 +astar + a3*(astar**3))*exp(-astar) +a3 = repuls, astar < 0 +a3 = attrac, astar >= 0 +</pre> <p>Most published MEAM parameter sets use the default values attrac=repulse=0. Setting repuls=attrac=delta corresponds to the form used in several recent published MEAM parameter sets, such as <a class="reference internal" href="#valone"><span class="std std-ref">(Valone)</span></a></p> diff --git a/doc/html/pair_meam_spline.html b/doc/html/pair_meam_spline.html index 04957d08ca..d0f57e43cb 100644 --- a/doc/html/pair_meam_spline.html +++ b/doc/html/pair_meam_spline.html @@ -131,17 +131,17 @@ <h1>pair_style meam/spline/omp</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">meam</span><span class="o">/</span><span class="n">spline</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style meam/spline +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">meam</span><span class="o">/</span><span class="n">spline</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Ti</span><span class="o">.</span><span class="n">meam</span><span class="o">.</span><span class="n">spline</span> <span class="n">Ti</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Ti</span><span class="o">.</span><span class="n">meam</span><span class="o">.</span><span class="n">spline</span> <span class="n">Ti</span> <span class="n">Ti</span> <span class="n">Ti</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style meam/spline +pair_coeff * * Ti.meam.spline Ti +pair_coeff * * Ti.meam.spline Ti Ti Ti +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -180,9 +180,9 @@ to specify the path for the potential file.</p> your LAMMPS simulation has 3 atoms types and they are all to be treated with this potentials, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Ti</span><span class="o">.</span><span class="n">meam</span><span class="o">.</span><span class="n">spline</span> <span class="n">Ti</span> <span class="n">Ti</span> <span class="n">Ti</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * Ti.meam.spline Ti Ti Ti +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The three Ti arguments map LAMMPS atom types 1,2,3 to the Ti element in the potential file. If a mapping value is specified as NULL, the diff --git a/doc/html/pair_meam_sw_spline.html b/doc/html/pair_meam_sw_spline.html index 2608d4c901..f3b221fef6 100644 --- a/doc/html/pair_meam_sw_spline.html +++ b/doc/html/pair_meam_sw_spline.html @@ -131,17 +131,17 @@ <h1>pair_style meam/sw/spline/omp</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">meam</span><span class="o">/</span><span class="n">sw</span><span class="o">/</span><span class="n">spline</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style meam/sw/spline +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">meam</span><span class="o">/</span><span class="n">sw</span><span class="o">/</span><span class="n">spline</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Ti</span><span class="o">.</span><span class="n">meam</span><span class="o">.</span><span class="n">sw</span><span class="o">.</span><span class="n">spline</span> <span class="n">Ti</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Ti</span><span class="o">.</span><span class="n">meam</span><span class="o">.</span><span class="n">sw</span><span class="o">.</span><span class="n">spline</span> <span class="n">Ti</span> <span class="n">Ti</span> <span class="n">Ti</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style meam/sw/spline +pair_coeff * * Ti.meam.sw.spline Ti +pair_coeff * * Ti.meam.sw.spline Ti Ti Ti +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_mgpt.html b/doc/html/pair_mgpt.html index b014cdeb42..9ac4b2224d 100644 --- a/doc/html/pair_mgpt.html +++ b/doc/html/pair_mgpt.html @@ -128,20 +128,20 @@ <span id="index-0"></span><h1>pair_style mgpt command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">mgpt</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style mgpt +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">mgpt</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Ta6</span><span class="o">.</span><span class="mi">8</span><span class="n">x</span><span class="o">.</span><span class="n">mgpt</span><span class="o">.</span><span class="n">parmin</span> <span class="n">Ta6</span><span class="o">.</span><span class="mi">8</span><span class="n">x</span><span class="o">.</span><span class="n">mgpt</span><span class="o">.</span><span class="n">potin</span> <span class="n">Omega</span> -<span class="n">cp</span> <span class="o">~/</span><span class="n">lammps</span><span class="o">/</span><span class="n">potentials</span><span class="o">/</span><span class="n">Ta6</span><span class="o">.</span><span class="mi">8</span><span class="n">x</span><span class="o">.</span><span class="n">mgpt</span><span class="o">.</span><span class="n">parmin</span> <span class="n">parmin</span> -<span class="n">cp</span> <span class="o">~/</span><span class="n">lammps</span><span class="o">/</span><span class="n">potentials</span><span class="o">/</span><span class="n">Ta6</span><span class="o">.</span><span class="mi">8</span><span class="n">x</span><span class="o">.</span><span class="n">mgpt</span><span class="o">.</span><span class="n">potin</span> <span class="n">potin</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">parmin</span> <span class="n">potin</span> <span class="n">Omega</span> <span class="n">volpress</span> <span class="n">yes</span> <span class="n">nbody</span> <span class="mi">1234</span> <span class="n">precision</span> <span class="n">double</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">parmin</span> <span class="n">potin</span> <span class="n">Omega</span> <span class="n">volpress</span> <span class="n">yes</span> <span class="n">nbody</span> <span class="mi">12</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style mgpt +pair_coeff * * Ta6.8x.mgpt.parmin Ta6.8x.mgpt.potin Omega +cp ~/lammps/potentials/Ta6.8x.mgpt.parmin parmin +cp ~/lammps/potentials/Ta6.8x.mgpt.potin potin +pair_coeff * * parmin potin Omega volpress yes nbody 1234 precision double +pair_coeff * * parmin potin Omega volpress yes nbody 12 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_mie.html b/doc/html/pair_mie.html index cdab3eaf53..517b4bbec6 100644 --- a/doc/html/pair_mie.html +++ b/doc/html/pair_mie.html @@ -131,21 +131,21 @@ <h1>pair_style mie/cut/gpu command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">mie</span><span class="o">/</span><span class="n">cut</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style mie/cut cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for mie/cut interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">mie</span><span class="o">/</span><span class="n">cut</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.72</span> <span class="mf">3.40</span> <span class="mf">23.00</span> <span class="mf">6.66</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mf">0.30</span> <span class="mf">3.55</span> <span class="mf">12.65</span> <span class="mf">6.00</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mf">0.46</span> <span class="mf">3.32</span> <span class="mf">16.90</span> <span class="mf">6.31</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style mie/cut 10.0 +pair_coeff 1 1 0.72 3.40 23.00 6.66 +pair_coeff 2 2 0.30 3.55 12.65 6.00 +pair_coeff 1 2 0.46 3.32 16.90 6.31 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_modify.html b/doc/html/pair_modify.html index 3dbe93a18c..2dfeb618aa 100644 --- a/doc/html/pair_modify.html +++ b/doc/html/pair_modify.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_modify command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_modify</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_modify keyword values ... +</pre> <ul class="simple"> <li>one or more keyword/value pairs may be listed</li> <li>keyword = <em>pair</em> or <em>shift</em> or <em>mix</em> or <em>table</em> or <em>table/disp</em> or <em>tabinner</em> or <em>tabinner/disp</em> or <em>tail</em> or <em>compute</em></li> @@ -158,13 +158,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_modify</span> <span class="n">shift</span> <span class="n">yes</span> <span class="n">mix</span> <span class="n">geometric</span> -<span class="n">pair_modify</span> <span class="n">tail</span> <span class="n">yes</span> -<span class="n">pair_modify</span> <span class="n">table</span> <span class="mi">12</span> -<span class="n">pair_modify</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="n">compute</span> <span class="n">no</span> -<span class="n">pair_modify</span> <span class="n">pair</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mi">1</span> <span class="n">special</span> <span class="n">lj</span><span class="o">/</span><span class="n">coul</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_modify shift yes mix geometric +pair_modify tail yes +pair_modify table 12 +pair_modify pair lj/cut compute no +pair_modify pair lj/cut/coul/long 1 special lj/coul 0.0 0.0 0.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -201,21 +201,21 @@ individual pair styles for those restrictions. Note also that the coefficients for a specific I != J pairing, in which case no mixing is performed.</p> <p>mix <em>geometric</em></p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">epsilon_ij</span> <span class="o">=</span> <span class="n">sqrt</span><span class="p">(</span><span class="n">epsilon_i</span> <span class="o">*</span> <span class="n">epsilon_j</span><span class="p">)</span> -<span class="n">sigma_ij</span> <span class="o">=</span> <span class="n">sqrt</span><span class="p">(</span><span class="n">sigma_i</span> <span class="o">*</span> <span class="n">sigma_j</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +epsilon_ij = sqrt(epsilon_i * epsilon_j) +sigma_ij = sqrt(sigma_i * sigma_j) +</pre> <p>mix <em>arithmetic</em></p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">epsilon_ij</span> <span class="o">=</span> <span class="n">sqrt</span><span class="p">(</span><span class="n">epsilon_i</span> <span class="o">*</span> <span class="n">epsilon_j</span><span class="p">)</span> -<span class="n">sigma_ij</span> <span class="o">=</span> <span class="p">(</span><span class="n">sigma_i</span> <span class="o">+</span> <span class="n">sigma_j</span><span class="p">)</span> <span class="o">/</span> <span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +epsilon_ij = sqrt(epsilon_i * epsilon_j) +sigma_ij = (sigma_i + sigma_j) / 2 +</pre> <p>mix <em>sixthpower</em></p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">epsilon_ij</span> <span class="o">=</span> <span class="p">(</span><span class="mi">2</span> <span class="o">*</span> <span class="n">sqrt</span><span class="p">(</span><span class="n">epsilon_i</span><span class="o">*</span><span class="n">epsilon_j</span><span class="p">)</span> <span class="o">*</span> <span class="n">sigma_i</span><span class="o">^</span><span class="mi">3</span> <span class="o">*</span> <span class="n">sigma_j</span><span class="o">^</span><span class="mi">3</span><span class="p">)</span> <span class="o">/</span> - <span class="p">(</span><span class="n">sigma_i</span><span class="o">^</span><span class="mi">6</span> <span class="o">+</span> <span class="n">sigma_j</span><span class="o">^</span><span class="mi">6</span><span class="p">)</span> -<span class="n">sigma_ij</span> <span class="o">=</span> <span class="p">((</span><span class="n">sigma_i</span><span class="o">**</span><span class="mi">6</span> <span class="o">+</span> <span class="n">sigma_j</span><span class="o">**</span><span class="mi">6</span><span class="p">)</span> <span class="o">/</span> <span class="mi">2</span><span class="p">)</span> <span class="o">^</span> <span class="p">(</span><span class="mi">1</span><span class="o">/</span><span class="mi">6</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +epsilon_ij = (2 * sqrt(epsilon_i*epsilon_j) * sigma_i^3 * sigma_j^3) / + (sigma_i^6 + sigma_j^6) +sigma_ij = ((sigma_i**6 + sigma_j**6) / 2) ^ (1/6) +</pre> <p>The <em>shift</em> keyword determines whether a Lennard-Jones potential is shifted at its cutoff to 0.0. If so, this adds an energy term to each pairwise interaction which will be included in the thermodynamic diff --git a/doc/html/pair_morse.html b/doc/html/pair_morse.html index bac9a4aa44..bcf7271af0 100644 --- a/doc/html/pair_morse.html +++ b/doc/html/pair_morse.html @@ -146,9 +146,9 @@ <h1>pair_style morse/soft command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>morse</em> or <em>morse/smooth/linear</em> or <em>morse/soft</em></li> <li>args = list of arguments for a particular style</li> @@ -170,11 +170,11 @@ pair_style morse/smooth/linear 2.5 pair_coeff * * 100.0 2.0 1.5 pair_coeff 1 1 100.0 2.0 1.5 3.0</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">morse</span><span class="o">/</span><span class="n">soft</span> <span class="mi">4</span> <span class="mf">0.9</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> <span class="mf">2.0</span> <span class="mf">1.5</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">2.0</span> <span class="mf">1.5</span> <span class="mf">1.0</span> <span class="mf">3.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style morse/soft 4 0.9 10.0 +pair_coeff * * 100.0 2.0 1.5 1.0 +pair_coeff 1 1 100.0 2.0 1.5 1.0 3.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_multi_lucy.html b/doc/html/pair_multi_lucy.html index 6835ef752e..4a16b32697 100644 --- a/doc/html/pair_multi_lucy.html +++ b/doc/html/pair_multi_lucy.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style multi/lucy command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">lucy</span> <span class="n">style</span> <span class="n">N</span> <span class="n">keyword</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style multi/lucy style N keyword ... +</pre> <ul class="simple"> <li>style = <em>lookup</em> or <em>linear</em> = method of interpolation</li> <li>N = use N values in <em>lookup</em>, <em>linear</em> tables</li> @@ -138,10 +138,10 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">lucy</span> <span class="n">linear</span> <span class="mi">1000</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">multibody</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="mf">7.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style multi/lucy linear 1000 +pair_coeff * * multibody.table ENTRY1 7.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -196,15 +196,15 @@ defined as follows (without the parenthesized comments):</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Density-dependent function (one or more comment or blank lines)</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">DD</span><span class="o">-</span><span class="n">FUNCTION</span> <span class="p">(</span><span class="n">keyword</span> <span class="ow">is</span> <span class="n">first</span> <span class="n">text</span> <span class="n">on</span> <span class="n">line</span><span class="p">)</span> -<span class="n">N</span> <span class="mi">500</span> <span class="n">R</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="p">(</span><span class="n">N</span><span class="p">,</span> <span class="n">R</span><span class="p">,</span> <span class="n">RSQ</span> <span class="n">parameters</span><span class="p">)</span> - <span class="p">(</span><span class="n">blank</span><span class="p">)</span> -<span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">25.5</span> <span class="mf">102.34</span> <span class="p">(</span><span class="n">index</span><span class="p">,</span> <span class="n">density</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="n">r</span><span class="o">^</span><span class="mi">4</span><span class="p">,</span> <span class="n">force</span><span class="p">)</span> -<span class="mi">2</span> <span class="mf">1.02</span> <span class="mf">23.4</span> <span class="mf">98.5</span> -<span class="o">...</span> -<span class="mi">500</span> <span class="mf">10.0</span> <span class="mf">0.001</span> <span class="mf">0.003</span> -</pre></div> -</div> +<pre class="literal-block"> +DD-FUNCTION (keyword is first text on line) +N 500 R 1.0 10.0 (N, R, RSQ parameters) + (blank) +1 1.0 25.5 102.34 (index, density, energy/r^4, force) +2 1.02 23.4 98.5 +... +500 10.0 0.001 0.003 +</pre> <p>A section begins with a non-blank line whose 1st character is not a “#”; blank lines or lines starting with “#” can be used as comments between sections. The first line begins with a keyword which diff --git a/doc/html/pair_multi_lucy_rx.html b/doc/html/pair_multi_lucy_rx.html index 380cdc22fa..ca4b859cdd 100644 --- a/doc/html/pair_multi_lucy_rx.html +++ b/doc/html/pair_multi_lucy_rx.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style multi/lucy/rx command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">lucy</span><span class="o">/</span><span class="n">rx</span> <span class="n">style</span> <span class="n">N</span> <span class="n">keyword</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style multi/lucy/rx style N keyword ... +</pre> <ul class="simple"> <li>style = <em>lookup</em> or <em>linear</em> = method of interpolation</li> <li>N = use N values in <em>lookup</em>, <em>linear</em> tables</li> @@ -138,11 +138,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">multi</span><span class="o">/</span><span class="n">lucy</span><span class="o">/</span><span class="n">rx</span> <span class="n">linear</span> <span class="mi">1000</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">multibody</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="n">h2o</span> <span class="n">h2o</span> <span class="mf">7.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">multibody</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="n">h2o</span> <span class="mi">1</span><span class="n">fluid</span> <span class="mf">7.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style multi/lucy/rx linear 1000 +pair_coeff * * multibody.table ENTRY1 h2o h2o 7.0 +pair_coeff * * multibody.table ENTRY1 h2o 1fluid 7.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -215,15 +215,15 @@ defined as follows (without the parenthesized comments):</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Density-dependent function (one or more comment or blank lines)</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">DD</span><span class="o">-</span><span class="n">FUNCTION</span> <span class="p">(</span><span class="n">keyword</span> <span class="ow">is</span> <span class="n">first</span> <span class="n">text</span> <span class="n">on</span> <span class="n">line</span><span class="p">)</span> -<span class="n">N</span> <span class="mi">500</span> <span class="n">R</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="p">(</span><span class="n">N</span><span class="p">,</span> <span class="n">R</span><span class="p">,</span> <span class="n">RSQ</span> <span class="n">parameters</span><span class="p">)</span> - <span class="p">(</span><span class="n">blank</span><span class="p">)</span> -<span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">25.5</span> <span class="mf">102.34</span> <span class="p">(</span><span class="n">index</span><span class="p">,</span> <span class="n">density</span><span class="p">,</span> <span class="n">energy</span><span class="o">/</span><span class="n">r</span><span class="o">^</span><span class="mi">4</span><span class="p">,</span> <span class="n">force</span><span class="p">)</span> -<span class="mi">2</span> <span class="mf">1.02</span> <span class="mf">23.4</span> <span class="mf">98.5</span> -<span class="o">...</span> -<span class="mi">500</span> <span class="mf">10.0</span> <span class="mf">0.001</span> <span class="mf">0.003</span> -</pre></div> -</div> +<pre class="literal-block"> +DD-FUNCTION (keyword is first text on line) +N 500 R 1.0 10.0 (N, R, RSQ parameters) + (blank) +1 1.0 25.5 102.34 (index, density, energy/r^4, force) +2 1.02 23.4 98.5 +... +500 10.0 0.001 0.003 +</pre> <p>A section begins with a non-blank line whose 1st character is not a “#”; blank lines or lines starting with “#” can be used as comments between sections. The first line begins with a keyword which diff --git a/doc/html/pair_nb3b_harmonic.html b/doc/html/pair_nb3b_harmonic.html index 59fe5effb2..a24bb092e7 100644 --- a/doc/html/pair_nb3b_harmonic.html +++ b/doc/html/pair_nb3b_harmonic.html @@ -131,16 +131,16 @@ <h1>pair_style nb3b/harmonic/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">nb3b</span><span class="o">/</span><span class="n">harmonic</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style nb3b/harmonic +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">nb3b</span><span class="o">/</span><span class="n">harmonic</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">MgOH</span><span class="o">.</span><span class="n">nb3bharmonic</span> <span class="n">Mg</span> <span class="n">O</span> <span class="n">H</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style nb3b/harmonic +pair_coeff * * MgOH.nb3bharmonic Mg O H +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -166,9 +166,9 @@ to specify the path for the potential file.</p> for Si and C. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Si, and the 4th to be C, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">nb3b</span><span class="o">.</span><span class="n">harmonic</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * SiC.nb3b.harmonic Si Si Si C +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Si arguments map LAMMPS atom types 1,2,3 to the Si element in the potential file. The final C argument maps LAMMPS atom diff --git a/doc/html/pair_nm.html b/doc/html/pair_nm.html index 10052c9d20..c7759721cf 100644 --- a/doc/html/pair_nm.html +++ b/doc/html/pair_nm.html @@ -143,9 +143,9 @@ <h1>pair_style nm/cut/coul/long/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>nm/cut</em> or <em>nm/cut/coul/cut</em> or <em>nm/cut/coul/long</em></li> <li>args = list of arguments for a particular style</li> @@ -163,21 +163,21 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">nm</span><span class="o">/</span><span class="n">cut</span> <span class="mf">12.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.01</span> <span class="mf">5.4</span> <span class="mf">8.0</span> <span class="mf">7.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.01</span> <span class="mf">4.4</span> <span class="mf">7.0</span> <span class="mf">6.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">nm</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">cut</span> <span class="mf">12.0</span> <span class="mf">15.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.01</span> <span class="mf">5.4</span> <span class="mf">8.0</span> <span class="mf">7.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.01</span> <span class="mf">4.4</span> <span class="mf">7.0</span> <span class="mf">6.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">nm</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">12.0</span> <span class="mf">15.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.01</span> <span class="mf">5.4</span> <span class="mf">8.0</span> <span class="mf">7.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">0.01</span> <span class="mf">4.4</span> <span class="mf">7.0</span> <span class="mf">6.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style nm/cut 12.0 +pair_coeff * * 0.01 5.4 8.0 7.0 +pair_coeff 1 1 0.01 4.4 7.0 6.0 +</pre> +<pre class="literal-block"> +pair_style nm/cut/coul/cut 12.0 15.0 +pair_coeff * * 0.01 5.4 8.0 7.0 +pair_coeff 1 1 0.01 4.4 7.0 6.0 +</pre> +<pre class="literal-block"> +pair_style nm/cut/coul/long 12.0 15.0 +pair_coeff * * 0.01 5.4 8.0 7.0 +pair_coeff 1 1 0.01 4.4 7.0 6.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_peri.html b/doc/html/pair_peri.html index a57e98bbb1..c2fa31cce8 100644 --- a/doc/html/pair_peri.html +++ b/doc/html/pair_peri.html @@ -143,31 +143,31 @@ <h1>pair_style peri/eps command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style +</pre> <ul class="simple"> <li>style = <em>peri/pmb</em> or <em>peri/lps</em> or <em>peri/ves</em> or <em>peri/eps</em></li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">peri</span><span class="o">/</span><span class="n">pmb</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.6863e22</span> <span class="mf">0.0015001</span> <span class="mf">0.0005</span> <span class="mf">0.25</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">peri</span><span class="o">/</span><span class="n">lps</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">14.9e9</span> <span class="mf">14.9e9</span> <span class="mf">0.0015001</span> <span class="mf">0.0005</span> <span class="mf">0.25</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">peri</span><span class="o">/</span><span class="n">ves</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">14.9e9</span> <span class="mf">14.9e9</span> <span class="mf">0.0015001</span> <span class="mf">0.0005</span> <span class="mf">0.25</span> <span class="mf">0.5</span> <span class="mf">0.001</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">peri</span><span class="o">/</span><span class="n">eps</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">14.9e9</span> <span class="mf">14.9e9</span> <span class="mf">0.0015001</span> <span class="mf">0.0005</span> <span class="mf">0.25</span> <span class="mf">118.43</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style peri/pmb +pair_coeff * * 1.6863e22 0.0015001 0.0005 0.25 +</pre> +<pre class="literal-block"> +pair_style peri/lps +pair_coeff * * 14.9e9 14.9e9 0.0015001 0.0005 0.25 +</pre> +<pre class="literal-block"> +pair_style peri/ves +pair_coeff * * 14.9e9 14.9e9 0.0015001 0.0005 0.25 0.5 0.001 +</pre> +<pre class="literal-block"> +pair_style peri/eps +pair_coeff * * 14.9e9 14.9e9 0.0015001 0.0005 0.25 118.43 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_polymorphic.html b/doc/html/pair_polymorphic.html index 550805f4da..017a5148d0 100644 --- a/doc/html/pair_polymorphic.html +++ b/doc/html/pair_polymorphic.html @@ -128,20 +128,20 @@ <span id="index-0"></span><h1>pair_style polymorphic command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">polymorphic</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style polymorphic +</pre> <p>style = <em>polymorphic</em></p> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">polymorphic</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">TlBr_msw</span><span class="o">.</span><span class="n">polymorphic</span> <span class="n">Tl</span> <span class="n">Br</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">AlCu_eam</span><span class="o">.</span><span class="n">polymorphic</span> <span class="n">Al</span> <span class="n">Cu</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">GaN_tersoff</span><span class="o">.</span><span class="n">polymorphic</span> <span class="n">Ga</span> <span class="n">N</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">GaN_sw</span><span class="o">.</span><span class="n">polymorphic</span> <span class="n">GaN</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style polymorphic +pair_coeff * * TlBr_msw.polymorphic Tl Br +pair_coeff * * AlCu_eam.polymorphic Al Cu +pair_coeff * * GaN_tersoff.polymorphic Ga N +pair_coeff * * GaN_sw.polymorphic GaN +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -210,9 +210,9 @@ included in the potentials dir of the LAMMPS distro. They have a functions for Si-C tersoff potential. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Si, and the 4th to be C, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC_tersoff</span><span class="o">.</span><span class="n">polymorphic</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * SiC_tersoff.polymorphic Si Si Si C +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Si arguments map LAMMPS atom types 1,2,3 to the Si element in the polymorphic file. The final C argument maps LAMMPS @@ -235,19 +235,19 @@ eta_ij defined in the potential functions above is set to 1 - delta_ij, otherwise eta_ij is set to delta_ij. The next ntypes lines each lists two numbers and a character string representing atomic number, atomic mass, and name of the species of the ntypes elements:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atomic_number</span> <span class="n">atomic</span><span class="o">-</span><span class="n">mass</span> <span class="n">element</span> <span class="p">(</span><span class="mi">1</span><span class="p">)</span> -<span class="n">atomic_number</span> <span class="n">atomic</span><span class="o">-</span><span class="n">mass</span> <span class="n">element</span> <span class="p">(</span><span class="mi">2</span><span class="p">)</span> -<span class="o">...</span> -<span class="n">atomic_number</span> <span class="n">atomic</span><span class="o">-</span><span class="n">mass</span> <span class="n">element</span> <span class="p">(</span><span class="n">ntypes</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +atomic_number atomic-mass element (1) +atomic_number atomic-mass element (2) +... +atomic_number atomic-mass element (ntypes) +</pre> <p>The next ntypes*(ntypes+1)/2 lines contain two numbers:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">cut</span> <span class="n">xi</span> <span class="p">(</span><span class="mi">1</span><span class="p">)</span> -<span class="n">cut</span> <span class="n">xi</span> <span class="p">(</span><span class="mi">2</span><span class="p">)</span> -<span class="o">...</span> -<span class="n">cut</span> <span class="n">xi</span> <span class="p">(</span><span class="n">ntypes</span><span class="o">*</span><span class="p">(</span><span class="n">ntypes</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span><span class="o">/</span><span class="mi">2</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +cut xi (1) +cut xi (2) +... +cut xi (ntypes*(ntypes+1)/2) +</pre> <p>Here cut means the cutoff distance of the pair functions, xi is the same as defined in the potential functions above. The ntypes*(ntypes+1)/2 lines are related to the pairs according to the diff --git a/doc/html/pair_quip.html b/doc/html/pair_quip.html index e2bae6d90b..91f1131efb 100644 --- a/doc/html/pair_quip.html +++ b/doc/html/pair_quip.html @@ -128,17 +128,17 @@ <span id="index-0"></span><h1>pair_style quip command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">quip</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style quip +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">quip</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">gap_example</span><span class="o">.</span><span class="n">xml</span> <span class="s2">"Potential xml_label=GAP_2014_5_8_60_17_10_38_466"</span> <span class="mi">14</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">sw_example</span><span class="o">.</span><span class="n">xml</span> <span class="s2">"IP SW"</span> <span class="mi">14</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style quip +pair_coeff * * gap_example.xml "Potential xml_label=GAP_2014_5_8_60_17_10_38_466" 14 +pair_coeff * * sw_example.xml "IP SW" 14 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_reax.html b/doc/html/pair_reax.html index 3093a0b62b..3929a8cd0d 100644 --- a/doc/html/pair_reax.html +++ b/doc/html/pair_reax.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style reax command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">reax</span> <span class="n">hbcut</span> <span class="n">hbnewflag</span> <span class="n">tripflag</span> <span class="n">precision</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style reax hbcut hbnewflag tripflag precision +</pre> <ul class="simple"> <li>hbcut = hydrogen-bond cutoff (optional) (distance units)</li> <li>hbnewflag = use old or new hbond function style (0 or 1) (optional)</li> @@ -140,12 +140,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">reax</span> -<span class="n">pair_style</span> <span class="n">reax</span> <span class="mf">10.0</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mf">1.0e-5</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">ffield</span><span class="o">.</span><span class="n">reax</span> <span class="mi">3</span> <span class="mi">1</span> <span class="mi">2</span> <span class="mi">2</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">ffield</span><span class="o">.</span><span class="n">reax</span> <span class="mi">3</span> <span class="n">NULL</span> <span class="n">NULL</span> <span class="mi">3</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style reax +pair_style reax 10.0 0 1 1.0e-5 +pair_coeff * * ffield.reax 3 1 2 2 +pair_coeff * * ffield.reax 3 NULL NULL 3 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -238,14 +238,14 @@ names in italics match those used in the ReaxFF FORTRAN library):</p> </ol> <p>To print these quantities to the log file (with descriptive column headings) the following commands could be included in an input script:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">reax</span> <span class="nb">all</span> <span class="n">pair</span> <span class="n">reax</span> -<span class="n">variable</span> <span class="n">eb</span> <span class="n">equal</span> <span class="n">c_reax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">ea</span> <span class="n">equal</span> <span class="n">c_reax</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -<span class="o">...</span> -<span class="n">variable</span> <span class="n">eqeq</span> <span class="n">equal</span> <span class="n">c_reax</span><span class="p">[</span><span class="mi">14</span><span class="p">]</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">epair</span> <span class="n">v_eb</span> <span class="n">v_ea</span> <span class="o">...</span> <span class="n">v_eqeq</span> -</pre></div> -</div> +<pre class="literal-block"> +compute reax all pair reax +variable eb equal c_reax[1] +variable ea equal c_reax[2] +... +variable eqeq equal c_reax[14] +thermo_style custom step temp epair v_eb v_ea ... v_eqeq +</pre> <p>Only a single pair_coeff command is used with the <em>reax</em> style which specifies a ReaxFF potential file with parameters for all needed elements. These are mapped to LAMMPS atom types by specifying N @@ -286,9 +286,9 @@ enable this.</p> elements are ordered as C, H, O, N in the <em>ffield</em> file. If you want the LAMMPS atom type 1 and 2 to be C, type 3 to be N, and type 4 to be H, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">ffield</span><span class="o">.</span><span class="n">reax</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">4</span> <span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * ffield.reax 1 1 4 2 +</pre> <hr class="docutils" /> <p><strong>Mixing, shift, table, tail correction, restart, rRESPA info</strong>:</p> <p>This pair style does not support the <a class="reference internal" href="pair_modify.html"><span class="doc">pair_modify</span></a> diff --git a/doc/html/pair_reax_c.html b/doc/html/pair_reax_c.html index bd96471c6b..38e27022b9 100644 --- a/doc/html/pair_reax_c.html +++ b/doc/html/pair_reax_c.html @@ -131,9 +131,9 @@ <h1>pair_style reax/c/kk command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">reax</span><span class="o">/</span><span class="n">c</span> <span class="n">cfile</span> <span class="n">keyword</span> <span class="n">value</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style reax/c cfile keyword value +</pre> <ul class="simple"> <li>cfile = NULL or name of a control file</li> <li>zero or more keyword/value pairs may be appended</li> @@ -148,13 +148,13 @@ keyword = <em>checkqeq</em> or <em>lgvdw</em> or <em>safezone</em> or <em>mincap </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">reax</span><span class="o">/</span><span class="n">c</span> <span class="n">NULL</span> -<span class="n">pair_style</span> <span class="n">reax</span><span class="o">/</span><span class="n">c</span> <span class="n">controlfile</span> <span class="n">checkqeq</span> <span class="n">no</span> -<span class="n">pair_style</span> <span class="n">reax</span><span class="o">/</span><span class="n">c</span> <span class="n">NULL</span> <span class="n">lgvdw</span> <span class="n">yes</span> -<span class="n">pair_style</span> <span class="n">reax</span><span class="o">/</span><span class="n">c</span> <span class="n">NULL</span> <span class="n">safezone</span> <span class="mf">1.6</span> <span class="n">mincap</span> <span class="mi">100</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">ffield</span><span class="o">.</span><span class="n">reax</span> <span class="n">C</span> <span class="n">H</span> <span class="n">O</span> <span class="n">N</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style reax/c NULL +pair_style reax/c controlfile checkqeq no +pair_style reax/c NULL lgvdw yes +pair_style reax/c NULL safezone 1.6 mincap 100 +pair_coeff * * ffield.reax C H O N +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -276,14 +276,14 @@ names in italics match those used in the original FORTRAN ReaxFF code):</p> </ol> <p>To print these quantities to the log file (with descriptive column headings) the following commands could be included in an input script:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">reax</span> <span class="nb">all</span> <span class="n">pair</span> <span class="n">reax</span><span class="o">/</span><span class="n">c</span> -<span class="n">variable</span> <span class="n">eb</span> <span class="n">equal</span> <span class="n">c_reax</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> -<span class="n">variable</span> <span class="n">ea</span> <span class="n">equal</span> <span class="n">c_reax</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -<span class="o">...</span> -<span class="n">variable</span> <span class="n">eqeq</span> <span class="n">equal</span> <span class="n">c_reax</span><span class="p">[</span><span class="mi">14</span><span class="p">]</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">epair</span> <span class="n">v_eb</span> <span class="n">v_ea</span> <span class="o">...</span> <span class="n">v_eqeq</span> -</pre></div> -</div> +<pre class="literal-block"> +compute reax all pair reax/c +variable eb equal c_reax[1] +variable ea equal c_reax[2] +... +variable eqeq equal c_reax[14] +thermo_style custom step temp epair v_eb v_ea ... v_eqeq +</pre> <p>Only a single pair_coeff command is used with the <em>reax/c</em> style which specifies a ReaxFF potential file with parameters for all needed elements. These are mapped to LAMMPS atom types by specifying N @@ -310,14 +310,14 @@ types that will be used with other potentials.</p> elements are ordered as C, H, O, N in the <em>ffield</em> file. If you want the LAMMPS atom type 1 and 2 to be C, type 3 to be N, and type 4 to be H, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">ffield</span><span class="o">.</span><span class="n">reax</span> <span class="n">C</span> <span class="n">C</span> <span class="n">N</span> <span class="n">H</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * ffield.reax C C N H +</pre> <hr class="docutils" /> <p>The format of a line in the control file is as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable_name</span> <span class="n">value</span> -</pre></div> -</div> +<pre class="literal-block"> +variable_name value +</pre> <p>and it may be followed by an ”!” character and a trailing comment.</p> <p>If the value of a control variable is not specified, then default values are used. What follows is the list of variables along with a diff --git a/doc/html/pair_resquared.html b/doc/html/pair_resquared.html index edf33d6bdb..70c4fd0ba0 100644 --- a/doc/html/pair_resquared.html +++ b/doc/html/pair_resquared.html @@ -134,19 +134,19 @@ <h1>pair_style resquared/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">resquared</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style resquared cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">resquared</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.7</span> <span class="mf">3.4</span> <span class="mf">3.4</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style resquared 10.0 +pair_coeff * * 1.0 1.0 1.7 3.4 3.4 1.0 1.0 1.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_sdk.html b/doc/html/pair_sdk.html index a8cfc33d42..21a9ded1a5 100644 --- a/doc/html/pair_sdk.html +++ b/doc/html/pair_sdk.html @@ -146,9 +146,9 @@ <h1>pair_style lj/sdk/coul/long/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>lj/sdk</em> or <em>lj/sdk/coul/long</em></li> <li>args = list of arguments for a particular style</li> @@ -163,15 +163,15 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">sdk</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">lj12_6</span> <span class="mi">1</span> <span class="mf">1.1</span> <span class="mf">2.8</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">sdk</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">sdk</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> <span class="mf">12.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">lj9_6</span> <span class="mf">100.0</span> <span class="mf">3.5</span> <span class="mf">12.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/sdk 2.5 +pair_coeff 1 1 lj12_6 1 1.1 2.8 +</pre> +<pre class="literal-block"> +pair_style lj/sdk/coul/long 10.0 +pair_style lj/sdk/coul/long 10.0 12.0 +pair_coeff 1 1 lj9_6 100.0 3.5 12.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_smd_hertz.html b/doc/html/pair_smd_hertz.html index 52dd7939f6..25cbc618da 100644 --- a/doc/html/pair_smd_hertz.html +++ b/doc/html/pair_smd_hertz.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style smd/hertz command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">smd</span><span class="o">/</span><span class="n">hertz</span> <span class="n">scale_factor</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style smd/hertz scale_factor +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> @@ -146,7 +146,7 @@ The effect is that a particles cannot penetrate into each other. The parameter <contact_stiffness> has units of pressure and should equal roughly one half of the Young’s modulus (or bulk modulus in the case of fluids) of the material model associated with the SPH particles.</p> <p>The parameter <em>scale_factor</em> can be used to scale the particles’ contact radii. This can be useful to control how close -particles can approach each other. Usually, <em>scale_factor</em>=1.0.</p> +particles can approach each other. Usually, <a href="#id1"><span class="problematic" id="id2">*</span></a>scale_factor*=1.0.</p> <hr class="docutils" /> <p><strong>Mixing, shift, table, tail correction, restart, rRESPA info</strong>:</p> <p>No mixing is performed automatically. diff --git a/doc/html/pair_smd_triangulated_surface.html b/doc/html/pair_smd_triangulated_surface.html index 9f4ba0991d..428893dfc3 100644 --- a/doc/html/pair_smd_triangulated_surface.html +++ b/doc/html/pair_smd_triangulated_surface.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style smd/tri_surface command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">smd</span><span class="o">/</span><span class="n">tri_surface</span> <span class="n">scale_factor</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style smd/tri_surface scale_factor +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> @@ -147,7 +147,7 @@ The effect is that a particle cannot penetrate into the triangular surface. The parameter <contact_stiffness> has units of pressure and should equal roughly one half of the Young’s modulus (or bulk modulus in the case of fluids) of the material model associated with the SPH particle</p> <p>The parameter <em>scale_factor</em> can be used to scale the particles’ contact radii. This can be useful to control how close -particles can approach the triangulated surface. Usually, <em>scale_factor</em>=1.0.</p> +particles can approach the triangulated surface. Usually, <a href="#id1"><span class="problematic" id="id2">*</span></a>scale_factor*=1.0.</p> <hr class="docutils" /> <p><strong>Mixing, shift, table, tail correction, restart, rRESPA info</strong>:</p> <p>No mixing is performed automatically. diff --git a/doc/html/pair_smtbq.html b/doc/html/pair_smtbq.html index 568539fd0c..f9b3de8f22 100644 --- a/doc/html/pair_smtbq.html +++ b/doc/html/pair_smtbq.html @@ -128,16 +128,16 @@ <span id="index-0"></span><h1>pair_style smtbq command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">smtbq</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style smtbq +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">smtbq</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">ffield</span><span class="o">.</span><span class="n">smtbq</span><span class="o">.</span><span class="n">Al2O3</span> <span class="n">O</span> <span class="n">Al</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style smtbq +pair_coeff * * ffield.smtbq.Al2O3 O Al +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -164,9 +164,9 @@ filename in the pair_coeff command. Note that atom type 1 must always correspond to oxygen atoms. As an example, to simulate a TiO2 system, atom type 1 has to be oxygen and atom type 2 Ti. The following pair_coeff command should then be used:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">PathToLammps</span><span class="o">/</span><span class="n">potentials</span><span class="o">/</span><span class="n">ffield</span><span class="o">.</span><span class="n">smtbq</span><span class="o">.</span><span class="n">TiO2</span> <span class="n">O</span> <span class="n">Ti</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * PathToLammps/potentials/ffield.smtbq.TiO2 O Ti +</pre> <p>The electrostatic part of the energy consists of two components</p> <p>self-energy of atom <em>i</em> in the form of a second order charge dependent polynomial and a long-range Coulombic electrostatic interaction. The @@ -271,7 +271,7 @@ quotation marks (‘’).</p> </ol> <ul class="simple"> <li>Keyword for element1, element2 and interaction potential (‘second_moment’ or ‘buck’ or ‘buckPlusAttr’) between element 1 and 2. If the potential is ‘second_moment’, specify ‘oxide’ or ‘metal’ for metal-oxygen or metal-metal interactions respectively.</li> -<li>Potential parameter: <pre><br/> If type of potential is ‘second_moment’ : <em>A (eV)</em>, <em>p</em>, <em>&#958<sup>0</sup></em> (eV) and <em>q</em> <br/> <em>r<sub>c1</sub></em> (&#197), <em>r<sub>c2</sub></em> (&#197) and <em>r<sub>0</sub></em> (&#197) <br/> If type of potential is ‘buck’ : <em>C</em> (eV) and <em>&#961</em> (&#197) <br/> If type of potential is ‘buckPlusAttr’ : <em>C</em> (eV) and <em>&#961</em> (&#197) <br/> <em>D</em> (eV), <em>B</em> (&#197<sup>-1</sup>), <em>r<sub>1</sub><sup>OO</sup></em> (&#197) and <em>r<sub>2</sub><sup>OO</sup></em> (&#197) </pre></li> +<li>Potential parameter: <pre><br/> If type of potential is ‘second_moment’ : <em>A (eV)</em>, <em>p</em>, <em>&#958<sup>0</sup></em> (eV) and <em>q</em> <br/> <em>r<sub>c1</sub></em> (&#197), <em>r<sub>c2</sub></em> (&#197) and <em>r<sub>0</sub></em> (&#197) <br/> If type of potential is ‘buck’ : <em>C</em> (eV) and <em>&#961</em> (&#197) <br/> If type of potential is ‘buckPlusAttr’ : <em>C</em> (eV) and <em>&#961</em> (&#197) <br/> <em>D</em> (eV), <em>B</em> (&#197<sup>-1</sup>), <em>r<sub>1</sub><sup>OO</sup></em> (&#197) and <em>r<sub>2</sub><sup>OO</sup></em> (&#197) </pre></li> <li>Divided line</li> </ul> <ol class="arabic simple" start="4"> diff --git a/doc/html/pair_snap.html b/doc/html/pair_snap.html index bc82ce506e..0589cb40a5 100644 --- a/doc/html/pair_snap.html +++ b/doc/html/pair_snap.html @@ -128,16 +128,16 @@ <span id="index-0"></span><h1>pair_style snap command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">snap</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style snap +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">snap</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">snap</span> <span class="n">InP</span><span class="o">.</span><span class="n">snapcoeff</span> <span class="n">In</span> <span class="n">P</span> <span class="n">InP</span><span class="o">.</span><span class="n">snapparam</span> <span class="n">In</span> <span class="n">In</span> <span class="n">P</span> <span class="n">P</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style snap +pair_coeff * * snap InP.snapcoeff In P InP.snapparam In In P P +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -180,9 +180,9 @@ command, where N is the number of LAMMPS atom types:</p> <p>As an example, if a LAMMPS indium phosphide simulation has 4 atoms types, with the first two being indium and the 3rd and 4th being phophorous, the pair_coeff command would look like this:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">snap</span> <span class="n">InP</span><span class="o">.</span><span class="n">snapcoeff</span> <span class="n">In</span> <span class="n">P</span> <span class="n">InP</span><span class="o">.</span><span class="n">snapparam</span> <span class="n">In</span> <span class="n">In</span> <span class="n">P</span> <span class="n">P</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * snap InP.snapcoeff In P InP.snapparam In In P P +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The two filenames are for the element and parameter files, respectively. The ‘In’ and ‘P’ arguments (between the file names) are the two elements @@ -210,7 +210,8 @@ using the <em>hybrid/overlay</em> pair style. As an example, the SNAP tantalum potential provided in the LAMMPS potentials directory combines the <em>snap</em> and <em>zbl</em> pair styles. It is invoked by the following commands:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable zblcutinner equal 4 +<pre class="literal-block"> +variable zblcutinner equal 4 variable zblcutouter equal 4.8 variable zblz equal 73 pair_style hybrid/overlay & @@ -219,8 +220,7 @@ pair_coeff * * zbl 0.0 pair_coeff 1 1 zbl ${zblz} pair_coeff * * snap ../potentials/Ta06A.snapcoeff Ta & ../potentials/Ta06A.snapparam Ta -</pre></div> -</div> +</pre> <p>It is convenient to keep these commands in a separate file that can be inserted in any LAMMPS input script using the <a class="reference internal" href="include.html"><span class="doc">include</span></a> command.</p> diff --git a/doc/html/pair_soft.html b/doc/html/pair_soft.html index 0929a1f6af..3443927106 100644 --- a/doc/html/pair_soft.html +++ b/doc/html/pair_soft.html @@ -134,26 +134,26 @@ <h1>pair_style soft/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">soft</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style soft cutoff +</pre> <ul class="simple"> <li>cutoff = global cutoff for soft interactions (distance units)</li> </ul> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">soft</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">10.0</span> <span class="mf">3.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">soft</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">0.0</span> -<span class="n">variable</span> <span class="n">prefactor</span> <span class="n">equal</span> <span class="n">ramp</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">30</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">adapt</span> <span class="mi">1</span> <span class="n">pair</span> <span class="n">soft</span> <span class="n">a</span> <span class="o">*</span> <span class="o">*</span> <span class="n">v_prefactor</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style soft 1.0 +pair_coeff * * 10.0 +pair_coeff 1 1 10.0 3.0 +</pre> +<pre class="literal-block"> +pair_style soft 1.0 +pair_coeff * * 0.0 +variable prefactor equal ramp(0,30) +fix 1 all adapt 1 pair soft a * * v_prefactor +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -193,10 +193,10 @@ pair_coeff settings for A must still be specified, but will be overridden. For example these commands will vary the prefactor A for all pairwise interactions from 0.0 at the beginning to 30.0 at the end of a run:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">prefactor</span> <span class="n">equal</span> <span class="n">ramp</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">30</span><span class="p">)</span> -<span class="n">fix</span> <span class="mi">1</span> <span class="nb">all</span> <span class="n">adapt</span> <span class="mi">1</span> <span class="n">pair</span> <span class="n">soft</span> <span class="n">a</span> <span class="o">*</span> <span class="o">*</span> <span class="n">v_prefactor</span> -</pre></div> -</div> +<pre class="literal-block"> +variable prefactor equal ramp(0,30) +fix 1 all adapt 1 pair soft a * * v_prefactor +</pre> <p>Note that a formula defined by an <a class="reference internal" href="variable.html"><span class="doc">equal-style variable</span></a> can use the current timestep, elapsed time in the current run, elapsed time since the beginning of a series of runs, as well as access other diff --git a/doc/html/pair_sph_idealgas.html b/doc/html/pair_sph_idealgas.html index 130c193d90..602e66a277 100644 --- a/doc/html/pair_sph_idealgas.html +++ b/doc/html/pair_sph_idealgas.html @@ -128,16 +128,16 @@ <span id="index-0"></span><h1>pair_style sph/idealgas command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">sph</span><span class="o">/</span><span class="n">idealgas</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style sph/idealgas +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">sph</span><span class="o">/</span><span class="n">idealgas</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">2.4</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style sph/idealgas +pair_coeff * * 1.0 2.4 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_sph_taitwater.html b/doc/html/pair_sph_taitwater.html index 0d56ce2bdd..0ce7b08918 100644 --- a/doc/html/pair_sph_taitwater.html +++ b/doc/html/pair_sph_taitwater.html @@ -128,16 +128,16 @@ <span id="index-0"></span><h1>pair_style sph/taitwater command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">sph</span><span class="o">/</span><span class="n">taitwater</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style sph/taitwater +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">sph</span><span class="o">/</span><span class="n">taitwater</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1000.0</span> <span class="mf">1430.0</span> <span class="mf">1.0</span> <span class="mf">2.4</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style sph/taitwater +pair_coeff * * 1000.0 1430.0 1.0 2.4 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_sph_taitwater_morris.html b/doc/html/pair_sph_taitwater_morris.html index 8c6f8c913a..fda93bd07c 100644 --- a/doc/html/pair_sph_taitwater_morris.html +++ b/doc/html/pair_sph_taitwater_morris.html @@ -128,16 +128,16 @@ <span id="index-0"></span><h1>pair_style sph/taitwater/morris command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">sph</span><span class="o">/</span><span class="n">taitwater</span><span class="o">/</span><span class="n">morris</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style sph/taitwater/morris +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">sph</span><span class="o">/</span><span class="n">taitwater</span><span class="o">/</span><span class="n">morris</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1000.0</span> <span class="mf">1430.0</span> <span class="mf">1.0</span> <span class="mf">2.4</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style sph/taitwater/morris +pair_coeff * * 1000.0 1430.0 1.0 2.4 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_srp.html b/doc/html/pair_srp.html index caddb4012a..a9e1607ab8 100644 --- a/doc/html/pair_srp.html +++ b/doc/html/pair_srp.html @@ -143,24 +143,24 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">dpd</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mi">12345</span> <span class="n">srp</span> <span class="mf">0.8</span> <span class="mi">1</span> <span class="n">mid</span> <span class="n">exclude</span> <span class="n">yes</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">dpd</span> <span class="mf">60.0</span> <span class="mf">4.5</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">none</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">srp</span> <span class="mf">100.0</span> <span class="mf">0.8</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">dpd</span> <span class="mf">1.0</span> <span class="mf">1.0</span> <span class="mi">12345</span> <span class="n">srp</span> <span class="mf">0.8</span> <span class="o">*</span> <span class="nb">min</span> <span class="n">exclude</span> <span class="n">yes</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">dpd</span> <span class="mf">60.0</span> <span class="mi">50</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">none</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">srp</span> <span class="mf">40.0</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">srp</span> <span class="mf">0.8</span> <span class="mi">2</span> <span class="n">mid</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">none</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">none</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">srp</span> <span class="mf">100.0</span> <span class="mf">0.8</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid dpd 1.0 1.0 12345 srp 0.8 1 mid exclude yes +pair_coeff 1 1 dpd 60.0 4.5 1.0 +pair_coeff 1 2 none +pair_coeff 2 2 srp 100.0 0.8 +</pre> +<pre class="literal-block"> +pair_style hybrid dpd 1.0 1.0 12345 srp 0.8 * min exclude yes +pair_coeff 1 1 dpd 60.0 50 1.0 +pair_coeff 1 2 none +pair_coeff 2 2 srp 40.0 +</pre> +<pre class="literal-block"> +pair_style hybrid srp 0.8 2 mid +pair_coeff 1 1 none +pair_coeff 1 2 none +pair_coeff 2 2 srp 100.0 0.8 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_style.html b/doc/html/pair_style.html index 4dc6adc479..86a80963cc 100644 --- a/doc/html/pair_style.html +++ b/doc/html/pair_style.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>pair_style command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = one of the styles from the list below</li> <li>args = arguments used by a particular style</li> @@ -138,13 +138,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span> <span class="mf">2.5</span> -<span class="n">pair_style</span> <span class="n">eam</span><span class="o">/</span><span class="n">alloy</span> -<span class="n">pair_style</span> <span class="n">hybrid</span> <span class="n">lj</span><span class="o">/</span><span class="n">charmm</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> <span class="n">eam</span> -<span class="n">pair_style</span> <span class="n">table</span> <span class="n">linear</span> <span class="mi">1000</span> -<span class="n">pair_style</span> <span class="n">none</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut 2.5 +pair_style eam/alloy +pair_style hybrid lj/charmm/coul/long 10.0 eam +pair_style table linear 1000 +pair_style none +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -338,9 +338,9 @@ package.</p> </div> <div class="section" id="default"> <h2>Default</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">none</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style none +</pre> </div> </div> diff --git a/doc/html/pair_sw.html b/doc/html/pair_sw.html index 099d2de727..687c162b34 100644 --- a/doc/html/pair_sw.html +++ b/doc/html/pair_sw.html @@ -140,17 +140,17 @@ <h1>pair_style sw/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">sw</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style sw +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">sw</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">si</span><span class="o">.</span><span class="n">sw</span> <span class="n">Si</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">GaN</span><span class="o">.</span><span class="n">sw</span> <span class="n">Ga</span> <span class="n">N</span> <span class="n">Ga</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style sw +pair_coeff * * si.sw Si +pair_coeff * * GaN.sw Ga N Ga +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -175,9 +175,9 @@ to specify the path for the potential file.</p> Si and C. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Si, and the 4th to be C, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">sw</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * SiC.sw Si Si Si C +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Si arguments map LAMMPS atom types 1,2,3 to the Si element in the SW file. The final C argument maps LAMMPS atom type 4 diff --git a/doc/html/pair_table.html b/doc/html/pair_table.html index 7dd8b8ecf1..703a6081cc 100644 --- a/doc/html/pair_table.html +++ b/doc/html/pair_table.html @@ -137,9 +137,9 @@ <h1>pair_style table/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">table</span> <span class="n">style</span> <span class="n">N</span> <span class="n">keyword</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style table style N keyword ... +</pre> <ul class="simple"> <li>style = <em>lookup</em> or <em>linear</em> or <em>spline</em> or <em>bitmap</em> = method of interpolation</li> <li>N = use N values in <em>lookup</em>, <em>linear</em>, <em>spline</em> tables</li> @@ -150,13 +150,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">table</span> <span class="n">linear</span> <span class="mi">1000</span> -<span class="n">pair_style</span> <span class="n">table</span> <span class="n">linear</span> <span class="mi">1000</span> <span class="n">pppm</span> -<span class="n">pair_style</span> <span class="n">table</span> <span class="n">bitmap</span> <span class="mi">12</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="mi">3</span> <span class="n">morse</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="mi">3</span> <span class="n">morse</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="mf">7.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style table linear 1000 +pair_style table linear 1000 pppm +pair_style table bitmap 12 +pair_coeff * 3 morse.table ENTRY1 +pair_coeff * 3 morse.table ENTRY1 7.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -240,15 +240,15 @@ defined as follows (without the parenthesized comments):</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Morse potential for Fe (one or more comment or blank lines)</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">MORSE_FE</span> <span class="p">(</span><span class="n">keyword</span> <span class="ow">is</span> <span class="n">first</span> <span class="n">text</span> <span class="n">on</span> <span class="n">line</span><span class="p">)</span> -<span class="n">N</span> <span class="mi">500</span> <span class="n">R</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="p">(</span><span class="n">N</span><span class="p">,</span> <span class="n">R</span><span class="p">,</span> <span class="n">RSQ</span><span class="p">,</span> <span class="n">BITMAP</span><span class="p">,</span> <span class="n">FPRIME</span> <span class="n">parameters</span><span class="p">)</span> - <span class="p">(</span><span class="n">blank</span><span class="p">)</span> -<span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">25.5</span> <span class="mf">102.34</span> <span class="p">(</span><span class="n">index</span><span class="p">,</span> <span class="n">r</span><span class="p">,</span> <span class="n">energy</span><span class="p">,</span> <span class="n">force</span><span class="p">)</span> -<span class="mi">2</span> <span class="mf">1.02</span> <span class="mf">23.4</span> <span class="mf">98.5</span> -<span class="o">...</span> -<span class="mi">500</span> <span class="mf">10.0</span> <span class="mf">0.001</span> <span class="mf">0.003</span> -</pre></div> -</div> +<pre class="literal-block"> +MORSE_FE (keyword is first text on line) +N 500 R 1.0 10.0 (N, R, RSQ, BITMAP, FPRIME parameters) + (blank) +1 1.0 25.5 102.34 (index, r, energy, force) +2 1.02 23.4 98.5 +... +500 10.0 0.001 0.003 +</pre> <p>A section begins with a non-blank line whose 1st character is not a “#”; blank lines or lines starting with “#” can be used as comments between sections. The first line begins with a keyword which diff --git a/doc/html/pair_table_rx.html b/doc/html/pair_table_rx.html index 18ecd7f404..eab8b7d00c 100644 --- a/doc/html/pair_table_rx.html +++ b/doc/html/pair_table_rx.html @@ -128,22 +128,22 @@ <span id="index-0"></span><h1>pair_style table/rx command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">table</span> <span class="n">style</span> <span class="n">N</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style table style N +</pre> <p>style = <em>lookup</em> or <em>linear</em> or <em>spline</em> or <em>bitmap</em> = method of interpolation N = use N values in <em>lookup</em>, <em>linear</em>, <em>spline</em> tables N = use 2^N values in <em>bitmap</em> tables</p> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">table</span><span class="o">/</span><span class="n">rx</span> <span class="n">linear</span> <span class="mi">1000</span> -<span class="n">pair_style</span> <span class="n">table</span><span class="o">/</span><span class="n">rx</span> <span class="n">bitmap</span> <span class="mi">12</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">rxn</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="n">h2o</span> <span class="n">h2o</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">rxn</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="mi">1</span><span class="n">fluid</span> <span class="mi">1</span><span class="n">fluid</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="mi">3</span> <span class="n">rxn</span><span class="o">.</span><span class="n">table</span> <span class="n">ENTRY1</span> <span class="n">h2o</span> <span class="n">no2</span> <span class="mf">10.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style table/rx linear 1000 +pair_style table/rx bitmap 12 +pair_coeff * * rxn.table ENTRY1 h2o h2o 10.0 +pair_coeff * * rxn.table ENTRY1 1fluid 1fluid 10.0 +pair_coeff * 3 rxn.table ENTRY1 h2o no2 10.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -226,15 +226,15 @@ defined as follows (without the parenthesized comments):</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># Morse potential for Fe (one or more comment or blank lines)</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">MORSE_FE</span> <span class="p">(</span><span class="n">keyword</span> <span class="ow">is</span> <span class="n">first</span> <span class="n">text</span> <span class="n">on</span> <span class="n">line</span><span class="p">)</span> -<span class="n">N</span> <span class="mi">500</span> <span class="n">R</span> <span class="mf">1.0</span> <span class="mf">10.0</span> <span class="p">(</span><span class="n">N</span><span class="p">,</span> <span class="n">R</span><span class="p">,</span> <span class="n">RSQ</span><span class="p">,</span> <span class="n">BITMAP</span><span class="p">,</span> <span class="n">FPRIME</span> <span class="n">parameters</span><span class="p">)</span> - <span class="p">(</span><span class="n">blank</span><span class="p">)</span> -<span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">25.5</span> <span class="mf">102.34</span> <span class="p">(</span><span class="n">index</span><span class="p">,</span> <span class="n">r</span><span class="p">,</span> <span class="n">energy</span><span class="p">,</span> <span class="n">force</span><span class="p">)</span> -<span class="mi">2</span> <span class="mf">1.02</span> <span class="mf">23.4</span> <span class="mf">98.5</span> -<span class="o">...</span> -<span class="mi">500</span> <span class="mf">10.0</span> <span class="mf">0.001</span> <span class="mf">0.003</span> -</pre></div> -</div> +<pre class="literal-block"> +MORSE_FE (keyword is first text on line) +N 500 R 1.0 10.0 (N, R, RSQ, BITMAP, FPRIME parameters) + (blank) +1 1.0 25.5 102.34 (index, r, energy, force) +2 1.02 23.4 98.5 +... +500 10.0 0.001 0.003 +</pre> <p>A section begins with a non-blank line whose 1st character is not a “#”; blank lines or lines starting with “#” can be used as comments between sections. The first line begins with a keyword which diff --git a/doc/html/pair_tersoff.html b/doc/html/pair_tersoff.html index 6ea2a43607..8345a1c90b 100644 --- a/doc/html/pair_tersoff.html +++ b/doc/html/pair_tersoff.html @@ -146,22 +146,22 @@ <h1>pair_style tersoff/table/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style +</pre> <p>style = <em>tersoff</em> or <em>tersoff/table</em> or <em>tersoff/gpu</em> or <em>tersoff/omp</em> or <em>tersoff/table/omp</em></p> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tersoff</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Si</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">Si</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">Si</span> <span class="n">C</span> <span class="n">Si</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tersoff</span><span class="o">/</span><span class="n">table</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiCGe</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">Si</span><span class="p">(</span><span class="n">D</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style tersoff +pair_coeff * * Si.tersoff Si +pair_coeff * * SiC.tersoff Si C Si +</pre> +<pre class="literal-block"> +pair_style tersoff/table +pair_coeff * * SiCGe.tersoff Si(D) +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -191,9 +191,9 @@ to specify the path for the potential file.</p> and C. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Si, and the 4th to be C, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * SiC.tersoff Si Si Si C +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Si arguments map LAMMPS atom types 1,2,3 to the Si element in the Tersoff file. The final C argument maps LAMMPS atom diff --git a/doc/html/pair_tersoff_mod.html b/doc/html/pair_tersoff_mod.html index b88d02ee18..34a2120f67 100644 --- a/doc/html/pair_tersoff_mod.html +++ b/doc/html/pair_tersoff_mod.html @@ -137,16 +137,16 @@ <h1>pair_style tersoff/mod/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tersoff</span><span class="o">/</span><span class="n">mod</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style tersoff/mod +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tersoff</span><span class="o">/</span><span class="n">mod</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Si</span><span class="o">.</span><span class="n">tersoff</span><span class="o">.</span><span class="n">mod</span> <span class="n">Si</span> <span class="n">Si</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style tersoff/mod +pair_coeff * * Si.tersoff.mod Si Si +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -180,9 +180,9 @@ where N is the number of LAMMPS atom types:</p> <p>As an example, imagine the Si.tersoff_mod file has Tersoff values for Si. If your LAMMPS simulation has 3 Si atoms types, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">Si</span><span class="o">.</span><span class="n">tersoff_mod</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">Si</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * Si.tersoff_mod Si Si Si +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The three Si arguments map LAMMPS atom types 1,2,3 to the Si element in the Tersoff/MOD file. If a mapping value is specified as NULL, the diff --git a/doc/html/pair_tersoff_zbl.html b/doc/html/pair_tersoff_zbl.html index 90e840acc3..694938f86e 100644 --- a/doc/html/pair_tersoff_zbl.html +++ b/doc/html/pair_tersoff_zbl.html @@ -137,16 +137,16 @@ <h1>pair_style tersoff/zbl/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tersoff</span><span class="o">/</span><span class="n">zbl</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style tersoff/zbl +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tersoff</span><span class="o">/</span><span class="n">zbl</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">tersoff</span><span class="o">.</span><span class="n">zbl</span> <span class="n">Si</span> <span class="n">C</span> <span class="n">Si</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style tersoff/zbl +pair_coeff * * SiC.tersoff.zbl Si C Si +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -188,9 +188,9 @@ to specify the path for the potential file.</p> for Si and C. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Si, and the 4th to be C, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">tersoff</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * SiC.tersoff Si Si Si C +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Si arguments map LAMMPS atom types 1,2,3 to the Si element in the Tersoff/ZBL file. The final C argument maps LAMMPS diff --git a/doc/html/pair_thole.html b/doc/html/pair_thole.html index e3a5f8b9cb..8e8f15daf2 100644 --- a/doc/html/pair_thole.html +++ b/doc/html/pair_thole.html @@ -134,9 +134,9 @@ <h1>pair_style lj/cut/thole/long/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style style args +</pre> <ul class="simple"> <li>style = <em>thole</em> or <em>lj/cut/thole/long</em> or <em>lj/cut/thole/long/omp</em></li> <li>args = list of arguments for a particular style</li> @@ -153,15 +153,15 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="o">...</span> <span class="n">thole</span> <span class="mf">2.6</span> <span class="mf">12.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">thole</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">thole</span> <span class="mf">1.0</span> <span class="mf">2.6</span> <span class="mf">10.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="mi">2</span> <span class="n">thole</span> <span class="mf">1.0</span> <span class="mf">2.6</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">thole</span><span class="o">/</span><span class="n">long</span> <span class="mf">2.6</span> <span class="mf">12.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid/overlay ... thole 2.6 12.0 +pair_coeff 1 1 thole 1.0 +pair_coeff 1 2 thole 1.0 2.6 10.0 +pair_coeff * 2 thole 1.0 2.6 +</pre> +<pre class="literal-block"> +pair_style lj/cut/thole/long 2.6 12.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -189,8 +189,8 @@ short distances by a function</p> \frac{s_{ij} r_{ij} }{2} \right) \exp \left( - s_{ij} r_{ij} \right) \end{equation}\]</div> <p>This function results from an adaptation to point charges -<a class="reference internal" href="#noskov"><span class="std std-ref">(Noskov)</span></a> of the dipole screening scheme originally proposed -by <a class="reference internal" href="#thole"><span class="std std-ref">Thole</span></a>. The scaling coefficient <span class="math">\(s_{ij}\)</span> is determined +<a class="reference internal" href="tutorial_drude.html#noskov"><span class="std std-ref">(Noskov)</span></a> of the dipole screening scheme originally proposed +by <a class="reference internal" href="tutorial_drude.html#thole"><span class="std std-ref">Thole</span></a>. The scaling coefficient <span class="math">\(s_{ij}\)</span> is determined by the polarizability of the atoms, <span class="math">\(\alpha_i\)</span>, and by a Thole damping parameter <span class="math">\(a\)</span>. This Thole damping parameter usually takes a value of 2.6, but in certain force fields the value can depend upon diff --git a/doc/html/pair_tri_lj.html b/doc/html/pair_tri_lj.html index e6c6b24ddd..bdda14e2e2 100644 --- a/doc/html/pair_tri_lj.html +++ b/doc/html/pair_tri_lj.html @@ -128,18 +128,18 @@ <span id="index-0"></span><h1>pair_style tri/lj command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tri</span><span class="o">/</span><span class="n">lj</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style tri/lj cutoff +</pre> <p>cutoff = global cutoff for interactions (distance units)</p> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">tri</span><span class="o">/</span><span class="n">lj</span> <span class="mf">3.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.5</span> <span class="mf">2.5</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style tri/lj 3.0 +pair_coeff * * 1.0 1.0 +pair_coeff 1 1 1.0 1.5 2.5 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_vashishta.html b/doc/html/pair_vashishta.html index 0bfaceb06c..6dd3e02f8f 100644 --- a/doc/html/pair_vashishta.html +++ b/doc/html/pair_vashishta.html @@ -131,16 +131,16 @@ <h1>pair_style vashishta/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">vashishta</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style vashishta +</pre> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">vashishta</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">vashishta</span> <span class="n">Si</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style vashishta +pair_coeff * * SiC.vashishta Si C +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -178,9 +178,9 @@ to specify the path for the potential file.</p> Si and C. If your LAMMPS simulation has 4 atoms types and you want the 1st 3 to be Si, and the 4th to be C, you would use the following pair_coeff command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="n">SiC</span><span class="o">.</span><span class="n">vashishta</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">Si</span> <span class="n">C</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * * SiC.vashishta Si Si Si C +</pre> <p>The 1st 2 arguments must be * * so as to span all LAMMPS atom types. The first three Si arguments map LAMMPS atom types 1,2,3 to the Si element in the file. The final C argument maps LAMMPS atom type 4 diff --git a/doc/html/pair_yukawa.html b/doc/html/pair_yukawa.html index 826c7de7ff..3f0d3b3e2c 100644 --- a/doc/html/pair_yukawa.html +++ b/doc/html/pair_yukawa.html @@ -134,9 +134,9 @@ <h1>pair_style yukawa/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">yukawa</span> <span class="n">kappa</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style yukawa kappa cutoff +</pre> <ul class="simple"> <li>kappa = screening length (inverse distance units)</li> <li>cutoff = global cutoff for Yukawa interactions (distance units)</li> @@ -144,11 +144,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">yukawa</span> <span class="mf">2.0</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">2.3</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style yukawa 2.0 2.5 +pair_coeff 1 1 100.0 2.3 +pair_coeff * * 100.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/pair_yukawa_colloid.html b/doc/html/pair_yukawa_colloid.html index 560d253325..0c16f65c1d 100644 --- a/doc/html/pair_yukawa_colloid.html +++ b/doc/html/pair_yukawa_colloid.html @@ -134,9 +134,9 @@ <h1>pair_style yukawa/colloid/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">yukawa</span><span class="o">/</span><span class="n">colloid</span> <span class="n">kappa</span> <span class="n">cutoff</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style yukawa/colloid kappa cutoff +</pre> <ul class="simple"> <li>kappa = screening length (inverse distance units)</li> <li>cutoff = global cutoff for colloidal Yukawa interactions (distance units)</li> @@ -144,11 +144,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">yukawa</span><span class="o">/</span><span class="n">colloid</span> <span class="mf">2.0</span> <span class="mf">2.5</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">100.0</span> <span class="mf">2.3</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">100.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style yukawa/colloid 2.0 2.5 +pair_coeff 1 1 100.0 2.3 +pair_coeff * * 100.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -182,9 +182,9 @@ charge and surface potential due to the presence of electrolyte. Note that the A for this potential style has different units than the A used in <a class="reference internal" href="pair_yukawa.html"><span class="doc">pair_style yukawa</span></a>. For low surface potentials, i.e. less than about 25 mV, A can be written as:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">A</span> <span class="o">=</span> <span class="mi">2</span> <span class="o">*</span> <span class="n">PI</span> <span class="o">*</span> <span class="n">R</span><span class="o">*</span><span class="n">eps</span><span class="o">*</span><span class="n">eps0</span> <span class="o">*</span> <span class="n">kappa</span> <span class="o">*</span> <span class="n">psi</span><span class="o">^</span><span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +A = 2 * PI * R*eps*eps0 * kappa * psi^2 +</pre> <p>where</p> <ul class="simple"> <li>R = colloid radius (distance units)</li> diff --git a/doc/html/pair_zbl.html b/doc/html/pair_zbl.html index 71b3bea35c..54ad6b5344 100644 --- a/doc/html/pair_zbl.html +++ b/doc/html/pair_zbl.html @@ -134,9 +134,9 @@ <h1>pair_style zbl/omp command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">zbl</span> <span class="n">inner</span> <span class="n">outer</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style zbl inner outer +</pre> <ul class="simple"> <li>inner = distance where switching function begins</li> <li>outer = global cutoff for ZBL interaction</li> @@ -144,11 +144,11 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">zbl</span> <span class="mf">3.0</span> <span class="mf">4.0</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="o">*</span> <span class="mf">73.0</span> <span class="mf">73.0</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">14.0</span> <span class="mf">14.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style zbl 3.0 4.0 +pair_coeff * * 73.0 73.0 +pair_coeff 1 1 14.0 14.0 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/prd.html b/doc/html/prd.html index ee0c7948c0..a32fecfdce 100644 --- a/doc/html/prd.html +++ b/doc/html/prd.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>prd command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">prd</span> <span class="n">N</span> <span class="n">t_event</span> <span class="n">n_dephase</span> <span class="n">t_dephase</span> <span class="n">t_correlate</span> <span class="n">compute</span><span class="o">-</span><span class="n">ID</span> <span class="n">seed</span> <span class="n">keyword</span> <span class="n">value</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +prd N t_event n_dephase t_dephase t_correlate compute-ID seed keyword value ... +</pre> <ul class="simple"> <li>N = # of timesteps to run (not including dephasing/quenching)</li> <li>t_event = timestep interval between event checks</li> @@ -200,19 +200,19 @@ potentials, etc should be the same for every replica.</p> <p>A PRD run has several stages, which are repeated each time an “event” occurs in one of the replicas, as defined below. The logic for a PRD run is as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="k">while</span> <span class="p">(</span><span class="n">time</span> <span class="n">remains</span><span class="p">):</span> - <span class="n">dephase</span> <span class="k">for</span> <span class="n">n_dephase</span><span class="o">*</span><span class="n">t_dephase</span> <span class="n">steps</span> - <span class="n">until</span> <span class="p">(</span><span class="n">event</span> <span class="n">occurs</span> <span class="n">on</span> <span class="n">some</span> <span class="n">replica</span><span class="p">):</span> - <span class="n">run</span> <span class="n">dynamics</span> <span class="k">for</span> <span class="n">t_event</span> <span class="n">steps</span> - <span class="n">quench</span> - <span class="n">check</span> <span class="k">for</span> <span class="n">uncorrelated</span> <span class="n">event</span> <span class="n">on</span> <span class="nb">any</span> <span class="n">replica</span> - <span class="n">until</span> <span class="p">(</span><span class="n">no</span> <span class="n">correlated</span> <span class="n">event</span> <span class="n">occurs</span><span class="p">):</span> - <span class="n">run</span> <span class="n">dynamics</span> <span class="k">for</span> <span class="n">t_correlate</span> <span class="n">steps</span> - <span class="n">quench</span> - <span class="n">check</span> <span class="k">for</span> <span class="n">correlated</span> <span class="n">event</span> <span class="n">on</span> <span class="n">this</span> <span class="n">replica</span> - <span class="n">event</span> <span class="n">replica</span> <span class="n">shares</span> <span class="n">state</span> <span class="k">with</span> <span class="nb">all</span> <span class="n">replicas</span> -</pre></div> -</div> +<pre class="literal-block"> +while (time remains): + dephase for n_dephase*t_dephase steps + until (event occurs on some replica): + run dynamics for t_event steps + quench + check for uncorrelated event on any replica + until (no correlated event occurs): + run dynamics for t_correlate steps + quench + check for correlated event on this replica + event replica shares state with all replicas +</pre> <p>Before this loop begins, the state of the system on replica 0 is shared with all replicas, so that all replicas begin from the same initial state. The first potential energy basin is identified by diff --git a/doc/html/processors.html b/doc/html/processors.html index f0feeb91ba..15f24d6340 100644 --- a/doc/html/processors.html +++ b/doc/html/processors.html @@ -162,15 +162,15 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">processors</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">5</span> -<span class="n">processors</span> <span class="mi">2</span> <span class="mi">4</span> <span class="mi">4</span> -<span class="n">processors</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">8</span> <span class="nb">map</span> <span class="n">xyz</span> -<span class="n">processors</span> <span class="o">*</span> <span class="o">*</span> <span class="o">*</span> <span class="n">grid</span> <span class="n">numa</span> -<span class="n">processors</span> <span class="o">*</span> <span class="o">*</span> <span class="o">*</span> <span class="n">grid</span> <span class="n">twolevel</span> <span class="mi">4</span> <span class="o">*</span> <span class="o">*</span> <span class="mi">1</span> -<span class="n">processors</span> <span class="mi">4</span> <span class="mi">8</span> <span class="mi">16</span> <span class="n">grid</span> <span class="n">custom</span> <span class="n">myfile</span> -<span class="n">processors</span> <span class="o">*</span> <span class="o">*</span> <span class="o">*</span> <span class="n">part</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">multiple</span> -</pre></div> -</div> +<pre class="literal-block"> +processors * * 5 +processors 2 4 4 +processors * * 8 map xyz +processors * * * grid numa +processors * * * grid twolevel 4 * * 1 +processors 4 8 16 grid custom myfile +processors * * * part 1 2 multiple +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -428,7 +428,7 @@ option.</p> </div> <div class="section" id="default"> <h2>Default</h2> -<p>The option defaults are Px Py Pz = * * <a href="#id1"><span class="problematic" id="id2">*</span></a>, grid = onelevel, and map = +<p>The option defaults are Px Py Pz = * * *, grid = onelevel, and map = cart.</p> </div> </div> diff --git a/doc/html/python.html b/doc/html/python.html index f78a9df834..6700435a9f 100644 --- a/doc/html/python.html +++ b/doc/html/python.html @@ -161,35 +161,35 @@ keyword = <em>invoke</em> or <em>input</em> or <em>return</em> or <em>format</em </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">python</span> <span class="n">pForce</span> <span class="nb">input</span> <span class="mi">2</span> <span class="n">v_x</span> <span class="mf">20.0</span> <span class="k">return</span> <span class="n">v_f</span> <span class="nb">format</span> <span class="n">fff</span> <span class="n">file</span> <span class="n">force</span><span class="o">.</span><span class="n">py</span> -<span class="n">python</span> <span class="n">pForce</span> <span class="n">invoke</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">python</span> <span class="n">factorial</span> <span class="nb">input</span> <span class="mi">1</span> <span class="n">myN</span> <span class="k">return</span> <span class="n">v_fac</span> <span class="nb">format</span> <span class="n">ii</span> <span class="n">here</span> <span class="s2">"""</span> -<span class="s2">def factorial(n):</span> -<span class="s2"> if n == 1: return n</span> -<span class="s2"> return n * factorial(n-1)</span> -<span class="s2"> """</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">python</span> <span class="n">loop</span> <span class="nb">input</span> <span class="mi">1</span> <span class="n">SELF</span> <span class="k">return</span> <span class="n">v_value</span> <span class="nb">format</span> <span class="o">-</span><span class="n">f</span> <span class="n">here</span> <span class="s2">"""</span> -<span class="s2">def loop(lmpptr,N,cut0):</span> -<span class="s2"> from lammps import lammps</span> -<span class="s2"> lmp = lammps(ptr=lmpptr)</span> -</pre></div> -</div> +<pre class="literal-block"> +python pForce input 2 v_x 20.0 return v_f format fff file force.py +python pForce invoke +</pre> +<pre class="literal-block"> +python factorial input 1 myN return v_fac format ii here """ +def factorial(n): + if n == 1: return n + return n * factorial(n-1) + """ +</pre> +<pre class="literal-block"> +python loop input 1 SELF return v_value format -f here """ +def loop(lmpptr,N,cut0): + from lammps import lammps + lmp = lammps(ptr=lmpptr) +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># loop N times, increasing cutoff each time</span> </pre></div> </div> -<div class="highlight-default"><div class="highlight"><pre><span></span> <span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">N</span><span class="p">):</span> - <span class="n">cut</span> <span class="o">=</span> <span class="n">cut0</span> <span class="o">+</span> <span class="n">i</span><span class="o">*</span><span class="mf">0.1</span> - <span class="n">lmp</span><span class="o">.</span><span class="n">set_variable</span><span class="p">(</span><span class="s2">"cut"</span><span class="p">,</span><span class="n">cut</span><span class="p">)</span> <span class="c1"># set a variable in LAMMPS</span> - <span class="n">lmp</span><span class="o">.</span><span class="n">command</span><span class="p">(</span><span class="s2">"pair_style lj/cut $</span><span class="si">{cut}</span><span class="s2">"</span><span class="p">)</span> <span class="c1"># LAMMPS commands</span> - <span class="n">lmp</span><span class="o">.</span><span class="n">command</span><span class="p">(</span><span class="s2">"pair_coeff * * 1.0 1.0"</span><span class="p">)</span> - <span class="n">lmp</span><span class="o">.</span><span class="n">command</span><span class="p">(</span><span class="s2">"run 100"</span><span class="p">)</span> -<span class="s2">"""</span> -</pre></div> -</div> +<pre class="literal-block"> + for i in range(N): + cut = cut0 + i*0.1 + lmp.set_variable("cut",cut) # set a variable in LAMMPS + lmp.command("pair_style lj/cut ${cut}") # LAMMPS commands + lmp.command("pair_coeff * * 1.0 1.0") + lmp.command("run 100") +""" +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -263,10 +263,10 @@ numeric or string value, as specified by the <em>format</em> keyword.</p> of a python-style variable associates a Python function name with the variable. This must match the <em>func</em> setting for this command. For exampe these two commands would be self-consistent:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">foo</span> <span class="n">python</span> <span class="n">myMultiply</span> -<span class="n">python</span> <span class="n">myMultiply</span> <span class="k">return</span> <span class="n">v_foo</span> <span class="nb">format</span> <span class="n">f</span> <span class="n">file</span> <span class="n">funcs</span><span class="o">.</span><span class="n">py</span> -</pre></div> -</div> +<pre class="literal-block"> +variable foo python myMultiply +python myMultiply return v_foo format f file funcs.py +</pre> <p>The two commands can appear in either order in the input script so long as both are specified before the Python function is invoked for the first time.</p> @@ -417,29 +417,29 @@ Python wraps the various functions included in the LAMMPS library interface.</p> <p>A more interesting example is in the examples/python/in.python script which loads and runs the following function from examples/python/funcs.py:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="k">def</span> <span class="nf">loop</span><span class="p">(</span><span class="n">N</span><span class="p">,</span><span class="n">cut0</span><span class="p">,</span><span class="n">thresh</span><span class="p">,</span><span class="n">lmpptr</span><span class="p">):</span> - <span class="nb">print</span> <span class="s2">"LOOP ARGS"</span><span class="p">,</span><span class="n">N</span><span class="p">,</span><span class="n">cut0</span><span class="p">,</span><span class="n">thresh</span><span class="p">,</span><span class="n">lmpptr</span> - <span class="kn">from</span> <span class="nn">lammps</span> <span class="k">import</span> <span class="n">lammps</span> - <span class="n">lmp</span> <span class="o">=</span> <span class="n">lammps</span><span class="p">(</span><span class="n">ptr</span><span class="o">=</span><span class="n">lmpptr</span><span class="p">)</span> - <span class="n">natoms</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">get_natoms</span><span class="p">()</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="n">N</span><span class="p">):</span> - <span class="n">cut</span> <span class="o">=</span> <span class="n">cut0</span> <span class="o">+</span> <span class="n">i</span><span class="o">*</span><span class="mf">0.1</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp</span><span class="o">.</span><span class="n">set_variable</span><span class="p">(</span><span class="s2">"cut"</span><span class="p">,</span><span class="n">cut</span><span class="p">)</span> <span class="c1"># set a variable in LAMMPS</span> -<span class="n">lmp</span><span class="o">.</span><span class="n">command</span><span class="p">(</span><span class="s2">"pair_style lj/cut $</span><span class="si">{cut}</span><span class="s2">"</span><span class="p">)</span> <span class="c1"># LAMMPS command</span> -<span class="c1">#lmp.command("pair_style lj/cut %d" % cut) # LAMMPS command option</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">lmp</span><span class="o">.</span><span class="n">command</span><span class="p">(</span><span class="s2">"pair_coeff * * 1.0 1.0"</span><span class="p">)</span> <span class="c1"># ditto</span> -<span class="n">lmp</span><span class="o">.</span><span class="n">command</span><span class="p">(</span><span class="s2">"run 10"</span><span class="p">)</span> <span class="c1"># ditto</span> -<span class="n">pe</span> <span class="o">=</span> <span class="n">lmp</span><span class="o">.</span><span class="n">extract_compute</span><span class="p">(</span><span class="s2">"thermo_pe"</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">0</span><span class="p">)</span> <span class="c1"># extract total PE from LAMMPS</span> -<span class="nb">print</span> <span class="s2">"PE"</span><span class="p">,</span><span class="n">pe</span><span class="o">/</span><span class="n">natoms</span><span class="p">,</span><span class="n">thresh</span> -<span class="k">if</span> <span class="n">pe</span><span class="o">/</span><span class="n">natoms</span> <span class="o"><</span> <span class="n">thresh</span><span class="p">:</span> <span class="k">return</span> -</pre></div> -</div> +<pre class="literal-block"> +def loop(N,cut0,thresh,lmpptr): + print "LOOP ARGS",N,cut0,thresh,lmpptr + from lammps import lammps + lmp = lammps(ptr=lmpptr) + natoms = lmp.get_natoms() +</pre> +<pre class="literal-block"> +for i in range(N): + cut = cut0 + i*0.1 +</pre> +<pre class="literal-block"> +lmp.set_variable("cut",cut) # set a variable in LAMMPS +lmp.command("pair_style lj/cut ${cut}") # LAMMPS command +#lmp.command("pair_style lj/cut %d" % cut) # LAMMPS command option +</pre> +<pre class="literal-block"> +lmp.command("pair_coeff * * 1.0 1.0") # ditto +lmp.command("run 10") # ditto +pe = lmp.extract_compute("thermo_pe",0,0) # extract total PE from LAMMPS +print "PE",pe/natoms,thresh +if pe/natoms < thresh: return +</pre> <p>with these input script commands:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">python</span> <span class="n">loop</span> <span class="nb">input</span> <span class="mi">4</span> <span class="mi">10</span> <span class="mf">1.0</span> <span class="o">-</span><span class="mf">4.0</span> <span class="n">SELF</span> <span class="nb">format</span> <span class="n">iffp</span> <span class="n">file</span> <span class="n">funcs</span><span class="o">.</span><span class="n">py</span> <span class="n">python</span> <span class="n">loop</span> <span class="n">invoke</span> diff --git a/doc/html/read_data.html b/doc/html/read_data.html index 41ce8a8dc9..0087555e4b 100644 --- a/doc/html/read_data.html +++ b/doc/html/read_data.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>read_data command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">read_data</span> <span class="n">file</span> <span class="n">keyword</span> <span class="n">args</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +read_data file keyword args ... +</pre> <ul class="simple"> <li>file = name of data file to read in</li> <li>zero or more keyword/arg pairs may be appended</li> @@ -165,13 +165,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">read_data</span> <span class="n">data</span><span class="o">.</span><span class="n">lj</span> -<span class="n">read_data</span> <span class="o">../</span><span class="n">run7</span><span class="o">/</span><span class="n">data</span><span class="o">.</span><span class="n">polymer</span><span class="o">.</span><span class="n">gz</span> -<span class="n">read_data</span> <span class="n">data</span><span class="o">.</span><span class="n">protein</span> <span class="n">fix</span> <span class="n">mycmap</span> <span class="n">crossterm</span> <span class="n">CMAP</span> -<span class="n">read_data</span> <span class="n">data</span><span class="o">.</span><span class="n">water</span> <span class="n">add</span> <span class="n">append</span> <span class="n">offset</span> <span class="mi">3</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">shift</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">50.0</span> -<span class="n">read_data</span> <span class="n">data</span><span class="o">.</span><span class="n">water</span> <span class="n">add</span> <span class="n">merge</span> <span class="mi">1</span> <span class="n">group</span> <span class="n">solvent</span> -</pre></div> -</div> +<pre class="literal-block"> +read_data data.lj +read_data ../run7/data.polymer.gz +read_data data.protein fix mycmap crossterm CMAP +read_data data.water add append offset 3 1 1 1 1 shift 0.0 0.0 50.0 +read_data data.water add merge 1 group solvent +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -764,9 +764,9 @@ are those that are not the 5 standard ones (ID,type,x,y,z). For example, for the “charge” sub-style, a “q” value would appear. For the “full” sub-style, a “molecule-ID” and “q” would appear. These are listed in the same order they appear as listed above. Thus if</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_style</span> <span class="n">hybrid</span> <span class="n">charge</span> <span class="n">sphere</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_style hybrid charge sphere +</pre> <p>were used in the input script, each atom line would have these fields:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom</span><span class="o">-</span><span class="n">ID</span> <span class="n">atom</span><span class="o">-</span><span class="nb">type</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">q</span> <span class="n">diameter</span> <span class="n">density</span> </pre></div> @@ -1260,9 +1260,9 @@ are those that are not the 5 standard ones (ID,vx,vy,vz). For example, for the “sphere” sub-style, “wx”, “wy”, “wz” values would appear. These are listed in the same order they appear as listed above. Thus if</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom_style</span> <span class="n">hybrid</span> <span class="n">electron</span> <span class="n">sphere</span> -</pre></div> -</div> +<pre class="literal-block"> +atom_style hybrid electron sphere +</pre> <p>were used in the input script, each velocity line would have these fields:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">atom</span><span class="o">-</span><span class="n">ID</span> <span class="n">vx</span> <span class="n">vy</span> <span class="n">vz</span> <span class="n">ervel</span> <span class="n">wx</span> <span class="n">wy</span> <span class="n">wz</span> diff --git a/doc/html/read_dump.html b/doc/html/read_dump.html index 603ab46785..5e2e9f96eb 100644 --- a/doc/html/read_dump.html +++ b/doc/html/read_dump.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>read_dump command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">read_dump</span> <span class="n">file</span> <span class="n">Nstep</span> <span class="n">field1</span> <span class="n">field2</span> <span class="o">...</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +read_dump file Nstep field1 field2 ... keyword values ... +</pre> <ul class="simple"> <li>file = name of dump file to read</li> <li>Nstep = snapshot timestep to read from file</li> @@ -168,18 +168,18 @@ field = <em>x</em> or <em>y</em> or <em>z</em> or <em>vx</em> or <em>vy</em> or </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">file</span> <span class="mi">5000</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> -<span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">xyz</span> <span class="mi">5</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">box</span> <span class="n">no</span> <span class="nb">format</span> <span class="n">xyz</span> -<span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">xyz</span> <span class="mi">10</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">box</span> <span class="n">no</span> <span class="nb">format</span> <span class="n">molfile</span> <span class="n">xyz</span> <span class="s2">"../plugins"</span> -<span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">dcd</span> <span class="mi">0</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">box</span> <span class="n">yes</span> <span class="nb">format</span> <span class="n">molfile</span> <span class="n">dcd</span> -<span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">file</span> <span class="mi">1000</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">vx</span> <span class="n">vy</span> <span class="n">vz</span> <span class="n">box</span> <span class="n">yes</span> <span class="nb">format</span> <span class="n">molfile</span> <span class="n">lammpstrj</span> <span class="o">/</span><span class="n">usr</span><span class="o">/</span><span class="n">local</span><span class="o">/</span><span class="n">lib</span><span class="o">/</span><span class="n">vmd</span><span class="o">/</span><span class="n">plugins</span><span class="o">/</span><span class="n">LINUXAMD64</span><span class="o">/</span><span class="n">plugins</span><span class="o">/</span><span class="n">molfile</span> -<span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">file</span> <span class="mi">5000</span> <span class="n">x</span> <span class="n">y</span> <span class="n">vx</span> <span class="n">vy</span> <span class="n">trim</span> <span class="n">yes</span> -<span class="n">read_dump</span> <span class="o">../</span><span class="n">run7</span><span class="o">/</span><span class="n">dump</span><span class="o">.</span><span class="n">file</span><span class="o">.</span><span class="n">gz</span> <span class="mi">10000</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">box</span> <span class="n">yes</span> -<span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">xyz</span> <span class="mi">10</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">box</span> <span class="n">no</span> <span class="nb">format</span> <span class="n">molfile</span> <span class="n">xyz</span> <span class="o">../</span><span class="n">plugins</span> -<span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">dcd</span> <span class="mi">0</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="nb">format</span> <span class="n">molfile</span> <span class="n">dcd</span> -<span class="n">read_dump</span> <span class="n">dump</span><span class="o">.</span><span class="n">file</span> <span class="mi">1000</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">vx</span> <span class="n">vy</span> <span class="n">vz</span> <span class="nb">format</span> <span class="n">molfile</span> <span class="n">lammpstrj</span> <span class="o">/</span><span class="n">usr</span><span class="o">/</span><span class="n">local</span><span class="o">/</span><span class="n">lib</span><span class="o">/</span><span class="n">vmd</span><span class="o">/</span><span class="n">plugins</span><span class="o">/</span><span class="n">LINUXAMD64</span><span class="o">/</span><span class="n">plugins</span><span class="o">/</span><span class="n">molfile</span> -</pre></div> -</div> +<pre class="literal-block"> +read_dump dump.file 5000 x y z +read_dump dump.xyz 5 x y z box no format xyz +read_dump dump.xyz 10 x y z box no format molfile xyz "../plugins" +read_dump dump.dcd 0 x y z box yes format molfile dcd +read_dump dump.file 1000 x y z vx vy vz box yes format molfile lammpstrj /usr/local/lib/vmd/plugins/LINUXAMD64/plugins/molfile +read_dump dump.file 5000 x y vx vy trim yes +read_dump ../run7/dump.file.gz 10000 x y z box yes +read_dump dump.xyz 10 x y z box no format molfile xyz ../plugins +read_dump dump.dcd 0 x y z format molfile dcd +read_dump dump.file 1000 x y z vx vy vz format molfile lammpstrj /usr/local/lib/vmd/plugins/LINUXAMD64/plugins/molfile +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/region.html b/doc/html/region.html index de04067047..8e3f0aa71b 100644 --- a/doc/html/region.html +++ b/doc/html/region.html @@ -193,14 +193,14 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">region</span> <span class="mi">1</span> <span class="n">block</span> <span class="o">-</span><span class="mf">3.0</span> <span class="mf">5.0</span> <span class="n">INF</span> <span class="mf">10.0</span> <span class="n">INF</span> <span class="n">INF</span> -<span class="n">region</span> <span class="mi">2</span> <span class="n">sphere</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mi">5</span> <span class="n">side</span> <span class="n">out</span> -<span class="n">region</span> <span class="n">void</span> <span class="n">cylinder</span> <span class="n">y</span> <span class="mi">2</span> <span class="mi">3</span> <span class="mi">5</span> <span class="o">-</span><span class="mf">5.0</span> <span class="n">EDGE</span> <span class="n">units</span> <span class="n">box</span> -<span class="n">region</span> <span class="mi">1</span> <span class="n">prism</span> <span class="mi">0</span> <span class="mi">10</span> <span class="mi">0</span> <span class="mi">10</span> <span class="mi">0</span> <span class="mi">10</span> <span class="mi">2</span> <span class="mi">0</span> <span class="mi">0</span> -<span class="n">region</span> <span class="n">outside</span> <span class="n">union</span> <span class="mi">4</span> <span class="n">side1</span> <span class="n">side2</span> <span class="n">side3</span> <span class="n">side4</span> -<span class="n">region</span> <span class="mi">2</span> <span class="n">sphere</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mi">5</span> <span class="n">side</span> <span class="n">out</span> <span class="n">move</span> <span class="n">v_left</span> <span class="n">v_up</span> <span class="n">NULL</span> -</pre></div> -</div> +<pre class="literal-block"> +region 1 block -3.0 5.0 INF 10.0 INF INF +region 2 sphere 0.0 0.0 0.0 5 side out +region void cylinder y 2 3 5 -5.0 EDGE units box +region 1 prism 0 10 0 10 0 10 2 0 0 +region outside union 4 side1 side2 side3 side4 +region 2 sphere 0.0 0.0 0.0 5 side out move v_left v_up NULL +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -380,18 +380,18 @@ fashion. For the latter, see the <em>start</em> and <em>stop</em> keywords of t <p>For example, these commands would displace a region from its initial position, in the positive x direction, effectively at a constant velocity:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">dx</span> <span class="n">equal</span> <span class="n">ramp</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">10</span><span class="p">)</span> -<span class="n">region</span> <span class="mi">2</span> <span class="n">sphere</span> <span class="mf">10.0</span> <span class="mf">10.0</span> <span class="mf">0.0</span> <span class="mi">5</span> <span class="n">move</span> <span class="n">v_dx</span> <span class="n">NULL</span> <span class="n">NULL</span> -</pre></div> -</div> +<pre class="literal-block"> +variable dx equal ramp(0,10) +region 2 sphere 10.0 10.0 0.0 5 move v_dx NULL NULL +</pre> <p>Note that the initial displacemet is 0.0, though that is not required.</p> <p>Either of these varaibles would “wiggle” the region back and forth in the y direction:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">dy</span> <span class="n">equal</span> <span class="n">swiggle</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">100</span><span class="p">)</span> -<span class="n">variable</span> <span class="n">dysame</span> <span class="n">equal</span> <span class="mi">5</span><span class="o">*</span><span class="n">sin</span><span class="p">(</span><span class="mi">2</span><span class="o">*</span><span class="n">PI</span><span class="o">*</span><span class="n">elaplong</span><span class="o">*</span><span class="n">dt</span><span class="o">/</span><span class="mi">100</span><span class="p">)</span> -<span class="n">region</span> <span class="mi">2</span> <span class="n">sphere</span> <span class="mf">10.0</span> <span class="mf">10.0</span> <span class="mf">0.0</span> <span class="mi">5</span> <span class="n">move</span> <span class="n">NULL</span> <span class="n">v_dy</span> <span class="n">NULL</span> -</pre></div> -</div> +<pre class="literal-block"> +variable dy equal swiggle(0,5,100) +variable dysame equal 5*sin(2*PI*elaplong*dt/100) +region 2 sphere 10.0 10.0 0.0 5 move NULL v_dy NULL +</pre> <p>The <em>rotate</em> keyword rotates the region around a rotation axis <em>R</em> = (Rx,Ry,Rz) that goes thru a point <em>P</em> = (Px,Py,Pz). The rotation angle is calculated, presumably as a function of time, by a variable diff --git a/doc/html/restart.html b/doc/html/restart.html index d6fc25f246..3f169da485 100644 --- a/doc/html/restart.html +++ b/doc/html/restart.html @@ -150,14 +150,14 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">restart</span> <span class="mi">0</span> -<span class="n">restart</span> <span class="mi">1000</span> <span class="n">poly</span><span class="o">.</span><span class="n">restart</span> -<span class="n">restart</span> <span class="mi">1000</span> <span class="n">poly</span><span class="o">.</span><span class="n">restart</span><span class="o">.</span><span class="n">mpiio</span> -<span class="n">restart</span> <span class="mi">1000</span> <span class="n">restart</span><span class="o">.*.</span><span class="n">equil</span> -<span class="n">restart</span> <span class="mi">10000</span> <span class="n">poly</span><span class="o">.%.</span><span class="mi">1</span> <span class="n">poly</span><span class="o">.%.</span><span class="mi">2</span> <span class="n">nfile</span> <span class="mi">10</span> -<span class="n">restart</span> <span class="n">v_mystep</span> <span class="n">poly</span><span class="o">.</span><span class="n">restart</span> -</pre></div> -</div> +<pre class="literal-block"> +restart 0 +restart 1000 poly.restart +restart 1000 poly.restart.mpiio +restart 1000 restart.*.equil +restart 10000 poly.%.1 poly.%.2 nfile 10 +restart v_mystep poly.restart +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -226,10 +226,10 @@ options for <a class="reference internal" href="variable.html"><span class="doc" <p>For example, the following commands will write restart files every step from 1100 to 1200, and could be useful for debugging a simulation where something goes wrong at step 1163:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">s</span> <span class="n">equal</span> <span class="n">stride</span><span class="p">(</span><span class="mi">1100</span><span class="p">,</span><span class="mi">1200</span><span class="p">,</span><span class="mi">1</span><span class="p">)</span> -<span class="n">restart</span> <span class="n">v_s</span> <span class="n">tmp</span><span class="o">.</span><span class="n">restart</span> -</pre></div> -</div> +<pre class="literal-block"> +variable s equal stride(1100,1200,1) +restart v_s tmp.restart +</pre> <hr class="docutils" /> <p>See the <a class="reference internal" href="read_restart.html"><span class="doc">read_restart</span></a> command for information about what is stored in a restart file.</p> diff --git a/doc/html/run_style.html b/doc/html/run_style.html index 9ef0e69f67..b00835c7e1 100644 --- a/doc/html/run_style.html +++ b/doc/html/run_style.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>run_style command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">run_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +run_style style args +</pre> <ul class="simple"> <li>style = <em>verlet</em> or <em>verlet/split</em> or <em>respa</em> or <em>respa/omp</em></li> </ul> @@ -175,14 +175,14 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">run_style</span> <span class="n">verlet</span> -<span class="n">run_style</span> <span class="n">respa</span> <span class="mi">4</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">bond</span> <span class="mi">1</span> <span class="n">dihedral</span> <span class="mi">2</span> <span class="n">pair</span> <span class="mi">3</span> <span class="n">kspace</span> <span class="mi">4</span> -<span class="n">run_style</span> <span class="n">respa</span> <span class="mi">4</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">bond</span> <span class="mi">1</span> <span class="n">dihedral</span> <span class="mi">2</span> <span class="n">inner</span> <span class="mi">3</span> <span class="mf">5.0</span> <span class="mf">6.0</span> <span class="n">outer</span> <span class="mi">4</span> <span class="n">kspace</span> <span class="mi">4</span> -</pre></div> -</div> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">run_style</span> <span class="n">respa</span> <span class="mi">3</span> <span class="mi">4</span> <span class="mi">2</span> <span class="n">bond</span> <span class="mi">1</span> <span class="n">hybrid</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mi">1</span> <span class="n">kspace</span> <span class="mi">3</span> -</pre></div> -</div> +<pre class="literal-block"> +run_style verlet +run_style respa 4 2 2 2 bond 1 dihedral 2 pair 3 kspace 4 +run_style respa 4 2 2 2 bond 1 dihedral 2 inner 3 5.0 6.0 outer 4 kspace 4 +</pre> +<pre class="literal-block"> +run_style respa 3 4 2 bond 1 hybrid 2 2 1 kspace 3 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -219,9 +219,9 @@ its onn optimal layout, then require the 2nd partition’s layout to match the integer multiple constraint. See the <a class="reference internal" href="processors.html"><span class="doc">processors</span></a> command with its <em>part</em> keyword for a way to control this, e.g.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">procssors</span> <span class="o">*</span> <span class="o">*</span> <span class="o">*</span> <span class="n">part</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">multiple</span> -</pre></div> -</div> +<pre class="literal-block"> +procssors * * * part 1 2 multiple +</pre> <p>You can also use the <a class="reference internal" href="partition.html"><span class="doc">partition</span></a> command to explicitly specity the processor layout on each partition. E.g. for 2 partitions of 60 and 15 processors each:</p> @@ -314,10 +314,10 @@ angstrom “healing distance” (the distance between the outer and inne cutoffs) works reasonably well. We thus recommend the following settings for use of the <em>respa</em> style without SHAKE in biomolecular simulations:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">timestep</span> <span class="mf">4.0</span> -<span class="n">run_style</span> <span class="n">respa</span> <span class="mi">4</span> <span class="mi">2</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">inner</span> <span class="mi">2</span> <span class="mf">4.5</span> <span class="mf">6.0</span> <span class="n">middle</span> <span class="mi">3</span> <span class="mf">8.0</span> <span class="mf">10.0</span> <span class="n">outer</span> <span class="mi">4</span> -</pre></div> -</div> +<pre class="literal-block"> +timestep 4.0 +run_style respa 4 2 2 2 inner 2 4.5 6.0 middle 3 8.0 10.0 outer 4 +</pre> <p>With these settings, users can expect good energy conservation and roughly a 2.5 fold speedup over the <em>verlet</em> style with a 0.5 fmsec timestep.</p> @@ -332,11 +332,11 @@ respa in order to freeze out these high frequency motions and increase the size of the time steps in the respa hierarchy. The following settings can be used for biomolecular simulations with SHAKE and rRESPA:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="mi">2</span> <span class="nb">all</span> <span class="n">shake</span> <span class="mf">0.000001</span> <span class="mi">500</span> <span class="mi">0</span> <span class="n">m</span> <span class="mf">1.0</span> <span class="n">a</span> <span class="mi">1</span> -<span class="n">timestep</span> <span class="mf">4.0</span> -<span class="n">run_style</span> <span class="n">respa</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">inner</span> <span class="mi">1</span> <span class="mf">4.0</span> <span class="mf">5.0</span> <span class="n">outer</span> <span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +fix 2 all shake 0.000001 500 0 m 1.0 a 1 +timestep 4.0 +run_style respa 2 2 inner 1 4.0 5.0 outer 2 +</pre> <p>With these settings, users can expect good energy conservation and roughly a 1.5 fold speedup over the <em>verlet</em> style with SHAKE and a 2.0 fmsec timestep.</p> @@ -348,10 +348,10 @@ keywords. A 2-fold or more speedup can be obtained while maintaining good energy conservation. In real units, for a pure LJ fluid at liquid density, with a sigma of 3.0 angstroms, and epsilon of 0.1 Kcal/mol, the following settings seem to work well:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">timestep</span> <span class="mf">36.0</span> -<span class="n">run_style</span> <span class="n">respa</span> <span class="mi">3</span> <span class="mi">3</span> <span class="mi">4</span> <span class="n">inner</span> <span class="mi">1</span> <span class="mf">3.0</span> <span class="mf">4.0</span> <span class="n">middle</span> <span class="mi">2</span> <span class="mf">6.0</span> <span class="mf">7.0</span> <span class="n">outer</span> <span class="mi">3</span> -</pre></div> -</div> +<pre class="literal-block"> +timestep 36.0 +run_style respa 3 3 4 inner 1 3.0 4.0 middle 2 6.0 7.0 outer 3 +</pre> <hr class="docutils" /> <p>The <em>respa/omp</em> styles is a variant of <em>respa</em> adapted for use with pair, bond, angle, dihedral, improper, or kspace styles with an <em>omp</em> @@ -384,9 +384,9 @@ conserving energy to adequate precision.</p> </div> <div class="section" id="default"> <h2>Default</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">run_style</span> <span class="n">verlet</span> -</pre></div> -</div> +<pre class="literal-block"> +run_style verlet +</pre> <hr class="docutils" /> <p id="tuckerman"><strong>(Tuckerman)</strong> Tuckerman, Berne and Martyna, J Chem Phys, 97, p 1990 (1992).</p> diff --git a/doc/html/set.html b/doc/html/set.html index 89ea2eb1ff..075dbb3510 100644 --- a/doc/html/set.html +++ b/doc/html/set.html @@ -214,17 +214,17 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="nb">set</span> <span class="n">group</span> <span class="n">solvent</span> <span class="nb">type</span> <span class="mi">2</span> -<span class="nb">set</span> <span class="n">group</span> <span class="n">solvent</span> <span class="nb">type</span><span class="o">/</span><span class="n">fraction</span> <span class="mi">2</span> <span class="mf">0.5</span> <span class="mi">12393</span> -<span class="nb">set</span> <span class="n">group</span> <span class="n">edge</span> <span class="n">bond</span> <span class="mi">4</span> -<span class="nb">set</span> <span class="n">region</span> <span class="n">half</span> <span class="n">charge</span> <span class="mf">0.5</span> -<span class="nb">set</span> <span class="nb">type</span> <span class="mi">3</span> <span class="n">charge</span> <span class="mf">0.5</span> -<span class="nb">set</span> <span class="nb">type</span> <span class="mi">1</span><span class="o">*</span><span class="mi">3</span> <span class="n">charge</span> <span class="mf">0.5</span> -<span class="nb">set</span> <span class="n">atom</span> <span class="o">*</span> <span class="n">charge</span> <span class="n">v_atomfile</span> -<span class="nb">set</span> <span class="n">atom</span> <span class="mi">100</span><span class="o">*</span><span class="mi">200</span> <span class="n">x</span> <span class="mf">0.5</span> <span class="n">y</span> <span class="mf">1.0</span> -<span class="nb">set</span> <span class="n">atom</span> <span class="mi">1492</span> <span class="nb">type</span> <span class="mi">3</span> -</pre></div> -</div> +<pre class="literal-block"> +set group solvent type 2 +set group solvent type/fraction 2 0.5 12393 +set group edge bond 4 +set region half charge 0.5 +set type 3 charge 0.5 +set type 1*3 charge 0.5 +set atom * charge v_atomfile +set atom 100*200 x 0.5 y 1.0 +set atom 1492 type 3 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -252,7 +252,7 @@ style <em>type</em> selects all the atoms in a range of types. The style <em>mol</em> selects all the atoms in a range of molecule IDs.</p> <p>In each of the range cases, the range can be specified as a single numeric value, or a wildcard asterisk can be used to specify a range -of values. This takes the form “*” or “<em>n” or “n</em>” or “m*n”. For +of values. This takes the form “*” or “*n” or “n*” or “m*n”. For example, for the style <em>type</em>, if N = the number of atom types, then an asterisk with no numeric values means all types from 1 to N. A leading asterisk means all types from 1 to n (inclusive). A trailing diff --git a/doc/html/special_bonds.html b/doc/html/special_bonds.html index 08a1e3f74c..d431cc49b3 100644 --- a/doc/html/special_bonds.html +++ b/doc/html/special_bonds.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>special_bonds command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">special_bonds</span> <span class="n">keyword</span> <span class="n">values</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +special_bonds keyword values ... +</pre> <ul class="simple"> <li>one or more keyword/value pairs may be appended</li> <li>keyword = <em>amber</em> or <em>charmm</em> or <em>dreiding</em> or <em>fene</em> or <em>lj/coul</em> or <em>lj</em> or <em>coul</em> or <em>angle</em> or <em>dihedral</em> or <em>extra</em></li> @@ -152,14 +152,14 @@ N = number of extra 1-2,1-3,1-4 interactions to save space for </pre> <p>Examples:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">special_bonds</span> <span class="n">amber</span> -<span class="n">special_bonds</span> <span class="n">charmm</span> -<span class="n">special_bonds</span> <span class="n">fene</span> <span class="n">dihedral</span> <span class="n">no</span> -<span class="n">special_bonds</span> <span class="n">lj</span><span class="o">/</span><span class="n">coul</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.5</span> <span class="n">angle</span> <span class="n">yes</span> <span class="n">dihedral</span> <span class="n">yes</span> -<span class="n">special_bonds</span> <span class="n">lj</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.5</span> <span class="n">coul</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="n">dihedral</span> <span class="n">yes</span> -<span class="n">special_bonds</span> <span class="n">lj</span><span class="o">/</span><span class="n">coul</span> <span class="mi">0</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">extra</span> <span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +special_bonds amber +special_bonds charmm +special_bonds fene dihedral no +special_bonds lj/coul 0.0 0.0 0.5 angle yes dihedral yes +special_bonds lj 0.0 0.0 0.5 coul 0.0 0.0 0.0 dihedral yes +special_bonds lj/coul 0 1 1 extra 2 +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -301,7 +301,7 @@ current system has.</p> the system). If new bonds are created (or molecules added containing atoms with more special neighbors), the size of this list needs to grow. Note that adding a single bond always adds a new 1st neighbor -but may also induce <em>many</em> new 2nd and 3rd neighbors, depending on the +but may also induce *many* new 2nd and 3rd neighbors, depending on the molecular topology of your system. Using the <em>extra</em> keyword leaves empty space in the list for this N additional 1st, 2nd, or 3rd neighbors to be added. If you do not do this, you may get an error @@ -325,14 +325,14 @@ Coul: coul 0.0 0.0 1.0</p> <p>because the LJ settings are reset to their default values each time the command is issued.</p> <p>Likewise</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">special_bonds</span> <span class="n">amber</span> -<span class="n">special_bonds</span> <span class="n">extra</span> <span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +special_bonds amber +special_bonds extra 2 +</pre> <p>is not the same as this single command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">special_bonds</span> <span class="n">amber</span> <span class="n">extra</span> <span class="mi">2</span> -</pre></div> -</div> +<pre class="literal-block"> +special_bonds amber extra 2 +</pre> <p>since in the former case, the 2nd command will reset all the LJ and Coulombic weights to 0.0 (the default).</p> <p>One exception to this rule is the <em>extra</em> option itself. It is not diff --git a/doc/html/tad.html b/doc/html/tad.html index d4f05d75ae..e4bab3f210 100644 --- a/doc/html/tad.html +++ b/doc/html/tad.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>tad command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">tad</span> <span class="n">N</span> <span class="n">t_event</span> <span class="n">T_lo</span> <span class="n">T_hi</span> <span class="n">delta</span> <span class="n">tmax</span> <span class="n">compute</span><span class="o">-</span><span class="n">ID</span> <span class="n">keyword</span> <span class="n">value</span> <span class="o">...</span> -</pre></div> -</div> +<pre class="literal-block"> +tad N t_event T_lo T_hi delta tmax compute-ID keyword value ... +</pre> <ul class="simple"> <li>N = # of timesteps to run (not including dephasing/quenching)</li> <li>t_event = timestep interval between event checks</li> @@ -162,15 +162,15 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">tad</span> <span class="mi">2000</span> <span class="mi">50</span> <span class="mi">1800</span> <span class="mi">2300</span> <span class="mf">0.01</span> <span class="mf">0.01</span> <span class="n">event</span> -<span class="n">tad</span> <span class="mi">2000</span> <span class="mi">50</span> <span class="mi">1800</span> <span class="mi">2300</span> <span class="mf">0.01</span> <span class="mf">0.01</span> <span class="n">event</span> <span class="o">&</span> - <span class="nb">min</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">05</span> <span class="mi">1</span><span class="n">e</span><span class="o">-</span><span class="mi">05</span> <span class="mi">100</span> <span class="mi">100</span> <span class="o">&</span> - <span class="n">neb</span> <span class="mf">0.0</span> <span class="mf">0.01</span> <span class="mi">200</span> <span class="mi">200</span> <span class="mi">20</span> <span class="o">&</span> - <span class="n">min_style</span> <span class="n">cg</span> <span class="o">&</span> - <span class="n">neb_style</span> <span class="n">fire</span> <span class="o">&</span> - <span class="n">neb_log</span> <span class="n">log</span><span class="o">.</span><span class="n">neb</span> -</pre></div> -</div> +<pre class="literal-block"> +tad 2000 50 1800 2300 0.01 0.01 event +tad 2000 50 1800 2300 0.01 0.01 event & + min 1e-05 1e-05 100 100 & + neb 0.0 0.01 200 200 20 & + min_style cg & + neb_style fire & + neb_log log.neb +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -215,19 +215,19 @@ partitions remain idle. See <a class="reference internal" href="Section_howto.ht multi-replica simulations.</p> <p>A TAD run has several stages, which are repeated each time an event is performed. The logic for a TAD run is as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="k">while</span> <span class="p">(</span><span class="n">time</span> <span class="n">remains</span><span class="p">):</span> - <span class="k">while</span> <span class="p">(</span><span class="n">time</span> <span class="o"><</span> <span class="n">tstop</span><span class="p">):</span> - <span class="n">until</span> <span class="p">(</span><span class="n">event</span> <span class="n">occurs</span><span class="p">):</span> - <span class="n">run</span> <span class="n">dynamics</span> <span class="k">for</span> <span class="n">t_event</span> <span class="n">steps</span> - <span class="n">quench</span> - <span class="n">run</span> <span class="n">neb</span> <span class="n">calculation</span> <span class="n">using</span> <span class="nb">all</span> <span class="n">replicas</span> - <span class="n">compute</span> <span class="n">tlo</span> <span class="kn">from</span> <span class="nn">energy</span> <span class="n">barrier</span> - <span class="n">update</span> <span class="n">earliest</span> <span class="n">event</span> - <span class="n">update</span> <span class="n">tstop</span> - <span class="n">reflect</span> <span class="n">back</span> <span class="n">into</span> <span class="n">current</span> <span class="n">basin</span> - <span class="n">execute</span> <span class="n">earliest</span> <span class="n">event</span> -</pre></div> -</div> +<pre class="literal-block"> +while (time remains): + while (time < tstop): + until (event occurs): + run dynamics for t_event steps + quench + run neb calculation using all replicas + compute tlo from energy barrier + update earliest event + update tstop + reflect back into current basin + execute earliest event +</pre> <p>Before this outer loop begins, the initial potential energy basin is identified by quenching (an energy minimization, see below) the initial state and storing the resulting coordinates for reference.</p> @@ -298,7 +298,7 @@ at the low temperature.</p> current basin to the stopping time. This last number can be used to judge whether the stopping time is too short or too long (see above).</p> <p><em>t_lo</em> is the low-temperature event time when the current basin was -entered, in units of timestep. del<em>t_lo</em> is the time of each detected +entered, in units of timestep. del*t_lo* is the time of each detected event, measured relative to <em>t_lo</em>. <em>delt_lo</em> is equal to the high-temperature time since entering the current basin, scaled by an exponential factor that depends on the hi/lo temperature ratio and the diff --git a/doc/html/thermo.html b/doc/html/thermo.html index 8567a3fd63..7a5cb15c32 100644 --- a/doc/html/thermo.html +++ b/doc/html/thermo.html @@ -162,10 +162,10 @@ this context. Other similar math functions could easily be added as options for <a class="reference internal" href="variable.html"><span class="doc">equal-style variables</span></a>.</p> <p>For example, the following commands will output thermodynamic info at timesteps 0,10,20,30,100,200,300,1000,2000,etc:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">s</span> <span class="n">equal</span> <span class="n">logfreq</span><span class="p">(</span><span class="mi">10</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">10</span><span class="p">)</span> -<span class="n">thermo</span> <span class="n">v_s</span> -</pre></div> -</div> +<pre class="literal-block"> +variable s equal logfreq(10,3,10) +thermo v_s +</pre> </div> <div class="section" id="restrictions"> <h2>Restrictions</h2> diff --git a/doc/html/thermo_style.html b/doc/html/thermo_style.html index 5a6e41bfc9..4f0f68acae 100644 --- a/doc/html/thermo_style.html +++ b/doc/html/thermo_style.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>thermo_style command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">thermo_style</span> <span class="n">style</span> <span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +thermo_style style args +</pre> <ul class="simple"> <li>style = <em>one</em> or <em>multi</em> or <em>custom</em></li> <li>args = list of arguments for a particular style</li> @@ -207,12 +207,12 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">thermo_style</span> <span class="n">multi</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">pe</span> <span class="n">etotal</span> <span class="n">press</span> <span class="n">vol</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">etotal</span> <span class="n">c_myTemp</span> <span class="n">v_abc</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">etotal</span> <span class="n">c_myTemp</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> <span class="n">v_abc</span> -</pre></div> -</div> +<pre class="literal-block"> +thermo_style multi +thermo_style custom step temp pe etotal press vol +thermo_style custom step temp etotal c_myTemp v_abc +thermo_style custom step temp etotal c_myTemp[*] v_abc +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -260,9 +260,9 @@ the thermo_modify command after it.</p> computed: “temp”, “press”, “ke”, “etotal”, “enthalpy”, “pxx”, etc. By default this is done by using a <em>temperature</em> compute which is created when LAMMPS starts up, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">thermo_temp</span> <span class="nb">all</span> <span class="n">temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute thermo_temp all temp +</pre> <p>See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> command for details. Note that the ID of this compute is <em>thermo_temp</em> and the group is <em>all</em>. You can change the attributes of this temperature (e.g. its @@ -275,9 +275,9 @@ This is done via the <a class="reference internal" href="thermo_modify.html"><sp computed: “press”, “enthalpy”, “pxx”, etc. By default this is done by using a <em>pressure</em> compute which is created when LAMMPS starts up, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">thermo_press</span> <span class="nb">all</span> <span class="n">pressure</span> <span class="n">thermo_temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute thermo_press all pressure thermo_temp +</pre> <p>See the <a class="reference internal" href="compute_pressure.html"><span class="doc">compute pressure</span></a> command for details. Note that the ID of this compute is <em>thermo_press</em> and the group is <em>all</em>. You can change the attributes of this pressure via the @@ -290,9 +290,9 @@ that requires a pressure. This is done via the be computed: “pe”, “etotal”, “ebond”, etc. This is done by using a <em>pe</em> compute which is created when LAMMPS starts up, as if this command had been issued:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">thermo_pe</span> <span class="nb">all</span> <span class="n">pe</span> -</pre></div> -</div> +<pre class="literal-block"> +compute thermo_pe all pe +</pre> <p>See the <a class="reference internal" href="compute_pe.html"><span class="doc">compute pe</span></a> command for details. Note that the ID of this compute is <em>thermo_pe</em> and the group is <em>all</em>. You can change the attributes of this potential energy via the @@ -394,7 +394,7 @@ of these quantities in terms of the internal LAMMPS cell dimensions <p>For output values from a compute or fix, the bracketed index I used to index a vector, as in <em>c_ID[I]</em> or <em>f_ID[I]</em>, can be specified using a wildcard asterisk with the index to effectively specify -multiple values. This takes the form “*” or “<em>n” or “n</em>” or “m*n”. +multiple values. This takes the form “*” or “*n” or “n*” or “m*n”. If N = the size of the vector (for <em>mode</em> = scalar) or the number of columns in the array (for <em>mode</em> = vector), then an asterisk with no numeric values means all indices from 1 to N. A leading asterisk @@ -405,13 +405,13 @@ indices from m to n (inclusive).</p> vector had been listed one by one. E.g. these 2 thermo_style commands are equivalent, since the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> command creates a global vector with 6 values.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">myTemp</span> <span class="nb">all</span> <span class="n">temp</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">etotal</span> <span class="n">c_myTemp</span><span class="p">[</span><span class="o">*</span><span class="p">]</span> -<span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">etotal</span> <span class="o">&</span> - <span class="n">c_myTemp</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_myTemp</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> <span class="n">c_myTemp</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="o">&</span> - <span class="n">c_myTemp</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="n">c_myTemp</span><span class="p">[</span><span class="mi">5</span><span class="p">]</span> <span class="n">c_myTemp</span><span class="p">[</span><span class="mi">6</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +compute myTemp all temp +thermo_style custom step temp etotal c_myTemp[*] +thermo_style custom step temp etotal & + c_myTemp[1] c_myTemp[2] c_myTemp[3] & + c_myTemp[4] c_myTemp[5] c_myTemp[6] +</pre> <hr class="docutils" /> <p>The <em>c_ID</em> and <em>c_ID[I]</em> and <em>c_ID[I][J]</em> keywords allow global values calculated by a compute to be output. As discussed on the @@ -490,9 +490,9 @@ division by “natoms” in the variable formula if this is not the case </div> <div class="section" id="default"> <h2>Default</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">thermo_style</span> <span class="n">one</span> -</pre></div> -</div> +<pre class="literal-block"> +thermo_style one +</pre> </div> </div> diff --git a/doc/html/tutorial_drude.html b/doc/html/tutorial_drude.html index e414d5d007..1f4763d477 100644 --- a/doc/html/tutorial_drude.html +++ b/doc/html/tutorial_drude.html @@ -204,14 +204,14 @@ The masses and charges of DCs and DPs are computed from <em>phenol.dff</em>, as well as the DC-DP bond constants. The file <em>phenol.dff</em> contains the polarizabilities of the atom types and the mass of the Drude particles, for instance:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="c1"># units: kJ/mol, A, deg</span> -<span class="c1"># kforce is in the form k/2 r_D^2</span> -<span class="c1"># type m_D/u q_D/e k_D alpha/A3 thole</span> -<span class="n">OH</span> <span class="mf">0.4</span> <span class="o">-</span><span class="mf">1.0</span> <span class="mf">4184.0</span> <span class="mf">0.63</span> <span class="mf">0.67</span> -<span class="n">CA</span> <span class="mf">0.4</span> <span class="o">-</span><span class="mf">1.0</span> <span class="mf">4184.0</span> <span class="mf">1.36</span> <span class="mf">2.51</span> -<span class="n">CAI</span> <span class="mf">0.4</span> <span class="o">-</span><span class="mf">1.0</span> <span class="mf">4184.0</span> <span class="mf">1.09</span> <span class="mf">2.51</span> -</pre></div> -</div> +<pre class="literal-block"> +# units: kJ/mol, A, deg +# kforce is in the form k/2 r_D^2 +# type m_D/u q_D/e k_D alpha/A3 thole +OH 0.4 -1.0 4184.0 0.63 0.67 +CA 0.4 -1.0 4184.0 1.36 2.51 +CAI 0.4 -1.0 4184.0 1.09 2.51 +</pre> <p>The hydrogen atoms are absent from this file, so they will be treated as non-polarizable atoms. In the non-polarizable data file <em>data.102494.lmp</em>, atom names corresponding to the atom type numbers @@ -252,9 +252,9 @@ be reserved by using the <em>extra</em> keyword of the <em>special_bonds</em> command. With our phenol, there is 1 more special neighbor for which space is required. Otherwise LAMMPS crashes and gives the required value.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">special_bonds</span> <span class="n">lj</span><span class="o">/</span><span class="n">coul</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="mf">0.5</span> <span class="n">extra</span> <span class="mi">1</span> -</pre></div> -</div> +<pre class="literal-block"> +special_bonds lj/coul 0.0 0.0 0.5 extra 1 +</pre> <p>Let us assume we want to run a simple NVT simulation at 300 K. Note that Drude oscillators need to be thermalized at a low temperature in order to approximate a self-consistent field (SCF), therefore it is not @@ -263,17 +263,17 @@ are approximated by a charged DC-DP pair, the <em>pair_style</em> must include Coulomb interactions, for instance <em>lj/cut/coul/long</em> with <em>kspace_style pppm</em>. For example, with a cutoff of 10. and a precision 1.e-4:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> -<span class="n">kspace_style</span> <span class="n">pppm</span> <span class="mf">1.0e-4</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style lj/cut/coul/long 10.0 +kspace_style pppm 1.0e-4 +</pre> <p>As compared to the non-polarizable input file, <em>pair_coeff</em> lines need to be added for the DPs. Since the DPs have no Lennard-Jones interactions, their <em>epsilon</em> is 0. so the only <em>pair_coeff</em> line that needs to be added is</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="o">*</span> <span class="mi">6</span><span class="o">*</span> <span class="mf">0.0</span> <span class="mf">0.0</span> <span class="c1"># All-DPs</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff * 6* 0.0 0.0 # All-DPs +</pre> <p>Now for the thermalization, the simplest choice is to use the <a class="reference internal" href="fix_langevin_drude.html"><span class="doc">fix langevin/drude</span></a>.</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">LANG</span> <span class="nb">all</span> <span class="n">langevin</span><span class="o">/</span><span class="n">drude</span> <span class="mf">300.</span> <span class="mi">100</span> <span class="mi">12435</span> <span class="mf">1.</span> <span class="mi">20</span> <span class="mi">13977</span> </pre></div> @@ -286,9 +286,9 @@ time 20 and random seed 13977. Only the DCs and non-polarizable atoms need to be in this fix’s group. LAMMPS will thermostate the DPs together with their DC. For this, ghost atoms need to know their velocities. Thus you need to add the following command:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">comm_modify</span> <span class="n">vel</span> <span class="n">yes</span> -</pre></div> -</div> +<pre class="literal-block"> +comm_modify vel yes +</pre> <p>In order to avoid that the center of mass of the whole system drifts due to the random forces of the Langevin thermostat on DCs, you can add the <em>zero yes</em> option at the end of the fix line.</p> @@ -311,10 +311,10 @@ modification of forces but no position/velocity updates), the fix <p>Finally, do not forget to update the atom type elements if you use them in a <em>dump_modify ... element ...</em> command, by adding the element type of the DPs. Here for instance</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">dump</span> <span class="n">DUMP</span> <span class="nb">all</span> <span class="n">custom</span> <span class="mi">10</span> <span class="n">dump</span><span class="o">.</span><span class="n">lammpstrj</span> <span class="nb">id</span> <span class="n">mol</span> <span class="nb">type</span> <span class="n">element</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span> <span class="n">ix</span> <span class="n">iy</span> <span class="n">iz</span> -<span class="n">dump_modify</span> <span class="n">DUMP</span> <span class="n">element</span> <span class="n">C</span> <span class="n">C</span> <span class="n">O</span> <span class="n">H</span> <span class="n">H</span> <span class="n">D</span> <span class="n">D</span> <span class="n">D</span> -</pre></div> -</div> +<pre class="literal-block"> +dump DUMP all custom 10 dump.lammpstrj id mol type element x y z ix iy iz +dump_modify DUMP element C C O H H D D D +</pre> <p>The input file should now be ready for use!</p> <p>You will notice that the global temperature <em>thermo_temp</em> computed by LAMMPS is not 300. K as wanted. This is because LAMMPS treats DPs as @@ -327,9 +327,9 @@ to their DCs, you should use the <a class="reference internal" href="compute_tem <p>And then output the correct temperatures of the Drude oscillators using <em>thermo_style custom</em> with respectively <em>c_TDRUDE[1]</em> and <em>c_TDRUDE[2]</em>. These should be close to 300.0 and 1.0 on average.</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">temp</span> <span class="n">c_TDRUDE</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="n">c_TDRUDE</span><span class="p">[</span><span class="mi">2</span><span class="p">]</span> -</pre></div> -</div> +<pre class="literal-block"> +thermo_style custom step temp c_TDRUDE[1] c_TDRUDE[2] +</pre> <hr class="docutils" /> <p><strong>Thole screening</strong></p> <p>Dipolar interactions represented by point charges on springs may not @@ -346,9 +346,9 @@ correction to the Coulomb pair_styles, which dampens at short distance the interactions between the charges representing the induced dipoles. It is to be used as <em>hybrid/overlay</em> with any standard <em>coul</em> pair style. In our example, we would use</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_style</span> <span class="n">hybrid</span><span class="o">/</span><span class="n">overlay</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">10.0</span> <span class="n">thole</span> <span class="mf">2.6</span> <span class="mf">10.0</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_style hybrid/overlay lj/cut/coul/long 10.0 thole 2.6 10.0 +</pre> <p>This tells LAMMPS that we are using two pair_styles. The first one is as above (<em>lj/cut/coul/long 10.0</em>). The second one is a <em>thole</em> pair_style with default screening factor 2.6 (<a class="reference internal" href="#noskov"><span class="std std-ref">Noskov</span></a>) and @@ -358,50 +358,48 @@ coefficients of all the pairs of atom types with i < j should be explicitly defined. The output of the <em>polarizer</em> script can be used to complete the <em>pair_coeff</em> section of the input file. In our example, this will look like:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0700</span> <span class="mf">3.550</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0700</span> <span class="mf">3.550</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">3</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.1091</span> <span class="mf">3.310</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">4</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0458</span> <span class="mf">2.985</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0700</span> <span class="mf">3.550</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">3</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.1091</span> <span class="mf">3.310</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">4</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0458</span> <span class="mf">2.985</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">3</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.1700</span> <span class="mf">3.070</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">4</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0714</span> <span class="mf">2.745</span> -<span class="n">pair_coeff</span> <span class="mi">4</span> <span class="mi">4</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0300</span> <span class="mf">2.420</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="mi">5</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0000</span> <span class="mf">0.000</span> -<span class="n">pair_coeff</span> <span class="o">*</span> <span class="mi">6</span><span class="o">*</span> <span class="n">lj</span><span class="o">/</span><span class="n">cut</span><span class="o">/</span><span class="n">coul</span><span class="o">/</span><span class="n">long</span> <span class="mf">0.0000</span> <span class="mf">0.000</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="n">thole</span> <span class="mf">1.090</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">2</span> <span class="n">thole</span> <span class="mf">1.218</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">3</span> <span class="n">thole</span> <span class="mf">0.829</span> <span class="mf">1.590</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">6</span> <span class="n">thole</span> <span class="mf">1.090</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">7</span> <span class="n">thole</span> <span class="mf">1.218</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">8</span> <span class="n">thole</span> <span class="mf">0.829</span> <span class="mf">1.590</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">2</span> <span class="n">thole</span> <span class="mf">1.360</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">3</span> <span class="n">thole</span> <span class="mf">0.926</span> <span class="mf">1.590</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">6</span> <span class="n">thole</span> <span class="mf">1.218</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">7</span> <span class="n">thole</span> <span class="mf">1.360</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">2</span> <span class="mi">8</span> <span class="n">thole</span> <span class="mf">0.926</span> <span class="mf">1.590</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">3</span> <span class="n">thole</span> <span class="mf">0.630</span> <span class="mf">0.670</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">6</span> <span class="n">thole</span> <span class="mf">0.829</span> <span class="mf">1.590</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">7</span> <span class="n">thole</span> <span class="mf">0.926</span> <span class="mf">1.590</span> -<span class="n">pair_coeff</span> <span class="mi">3</span> <span class="mi">8</span> <span class="n">thole</span> <span class="mf">0.630</span> <span class="mf">0.670</span> -<span class="n">pair_coeff</span> <span class="mi">6</span> <span class="mi">6</span> <span class="n">thole</span> <span class="mf">1.090</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">6</span> <span class="mi">7</span> <span class="n">thole</span> <span class="mf">1.218</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">6</span> <span class="mi">8</span> <span class="n">thole</span> <span class="mf">0.829</span> <span class="mf">1.590</span> -<span class="n">pair_coeff</span> <span class="mi">7</span> <span class="mi">7</span> <span class="n">thole</span> <span class="mf">1.360</span> <span class="mf">2.510</span> -<span class="n">pair_coeff</span> <span class="mi">7</span> <span class="mi">8</span> <span class="n">thole</span> <span class="mf">0.926</span> <span class="mf">1.590</span> -<span class="n">pair_coeff</span> <span class="mi">8</span> <span class="mi">8</span> <span class="n">thole</span> <span class="mf">0.630</span> <span class="mf">0.670</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff 1 1 lj/cut/coul/long 0.0700 3.550 +pair_coeff 1 2 lj/cut/coul/long 0.0700 3.550 +pair_coeff 1 3 lj/cut/coul/long 0.1091 3.310 +pair_coeff 1 4 lj/cut/coul/long 0.0458 2.985 +pair_coeff 2 2 lj/cut/coul/long 0.0700 3.550 +pair_coeff 2 3 lj/cut/coul/long 0.1091 3.310 +pair_coeff 2 4 lj/cut/coul/long 0.0458 2.985 +pair_coeff 3 3 lj/cut/coul/long 0.1700 3.070 +pair_coeff 3 4 lj/cut/coul/long 0.0714 2.745 +pair_coeff 4 4 lj/cut/coul/long 0.0300 2.420 +pair_coeff * 5 lj/cut/coul/long 0.0000 0.000 +pair_coeff * 6* lj/cut/coul/long 0.0000 0.000 +pair_coeff 1 1 thole 1.090 2.510 +pair_coeff 1 2 thole 1.218 2.510 +pair_coeff 1 3 thole 0.829 1.590 +pair_coeff 1 6 thole 1.090 2.510 +pair_coeff 1 7 thole 1.218 2.510 +pair_coeff 1 8 thole 0.829 1.590 +pair_coeff 2 2 thole 1.360 2.510 +pair_coeff 2 3 thole 0.926 1.590 +pair_coeff 2 6 thole 1.218 2.510 +pair_coeff 2 7 thole 1.360 2.510 +pair_coeff 2 8 thole 0.926 1.590 +pair_coeff 3 3 thole 0.630 0.670 +pair_coeff 3 6 thole 0.829 1.590 +pair_coeff 3 7 thole 0.926 1.590 +pair_coeff 3 8 thole 0.630 0.670 +pair_coeff 6 6 thole 1.090 2.510 +pair_coeff 6 7 thole 1.218 2.510 +pair_coeff 6 8 thole 0.829 1.590 +pair_coeff 7 7 thole 1.360 2.510 +pair_coeff 7 8 thole 0.926 1.590 +pair_coeff 8 8 thole 0.630 0.670 +</pre> <p>For the <em>thole</em> pair style the coefficients are</p> <ol class="arabic simple"> <li>the atom polarizability in units of cubic length</li> <li>the screening factor of the Thole function (optional, default value specified by the pair_style command)</li> -</ol> -<ul class="simple"> <li>the cutoff (optional, default value defined by the pair_style command)</li> -</ul> +</ol> <p>The special neighbors have charge-charge and charge-dipole interactions screened by the <em>coul</em> factors of the <em>special_bonds</em> command (0.0, 0.0, and 0.5 in the example above). Without using the @@ -458,14 +456,14 @@ We do want the pressure to correspond to the whole system, but we want the temperature to correspond to the fix group only. We must then use the <em>fix_modify</em> command for this. In the end, the block of instructions for thermostating and barostating will look like</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">TATOMS</span> <span class="n">ATOMS</span> <span class="n">temp</span> -<span class="n">fix</span> <span class="n">DIRECT</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">direct</span> -<span class="n">fix</span> <span class="n">NPT</span> <span class="n">ATOMS</span> <span class="n">npt</span> <span class="n">temp</span> <span class="mf">300.</span> <span class="mf">300.</span> <span class="mi">100</span> <span class="n">iso</span> <span class="mf">1.</span> <span class="mf">1.</span> <span class="mi">500</span> -<span class="n">fix_modify</span> <span class="n">NPT</span> <span class="n">temp</span> <span class="n">TATOMS</span> <span class="n">press</span> <span class="n">thermo_press</span> -<span class="n">fix</span> <span class="n">NVT</span> <span class="n">DRUDES</span> <span class="n">nvt</span> <span class="n">temp</span> <span class="mf">1.</span> <span class="mf">1.</span> <span class="mi">20</span> -<span class="n">fix</span> <span class="n">INVERSE</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">inverse</span> -</pre></div> -</div> +<pre class="literal-block"> +compute TATOMS ATOMS temp +fix DIRECT all drude/transform/direct +fix NPT ATOMS npt temp 300. 300. 100 iso 1. 1. 500 +fix_modify NPT temp TATOMS press thermo_press +fix NVT DRUDES nvt temp 1. 1. 20 +fix INVERSE all drude/transform/inverse +</pre> <hr class="docutils" /> <p><strong>Rigid bodies</strong></p> <p>You may want to simulate molecules as rigid bodies (but polarizable). @@ -474,12 +472,12 @@ kind of polarizable TIP4P water. The rigid bodies and the DPs should be integrated separately, even with the Langevin thermostat. Let us review the different thermostats and ensemble combinations.</p> <p>NVT ensemble using Langevin thermostat:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">comm_modify</span> <span class="n">vel</span> <span class="n">yes</span> -<span class="n">fix</span> <span class="n">LANG</span> <span class="nb">all</span> <span class="n">langevin</span><span class="o">/</span><span class="n">drude</span> <span class="mf">300.</span> <span class="mi">100</span> <span class="mi">12435</span> <span class="mf">1.</span> <span class="mi">20</span> <span class="mi">13977</span> -<span class="n">fix</span> <span class="n">RIGID</span> <span class="n">ATOMS</span> <span class="n">rigid</span><span class="o">/</span><span class="n">nve</span><span class="o">/</span><span class="n">small</span> <span class="n">molecule</span> -<span class="n">fix</span> <span class="n">NVE</span> <span class="n">DRUDES</span> <span class="n">nve</span> -</pre></div> -</div> +<pre class="literal-block"> +comm_modify vel yes +fix LANG all langevin/drude 300. 100 12435 1. 20 13977 +fix RIGID ATOMS rigid/nve/small molecule +fix NVE DRUDES nve +</pre> <p>NVT ensemble using Nose-Hoover thermostat:</p> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">fix</span> <span class="n">DIRECT</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">direct</span> <span class="n">fix</span> <span class="n">RIGID</span> <span class="n">ATOMS</span> <span class="n">rigid</span><span class="o">/</span><span class="n">nvt</span><span class="o">/</span><span class="n">small</span> <span class="n">molecule</span> <span class="n">temp</span> <span class="mf">300.</span> <span class="mf">300.</span> <span class="mi">100</span> @@ -488,21 +486,21 @@ review the different thermostats and ensemble combinations.</p> </pre></div> </div> <p>NPT ensemble with Langevin thermostat:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">comm_modify</span> <span class="n">vel</span> <span class="n">yes</span> -<span class="n">fix</span> <span class="n">LANG</span> <span class="nb">all</span> <span class="n">langevin</span><span class="o">/</span><span class="n">drude</span> <span class="mf">300.</span> <span class="mi">100</span> <span class="mi">12435</span> <span class="mf">1.</span> <span class="mi">20</span> <span class="mi">13977</span> -<span class="n">fix</span> <span class="n">RIGID</span> <span class="n">ATOMS</span> <span class="n">rigid</span><span class="o">/</span><span class="n">nph</span><span class="o">/</span><span class="n">small</span> <span class="n">molecule</span> <span class="n">iso</span> <span class="mf">1.</span> <span class="mf">1.</span> <span class="mi">500</span> -<span class="n">fix</span> <span class="n">NVE</span> <span class="n">DRUDES</span> <span class="n">nve</span> -</pre></div> -</div> +<pre class="literal-block"> +comm_modify vel yes +fix LANG all langevin/drude 300. 100 12435 1. 20 13977 +fix RIGID ATOMS rigid/nph/small molecule iso 1. 1. 500 +fix NVE DRUDES nve +</pre> <p>NPT ensemble using Nose-Hoover thermostat:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">TATOM</span> <span class="n">ATOMS</span> <span class="n">temp</span> -<span class="n">fix</span> <span class="n">DIRECT</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">direct</span> -<span class="n">fix</span> <span class="n">RIGID</span> <span class="n">ATOMS</span> <span class="n">rigid</span><span class="o">/</span><span class="n">npt</span><span class="o">/</span><span class="n">small</span> <span class="n">molecule</span> <span class="n">temp</span> <span class="mf">300.</span> <span class="mf">300.</span> <span class="mi">100</span> <span class="n">iso</span> <span class="mf">1.</span> <span class="mf">1.</span> <span class="mi">500</span> -<span class="n">fix_modify</span> <span class="n">RIGID</span> <span class="n">temp</span> <span class="n">TATOM</span> <span class="n">press</span> <span class="n">thermo_press</span> -<span class="n">fix</span> <span class="n">NVT</span> <span class="n">DRUDES</span> <span class="n">nvt</span> <span class="n">temp</span> <span class="mf">1.</span> <span class="mf">1.</span> <span class="mi">20</span> -<span class="n">fix</span> <span class="n">INVERSE</span> <span class="nb">all</span> <span class="n">drude</span><span class="o">/</span><span class="n">transform</span><span class="o">/</span><span class="n">inverse</span> -</pre></div> -</div> +<pre class="literal-block"> +compute TATOM ATOMS temp +fix DIRECT all drude/transform/direct +fix RIGID ATOMS rigid/npt/small molecule temp 300. 300. 100 iso 1. 1. 500 +fix_modify RIGID temp TATOM press thermo_press +fix NVT DRUDES nvt temp 1. 1. 20 +fix INVERSE all drude/transform/inverse +</pre> <hr class="docutils" /> <p id="lamoureux"><strong>(Lamoureux)</strong> Lamoureux and Roux, J Chem Phys, 119, 3025-3039 (2003)</p> <p id="schroeder"><strong>(Schroeder)</strong> Schroeder and Steinhauser, J Chem Phys, 133, diff --git a/doc/html/tutorial_github.html b/doc/html/tutorial_github.html index e6170b8961..ad4a731ba8 100644 --- a/doc/html/tutorial_github.html +++ b/doc/html/tutorial_github.html @@ -135,14 +135,14 @@ git. You may want to have a look at the <a class="reference external" href="http <p><strong>Making an account</strong></p> <p>First of all, you need a GitHub account. This is fairly simple, just go to <a class="reference external" href="https://github.com">GitHub</a> and create an account by clicking -the <a href="#id1"><span class="problematic" id="id2">``</span></a>Sign up for GitHub’’ button. Once your account is created, you +the “Sign up for GitHub” button. Once your account is created, you can sign in by clicking the button in the top left and filling in your username or e-mail address and password.</p> <hr class="docutils" /> <p><strong>Forking the repository</strong></p> <p>To get changes into LAMMPS, you need to first fork the repository. At the time of writing, LAMMPS-ICMS is the preferred fork. Go to <a class="reference external" href="https://github.com/lammps/lammps">LAMMPS on GitHub</a> and make sure branch is -set to <a href="#id3"><span class="problematic" id="id4">``</span></a>lammps-icms’‘, see the figure below.</p> +set to “lammps-icms”, see the figure below.</p> <img alt="_images/tutorial_branch.png" class="align-center" src="_images/tutorial_branch.png" /> <p>Now, click on fork in the top right corner:</p> <img alt="_images/tutorial_fork.png" class="align-center" src="_images/tutorial_fork.png" /> @@ -158,7 +158,7 @@ will contain these changes, a so-called feature branch.</p> <p><strong>Feature branches</strong></p> <p>Since LAMMPS is such a big project and most user contributions come in small portions, the most ideal workflow for LAMMPS is the so-called -<a href="#id5"><span class="problematic" id="id6">``</span></a>Feature branch’’ workflow. It is explained in great detail here: +“Feature branch” workflow. It is explained in great detail here: <a class="reference external" href="https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow">feature branch workflow</a>.</p> <p>The idea is that every new feature for LAMMPS gets its own branch. This way, it is fairly painless to incorporate new features @@ -172,7 +172,7 @@ to use a command line.</p> </div> <p>You can find the proper url to the right of the “HTTPS” block, see figure.</p> <img alt="_images/tutorial_https_block.png" class="align-center" src="_images/tutorial_https_block.png" /> -<p>The above command copies (<a href="#id7"><span class="problematic" id="id8">``</span></a>clones’‘) the git repository to your local +<p>The above command copies (“clones”) the git repository to your local machine. You can use this local clone to make changes and test them without interfering with the repository on github. First, however, it is recommended to make a new branch for a particular feature you would @@ -192,7 +192,7 @@ you should switch branches!</p> <p>After everything is done, add the files to the branch and commit them:</p> <pre class="literal-block"> $ git add src/USER-MANIFOLD examples/USER/manifold/ -$ git add doc/fix_nv<em>t,e</em>_manifold_rattle.txt +$ git add doc/fix_nv{t,e}_manifold_rattle.txt $ git add doc/fix_manifoldforce.txt doc/user_manifolds.txt </pre> <p>After the files are added, the change should be comitted:</p> @@ -203,14 +203,14 @@ $ git add doc/fix_manifoldforce.txt doc/user_manifolds.txt indicate what type of change was commited.</p> <p><strong>Wisdom by Axel</strong></p> <p><em>“Do not use “git commit -a”. the -a flag will automatically include -*all</em> modified or new files. mercurial does that and it find it +*all* modified or new files. mercurial does that and it find it hugely annoying and often leading to accidental commits of files you don’t want. use git add, git rm, git mv for adding, removing, renaming and then git commit to finalize the commit. personally, i find it very convenient to use the bundled gui for commits, i.e. git gui. typically, i will do git add and other operations, but then verify and review them with git gui. git gui also allows to do -line-by-line unstaging and other convenient operations.”*</p> +line-by-line unstaging and other convenient operations.”</em></p> <p>After the commit, the changes can be pushed to the same branch on GitHub:</p> <div class="highlight-default"><div class="highlight"><pre><span></span>$ git push </pre></div> @@ -234,7 +234,7 @@ branch. GitHub will now look like this:</p> this case, is “add-user-manifold”. Now click “New pull request”. If done correctly, the only changes you will see are those that were made on this branch, so in my case, I will see nothing related to -$mathrm*pair_dzugatov*.$</p> +$mathrm*pair\_dzugatov*.$</p> <p>This will open up a new window that lists changes made to the repository. If you are just adding new files, there is not much to do, but I suppose merge conflicts are to be resolved here if there are diff --git a/doc/html/units.html b/doc/html/units.html index 9dc8285c6d..e80e207a23 100644 --- a/doc/html/units.html +++ b/doc/html/units.html @@ -187,7 +187,7 @@ results from a unitless LJ simulation into physical quantities.</p> <li>pressure = reduced LJ pressure, where P* = P sigma^3 / epsilon</li> <li>dynamic viscosity = reduced LJ viscosity, where eta* = eta sigma^3 / epsilon / tau</li> <li>charge = reduced LJ charge, where q* = q / (4 pi perm0 sigma epsilon)^1/2</li> -<li>dipole = reduced LJ dipole, moment where <a href="#id1"><span class="problematic" id="id2">*</span></a>mu = mu / (4 pi perm0 sigma^3 epsilon)^1/2</li> +<li>dipole = reduced LJ dipole, moment where *mu = mu / (4 pi perm0 sigma^3 epsilon)^1/2</li> <li>electric field = force/charge, where E* = E (4 pi perm0 sigma epsilon)^1/2 sigma / epsilon</li> <li>density = mass/volume, where rho* = rho sigma^dim</li> </ul> diff --git a/doc/html/variable.html b/doc/html/variable.html index f5eb258506..f7fd72fac0 100644 --- a/doc/html/variable.html +++ b/doc/html/variable.html @@ -197,7 +197,8 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span>variable x index run1 run2 run3 run4 run5 run6 run7 run8 +<pre class="literal-block"> +variable x index run1 run2 run3 run4 run5 run6 run7 run8 variable LoopVar loop $n variable beta equal temp/3.0 variable b1 equal x[234]+0.5*vol @@ -214,8 +215,7 @@ variable x universe 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 variable x uloop 15 pad variable str format x %.6g variable x delete -</pre></div> -</div> +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -470,10 +470,10 @@ appear in the set, will remain 0.0.</p> to match a function name specified in a <a class="reference internal" href="python.html"><span class="doc">python</span></a> command which returns a value to this variable as defined by its <em>return</em> keyword. For example these two commands would be self-consistent:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">foo</span> <span class="n">python</span> <span class="n">myMultiply</span> -<span class="n">python</span> <span class="n">myMultiply</span> <span class="k">return</span> <span class="n">v_foo</span> <span class="nb">format</span> <span class="n">f</span> <span class="n">file</span> <span class="n">funcs</span><span class="o">.</span><span class="n">py</span> -</pre></div> -</div> +<pre class="literal-block"> +variable foo python myMultiply +python myMultiply return v_foo format f file funcs.py +</pre> <p>The two commands can appear in either order so long as both are specified before the Python function is invoked for the first time.</p> <p>Each time the variable is evaluated, the associated Python function is @@ -527,9 +527,9 @@ variety of quantities. The syntax for each kind of quantity is simple, but multiple quantities can be nested and combined in various ways to build up formulas of arbitrary complexity. For example, this is a valid (though strange) variable formula:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">x</span> <span class="n">equal</span> <span class="s2">"pe + c_MyTemp / vol^(1/3)"</span> -</pre></div> -</div> +<pre class="literal-block"> +variable x equal "pe + c_MyTemp / vol^(1/3)" +</pre> <p>Specifically, a formula can contain numbers, constants, thermo keywords, math operators, math functions, group functions, region functions, atom values, atom vectors, compute references, fix @@ -618,9 +618,9 @@ of LAMMPS will be smaller. This can be used to have input scripts adapt automatically to LAMMPS versions, when non-backwards compatible syntax changes are introduced. Here is an illustrative example (which will not work, since the <em>version</em> has been introduced more recently):</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>if $(version<20140513) then "communicate vel yes" else "comm_modify vel yes" -</pre></div> -</div> +<pre class="literal-block"> +if $(version<20140513) then "communicate vel yes" else "comm_modify vel yes" +</pre> <p>The thermo keywords allowed in a formula are those defined by the <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style custom</span></a> command. Thermo keywords that require a <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> to calculate their values such as @@ -719,9 +719,9 @@ is the nearest integer to its argument.</p> <p>The ramp(x,y) function uses the current timestep to generate a value linearly intepolated between the specified x,y values over the course of a run, according to this formula:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">value</span> <span class="o">=</span> <span class="n">x</span> <span class="o">+</span> <span class="p">(</span><span class="n">y</span><span class="o">-</span><span class="n">x</span><span class="p">)</span> <span class="o">*</span> <span class="p">(</span><span class="n">timestep</span><span class="o">-</span><span class="n">startstep</span><span class="p">)</span> <span class="o">/</span> <span class="p">(</span><span class="n">stopstep</span><span class="o">-</span><span class="n">startstep</span><span class="p">)</span> -</pre></div> -</div> +<pre class="literal-block"> +value = x + (y-x) * (timestep-startstep) / (stopstep-startstep) +</pre> <p>The run begins on startstep and ends on stopstep. Startstep and stopstep can span multiple runs, using the <em>start</em> and <em>stop</em> keywords of the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command. See the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command for @@ -790,9 +790,9 @@ sequence of output timesteps:</p> velocity, and uses the elapsed time to change the value by a linear displacement due to the applied velocity over the course of a run, according to this formula:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">value</span> <span class="o">=</span> <span class="n">value0</span> <span class="o">+</span> <span class="n">velocity</span><span class="o">*</span><span class="p">(</span><span class="n">timestep</span><span class="o">-</span><span class="n">startstep</span><span class="p">)</span><span class="o">*</span><span class="n">dt</span> -</pre></div> -</div> +<pre class="literal-block"> +value = value0 + velocity*(timestep-startstep)*dt +</pre> <p>where dt = the timestep size.</p> <p>The run begins on startstep. Startstep can span multiple runs, using the <em>start</em> keyword of the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command. See the @@ -803,10 +803,10 @@ timestep-startstep.</p> x = value0, y = amplitude, z = period. They use the elapsed time to oscillate the value by a sin() or cos() function over the course of a run, according to one of these formulas, where omega = 2 PI / period:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">value</span> <span class="o">=</span> <span class="n">value0</span> <span class="o">+</span> <span class="n">Amplitude</span> <span class="o">*</span> <span class="n">sin</span><span class="p">(</span><span class="n">omega</span><span class="o">*</span><span class="p">(</span><span class="n">timestep</span><span class="o">-</span><span class="n">startstep</span><span class="p">)</span><span class="o">*</span><span class="n">dt</span><span class="p">)</span> -<span class="n">value</span> <span class="o">=</span> <span class="n">value0</span> <span class="o">+</span> <span class="n">Amplitude</span> <span class="o">*</span> <span class="p">(</span><span class="mi">1</span> <span class="o">-</span> <span class="n">cos</span><span class="p">(</span><span class="n">omega</span><span class="o">*</span><span class="p">(</span><span class="n">timestep</span><span class="o">-</span><span class="n">startstep</span><span class="p">)</span><span class="o">*</span><span class="n">dt</span><span class="p">))</span> -</pre></div> -</div> +<pre class="literal-block"> +value = value0 + Amplitude * sin(omega*(timestep-startstep)*dt) +value = value0 + Amplitude * (1 - cos(omega*(timestep-startstep)*dt)) +</pre> <p>where dt = the timestep size.</p> <p>The run begins on startstep. Startstep can span multiple runs, using the <em>start</em> keyword of the <a class="reference internal" href="run.html"><span class="doc">run</span></a> command. See the @@ -952,16 +952,16 @@ features or LAMMPS, <em>respa</em> allows to check whether the inner/middle/oute mode of r-RESPA is supported. In the various style categories, the checking is also done using suffix flags, if available and enabled.</p> <p>Example 1: disable use of suffix for pppm when using GPU package (i.e. run it on the CPU concurrently to running the pair style on the GPU), but do use the suffix otherwise (e.g. with USER-OMP).</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>pair_style lj/cut/coul/long 14.0 +<pre class="literal-block"> +pair_style lj/cut/coul/long 14.0 if $(is_active(package,gpu)) then "suffix off" kspace_style pppm -</pre></div> -</div> +</pre> <p>Example 2: use r-RESPA with inner/outer cutoff, if supported by pair style, otherwise fall back to using pair and reducing the outer time step</p> -<div class="highlight-default"><div class="highlight"><pre><span></span>timestep $(2.0*(1.0+*is_active(pair,respa)) +<pre class="literal-block"> +timestep $(2.0*(1.0+*is_active(pair,respa)) if $(is_active(pair,respa)) then "run_style respa 4 3 2 2 improper 1 inner 2 5.5 7.0 outer 3 kspace 4" else "run_style respa 3 3 2 improper 1 pair 2 kspace 3" -</pre></div> -</div> +</pre> <p>The <em>is_defined()</em> function allows to query categories like <em>compute</em>, <em>dump</em>, <em>fix</em>, <em>group</em>, <em>region</em>, and <em>variable</em> whether an entry with the provided name or id is defined.</p> @@ -1022,8 +1022,8 @@ reference means, since computes only produce either global or per-atom quantities, never both.</p> <table border="1" class="docutils"> <colgroup> -<col width="10%" /> -<col width="90%" /> +<col width="11%" /> +<col width="89%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>c_ID</td> @@ -1046,9 +1046,9 @@ variable refers to a compute that produces both a global scalar and a global vector. Consider a compute with ID “foo” that does this, referenced as follows by variable “a”, where “myVec” is another vector-style variable:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">variable</span> <span class="n">a</span> <span class="n">vector</span> <span class="n">c_foo</span><span class="o">*</span><span class="n">v_myVec</span> -</pre></div> -</div> +<pre class="literal-block"> +variable a vector c_foo*v_myVec +</pre> <p>The reference “c_foo” could refer to either the global scalar or global vector produced by compute “foo”. In this case, “c_foo” will always refer to the global scalar, and “C_foo” can be used to @@ -1077,14 +1077,14 @@ vector values. A vector value can be a per-atom vector itself, or a column of an per-atom array. See the doc pages for individual fixes to see what kind of values they produce.</p> <p>The different kinds of fix references are exactly the same as the -compute references listed in the above table, where “<a href="#id1"><span class="problematic" id="id2">c_</span></a>” is replaced -by “<a href="#id3"><span class="problematic" id="id4">f_</span></a>”. Again, there is typically no ambiguity (see exception below) +compute references listed in the above table, where “c_” is replaced +by “f_”. Again, there is typically no ambiguity (see exception below) as to what a reference means, since fixes only produce either global or per-atom quantities, never both.</p> <table border="1" class="docutils"> <colgroup> -<col width="10%" /> -<col width="90%" /> +<col width="11%" /> +<col width="89%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>f_ID</td> @@ -1152,8 +1152,8 @@ There is no ambiguity as to what a reference means, since variables produce only a global scalar or global vector or per-atom vector.</p> <table border="1" class="docutils"> <colgroup> -<col width="14%" /> -<col width="86%" /> +<col width="15%" /> +<col width="85%" /> </colgroup> <tbody valign="top"> <tr class="row-odd"><td>v_name</td> @@ -1188,7 +1188,7 @@ same syntax as equal-style variables described on this page. This effectively evaluates a formula immediately without using the variable command to define a named variable.</p> <p>More generally, there is a difference between referencing a variable -with a leading $ sign (e.g. $x or ${abc}) versus with a leading “<a href="#id5"><span class="problematic" id="id6">v_</span></a>” +with a leading $ sign (e.g. $x or ${abc}) versus with a leading “v_” (e.g. v_x or v_abc). The former can be used in any input script command, including a variable command. The input script parser evaluates the reference variable immediately and substitutes its value @@ -1197,7 +1197,7 @@ un-named “immediate” variables for this purpose. For example, a string like this $((xlo+xhi)/2+sqrt(v_area)) in an input script command evaluates the string between the parenthesis as an equal-style variable formula.</p> -<p>Referencing a variable with a leading “<a href="#id7"><span class="problematic" id="id8">v_</span></a>” is an optional or required +<p>Referencing a variable with a leading “v_” is an optional or required kind of argument for some commands (e.g. the <a class="reference internal" href="fix_ave_chunk.html"><span class="doc">fix ave/chunk</span></a> or <a class="reference internal" href="dump.html"><span class="doc">dump custom</span></a> or <a class="reference internal" href="thermo_style.html"><span class="doc">thermo_style</span></a> commands) if you wish it to evaluate a variable periodically during a run. It can also be used in a @@ -1224,9 +1224,9 @@ variable v0 equal $v <p>The second command will force “v” to be evaluated (yielding the initial volume) and assign that value to the variable “v0”. Thus the command</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">thermo_style</span> <span class="n">custom</span> <span class="n">step</span> <span class="n">v_v</span> <span class="n">v_v0</span> -</pre></div> -</div> +<pre class="literal-block"> +thermo_style custom step v_v v_v0 +</pre> <p>would print out both the current and initial volume periodically during the run.</p> <p>Note that it is a mistake to enclose a variable formula in double @@ -1317,13 +1317,13 @@ a 0-timestep run before printing the variable has the desired effect.</p> <p>(3) The variable may be evaluated incorrectly and LAMMPS may have no way to detect this has occurred. Consider the following sequence of commands:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">run</span> <span class="mi">1000</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.5</span> <span class="mf">1.0</span> -<span class="n">variable</span> <span class="n">e</span> <span class="n">equal</span> <span class="n">pe</span> -<span class="nb">print</span> <span class="s2">"Final potential energy = $e"</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff 1 1 1.0 1.0 +run 1000 +pair_coeff 1 1 1.5 1.0 +variable e equal pe +print "Final potential energy = $e" +</pre> <p>The first run is performed using one setting for the pairwise potential defined by the <a class="reference internal" href="pair_style.html"><span class="doc">pair_style</span></a> and <a class="reference internal" href="pair_coeff.html"><span class="doc">pair_coeff</span></a> commands. The potential energy is @@ -1340,14 +1340,14 @@ perform a 0-timestep run before the variable is evaluated to insure the system is up-to-date. For example, this sequence of commands would print a potential energy that reflected the changed pairwise coefficient:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.0</span> <span class="mf">1.0</span> -<span class="n">run</span> <span class="mi">1000</span> -<span class="n">pair_coeff</span> <span class="mi">1</span> <span class="mi">1</span> <span class="mf">1.5</span> <span class="mf">1.0</span> -<span class="n">run</span> <span class="mi">0</span> -<span class="n">variable</span> <span class="n">e</span> <span class="n">equal</span> <span class="n">pe</span> -<span class="nb">print</span> <span class="s2">"Final potential energy = $e"</span> -</pre></div> -</div> +<pre class="literal-block"> +pair_coeff 1 1 1.0 1.0 +run 1000 +pair_coeff 1 1 1.5 1.0 +run 0 +variable e equal pe +print "Final potential energy = $e" +</pre> </div> </div> <hr class="docutils" /> diff --git a/doc/html/velocity.html b/doc/html/velocity.html index 06accf9593..af9be7196c 100644 --- a/doc/html/velocity.html +++ b/doc/html/velocity.html @@ -172,13 +172,13 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">velocity</span> <span class="nb">all</span> <span class="n">create</span> <span class="mf">300.0</span> <span class="mi">4928459</span> <span class="n">rot</span> <span class="n">yes</span> <span class="n">dist</span> <span class="n">gaussian</span> -<span class="n">velocity</span> <span class="n">border</span> <span class="nb">set</span> <span class="n">NULL</span> <span class="mf">4.0</span> <span class="n">v_vz</span> <span class="nb">sum</span> <span class="n">yes</span> <span class="n">units</span> <span class="n">box</span> -<span class="n">velocity</span> <span class="n">flow</span> <span class="n">scale</span> <span class="mf">300.0</span> -<span class="n">velocity</span> <span class="n">flow</span> <span class="n">ramp</span> <span class="n">vx</span> <span class="mf">0.0</span> <span class="mf">5.0</span> <span class="n">y</span> <span class="mi">5</span> <span class="mi">25</span> <span class="n">temp</span> <span class="n">mytemp</span> -<span class="n">velocity</span> <span class="nb">all</span> <span class="n">zero</span> <span class="n">linear</span> -</pre></div> -</div> +<pre class="literal-block"> +velocity all create 300.0 4928459 rot yes dist gaussian +velocity border set NULL 4.0 v_vz sum yes units box +velocity flow scale 300.0 +velocity flow ramp vx 0.0 5.0 y 5 25 temp mytemp +velocity all zero linear +</pre> </div> <div class="section" id="description"> <h2>Description</h2> @@ -244,7 +244,7 @@ replace them if sum = no.</p> <p>The <em>mom</em> and <em>rot</em> keywords are used by <em>create</em>. If mom = yes, the linear momentum of the newly created ensemble of velocities is zeroed; if rot = yes, the angular momentum is zeroed.</p> -<p><a href="#id1"><span class="problematic" id="id2">*</span></a>line</p> +<p>*line</p> <p>If specified, the <em>temp</em> keyword is used by <em>create</em> and <em>scale</em> to specify a <a class="reference internal" href="compute.html"><span class="doc">compute</span></a> that calculates temperature in a desired way, e.g. by first subtracting out a velocity bias, as @@ -252,9 +252,9 @@ discussed in <a class="reference internal" href="Section_howto.html#howto-15"><s pages. If this keyword is not specified, <em>create</em> and <em>scale</em> calculate temperature using a compute that is defined internally as follows:</p> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">compute</span> <span class="n">velocity_temp</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">temp</span> -</pre></div> -</div> +<pre class="literal-block"> +compute velocity_temp group-ID temp +</pre> <p>where group-ID is the same ID used in the velocity command. i.e. the group of atoms whose velocity is being altered. This compute is deleted when the velocity command is finished. See the <a class="reference internal" href="compute_temp.html"><span class="doc">compute temp</span></a> command for details. If the calculated diff --git a/doc/html/write_coeff.html b/doc/html/write_coeff.html index 1698ec2615..d4d15e1ddf 100644 --- a/doc/html/write_coeff.html +++ b/doc/html/write_coeff.html @@ -128,18 +128,18 @@ <span id="index-0"></span><h1>write_coeff command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">write_coeff</span> <span class="n">file</span> -</pre></div> -</div> +<pre class="literal-block"> +write_coeff file +</pre> <div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">file</span> <span class="o">=</span> <span class="n">name</span> <span class="n">of</span> <span class="n">data</span> <span class="n">file</span> <span class="n">to</span> <span class="n">write</span> <span class="n">out</span> </pre></div> </div> </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">write_coeff</span> <span class="n">polymer</span><span class="o">.</span><span class="n">coeff</span> -</pre></div> -</div> +<pre class="literal-block"> +write_coeff polymer.coeff +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/html/write_dump.html b/doc/html/write_dump.html index 413887f469..0fcd373eb7 100644 --- a/doc/html/write_dump.html +++ b/doc/html/write_dump.html @@ -128,9 +128,9 @@ <span id="index-0"></span><h1>write_dump command</h1> <div class="section" id="syntax"> <h2>Syntax</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">write_dump</span> <span class="n">group</span><span class="o">-</span><span class="n">ID</span> <span class="n">style</span> <span class="n">file</span> <span class="n">dump</span><span class="o">-</span><span class="n">args</span> <span class="n">modify</span> <span class="n">dump_modify</span><span class="o">-</span><span class="n">args</span> -</pre></div> -</div> +<pre class="literal-block"> +write_dump group-ID style file dump-args modify dump_modify-args +</pre> <ul class="simple"> <li>group-ID = ID of the group of atoms to be dumped</li> <li>style = any of the supported <a class="reference internal" href="dump.html"><span class="doc">dump styles</span></a></li> @@ -142,17 +142,17 @@ </div> <div class="section" id="examples"> <h2>Examples</h2> -<div class="highlight-default"><div class="highlight"><pre><span></span><span class="n">write_dump</span> <span class="nb">all</span> <span class="n">atom</span> <span class="n">dump</span><span class="o">.</span><span class="n">atom</span> -<span class="n">write_dump</span> <span class="n">subgroup</span> <span class="n">atom</span> <span class="n">dump</span><span class="o">.</span><span class="n">run</span><span class="o">.</span><span class="n">bin</span> -<span class="n">write_dump</span> <span class="nb">all</span> <span class="n">custom</span> <span class="n">dump</span><span class="o">.</span><span class="n">myforce</span><span class="o">.*</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">x</span> <span class="n">y</span> <span class="n">vx</span> <span class="n">fx</span> -<span class="n">write_dump</span> <span class="n">flow</span> <span class="n">custom</span> <span class="n">dump</span><span class="o">.%.</span><span class="n">myforce</span> <span class="nb">id</span> <span class="nb">type</span> <span class="n">c_myF</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="n">v_ke</span> <span class="n">modify</span> <span class="n">sort</span> <span class="nb">id</span> -<span class="n">write_dump</span> <span class="nb">all</span> <span class="n">xyz</span> <span class="n">system</span><span class="o">.</span><span class="n">xyz</span> <span class="n">modify</span> <span class="n">sort</span> <span class="nb">id</span> <span class="n">elements</span> <span class="n">O</span> <span class="n">H</span> -<span class="n">write_dump</span> <span class="nb">all</span> <span class="n">image</span> <span class="n">snap</span><span class="o">*.</span><span class="n">jpg</span> <span class="nb">type</span> <span class="nb">type</span> <span class="n">size</span> <span class="mi">960</span> <span class="mi">960</span> <span class="n">modify</span> <span class="n">backcolor</span> <span class="n">white</span> -<span class="n">write_dump</span> <span class="nb">all</span> <span class="n">image</span> <span class="n">snap</span><span class="o">*.</span><span class="n">jpg</span> <span class="n">element</span> <span class="n">element</span> <span class="o">&</span> - <span class="n">bond</span> <span class="n">atom</span> <span class="mf">0.3</span> <span class="n">shiny</span> <span class="mf">0.1</span> <span class="n">ssao</span> <span class="n">yes</span> <span class="mi">6345</span> <span class="mf">0.2</span> <span class="n">size</span> <span class="mi">1600</span> <span class="mi">1600</span> <span class="o">&</span> - <span class="n">modify</span> <span class="n">backcolor</span> <span class="n">white</span> <span class="n">element</span> <span class="n">C</span> <span class="n">C</span> <span class="n">O</span> <span class="n">H</span> <span class="n">N</span> <span class="n">C</span> <span class="n">C</span> <span class="n">C</span> <span class="n">O</span> <span class="n">H</span> <span class="n">H</span> <span class="n">S</span> <span class="n">O</span> <span class="n">H</span> -</pre></div> -</div> +<pre class="literal-block"> +write_dump all atom dump.atom +write_dump subgroup atom dump.run.bin +write_dump all custom dump.myforce.* id type x y vx fx +write_dump flow custom dump.%.myforce id type c_myF[3] v_ke modify sort id +write_dump all xyz system.xyz modify sort id elements O H +write_dump all image snap*.jpg type type size 960 960 modify backcolor white +write_dump all image snap*.jpg element element & + bond atom 0.3 shiny 0.1 ssao yes 6345 0.2 size 1600 1600 & + modify backcolor white element C C O H N C C C O H H S O H +</pre> </div> <div class="section" id="description"> <h2>Description</h2> diff --git a/doc/lammps.book b/doc/lammps.book index f768cdc7d3..f28bb48b56 100644 --- a/doc/lammps.book +++ b/doc/lammps.book @@ -148,6 +148,7 @@ fix_bond_create.html fix_bond_swap.html fix_box_relax.html fix_colvars.html +fix_controller.html fix_deform.html fix_deposit.html fix_drag.html @@ -162,6 +163,7 @@ fix_eos_table.html fix_eos_table_rx.html fix_evaporate.html fix_external.html +fix_flow_gauss.html fix_freeze.html fix_gcmc.html fix_gld.html diff --git a/doc/src/Manual.txt b/doc/src/Manual.txt index b7edc5ea99..ab82bb0716 100644 --- a/doc/src/Manual.txt +++ b/doc/src/Manual.txt @@ -28,7 +28,10 @@ Version info: :h4 The LAMMPS "version" is the date when it was released, such as 1 May 2010. LAMMPS is updated continuously. Whenever we fix a bug or add a feature, we release it immediately, and post a notice on "this page of -the WWW site"_bug. Each dated copy of LAMMPS contains all the +the WWW site"_bug. Every 2-4 months one of the incremental releases +is subjected to more thorough testing and labeled as a {stable} version. + +Each dated copy of LAMMPS contains all the features and bug-fixes up to and including that version date. The version date is printed to the screen and logfile every time you run LAMMPS. It is also in the file src/version.h and in the LAMMPS @@ -47,7 +50,8 @@ it to be part of every patch. :l There is also a "Developer.pdf"_Developer.pdf file in the doc directory, which describes the internal structure and algorithms of -LAMMPS. :ule,l +LAMMPS. :l +:ule LAMMPS stands for Large-scale Atomic/Molecular Massively Parallel Simulator. @@ -58,14 +62,25 @@ National Laboratories, a US Department of Energy facility, with funding from the DOE. It is an open-source code, distributed freely under the terms of the GNU Public License (GPL). -The primary developers of LAMMPS are "Steve Plimpton"_sjp, Aidan -Thompson, and Paul Crozier who can be contacted at -sjplimp,athomps,pscrozi at sandia.gov. The "LAMMPS WWW Site"_lws at -http://lammps.sandia.gov has more information about the code and its -uses. +The current core group of LAMMPS developers is at Sandia National +Labs and Temple University: + +"Steve Plimpton"_sjp, sjplimp at sandia.gov :ulb,l +Aidan Thompson, athomps at sandia.gov :l +Stan Moore, stamoore at sandia.gov :l +"Axel Kohlmeyer"_ako, akohlmey at gmail.com :l +:ulb + +Past core developers include Paul Crozier, Ray Shan and Mark Stevens, +all at Sandia. The [LAMMPS home page] at +"http://lammps.sandia.gov"_http://lammps.sandia.gov has more information +about the code and its uses. Interaction with external LAMMPS developers, +bug reports and feature requests are mainly coordinated through the +"LAMMPS project on GitHub."_https://github.com/lammps/lammps :link(bug,http://lammps.sandia.gov/bug.html) :link(sjp,http://www.sandia.gov/~sjplimp) +:link(ako,http://goo.gl/1wk0) :line diff --git a/doc/src/PDF/colvars-refman-lammps.pdf b/doc/src/PDF/colvars-refman-lammps.pdf index d1349fd42439be910d3177c5453da5a6e45ca655..071bdb25b89d87e6b9a7ea20053680408dcf72ee 100644 GIT binary patch delta 42160 zcmV(}K+wPK#UO;qAh6d40y!X;;g|*~e^O0P!axwc_gBoZP3*F>-#u0>ik2Wyxu^$% zMM-QMt0emG-R)LD5)v=not=5}=DjI}7oczz(BG37;jZpDj@|>bH53pu1I3XDsbEzF z?oDV#G?icskwQRQ!aA59ck4OMi(oJm2{1vl(FnyFv?dxAC?g0>5-6VGA-tI6e|dIM zj22lGGi|~}WN4VqM(KH;&HdAOa(SO;(Nl3_8^@fH1i1&#%5{V^EZeePmA<%I*6wM$ zeDm=-Vl-@8ALQwHd^dNU2198j3c`hAZZz8%xfRt<l}6n5c-ek@dLZLx{e_}(_!FYD zV&|UqDB%iFF(N2;4!#GR7|N`zf3D*2-X)Q7LXGV4hk;EGMis(kW8I$a7~-BHKH%tF zchZm~Qg+fT2MR-s6kglaX1Qvr#_JhwoHr=LP2DTJ>5NV!L1Wc1h933El;|=s63#iq z2f4ECGLBQ>Ul7t$pr-0KcHLEQW!?WbVZ9qS{c@`+`)%Jw!fyNZ&Gxoy5C3)_KivM; z-*4&%wA!vugNq1<iwFUSiwFX@iwFbar~)!DmvMvzDSz!*OOxZa5x(!Q&@EJzMFZe_ zZ@Ye^lJY4#jt|}(FeEfWnIc$x?Cj*%ryC7WB!@E^@5EJh;){ew<JHfvn{0QtW4ph; zVXOc5H*dcFKFM~Rg#|14?&i2F*e+v5$YSVKyPt!PLL~ct-TZx80}J9E=V6f~!Y&9! z7Qu|Au7AzF>fW2Nsbu$n%f9|TE#}+jX&Cc~{6r+n8zf;IC!XR5vlmGKo9+)HVZp86 z+V;$m{)dyIMrrC#NH4psvv~yVi2JRzJ3N`w9E1>ImKVDNkHRD_i1ZuN4C?dn)~$%= zE8;ASlGJaCH}I#gc6Nk|jo+1}Y6p2+y9a#QbAJ}ddQ|<}E!GrKm`?YvRH@Ih-aLy4 z7e{@o`m)pQpiQ&6cN&K|NR)Z%kBo^%^>D9LI1WRjcJk;4>Z_)rhLy#fQUl96l19BG z0hNk61y6=KB4`E}i)q#^8U4{mgR)QgW#^fclOzcDhbT^io0E16n(=(AtO#}o_bAJV z#D7UhHn1Ygf?GxZO2f__w$nh;(9n%;vOVpS;Gx$gKEkf@8ki=*SNlWE^1yU7<ra@U z>?T-ns2mR~8h7`iE2jkuZuU9o@SXC<XTd#OWlP7Rv<P#ad*O_2ySB2WEDwIcLIWho zYGZQ_7Mx64b+4;o(=0^>hCb;BJUxo?K!1Z8M1lv%d;EvD<7?sdgP{@61nNneyz6vD z1E>@DKbJaE$l5e_G-c(EjhWmn%}187#teRE!Q3voCWAs6t3Aub?y9$Px~pln_;QHT zFcHy`hn4OJ*_7&A-EA5XyD(^D%OuR$#eUsZ|5W9*tq$N~pAw&l!zi0n!*p6TgMUOT ze|}S79!Jwj<H>YDldXH8c4d?swLHd#JR%2=s<izgs2&=5)@8rv!CSP#%t{?8OVfC< z+l6F}0&c>xm2aI(6<r|OfNrQQom*GkApO|fuY9%g|8)O;Q_J%r%tXEjR6ohO-i$ze zZf#GQO&-RNw}VK5QXMwEH$=8%ihpeV$&7X7!kW83noqchwrI+6n8DEynII~ENl@N! z7q1J-KjMb}jesnQuqdKy0U4x`@P!ZmKZ(cD#F`KK3|_6P9iPF>w!BLW3`(AXV#@<E z+nhTY*twd;{kb4d`tC$QA3Ck+dp+^UI8^}cci^D%%yT|{t<t;zfSG2mP=D!@?5ZEG zVNDM0NW@q5dZPI0<YMvS>Gg9ERIeGe01O+;Ymnrybz2d00G|2t#t<bL$T<B2pwnAp zY9*U%){uB(ILfgeR>y3<C=+4KCPgsE<K_{L>epHvFD72Os2I(nVl+j?D05LUT17?Z z_xe26(l5z^PWAA#9t|u8*nfdIWgKWqHOO3dOmEJLS~kQrR)Oev2(X|w|F)a<;RJ2* zwyPJm0LZmPPEmrm2L59}X*~^`CFm*qI5-O<&fYcdjF>JV3=E4FXv?mBpvK8TEuI95 zND<ICau_>V6OKnRXD1q!1+=ShP%Oe#u=KM$x3!v%+z>R|MqXQz1An9@7D_$=3gGxj zB7<W>6VQKjTb!F)DN5;L<hXF4QHFqtWx)qESdk!~aeN?Ef!3rdF#?qy@`!TiJ&~gE z1ro)Xv#G{fkyPm=i-!*<dww3fE%IbD#Xy4jE1)}j1uU|6%pXY$-UPuP-lS;y11PdX zk8jYL*{-|WQR5%rynlbTdo5kH9gJP3Hoxc68Ny5_n>*$1VZlP4EE7H&M^><fgHW<O zc}Q_?O#>iz9aShmye_8vcnvCX4nelyFULw#Oo=j=97llVM?z58ya)*?Y$64tj#8`> z(AiSqVu>BKdDQ%bi<bQbQ_h~$iwi*D(MrK)0@#X6Ie=kt1%IOv&HqePy7<%IFf1is zfCJw_R4{jD?4QGdDGvp|f|OP~5|A5Ze#zRf1f>42N<h@-7Lus<Q$W}>EC%n4)0Z38 zI}bM}R@i?EE_mJwm<{(RKeGUF+T&d95|>7)N>!U?z(mL|r#}JDkONWrry=}ChQN{u zAO8&{CME!*Du2XR5lB|co&vKiELOfDYjC1H_0HguO=UYN;2H?!57hnzU#3(`WS}~_ zqb6xuL!HvJq&PTn+^pBJB+SwmXJWs$T$gkH;!@zFEH7q)_=4eLZY?f+oL$S%zbql( z0z#343rLGfon0aaYE^Ct)#RXol5tJlEaDRm0Oq8aCVvPPI9yvW@I@;N8oLexe(j5{ zR28(LlBE;oLS*L0TpbcdZXalb4u$~`zMKkIb_!L7=CGppB=89Unyp}ut)jX84Q+8z zAsod5lO4A483qW7!@x<`wLAYf*7XC8`r?<r@eBxgW?=2q;ZT>N#B7E;ITpAnH$fch zFemW?M}O{5%HdN7Nclw+IJ)qRFe&R!0l%ozw{pE0FHb|Dh}yVQEVhd|L2f^#%dPjU ztND|+xCE1ftvw^QE5bC*X<Y=;IB>>T@U9y)s#>Xi&b`dhTQh+6z@&5bDCK*QOmC&P zVKZ<;z)1y<d?skim>?+QV-9&3&_-WzwDYoagnz(p;0sYuNi>}m!m$TQ;m}D)^m?Mg zJNcri+dQ3Job(I{-RF?hCmqmw{5>Se+{Xo4Biq(ij)3-T(BePg5gW3&+zK5<#Oc#U z5ihQbeXH#Scv6E;wj(F|U8TUR(+w>$NSLsRF(yv3Q2=2kbH;-tE%E!IlWq2~Pcs`V zYJU^OWbFlIH1pd4+x=zK3o=T8MrYIL@`;QxN~gjQc?hpN&v}Sw%R@W@RJq+8Oe17j z{>9%}AJ>~-S^rvnY`v#A?`#Sbubis7?$C)PW21*<30O6-4bOu+XM}yLN^7OQI(YlA z`86ZL(%=-`8uXV}KSo{bc*%e`%&#K0JS+_hAo|@`ms`_=m!?mqRC%Ft?NoEV=$Dmy zVZCLZJM}6SB;Vb<`47w9Ktz|Zp92$@!MXz$0W+787z8SRnM;q`HV}aC`zv&mftux8 zVo(%F(oNB#KwHFV4@nMMS@x=tB}bC8+5Y+tMe0GB`^c`FHaUqVsTs|1=HrmY!8X9b zk7w9EpRLZmeIZ0ZFj82NV6_R9LNsDQgcZUZde*_~@Q18P>wMqlRrzG`cJ(v76HVWd z91$)+qMiMJ24h-g&0<Lz3){=gG&WV8+GbjnO`DYMFkl+VFxpAT%dP3Cv!<<+yq{l{ zGs$UHd{|HsCiQ~j@EhG3g?V|be`f`39DQ#nWtT~@S!&yYrL|^B7!q6=n=X@jSCx4R zQ#rgOMYylptZeh7K#L_4GF)|PrUT|D*jcxYX(z3J^&X#kk0^qeV7>c_>ME=MOp3zi zX+e;Rc|SGZ7`b_CpPe2VuI&n}wJW3w!M`58QH(g3j@oC{p<E~RwNG`#P>hGKtiY}H zRo-OCIE^WRL@Zsebv|JPhgq4`3lfLhYyF#qhf;sC9??sopRJinCZVCbwMDwO?Iq3M zBs1B6IBfP=nrr*BwduIH_E}FAMOa3?Jz8$#Gn+<`544{K4rNq^SC{#Mghe*{xMrW2 zg?DXyHP~WYMHFI8xvpw26TOJS*rlH)ZlN)WZXv?X-$MciOOvikN|7Ma$bujh&Mad) zgpLrj%kl0Vf4oWMWHyK$7yZ&3k`P5h?*CSQHMz#b4W<;8HU#vUpH~ZT%MF@|_Kp}F zpIg-qtCl1tXqKtZtFp~LwoiO(&Lc>)A>y@PliDlSPILr6P19`OCKrXZ<%9Y7L)Lhi zs2Gx@SG9(a+$Duqmzmh95<NgS$)RXxYP=Rj6miUM%VAfUo$nZSC*2uRQu^plBD=JI zM203r;X6(LMP}F9j6%Ysmu4g}4;S(<WeRy1?_vnLt%7Kp2HikzzaZJ~i`<}&GDH3G zyCOq<!*yeaV|yQ=iFph=!HoAX<nSJr<Y{3IY;25I=6Pr`N8}nH4bwJRot14b>eeI~ zvch&JrEldSK9RhA>0Nwx&3^ivBAiKo6vg5(969Xwh9l2=f_t+XBS!h1KpAGd(o%hX z>8ptjkV7@0*ANSA*gN&^beGV-on1nA+^|cq7!gW8ahHHkAU^9kibquXiN<1yFpj<e zrkN<#u?=sD&`P)`>F&)Q4qIif@oAY9)wVi}8RzkbB#4ruz0HlunN<`;G`cB&Gbk)A zXgEb;e1;A7;7OMoHrJSnyEoS;VqeepItJYX_t(z5r{7;s6yrYG98PhHII(TMd5qO1 z#qa~`5LfVIW-3E$u_PGdaJ7hdSSNpFX<OBnp4Fk<AKG~eIGRbUB_l=XLvqF__@k>Q zJn<WG#6^7ntohY^?{r^oXC|3{Lui*vd2>{F`*Mgo%=hPzrU!|HQ{MeAQ|O|qifpJf z{=F2c%2VbIjfWukY2#B45iN-8&SnKG|Dw*`AF?v_mP&+Z@C`dc7Y<y8WmPW!&gx26 zn!K+txm)?d&yLC6c>khPxpFxOysGmSic0gNs~>q^@9Ouv0JV1#M3)7BWVYU8@ajUQ zU-fL<l51~G19dQ05AjJ%25&cQwzpZ5m&fPT!_IaV2^<9a5=&RtHj~^75GoPlgY55o z9~~ne4S7)}yUZtuI^X!c&kje9uI}giJp*J)r5>~4TX?|<D9zhzA3LDrU?Y|v#4oeL zR>g^k7IWuz$xpPHLh0~-1r!DMB-&%o+|_1tI-*HLn7o~6(3~8P?w`ICQI}|nIQN7M zQ=7stU{2<3ww#_`yW^IkVVV@_p-9>;tzq&k5}~I<prR)5EWctD&u(fQEb73n`vdU6 z#mTvPz{@<$r|g5uEUV{tP8vaT0L@N$98bLSq0991)!F+q9ZWcXAOYh7N!Umzlt>ba zwRCs(`YjIDF!*x-Ct4K;SKZWIz$^)h;N{ux=7QaY6p#)nI09=~obk`Zyy!OOQ56C6 z#N(NF4yWv`mv}LR?HJm3pZgu+mHspQX@JMc9l(n)0FQh<#Cv=VcS__5Xb$1KG7A?& z6}7jgTxgpczJ8#8EUrzfBSRcP!2|sH2*6l(M1qlDl5L%o+dQ!X#wcjeV#y(d{A{K0 zH4%+J6|PIh2w*`v8;UW+Wh|7dmP;`3E-$k-Pt6Y}v|~%qn2fXMM(Udu-L<VVJ0mIA zrm=ypb+w!I4w9z-PaSE-$C~TR)S%d1SaVrxZf~&+n|(chv<=9ojgjcst{d(vU2H4e z1qu69hOPnXFt3OD_=+@8Z%q3}sw;h!HYDQtyJN0%EK$rURG<QKoIZ-{9NL74PL`zX zzu>y{dbi}aItHnc#pipEUlbT0%hUKpqerOE?3Y_>e9nPXw6F2S!}q(F*KiQpz38r@ zPjTDrsq>pLPQ}rk_oMedia|3|cicvUw`qSH{e@g#jO$D=lr@rRKBHJgW+uVTBnbO| z050iG(wC9U0~D7t!UGfnHZzw&3kWHH<yuQ`<hT*O`&Z~F1Jeveih2Y|fSK9xBEcd- zvd(E{4swfaYonHWCG~jw-=~U2N~A2ugK-wvASdxrEEdUnd{x~%x{rAD{S~+0cehu+ zyHP4iI4gOXM7M{iESbn<l=G7D6h`XkWBi>yROfcO-U-FyFV_i=tM;safBpG?_AjtJ z^_S;@rCb7Yv#>uLEK#t>&Qk3X$y8dpO~(DuoTjGl9Ov9$lod=QrQ`hP!`AND%#@?q z_wAQz7;lH_r<+0leAeCmvc)+`1k0gmmo?+{PRcT_^(W3nr|UP+&ysk0(9lSEJoQu6 z63uuSCw-*$p&#~|ntey#>A^97Ls_ncimQS8pSa=;)6CIn6bvq;Ojwz#@Mca!|C8S1 z#h@S(Zk4`Oi&A81+;o#3s;NIVdzvw#jMUcGiHd*O>(fO2ecz4KP{EotZ5q2BtlWm$ zlN<V<gvhBiYE6saW~)UwJQ$wk3h$Fg!+k`Je|&!hM@f{KbNUA(K%dZm%BC}Sz{A6j z_T<m8+=)!Z8B4bL;$$^wYCI0jH0h2yQ;*+_UeyeMn!sNDaG^dverxB>U9AU8=IGn% zPPdj+2)U(>z~3p=VKf4MxV`$>9wUilp0PsaQ3k55N*V2sS06v~sD??n1}4iQdNicR zNE)N$Q5*eu^>;GcEZ9na7Mvx#G`wV)(x!jd5~^Tno;$I+>Zpk*WG50<B!#2;)0WjB zpZR!j11ajVQt=JyTR+h4lJdc&*Se;=`k}fXs_wq2=(Tq;DOtvIdUUlIE-BrJw#TjQ zi83)8IithA(Ow+1U2WVHwC*nSwJXJ16qu^b(EXq-Z?r4J1V-wA-fn<~fZwq>p4yOS z;!K_vxfS#50~n3q@or14k9}v1H3812q3Q0~mZQuvaKiI5{I#F-rfZb&_G)%}T|W_H z@(<A1_s3J;>24bBj_1><A1sx%b!hd*`NA`%Wg6caZwI5NhiesI#%5nxZs)GCOAq+W zArI#S6S_H?w9c)6%$QhvePV`j#oRu8bqA)F6!HCq`r}FO8#G4qY%p+l*>wF$!HRso z1mrtz-Id6#DH*ai#IkNs-M%!nw}<)CTSCM4gV<l>{wE7v&kmk~r6P%TLNJwNvw?)J zkK_k$uaq!x*B7flPp9+r_H=3+UEi21B_l1vBWDbZ!!3G$*g7tVlFpa%H^Y|1t~&dr zO{nAa8BgxJLz;3|VoV~ulMU$vMpd59QFRjtNSU&974F{m5YB#?HsM8@GpVvLz;80P zgaPBXdyInBU8`3}X56%@QnGBm+`GPSHTkS3dlBIZ%={J*lVW8dUPMeO&%OmQ2^k<J zQ4|4U5@l|Gtp_G7V#20VF=#HT2OY!@qR5?k!AM|o&^I=T-=-S%Xz@}}z}=TY^r$)$ zY7Ejb@_={60TG|Tfp$|<wIdNAR(YhyX-5YbWc=8G5FNE`xEG-`FmdebGr<Gt5Qg*- zhOh`@W+7JyLoTR7EHs2FHUh?T7$apxI&06NdWtfCl0>nrh!h0qM5eC-8R%n6C4rY@ zrBp9~jO^C}89etu2H^2kWQP$CWSD*kC`9TIF3vfHgr*y+_R|?u;$nNVnx+uUt|3m^ z=7WB2e-Bw0HC4qEFK5D?$ULwi@)$t;gHZ{Az|=@DoEgE;z3z{C8W1>OH&98SgNUcw zgSjDpLGc@@g7}SOHgw_M{or;mN2j5^T}VUT_HJQ53-871E$IGrksHEglD-_cC3hs> z7Og#iwM5+=da@Lh5d0PFBxnQ408S>H^Z3K^tjbp_wk07PUqCOB#D!h}5b>dJ+aASv zBu@lG1hq!$=+4C?73k7#2D&g&U%-r-z0qHPmBo*sCw56ipYY6zp3jV*Pc5CmW<9v3 zv){UIP!gjXxJ#(Gd`o9jUuVgQ;v++v2As|#k({bwYWA(RUKQxfBf(5X9{|S|1LLH_ zzy|EUZCj#2Pfu5d>x^3$YqyT#*bLTCnOhOY>vnc%wqG3XY0!aE9)yl{j!*_Ug5(x| zrNX$q0tCydv`-Dg=%vYfxSXW)trj^1?^IGH;Bf9-e(&w^9_~<&<ituWA@oDtbQO%* zq#0>DN=iT?t=n<y)n=>k(4Eaze4Fte#GvjuDOsScu@l7<Prn7!YJ0I^2KZ`F`?j{$ zxq3Xs!vxPuF`WKxZJz=l&C36bS|PK4Wg_{tVXON8M6Ef8JTCKI7c4skO|R$^x*8mD zu7-MO;P}0>{n`EblSb*&l`)!CmteESCa^a<sXXJx<V|e1@`hk76jB0QtVYuk<i~J` zgpktNB{ofQuENqBlA^u_l;$wT@8R?eXKB*7K5PK0qzH-HukCJR@wjZ}1{Vi^$ZXQX zxb?y-FXF8CwmItePReIe1HR<pc-pPBqhPtr*Ph{~J)`e*^}Z*pIjF46{M<c94~_bC zXKX%)n4xW~z0OpO0i{UdcXJ%cmwG1>o1`Om5FG}>lol)<^V75l^9vJVU}rCXA=Sb` zm%pqv73Z9$zM)iSMtf$Nar4-J>Mg?ux6RZaEz7zYAb|jnZ_id1pofj+js+@xq$*Fq zAaINu0U|)l6eo^V+l)3soJZ$R8%r=kK%*9@Pvww_ookNgwwlomk3ZT7fw{<VZ<7+L z28(sk_Vc=yLIH#-De5&r=ZR{q+&=8Eq{`0*ow=IvBdC8}4K-CcA<h_oKw4pTV8S?# z-s$O4>uyzM4)e&&Wvg>xIa})uOf4Rc<`rM-X(9?HAiH`}TQf*uvpNI0*GplJXnfuO zP1a^k{Rp?Ucsv*U_YJ7=*T=pWiYZt(oRih>Y^B4LI1BsJP?FmaL4)Je98jnOkc~8L z3#NsGpHJMP%2=V&mk`r`+ASt5OXrI}_BA>fDN_^8j3j!RtXR2|6=b-anw>4e1FFmO zBD@hw7&GOm_m*yZnj7l2a=Ptl|N8fUEW~I)VK7?e=fx<&+3r9!6|*J!sM%oTY~AKp zh-?nePf}8PpQN1OFgBO4i#>FxX0&Se=*v)4GmbyAbyOI@er4l-W+np5;sRWedyRk1 zBsnW{?v-qI@M;hO4b{6XMvBR-h&-y>ts+X!QZ-w`A1#GkIj%*emehKYCuceIB}i>= zNo=VZ1i}KO_Q)`dabZ)@jg2K(+1Ad!9fQ{`{W2ontI-y0kTSJr+wC_im|4PPn!FB5 ztiw(UcF1M<niBqh^LS|;dBAfoZu2XO_~X85TW5>l=uQCl`Z~;T=B#cNOq36oX&$oA z@!2Q=t|ecT`MDZC$X90n14aB-1q$`b97%Bg->d9{6)r!mc)>^{t}cl`z;$|{^Z<L5 zfnduhiBGsv68zE6L#l}_z2gsuE|3Jv`#>XcwbRJeW+v8NSlNT~dbJ0c&-_evQkt6N z(S!?_Gm=ObQD9&tJB)Y=E*-v-u8avIUacv!l^a~;WJZdI{@l6^?W*H>|3D*cMKw=7 zgkA%U#h_KN2T|HmViNu_;lu6KzX24eJK>j+%mXO`FgTZy1q3O7THSBtwh@2#U$Jl1 zqPL7FlA@HLDDEzGk+cO`#Kk@2@*r!qwi118^l?7-ukQ>$BvH$~_4yni1^Qx()QB@2 z&iwcra>LEtCfxk>Dm4G!++2NiE#!uVBn?x#xjAgolthwkWSEkWL(hKmV=&xj&34CV z3{QoA_{X=VqpVebj|}=P4Tj>V8$+vK7fnBQ=94VX$1WR8t8Czjir@~q%GM0u9vn3? zP$C~uGHCY2UUwd|ZYcAr_`_BRP^%UFI(o*bTkIp-pKiW~`R*tqf~R^;H>e_tWbi%= zqkJeqaO`zYo%QCaH2?Fg%Et<9-<y6gzH73oderT#M-^XxUB}VVl{AeB_z^TKjlWDX zlB6<JBAg_ggJC3Qv6gz{8%YorC!2-Tjh3QfDJ2OPR@wVdgk~hRl;I>|%nA)gg1frn zlv{~EX$dz(1n8L*MLsPkF^vHsk<g&`Sxh;JqjX_2o%AhzgeEhR#*RkUCQf+5HoIBs z6|4-4f`|Km0^-kOBIAT5bma+m%!E)mN!U;rY}_1+u53*_WX;~ELvliyv?KIB9q<Td zo>ekD9!m&56~H@|fL|duoj8W@Wn(_r=#NCG*1j(a-N<fR%%KnXr$7&@Y?u&Wv(xzw z+K8aWckiP}I8tCW#0Vv+5Rn22^^GyQfc(VdyeaB`qwzxOxG^Lg;?_vtpNS|w#mmiB zh5?LK05T}>z-b)XPCsbZz=MSbjSJYbH-KWNjwqnMg`Ry|&(8VV9BHnp5erE;2V`k% zbz&BPMPS2ShPN$1!pGrj^M#X9ToNWG2jp$_A?v&&8$oB_*LhwXhwQd8lY)hWMXko7 z|Jvt&$&`_JirHh^1Fmf&yZqKod0Fe2I<Y{1?ilcGamdDMSZVhvml5INj4qIRb=wb_ z`F2>WsZY20S}7M+cb|9V5kuRnFowXP?0n!z5sbYG4|vicB>9BqWpk(B=$L|syd96# z)D0ix(~AZs(hPb46<EvfR<S72;o$YGE7ih(sq8hju98=0swZe70ERGG=h$^M=eie7 znA#(jfVzu#gaCzr$azqr?VJS-<V0aRv)+j5cLT&HO@g~((A|UMROryI1j*IJ;nm-> z=B`j7S2kK^|JY=8nfKZaG-77Yd%7RewHuTYQ1ES5A91;Su85p%N+TcSZU{TSf?0@v z$o{?^D+3-)+tp@6ht{phm8v+H=(SN?4!upIgGz=)Zs3wbZmbcO3PD1eyadL2C+=bx z<uRd2dJ%6Y*VwT%R;oGWgN54(cTeGVwbJMkyV4WV9{b6}c|%8(WpuHl!yXoTHh!2# zI(dLTY1cmo?8vjk1z1mkKgHtzuzoUsQ5V)J2`|F;tmFcIrz93rsD6j6T>{*w1jQ%& zziFG@e~PXJxB?xfJb->TD6wbB0kGYgF((dyjS=KE!nK9cz*fPmMsi@wSi0Pt5D}P6 zJo}pCy*MG!DT2*p>2yb%sWTu}oC;m5psGVx=BCQQmfoN6Q9CLL>arPopB0pU#j1vQ z4v?lqOdn#sXLR8zXkH36W6W0Zr9-o7^Ky9H#sa6pp>{Lio5X?r4;%Dhtn~A3k!R4x zhTUDEcLhDrvj7@s<!#&T%SM%!_+gzr>KFHgLTyxXG)f!&-;51Px~%ETqA_w9XufI@ z%FD7UZ@Y3t8p(Lj={Qr>FSZqbC4m30-&}8#5N8`P5&XM1uj_VS=-L-s`w4NOF>M>Y zDp_>xj2~BJT@FU3>~me7LSqgBY$=p&!8t=|wlC=Hs}@In@XkePX6QvN)R-19185$` z-hmc;)q}lAi!`6W9xQm^0jmB1O7k|q&w41ybyw4tz4;K0E1SG4vVPKks*@KUCW_SL zrbi_!>I2SL;(!2Ws-uPhAiccPsbT8<VtfD2Zbt2RJG|1*I;NJ@!-d^jquab01E(`( zQVNL?Y0Y57c1L0F3Vv7`tk^=6Rgb;p8MY9CJ)$aL?NGCVTnGF$S@c$kFlFFDDbPoy z_}zVhi^ffk;KN<j-YRc@!SgSAXjs3;2YiI=@InHG#GY||GTFD!!qyl%r7-H*7kGBk zDCmV|xwZ*NGYZ^|(-9AJVoz1Ty0AD6y0O`r6C{+kyd223?ok23=YZH54jIQ_8h6lG z#|le=W7h&452b=BmS_gUSPJ&-b!3<O(F)_Pt;5hr=jx;j9*_Zl;#V*hj8GSQ2rmKL z|Mj5z^(;ZKZZQJYgn&^NbMACj2^8_#m{d;)yY!@$1zlHE6Qf^8_hD>QviByE!DG!t z*0OCBPRj0z-p1bEBa7wBKI`UES$V=bTYYD1Z8I#orK~U}SA<qkSpl)bpF?GF!q+e> zA59Z65s`R0b$x4p&*iM)I>|LEtAv}KtLdz9=bydI8Nw=z_@`-N1W1sk{C|KZ-nMO3 zWX&Z)D87&nwui&Z@j*`J(@8)%JVG!K+SxK~`1D%mr;B}B?Ah|pIoEYhnJjkC2!W@~ z>(WkwA47Y3CcY#c-j&1s+eL7!LX!f0n-Ta4nK7HK{g%~#XHU}3W{KAlDT#>V3rPZu zkkQBqu-|2l^g}n(-Y3*d7muR=<n7pRkc>fTv7j0V;xe`8MhyCfcIUbudKYmEE#y$I zw>%8qUYqkA=+q}r+{P*NEaDVoU-^!sBRr3uOOcPB`v{nTOq~0O(l^nFNXnP@5oThO zF;iY4DT5b(im~Wofn)r*el-Oj>|^cGUg8K%Gbn8SN2qL(HmKt&#;Cm>5^m&T$Lu<F z$7Dubrnwrq>4zdSjR#0P{geT?D8SJ}U-TzSp|oS-Q~regOq%;0sil7Q`xCj{LP||E z3V^-^_ho*sUB^R7WE8FF@7ND6s9Cl-<##{jJ~EMi#T^0o#ZJ#=4p0eo_%nA}xWEgx zqH9Vdbt()IgnMtC34rmrh`kVJ@<N<Bep%yhBq@k|(b1X(;2ZSK^RF+&d<qTq-{j|$ z#rQn1Whs#h;(dmZ02fQ5-wh+-XVLb9JrD4e7|zM{E8keof$pN{_pJz)Ytyw_+xhDs zlF&1M<6Zsb=IYlgG(6nU4Fh5r#rg~-VVk_Z`thf5vxj%U*9pMD=0Qo;8)hP_+Wc_! zFLS-_D21wr2;ew47EKI+K1Tk9l_9Eq5tg=c{R>bvMy8w1cL)~<qrUTdMz~C$xN0$p zIlH)O=(lG?6qL|h=OIlaHxIF6m51(4J|J&@ydYN|M3W>8xo_u;`SR$SM03b};~56L z6;8AJ*>`6??-lXMRlj321H4OD7u@bpu!K^0Z{L>-y`bdg=KxZ;*W^&LB_!dI9f;Z= z1tf0zQV6cyLh_$JqaZ)h&-xX^XYrV|FXfYc8K3@EV7Y7|V~)Pir%&HkxcaE?M;Ok3 z1iyKf3l`KPexY!B2^R>co}Hhv{L!Z@RlEA<#V%cVa~+|0vEzm)^Tqm(GuTU|<`XQX z^LZBsI=Q5gc$R%z3=ajK#BuwRCG1_^{CepT1?UVz@d7j)HaYB=rOx~gMctvs&kB}v zJay*%TqKGk;@rUrWvBhIIR7t;p7;QN0g6N#PMfqB3=-vt-wX}hq&q=_vx&!lqr{{B zpCL&ZFV9|`a5E%cbsoERKjy<+Xvt`GQ1zfsjs<sXB4|&+%mkYT#TTvlzbFn&dvR~U zfb+uGkb`*EuLTZPa;_ZA8@$#~|9h=Y*K=r8+m}t@8srfED5Uxv9*A)w4JpzK+sz~d z)a}0lw^m=5v7ZAIw>#Ja?hcm$Zv`oTy;@ywTgMT7=dake*g(77otgbAi~vboxdviH zi2RV&@PjO~DO-n3NeXcC>wC^68H-{mUQt&91nl0c{g^vDXXeZ-)rt#Ft-7cUZF5r1 zX$sDyqKz&UMJujEKC7#l&*owXf=+TVT1F?kC@qXM6&Fnt-eApCxL9+sM9ji}%viCM z=73H^r-+M<8|369M*b^15ySLcohW6=kSR$TDb|vVf$F3LGzCM8MOV;N$^qGh@7dwF z3b_JaYsIHU#aa#DDh;m-Ix2aj6`LD2)mkYRJD8C9NtIGGJT>J5grhjE;5FVFz8jqc zMNu1U8()YsRU27QXJ(w8oh9yn*^0BGd{dp(!cKE31alUGOHuJUK;Z(d7(Or=#4%_& z8N@MYC#9rVxww?MPpB?c!Kwl4w2U_~xE#0-WXmE@d_zkOs>_ODkQyBvw+TiVj?W-^ z#+Z@C>~hI`Q(SI=o$5+Z&T2S+oRdj#_yl&KcT4QRG!mte>`GC=VW7o-C*Vs<jWROq zU8p|en+9tz45^{5ZLH$BsXJF`AJCnvsk1D!#z_I4$_^$$K6Eg)lsIBr@ja#)9hxl0 z*9HSLoOKI0Q5s?ss>p(CG%lQpYbo$wXsHOCQA-?)hgKwx3`?~NZ2%jsCeC4}JI6%3 zhiMwkJVZ*|VL^D@H1wc<Jck_7<CxTSa3bBzq-FHt#c2HYw_hi2{LO4OUya5W*B@5h z^Y_!)e@5eP=ZlY%#k&AlhWF#YjbD$ydl$Qh(fG&7)yloA#cSr$)#E6EEwnJ>q`^av z81{{O@xqNS-1yb}?c9xDx@XJl4@=CQ&SyS*dG5acdW64+ivq}hdIQi?NIn2B5`s^K zvSnY(VOe&>@o{*8tVN$-7oy1*AS?y-sy*d-1O-_szEygv<}(h@YV$xxPl5Ci1j^<O z9tS?#3*5dHY^2gtAbSLXQt-7>AZiF`%0jd5DNq_tpbfm>W<31^O}fy{Tl4V_6Z%7# z$2cre$iT1*)zAZfCZDSHQjI<ex+0AR0W6wlco6YHQ%`vw0bPi(o)J+}_Mr=!)mzOy z1=7K72W-KUGlA{+jG&~=eA9B=c5HZ2GR(Mj6wXHkF3=mVwTCFfBT9KX2)|;o)=DnE zYCSGWzA4H}_f9j{|Iv+q`ujh?OTa&{5W?>4`qQWP+i_=q^VzCf_6%WIK`Xi$XNcCI zXWNHF7T7&t*7$rezq*(}U^hO0dFIA%C!bgD{jLtqFMpnl#@}J_$!xU*k?a=cmoDem zi>t}9<DcEDH<ORk%WvnOU8kE2{#F_t?D^#ab33BljqB99#I9t)l!ZKH-PTRpy7v7r z$DxQtp_I;lBtjw4HJ^k`Tm1pc_~-QJ>&0Y9SE7I}GYYNP8?p$FFwn&XuM&^h!~<hA z(vKUWz=P0RbTTO2Sx!JJAfwrX$o^khuBNMrKby`M)0u=gpa+p0y&zu!EB1<1LlBo6 z2)RI*nA<%SL$DM%4wk)fuvJj~JI6#gHIV-d>Sy48#>du^mJl=a__)wKGmt}I{sP%s z$j;0s)Aj+!SIXugGAXRv|G>~o+djbJYS?!Tr+R~0_Pjw&r+S037K|zC4*DV3$Lp)f z!aaL+{=IwkulaJdyjo0uUAg8%dJcIOlS^8|%gfcoJ$v~VT4=}t37$mFe-8Fl2w!2` zoB79oV?(;7=Gf}udgk6tuNL#=Z_Cx>m*t<_>)DmZh_}<#CoD0W&nC}zmGjrnt5+8* zY%m)CaQ?={VE~ds^szCcZC;R<cBuwDh@|N85yt^CBv=c05Gx;6J#t7KVgiRnrkBAP zlN^`DZiBVveqg;hE+P?R{e^xj#hzjCCXD)jBIgdU{Pe?ze^Vvg>GdyNY=01tn(YCp z$*DkEzv-$r1BOwuUgQNC>371J8zUJUOGZMa<*1{!A?*;+3t6tZgy5m@u_?gJalEO3 z{vYR^x^IU~``O{nIAL`KX>RUif;(2XL(6sz?ZF()!k#g)s@BJtSb@7`Ol`x>TG_OJ z8;;i2F@>ePbvvlBNg+1@M~UEWk)FnUVeL}D)XRa?Yinu)CS0UvOwuC~QnWFH(vzJa zK?M~)ZfFB$6-=^NdjsBxKlq1rg@v|%0Dr^N*a&)71B-CQM}z0bxd@AXwfaNFi>)#S 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 delta 41659 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 TP^mD0{6Il;Mn+jRIrRSm5#%vS diff --git a/doc/src/Section_accelerate.txt b/doc/src/Section_accelerate.txt index 9977853b43..9489dee160 100644 --- a/doc/src/Section_accelerate.txt +++ b/doc/src/Section_accelerate.txt @@ -28,8 +28,9 @@ multi-core CPUs, GPUs, and Intel Xeon Phi coprocessors. 5.3.2 "USER-INTEL package"_accelerate_intel.html :l 5.3.3 "KOKKOS package"_accelerate_kokkos.html :l 5.3.4 "USER-OMP package"_accelerate_omp.html :l - 5.3.5 "OPT package"_accelerate_opt.html :l,ule -5.4 "Comparison of various accelerator packages"_#acc_4 :l,ule + 5.3.5 "OPT package"_accelerate_opt.html :l +5.4 "Comparison of various accelerator packages"_#acc_4 :l +:ule The "Benchmark page"_http://lammps.sandia.gov/bench.html of the LAMMPS web site gives performance results for the various accelerator @@ -205,24 +206,18 @@ build the accelerator library | only for GPU package | install the accelerator package | make yes-opt, make yes-user-intel, etc | -add compile/link flags to Makefile.machine | - in src/MAKE, <br> +add compile/link flags to Makefile.machine in src/MAKE | only for USER-INTEL, KOKKOS, USER-OMP, OPT packages | re-build LAMMPS | make machine | -run a LAMMPS simulation | - lmp_machine < in.script <br> - mpirun -np 32 lmp_machine -in in.script | -enable the accelerator package | - via "-c on" and "-k on" "command-line switches"_Section_start.html#start_7, <br> - only for KOKKOS package | -set any needed options for the package | - via "-pk" "command-line switch"_Section_start.html#start_7 or - "package"_package.html command, <br> +prepare and test a regular LAMMPS simulation | + lmp_machine -in in.script; mpirun -np 32 lmp_machine -in in.script | +enable specific accelerator support via '-k on' "command-line switch"_Section_start.html#start_7, | + only needed for KOKKOS package | +set any needed options for the package via "-pk" "command-line switch"_Section_start.html#start_7 or "package"_package.html command, | only if defaults need to be changed | -use accelerated styles in your input script | - via "-sf" "command-line switch"_Section_start.html#start_7 or - "suffix"_suffix.html command :tb(c=2,s=|) +use accelerated styles in your input via "-sf" "command-line switch"_Section_start.html#start_7 or "suffix"_suffix.html command | lmp_machine -in in.script -sf gpu +:tb(c=2,s=|) Note that the first 4 steps can be done as a single command, using the src/Make.py tool. This tool is discussed in "Section @@ -302,7 +297,8 @@ overload the available bandwidth for communication. :l Styles with an "opt" suffix are part of the OPT package and typically speed-up the pairwise calculations of your simulation by 5-25% on a -CPU. :l,ule +CPU. :l +:ule The individual accelerator package doc pages explain: @@ -368,7 +364,8 @@ and the GPU. Hence its performance is affected if full 16 PCIe lanes are not available for each GPU. In HPC environments this can be the case if S2050/70 servers are used, where two devices generally share one PCIe 2.0 16x slot. Also many multi-GPU mainboards do not provide -full 16 lanes to each of the PCIe 2.0 16x slots. :l,ule +full 16 lanes to each of the PCIe 2.0 16x slots. :l +:ule [Differences between the two packages:] @@ -376,4 +373,5 @@ The GPU package accelerates only pair force, neighbor list, and PPPM calculations. :ulb,l The GPU package requires neighbor lists to be built on the CPU when using -exclusion lists or a triclinic simulation box. :l,ule +exclusion lists, hybrid pair styles, or a triclinic simulation box. :l +:ule diff --git a/doc/src/Section_errors.txt b/doc/src/Section_errors.txt index 52405f684b..6a18b1bbdb 100644 --- a/doc/src/Section_errors.txt +++ b/doc/src/Section_errors.txt @@ -535,8 +535,7 @@ Specified bond type is not valid. :dd {Bad fix ID in fix append/atoms command} :dt -The value of the fix_id for keyword spatial must start with the suffix -f_. :dd +The value of the fix_id for keyword spatial must start with 'f_'. :dd {Bad grid of processors} :dt @@ -11352,19 +11351,19 @@ have fully consistent image flags, since some bonds will cross periodic boundaries and connect two atoms with the same image flag. :dd -{KIM Model does not provide `energy'; Potential energy will be zero} :dt +{KIM Model does not provide 'energy'; Potential energy will be zero} :dt Self-explanatory. :dd -{KIM Model does not provide `forces'; Forces will be zero} :dt +{KIM Model does not provide 'forces'; Forces will be zero} :dt Self-explanatory. :dd -{KIM Model does not provide `particleEnergy'; energy per atom will be zero} :dt +{KIM Model does not provide 'particleEnergy'; energy per atom will be zero} :dt Self-explanatory. :dd -{KIM Model does not provide `particleVirial'; virial per atom will be zero} :dt +{KIM Model does not provide 'particleVirial'; virial per atom will be zero} :dt Self-explanatory. :dd diff --git a/doc/src/Section_howto.txt b/doc/src/Section_howto.txt index 13798f8f88..576c80f11f 100644 --- a/doc/src/Section_howto.txt +++ b/doc/src/Section_howto.txt @@ -695,7 +695,8 @@ MD with quantum forces calculated by a density functional code :l lammps_spparks: coupling of LAMMPS and "SPPARKS"_spparks, to couple a kinetic Monte Carlo model for grain growth using MD to calculate -strain induced across grain boundaries :l,ule +strain induced across grain boundaries :l +:ule :link(quest,http://dft.sandia.gov/Quest) :link(spparks,http://www.sandia.gov/~sjplimp/spparks.html) @@ -829,7 +830,7 @@ rotation of [A], [B], and [C] and can be computed as follows: :c,image(Eqs/transform.jpg) -where A = |[A]| indicates the scalar length of [A]. The ^ hat symbol +where A = | [A] | indicates the scalar length of [A]. The hat symbol (^) indicates the corresponding unit vector. {beta} and {gamma} are angles between the vectors described below. Note that by construction, [a], [b], and [c] have strictly positive x, y, and z components, respectively. @@ -1286,7 +1287,8 @@ print"_fix_print.html for single-line output of "variables"_variable.html. Fix print can also output to the screen. :l -"Restart files"_restart.html. :l,ule +"Restart files"_restart.html. :l +:ule A simulation prints one set of thermodynamic output and (optionally) restart files. It can generate any number of dump files and fix @@ -2274,7 +2276,8 @@ molecule diffusion rates. :l As input to special functions of "equal-style variables"_variable.html, like sum() and max(). E.g. to find the -largest cluster or fastest diffusing molecule. :l,ule +largest cluster or fastest diffusing molecule. :l +:ule Example calculations with chunks :h5 @@ -2430,7 +2433,8 @@ package, :ulb,l the adiabatic core-shell method, implemented in the "CORESHELL"_#howto_26 package, :l the thermalized Drude dipole method, implemented in the -"USER-DRUDE"_#howto_27 package. :l,ule +"USER-DRUDE"_#howto_27 package. :l +:ule The fluctuating charge method calculates instantaneous charges on interacting atoms based on the electronegativity equalization @@ -2737,7 +2741,8 @@ too much. To avoid this, damping at short range can be done by Thole functions (for which there are physical grounds). This Thole damping is applied to the point charges composing the induced dipole (the charge of the Drude particle and the opposite charge on the core, not -to the total charge of the core atom). :l,ule +to the total charge of the core atom). :l +:ule A detailed tutorial covering the usage of Drude induced dipoles in LAMMPS is "available here"_tutorial_drude.html. diff --git a/doc/src/Section_intro.txt b/doc/src/Section_intro.txt index 99751a13ff..1a015a4edf 100644 --- a/doc/src/Section_intro.txt +++ b/doc/src/Section_intro.txt @@ -241,7 +241,8 @@ Our group has also written and released a separate toolkit called "Pizza.py"_pizza which provides tools for doing setup, analysis, plotting, and visualization for LAMMPS simulations. Pizza.py is written in "Python"_python and is available for download from "the -Pizza.py WWW site"_pizza. :l,ule +Pizza.py WWW site"_pizza. :l +:ule :link(pizza,http://www.sandia.gov/~sjplimp/pizza.html) :link(python,http://www.python.org) @@ -460,7 +461,8 @@ Site"_lws. It might be added to the page. No promises. :l Cash. Small denominations, unmarked bills preferred. Paper sack OK. Leave on desk. VISA also accepted. Chocolate chip cookies -encouraged. :ule,l +encouraged. :l +:ule :line diff --git a/doc/src/Section_modify.txt b/doc/src/Section_modify.txt index e3447e5df8..67b38d6936 100644 --- a/doc/src/Section_modify.txt +++ b/doc/src/Section_modify.txt @@ -21,7 +21,7 @@ and extending its source code. 10.6 "Fix styles"_#mod_6 which include integrators, \ temperature and pressure control, force constraints, \ boundary conditions, diagnostic output, etc -10.7 "Input script commands"_mod_7 +10.7 "Input script commands"_#mod_7 10.8 "Kspace computations"_#mod_8 10.9 "Minimization styles"_#mod_9 10.10 "Pairwise potentials"_#mod_10 @@ -130,7 +130,8 @@ If you add something you think is truly useful and doesn't impact LAMMPS performance when it isn't used, send an email to the "developers"_http://lammps.sandia.gov/authors.html. We might be interested in adding it to the LAMMPS distribution. See further -details on this at the bottom of this page. :l,ule +details on this at the bottom of this page. :l +:ule :line :line @@ -597,7 +598,7 @@ compute values = c_mytemp\[0\], c_thermo_press\[3\], ... :pre Adding keywords for the "thermo_style custom"_thermo_style.html command (which can then be accessed by variables) was discussed -"here"_Section_modify.html#thermo on this page. +"here"_Section_modify.html#mod_13 on this page. Adding a new math function of one or two arguments can be done by editing one section of the Variable::evaulate() method. Search for @@ -614,7 +615,7 @@ to find the appropriate location. Adding new "compute styles"_compute.html (whose calculated values can then be accessed by variables) was discussed -"here"_Section_modify.html#compute on this page. +"here"_Section_modify.html#mod_3 on this page. :line :line diff --git a/doc/src/Section_packages.txt b/doc/src/Section_packages.txt index 5282eaa4bb..38afb98de1 100644 --- a/doc/src/Section_packages.txt +++ b/doc/src/Section_packages.txt @@ -1160,9 +1160,9 @@ Package, Description, Author(s), Doc page, Example, Pic/movie, Library "USER-QTB"_#USER-QTB, quantum nuclear effects, Yuan Shen (Stanford), "fix qtb"_fix_qtb.html "fix qbmsst"_fix_qbmsst.html, qtb, -, - "USER-QUIP"_#USER-QUIP, QUIP/libatoms interface, Albert Bartok-Partay (U Cambridge), "pair_style quip"_pair_quip.html, USER/quip, -, lib/quip "USER-REAXC"_#USER-REAXC, C version of ReaxFF, Metin Aktulga (LBNL), "pair_style reaxc"_pair_reax_c.html, reax, -, - -"USER-SMD"_#USER-SMD, smoothed Mach dynamics, Georg Ganzenmuller (EMI), "userguide.pdf"_PDF/SMD_LAMMPS_userguide.pdf, USER/smd, -, - +"USER-SMD"_#USER-SMD, smoothed Mach dynamics, Georg Ganzenmuller (EMI), "SMD User Guide"_PDF/SMD_LAMMPS_userguide.pdf, USER/smd, -, - "USER-SMTBQ"_#USER-SMTBQ, Second Moment Tight Binding - QEq potential, Salles & Maras & Politano & Tetot (4), "pair_style smtbq"_pair_smtbq.html, USER/smtbq, -, - -"USER-SPH"_#USER-SPH, smoothed particle hydrodynamics, Georg Ganzenmuller (EMI), "userguide.pdf"_PDF/SPH_LAMMPS_userguide.pdf, USER/sph, "sph"_sph, - +"USER-SPH"_#USER-SPH, smoothed particle hydrodynamics, Georg Ganzenmuller (EMI), "SPH User Guide"_PDF/SPH_LAMMPS_userguide.pdf, USER/sph, "sph"_sph, - "USER-TALLY"_#USER-TALLY, Pairwise tallied computes, Axel Kohlmeyer (Temple U), "compute XXX/tally"_compute_tally.html, USER/tally, -, - "USER-VTK"_#USER-VTK, VTK-style dumps, Berger and Queteschiner (6), "compute custom/vtk"_dump_custom_vtk.html, -, -, lib/vtk :tb(ea=c) @@ -1336,7 +1336,7 @@ splitting algorithm. See src/USER-DPD/README for more details. Supporting info: /src/USER-DPD/README, "compute dpd"_compute_dpd.html "compute dpd/atom"_compute_dpd_atom.html "fix eos/cv"_fix_eos_table.html "fix eos/table"_fix_eos_table.html - "fix eos/table/rx"_fix_eos_table_rx.html "fix shardlow"_fix_shardlow.html +"fix eos/table/rx"_fix_eos_table_rx.html "fix shardlow"_fix_shardlow.html "fix rx"_fix_rx.html "pair table/rx"_pair_table_rx.html "pair dpd/fdt"_pair_dpd_fdt.html "pair dpd/fdt/energy"_pair_dpd_fdt.html "pair exp6/rx"_pair_exp6_rx.html "pair multi/lucy"_pair_multi_lucy.html diff --git a/doc/src/Section_perf.txt b/doc/src/Section_perf.txt index d1cafa0bda..fc59dbe1dc 100644 --- a/doc/src/Section_perf.txt +++ b/doc/src/Section_perf.txt @@ -36,7 +36,8 @@ sigma cutoff (7 neighbors per atom), NVE integration :l Rhodo = rhodopsin protein in solvated lipid bilayer, CHARMM force field with a 10 Angstrom LJ cutoff (440 neighbors per atom), particle-particle particle-mesh (PPPM) for long-range Coulombics, NPT -integration :ole,l +integration :l +:ole Input files for these 5 problems are provided in the bench directory of the LAMMPS distribution. Each has 32,000 atoms and runs for 100 diff --git a/doc/src/Section_python.txt b/doc/src/Section_python.txt index 231a9054fb..b9049d87f7 100644 --- a/doc/src/Section_python.txt +++ b/doc/src/Section_python.txt @@ -277,35 +277,14 @@ your Python with an interface to MPI. This also allows you to make MPI calls directly from Python in your script, if you desire. There are several Python packages available that purport to wrap MPI -as a library and allow MPI functions to be called from Python. - -These include - -"pyMPI"_http://pympi.sourceforge.net/ -"maroonmpi"_http://code.google.com/p/maroonmpi/ -"mpi4py"_http://code.google.com/p/mpi4py/ -"myMPI"_http://nbcr.sdsc.edu/forum/viewtopic.php?t=89&sid=c997fefc3933bd66204875b436940f16 -"Pypar"_http://code.google.com/p/pypar :ul - -All of these except pyMPI work by wrapping the MPI library and -exposing (some portion of) its interface to your Python script. This -means Python cannot be used interactively in parallel, since they do -not address the issue of interactive input to multiple instances of -Python running on different processors. The one exception is pyMPI, -which alters the Python interpreter to address this issue, and (I -believe) creates a new alternate executable (in place of "python" -itself) as a result. - -In principle any of these Python/MPI packages should work to invoke -LAMMPS in parallel and to make MPI calls themselves from a Python -script which is itself running in parallel. However, when I -downloaded and looked at a few of them, their documentation was -incomplete and I had trouble with their installation. It's not clear -if some of the packages are still being actively developed and -supported. - -The packages Pypar and mpi4py have both been successfully tested with -LAMMPS. Pypar is simpler and easy to set up and use, but supports +as a library and allow MPI functions to be called from Python. However, +development on most of them seems to be halted except on: + +"mpi4py"_https://bitbucket.org/mpi4py/mpi4py +"PyPar"_https://github.com/daleroberts/pypar :ul + +Both packages, PyPar and mpi4py have been successfully tested with +LAMMPS. PyPar is simpler and easy to set up and use, but supports only a subset of MPI. Mpi4py is more MPI-feature complete, but also a bit more complex to use. As of version 2.0.0, mpi4py is the only python MPI wrapper that allows passing a custom MPI communicator to @@ -314,7 +293,7 @@ LAMMPS instances on subsets of the total MPI ranks. :line -Pypar requires the ubiquitous "Numpy package"_http://numpy.scipy.org +PyPar requires the ubiquitous "Numpy package"_http://numpy.scipy.org be installed in your Python. After launching Python, type import numpy :pre @@ -329,16 +308,16 @@ sudo python setup.py install :pre The "sudo" is only needed if required to copy Numpy files into your Python distribution's site-packages directory. -To install Pypar (version pypar-2.1.4_94 as of Aug 2012), unpack it +To install PyPar (version pypar-2.1.4_94 as of Aug 2012), unpack it and from its "source" directory, type python setup.py build sudo python setup.py install :pre -Again, the "sudo" is only needed if required to copy Pypar files into +Again, the "sudo" is only needed if required to copy PyPar files into your Python distribution's site-packages directory. -If you have successully installed Pypar, you should be able to run +If you have successully installed PyPar, you should be able to run Python and type import pypar :pre @@ -355,17 +334,17 @@ print "Proc %d out of %d procs" % (pypar.rank(),pypar.size()) :pre and see one line of output for each processor you run on. -NOTE: To use Pypar and LAMMPS in parallel from Python, you must insure +NOTE: To use PyPar and LAMMPS in parallel from Python, you must insure both are using the same version of MPI. If you only have one MPI installed on your system, this is not an issue, but it can be if you have multiple MPIs. Your LAMMPS build is explicit about which MPI it is using, since you specify the details in your lo-level -src/MAKE/Makefile.foo file. Pypar uses the "mpicc" command to find +src/MAKE/Makefile.foo file. PyPar uses the "mpicc" command to find information about the MPI it uses to build against. And it tries to load "libmpi.so" from the LD_LIBRARY_PATH. This may or may not find the MPI library that LAMMPS is using. If you have problems running -both Pypar and LAMMPS together, this is an issue you may need to -address, e.g. by moving other MPI installations so that Pypar finds +both PyPar and LAMMPS together, this is an issue you may need to +address, e.g. by moving other MPI installations so that PyPar finds the right one. :line @@ -467,8 +446,8 @@ lmp_g++ -in in.lj :pre [Test LAMMPS and Python in parallel:] :h5 To run LAMMPS in parallel, assuming you have installed the -"Pypar"_Pypar package as discussed above, create a test.py file -containing these lines: +"PyPar"_https://github.com/daleroberts/pypar package as discussed +above, create a test.py file containing these lines: import pypar from lammps import lammps @@ -478,8 +457,8 @@ print "Proc %d out of %d procs has" % (pypar.rank(),pypar.size()),lmp pypar.finalize() :pre To run LAMMPS in parallel, assuming you have installed the -"mpi4py"_mpi4py package as discussed above, create a test.py file -containing these lines: +"mpi4py"_https://bitbucket.org/mpi4py/mpi4py package as discussed +above, create a test.py file containing these lines: from mpi4py import MPI from lammps import lammps @@ -498,17 +477,17 @@ and you should see the same output as if you had typed % mpirun -np 4 lmp_g++ -in in.lj :pre -Note that if you leave out the 3 lines from test.py that specify Pypar +Note that if you leave out the 3 lines from test.py that specify PyPar commands you will instantiate and run LAMMPS independently on each of the P processors specified in the mpirun command. In this case you should get 4 sets of output, each showing that a LAMMPS run was made on a single processor, instead of one set of output showing that LAMMPS ran on 4 processors. If the 1-processor outputs occur, it -means that Pypar is not working correctly. +means that PyPar is not working correctly. -Also note that once you import the PyPar module, Pypar initializes MPI +Also note that once you import the PyPar module, PyPar initializes MPI for you, and you can use MPI calls directly in your Python script, as -described in the Pypar documentation. The last line of your Python +described in the PyPar documentation. The last line of your Python script should be pypar.finalize(), to insure MPI is shut down correctly. @@ -761,7 +740,8 @@ Add a wrapper method to python/lammps.py for this interface function. :l You should now be able to invoke the new interface function from a -Python script. Isn't ctypes amazing? :l,ule +Python script. Isn't ctypes amazing? :l +:ule :line :line diff --git a/doc/src/Section_start.txt b/doc/src/Section_start.txt index 0231fb3357..32bd5dae3c 100644 --- a/doc/src/Section_start.txt +++ b/doc/src/Section_start.txt @@ -1080,12 +1080,12 @@ Here is an example of such errors when the system FFTW or provided lib/colvars library have not been built as shared libraries: /usr/bin/ld: /usr/local/lib/libfftw3.a(mapflags.o): relocation -R_X86_64_32 against `.rodata' can not be used when making a shared +R_X86_64_32 against '.rodata' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libfftw3.a: could not read symbols: Bad value :pre /usr/bin/ld: ../../lib/colvars/libcolvars.a(colvarmodule.o): -relocation R_X86_64_32 against `__pthread_key_create' can not be used +relocation R_X86_64_32 against '__pthread_key_create' can not be used when making a shared object; recompile with -fPIC ../../lib/colvars/libcolvars.a: error adding symbols: Bad value :pre @@ -1208,7 +1208,8 @@ Move to the directory where you have saved lmp_win_no-mpi.exe (e.g. by typing: cd "Documents"). :l At the command prompt, type "lmp_win_no-mpi -in in.lj", replacing in.lj -with the name of your LAMMPS input script. :l,ule +with the name of your LAMMPS input script. :l +:ule For the MPI version, which allows you to run LAMMPS under Windows on multiple processors, follow these steps: @@ -1237,7 +1238,8 @@ In this mode, output may not immediately show up on the screen, so if your input script takes a long time to execute, you may need to be patient before the output shows up. :l Alternatively, you can still use this executable to run on a single processor by typing something -like: "lmp_win_mpi -in in.lj". :l,ule +like: "lmp_win_mpi -in in.lj". :l +:ule :line diff --git a/doc/src/Section_tools.txt b/doc/src/Section_tools.txt index 6da0690f34..189bc1e35c 100644 --- a/doc/src/Section_tools.txt +++ b/doc/src/Section_tools.txt @@ -65,7 +65,7 @@ own sub-directories with their own Makefiles. "polymer bonding"_#polybond "pymol_asphere"_#pymol "python"_#pythontools -"reax"_#reax +"reax"_#reax_tool "restart2data"_#restart "vim"_#vim "xmgrace"_#xmgrace @@ -455,7 +455,7 @@ README for more info on Pizza.py and how to use these scripts. :line -reax tool :h4,link(reax) +reax tool :h4,link(reax_tool) The reax sub-directory contains stand-alond codes that can post-process the output of the "fix reax/bonds"_fix_reax_bonds.html diff --git a/doc/src/accelerate_gpu.txt b/doc/src/accelerate_gpu.txt index 8e76b85aa2..6b4cddf8be 100644 --- a/doc/src/accelerate_gpu.txt +++ b/doc/src/accelerate_gpu.txt @@ -42,7 +42,8 @@ LAMMPS-specific code is in the GPU package. It makes calls to a generic GPU library in the lib/gpu directory. This library provides NVIDIA support as well as more general OpenCL support, so that the same functionality can eventually be supported on a variety of GPU -hardware. :l,ule +hardware. :l +:ule Here is a quick overview of how to enable and use the GPU package: @@ -245,7 +246,8 @@ regardless of asynchronous CPU calculations. :l The output section "GPU Time Info (average)" reports "Max Mem / Proc". This is the maximum memory used at one time on the GPU for data -storage by a single MPI process. :l,ule +storage by a single MPI process. :l +:ule [Restrictions:] diff --git a/doc/src/accelerate_intel.txt b/doc/src/accelerate_intel.txt index c97b19b67d..e1b715e587 100644 --- a/doc/src/accelerate_intel.txt +++ b/doc/src/accelerate_intel.txt @@ -31,7 +31,8 @@ Fixes: nve, npt, nvt, nvt/sllod :l Improper Styles: cvff, harmonic :l Pair Styles: buck/coul/cut, buck/coul/long, buck, gayberne, charmm/coul/long, lj/cut, lj/cut/coul/long, sw, tersoff :l -K-Space Styles: pppm :l,ule +K-Space Styles: pppm :l +:ule [Speed-ups to expect:] @@ -70,7 +71,8 @@ For Intel Xeon CPUs: Edit src/MAKE/OPTIONS/Makefile.intel_cpu_intelmpi as necessary. :ulb,l If using {kspace_style pppm} in the input script, add "neigh_modify binsize 3" and "kspace_modify diff ad" to the input script for better performance. :l -"-pk intel 0 omp 2 -sf intel" added to LAMMPS command-line :l,ule +"-pk intel 0 omp 2 -sf intel" added to LAMMPS command-line :l +:ule For Intel Xeon Phi CPUs for simulations without {kspace_style pppm} in the input script : @@ -79,7 +81,8 @@ Edit src/MAKE/OPTIONS/Makefile.knl as necessary. :ulb,l Runs should be performed using MCDRAM. :l "-pk intel 0 omp 2 -sf intel" {or} "-pk intel 0 omp 4 -sf intel" should be added to the LAMMPS command-line. Choice for best -performance will depend on the simulation. :l,ule +performance will depend on the simulation. :l +:ule For Intel Xeon Phi CPUs for simulations with {kspace_style pppm} in the input script: @@ -93,13 +96,15 @@ performance. :l export KMP_AFFINITY=none :l "-pk intel 0 omp 3 lrt yes -sf intel" or "-pk intel 0 omp 1 lrt yes -sf intel" added to LAMMPS command-line. Choice for best performance -will depend on the simulation. :l,ule +will depend on the simulation. :l +:ule For Intel Xeon Phi coprocessors (Offload): Edit src/MAKE/OPTIONS/Makefile.intel_coprocessor as necessary :ulb,l "-pk intel N omp 1" added to command-line where N is the number of -coprocessors per node. :l,ule +coprocessors per node. :l +:ule :line @@ -463,7 +468,8 @@ Brown, W.M., Carrillo, J.-M.Y., Mishra, B., Gavhane, N., Thakker, F.M., De Krake Brown, W. M., Semin, A., Hebenstreit, M., Khvostov, S., Raman, K., Plimpton, S.J. Increasing Molecular Dynamics Simulation Rates with an 8-Fold Increase in Electrical Power Efficiency. 2016 International Conference for High Performance Computing. In press. :l -Brown, W.M., Carrillo, J.-M.Y., Gavhane, N., Thakkar, F.M., Plimpton, S.J. Optimizing Legacy Molecular Dynamics Software with Directive-Based Offload. Computer Physics Communications. 2015. 195: p. 95-101. :l,ule +Brown, W.M., Carrillo, J.-M.Y., Gavhane, N., Thakkar, F.M., Plimpton, S.J. Optimizing Legacy Molecular Dynamics Software with Directive-Based Offload. Computer Physics Communications. 2015. 195: p. 95-101. :l +:ule diff --git a/doc/src/accelerate_kokkos.txt b/doc/src/accelerate_kokkos.txt index a3d1c9efbd..c33e591712 100644 --- a/doc/src/accelerate_kokkos.txt +++ b/doc/src/accelerate_kokkos.txt @@ -381,7 +381,8 @@ When running large number of atoms per GPU, KOKKOS is typically faster than the GPU package. :l When running on Intel Xeon Phi, KOKKOS is not as fast as -the USER-INTEL package, which is optimized for that hardware. :l,ule +the USER-INTEL package, which is optimized for that hardware. :l +:ule See the "Benchmark page"_http://lammps.sandia.gov/bench.html of the LAMMPS web site for performance of the KOKKOS package on different diff --git a/doc/src/accelerate_omp.txt b/doc/src/accelerate_omp.txt index 0f969d6de1..f31bbc42a3 100644 --- a/doc/src/accelerate_omp.txt +++ b/doc/src/accelerate_omp.txt @@ -163,7 +163,8 @@ sometimes be achived by increasing the length of the Coulombic cutoff and thus reducing the work done by the long-range solver. Using the "run_style verlet/split"_run_style.html command, which is compatible with the USER-OMP package, is an alternative way to reduce the number -of MPI tasks assigned to the KSpace calculation. :l,ule +of MPI tasks assigned to the KSpace calculation. :l +:ule Additional performance tips are as follows: @@ -178,7 +179,8 @@ NOTE: By default, several current MPI implementations use a processor affinity setting that restricts each MPI task to a single CPU core. Using multi-threading in this mode will force all threads to share the one core and thus is likely to be counterproductive. Instead, binding -MPI tasks to a (multi-core) socket, should solve this issue. :l,ule +MPI tasks to a (multi-core) socket, should solve this issue. :l +:ule [Restrictions:] diff --git a/doc/src/compute.txt b/doc/src/compute.txt index e680abaa33..8ecfd81af1 100644 --- a/doc/src/compute.txt +++ b/doc/src/compute.txt @@ -108,7 +108,8 @@ variable"_variable.html. :l Local values can be reduced by the "compute reduce"_compute_reduce.html command, or histogrammed by the "fix ave/histo"_fix_ave_histo.html command, or output by the "dump -local"_dump.html command. :l,ule +local"_dump.html command. :l +:ule The results of computes that calculate global quantities can be either "intensive" or "extensive" values. Intensive means the value is diff --git a/doc/src/dihedral_harmonic.txt b/doc/src/dihedral_harmonic.txt index ac124ffd48..1de4370a46 100644 --- a/doc/src/dihedral_harmonic.txt +++ b/doc/src/dihedral_harmonic.txt @@ -45,7 +45,8 @@ in some force fields trans = 0 degrees. :ulb,l Some force fields reverse the sign convention on {d}. :l Some force fields let {n} be positive or negative which corresponds to -{d} = 1 or -1 for the harmonic style. :ule,l +{d} = 1 or -1 for the harmonic style. :l +:ule :line diff --git a/doc/src/dump_image.txt b/doc/src/dump_image.txt index a7dd872d63..09afe1ae9d 100644 --- a/doc/src/dump_image.txt +++ b/doc/src/dump_image.txt @@ -601,7 +601,8 @@ obviously play movie files directly. Similarly for corresponding tools bundled with Linux desktop environments. However, due to licensing issues with some file formats, the formats may require installing additional libraries, purchasing a license, or may not be -supported. :ule,l +supported. :l +:ule :line diff --git a/doc/src/fix.txt b/doc/src/fix.txt index 3fbeb013eb..d84ec2aad9 100644 --- a/doc/src/fix.txt +++ b/doc/src/fix.txt @@ -130,7 +130,8 @@ variable"_variable.html. :l Local values can be reduced by the "compute reduce"_compute_reduce.html command, or histogrammed by the "fix -ave/histo"_fix_ave_histo.html command. :l,ule +ave/histo"_fix_ave_histo.html command. :l +:ule See this "howto section"_Section_howto.html#howto_15 for a summary of various LAMMPS output options, many of which involve fixes. diff --git a/doc/src/fix_adapt_fep.txt b/doc/src/fix_adapt_fep.txt index 3037bc9317..5dd58bc39a 100644 --- a/doc/src/fix_adapt_fep.txt +++ b/doc/src/fix_adapt_fep.txt @@ -61,7 +61,8 @@ It is possible to modify the charges of chosen atom types only, instead of scaling all the charges in the system. :ulb,l There is a new option {after} for better compatibility with "fix -ave/time". :l,ule +ave/time". :l +:ule This version is suited for free energy calculations using "compute ti"_compute_ti.html or "compute fep"_compute_fep.html. diff --git a/doc/src/fix_addtorque.txt b/doc/src/fix_addtorque.txt index 25c7855c7d..793ec0e015 100644 --- a/doc/src/fix_addtorque.txt +++ b/doc/src/fix_addtorque.txt @@ -32,7 +32,8 @@ the components of the total torque applied on the group (around its center of mass) are Tx,Ty,Tz :ulb,l the group would move as a rigid body in the absence of other -forces. :l,ule +forces. :l +:ule This command can be used to drive a group of atoms into rotation. diff --git a/doc/src/fix_atc.txt b/doc/src/fix_atc.txt index eddfa52921..0df4e29c0b 100644 --- a/doc/src/fix_atc.txt +++ b/doc/src/fix_atc.txt @@ -19,7 +19,8 @@ type = {thermal} or {two_temperature} or {hardy} or {field} :l {two_temperature} = electron-phonon coupling with field: temperature and electron_temperature {hardy} = on-the-fly post-processing using kernel localization functions (see "related" section for possible fields) {field} = on-the-fly post-processing using mesh-based localization functions (see "related" section for possible fields) :pre -parameter_file = name of the file with material parameters. Note: Neither hardy nor field requires a parameter file :l,ule +parameter_file = name of the file with material parameters. Note: Neither hardy nor field requires a parameter file :l +:ule [Examples:] diff --git a/doc/src/fix_ave_correlate.txt b/doc/src/fix_ave_correlate.txt index c4df7671aa..6f97d78219 100644 --- a/doc/src/fix_ave_correlate.txt +++ b/doc/src/fix_ave_correlate.txt @@ -232,7 +232,8 @@ so Npair = N*(N+1)/2. :l If {type} is set to {full} then each input value is correlated with itself and every other value. I.e. Cij = Vi*Vj, for i,j = 1,N so -Npair = N^2. :l,ule +Npair = N^2. :l +:ule The {ave} keyword determines what happens to the accumulation of correlation samples every {Nfreq} timesteps. If the {ave} setting is @@ -342,7 +343,8 @@ CNN. :l For {type} = {full}, the Npair = N^2 columns are ordered: C11, C12, ..., C1N, C21, C22, ..., C2N, C31, ..., C3N, ..., CN1, ..., CNN-1, -CNN. :l,ule +CNN. :l +:ule The array values calculated by this fix are treated as intensive. If you need to divide them by the number of atoms, you must do this in a diff --git a/doc/src/fix_langevin_drude.txt b/doc/src/fix_langevin_drude.txt index 47864e3e2c..4fee37fd31 100644 --- a/doc/src/fix_langevin_drude.txt +++ b/doc/src/fix_langevin_drude.txt @@ -229,7 +229,8 @@ computes the global pressure even if its group is {ATOMS}. This is what we want. If we thermostated {ATOMS} using {npt}, the pressure should be the global one, but the temperature should be only that of the cores. That's why the command {fix_modify} should be called in -that case. :l,ule +that case. :l +:ule :line diff --git a/doc/src/fix_rigid.txt b/doc/src/fix_rigid.txt index f42c18d387..fb6f0e29cb 100644 --- a/doc/src/fix_rigid.txt +++ b/doc/src/fix_rigid.txt @@ -621,7 +621,8 @@ rigid styles for the rigid bodies. :l Use "fix press/berendsen"_fix_press_berendsen.html to compute the pressure and change the box dimensions. Use one of the 4 NVE or 2 NVT rigid styles for the rigid bodies. Use "fix nvt"_fix_nh.thml (or any -other thermostat) for the non-rigid particles. :l,ule +other thermostat) for the non-rigid particles. :l +:ule In all case, the rigid bodies and non-rigid particles both contribute to the global pressure and the box is scaled the same by any of the diff --git a/doc/src/fix_temp_berendsen.txt b/doc/src/fix_temp_berendsen.txt index 202be8921f..dd516d7f08 100644 --- a/doc/src/fix_temp_berendsen.txt +++ b/doc/src/fix_temp_berendsen.txt @@ -16,7 +16,8 @@ ID, group-ID are documented in "fix"_fix.html command :ulb,l temp/berendsen = style name of this fix command :l Tstart,Tstop = desired temperature at start/end of run :l Tstart can be a variable (see below) :pre -Tdamp = temperature damping parameter (time units) :l,ule +Tdamp = temperature damping parameter (time units) :l +:ule [Examples:] diff --git a/doc/src/fix_temp_csvr.txt b/doc/src/fix_temp_csvr.txt index 137654d1ec..7e53926516 100644 --- a/doc/src/fix_temp_csvr.txt +++ b/doc/src/fix_temp_csvr.txt @@ -19,7 +19,8 @@ temp/csvr or temp/csld = style name of this fix command :l Tstart,Tstop = desired temperature at start/end of run :l Tstart can be a variable (see below) :pre Tdamp = temperature damping parameter (time units) :l -seed = random number seed to use for white noise (positive integer) :l,ule +seed = random number seed to use for white noise (positive integer) :l +:ule [Examples:] diff --git a/doc/src/fix_temp_rescale.txt b/doc/src/fix_temp_rescale.txt index 4f8f216ce4..b5c1ec1b6c 100644 --- a/doc/src/fix_temp_rescale.txt +++ b/doc/src/fix_temp_rescale.txt @@ -18,7 +18,8 @@ N = perform rescaling every N steps :l Tstart,Tstop = desired temperature at start/end of run (temperature units) :l Tstart can be a variable (see below) :pre window = only rescale if temperature is outside this window (temperature units) :l -fraction = rescale to target temperature by this fraction :l,ule +fraction = rescale to target temperature by this fraction :l +:ule [Examples:] diff --git a/doc/src/info.txt b/doc/src/info.txt index b973b3f199..73bc07eb13 100644 --- a/doc/src/info.txt +++ b/doc/src/info.txt @@ -12,15 +12,18 @@ info command :h3 info args :pre -args = one or more of the following keywords: {out}, {all}, {system}, {communication}, {computes}, {dumps}, {fixes}, {groups}, {regions}, {variables}, {time}, or {configuration} - {out} values = {screen}, {log}, {append} filename, {overwrite} filename:ul +args = one or more of the following keywords: {out}, {all}, {system}, {communication}, {computes}, {dumps}, {fixes}, {groups}, {regions}, {variables}, {styles}, {time}, or {configuration} + {out} values = {screen}, {log}, {append} filename, {overwrite} filename + {styles} values = {all}, {angle}, {atom}, {bond}, {compute}, {command}, {dump}, {dihedral}, {fix}, {improper}, {integrate}, {kspace}, {minimize}, {region} :ul [Examples:] info system info groups computes variables info all out log -info all out append info.txt :pre +info all out append info.txt +info styles all +info styles atom :pre [Description:] @@ -67,6 +70,24 @@ The {variables} category prints a list of all currently defined variables, their names, styles, definition and last computed value, if available. +The {styles} category prints the list of styles available in LAMMPS. It +supports one of the following options to control what is printed out: + +all +angle +atom +bond +compute +command +dump +dihedral +fix +improper +integrate +kspace +minimize +region :ul + The {time} category prints the accumulated CPU and wall time for the process that writes output (usually MPI rank 0). @@ -84,3 +105,5 @@ reported. [Default:] The {out} option has the default {screen}. + +The {styles} option has the default {all}. diff --git a/doc/src/neigh_modify.txt b/doc/src/neigh_modify.txt index b05fcf4d3e..c16b667f7d 100644 --- a/doc/src/neigh_modify.txt +++ b/doc/src/neigh_modify.txt @@ -123,7 +123,8 @@ to freeze a wall or portion of a bio-molecule. :l When one or more rigid bodies are specified, interactions within each body can be turned off to save needless computation. See the "fix -rigid"_fix_rigid.html command for more details. :l,ule +rigid"_fix_rigid.html command for more details. :l +:ule The {exclude type} option turns off the pairwise interaction if one atom is of type M and the other of type N. M can equal N. The diff --git a/doc/src/pair_bop.txt b/doc/src/pair_bop.txt index f08bc5413b..b569750c9c 100644 --- a/doc/src/pair_bop.txt +++ b/doc/src/pair_bop.txt @@ -162,7 +162,8 @@ Line 1: nr, nBOt (nr is the number of divisions the radius is broken into for function tables and MUST be a factor of 5; nBOt is the number of divisions for the tabulated values of THETA_(S,ij) :ulb,l Line 2: delta_1-delta_7 (if all are not used in the particular :l -formulation, set unused values to 0.0) :l,ule +formulation, set unused values to 0.0) :l +:ule Following this N lines for e_1-e_N containing p_pi. @@ -176,7 +177,8 @@ Line 1: r_cut (for e_1-e_1 interactions) :ulb,l Line 2: c_sigma, a_sigma, c_pi, a_pi :l Line 3: delta_sigma, delta_pi :l Line 4: f_sigma, k_sigma, delta_3 (This delta_3 is similar to that of -the previous section but is interaction type dependent) :l,ule +the previous section but is interaction type dependent) :l +:ule The next section contains a line for each three body interaction type e_j-e_i-e_k with i=0->N, j=0->N, k=j->N @@ -185,7 +187,8 @@ Line 1: g_(sigma0), g_(sigma1), g_(sigma2) (These are coefficients for g_(sigma,jik)(THETA_ijk) for e_1-e_1-e_1 interaction. "Ward"_#Ward contains the full expressions for the constants as functions of b_(sigma,ijk), p_(sigma,ijk), u_(sigma,ijk)) :ulb,l -Line 2: g_(sigma0), g_(sigma1), g_(sigma2) (for e_1-e_1-e_2) :l,ule +Line 2: g_(sigma0), g_(sigma1), g_(sigma2) (for e_1-e_1-e_2) :l +:ule The next section contains a block for each interaction type for the phi_ij(r_ij). Each block has nr entries with 5 entries per line. @@ -196,7 +199,8 @@ Line 2: phi(r6), phi(r7), phi(r8), phi(r9), phi(r10) (this continues until nr) :l ... :l Line nr/5_1: phi(r1), phi(r2), phi(r3), phi(r4), phi(r5), (for the -e_1-e_1 interaction type) :l,ule +e_1-e_1 interaction type) :l +:ule The next section contains a block for each interaction type for the beta_(sigma,ij)(r_ij). Each block has nr entries with 5 entries per @@ -208,7 +212,8 @@ Line 2: beta_sigma(r6), beta_sigma(r7), beta_sigma(r8), beta_sigma(r9), beta_sigma(r10) (this continues until nr) :l ... :l Line nr/5+1: beta_sigma(r1), beta_sigma(r2), beta_sigma(r3), -beta_sigma(r4), beta_sigma(r5) (for the e_1-e_2 interaction type) :l,ule +beta_sigma(r4), beta_sigma(r5) (for the e_1-e_2 interaction type) :l +:ule The next section contains a block for each interaction type for beta_(pi,ij)(r_ij). Each block has nr entries with 5 entries per line. @@ -219,7 +224,8 @@ Line 2: beta_pi(r6), beta_pi(r7), beta_pi(r8), beta_pi(r9), beta_pi(r10) (this continues until nr) :l ... :l Line nr/5+1: beta_pi(r1), beta_pi(r2), beta_pi(r3), beta_pi(r4), -beta_pi(r5) (for the e_1-e_2 interaction type) :l,ule +beta_pi(r5) (for the e_1-e_2 interaction type) :l +:ule The next section contains a block for each interaction type for the THETA_(S,ij)((THETA_(sigma,ij))^(1/2), f_(sigma,ij)). Each block has @@ -231,7 +237,8 @@ Line 2: THETA_(S,ij)(r6), THETA_(S,ij)(r7), THETA_(S,ij)(r8), THETA_(S,ij)(r9), THETA_(S,ij)(r10) (this continues until nBOt) :l ... :l Line nBOt/5+1: THETA_(S,ij)(r1), THETA_(S,ij)(r2), THETA_(S,ij)(r3), -THETA_(S,ij)(r4), THETA_(S,ij)(r5) (for the e_1-e_2 interaction type) :l,ule +THETA_(S,ij)(r4), THETA_(S,ij)(r5) (for the e_1-e_2 interaction type) :l +:ule The next section contains a block of N lines for e_1-e_N @@ -266,7 +273,8 @@ into for function tables and MUST be a factor of 5; ntheta is the power of the power of the spline used to fit the angular function; nBOt is the number of divisions for the tabulated values of THETA_(S,ij) :ulb,l Line 2: delta_1-delta_7 (if all are not used in the particular :l -formulation, set unused values to 0.0) :l,ule +formulation, set unused values to 0.0) :l +:ule Following this N lines for e_1-e_N containing p_pi. @@ -280,7 +288,8 @@ Line 1: r_cut (for e_1-e_1 interactions) :ulb,l Line 2: c_sigma, a_sigma, c_pi, a_pi :l Line 3: delta_sigma, delta_pi :l Line 4: f_sigma, k_sigma, delta_3 (This delta_3 is similar to that of -the previous section but is interaction type dependent) :l,ule +the previous section but is interaction type dependent) :l +:ule The next section contains a line for each three body interaction type e_j-e_i-e_k with i=0->N, j=0->N, k=j->N @@ -292,7 +301,8 @@ can contain up to five constants. If the spline has more than five terms the second line will contain the remaining constants The following lines will then contain the constants for the remainaing g0, g1, g2... (for e_1-e_1-e_2) and the other three body -interactions :l,ule +interactions :l +:ule The rest of the table has the same structure as the previous section (see above). @@ -319,7 +329,8 @@ into for function tables and MUST be a factor of 5; ntheta is the number of divisions for the tabulated values of the g angular function; nBOt is the number of divisions for the tabulated values of THETA_(S,ij) :ulb,l Line 2: delta_1-delta_7 (if all are not used in the particular :l -formulation, set unused values to 0.0) :l,ule +formulation, set unused values to 0.0) :l +:ule Following this N lines for e_1-e_N containing p_pi. @@ -333,7 +344,8 @@ Line 1: r_cut (for e_1-e_1 interactions) :ulb,l Line 2: c_sigma, a_sigma, c_pi, a_pi :l Line 3: delta_sigma, delta_pi :l Line 4: f_sigma, k_sigma, delta_3 (This delta_3 is similar to that of -the previous section but is interaction type dependent) :l,ule +the previous section but is interaction type dependent) :l +:ule The next section contains a line for each three body interaction type e_j-e_i-e_k with i=0->N, j=0->N, k=j->N @@ -344,7 +356,8 @@ Line 2: g(theta6), g(theta7), g(theta8), g(theta9), g(theta10) (this continues until ntheta) :l ... :l Line ntheta/5+1: g(theta1), g(theta2), g(theta3), g(theta4), g(theta5), (for the -e_1-e_1-e_2 interaction type) :l,ule +e_1-e_1-e_2 interaction type) :l +:ule The rest of the table has the same structure as the previous section (see above). diff --git a/doc/src/pair_buck_long.txt b/doc/src/pair_buck_long.txt index aad5bdb0fe..50aee51dd3 100644 --- a/doc/src/pair_buck_long.txt +++ b/doc/src/pair_buck_long.txt @@ -20,7 +20,8 @@ flag_coul = {long} or {off} :l {long} = use Kspace long-range summation for the Coulombic term 1/r {off} = omit the Coulombic term :pre cutoff = global cutoff for Buckingham (and Coulombic if only 1 cutoff) (distance units) :l -cutoff2 = global cutoff for Coulombic (optional) (distance units) :l,ule +cutoff2 = global cutoff for Coulombic (optional) (distance units) :l +:ule [Examples:] diff --git a/doc/src/pair_gran.txt b/doc/src/pair_gran.txt index 497d1d553f..baa1154fa5 100644 --- a/doc/src/pair_gran.txt +++ b/doc/src/pair_gran.txt @@ -23,7 +23,8 @@ Kt = elastic constant for tangential contact (force/distance units or pressure u gamma_n = damping coefficient for collisions in normal direction (1/time units or 1/time-distance units - see discussion below) :l gamma_t = damping coefficient for collisions in tangential direction (1/time units or 1/time-distance units - see discussion below) :l xmu = static yield criterion (unitless value between 0.0 and 1.0e4) :l -dampflag = 0 or 1 if tangential damping force is excluded or included :l,ule +dampflag = 0 or 1 if tangential damping force is excluded or included :l +:ule NOTE: Versions of LAMMPS before 9Jan09 had different style names for granular force fields. This is to emphasize the fact that the diff --git a/doc/src/pair_modify.txt b/doc/src/pair_modify.txt index eb60c6b006..8a4f291583 100644 --- a/doc/src/pair_modify.txt +++ b/doc/src/pair_modify.txt @@ -187,7 +187,8 @@ enabled will not be thermodynamically consistent with the truncated force-field that was used. In other words, atoms do not feel any LJ pair interactions beyond the cutoff, but the energy and pressure reported by the simulation include an estimated contribution from -those interactions. :l,ule +those interactions. :l +:ule The {compute} keyword allows pairwise computations to be turned off, even though a "pair_style"_pair_style.html is defined. This is not diff --git a/doc/src/pair_table.txt b/doc/src/pair_table.txt index 8a667e40f4..560ff43590 100644 --- a/doc/src/pair_table.txt +++ b/doc/src/pair_table.txt @@ -118,7 +118,8 @@ consistent (dE/dr = -F) over the entire range of r values. LAMMPS will warn if this is not the case. :l Use as large an inner cutoff as possible. This avoids fitting splines -to very steep parts of the potential. :l,ule +to very steep parts of the potential. :l +:ule :line diff --git a/doc/src/pair_table_rx.txt b/doc/src/pair_table_rx.txt index 6c765d2093..6db0a3fa5c 100644 --- a/doc/src/pair_table_rx.txt +++ b/doc/src/pair_table_rx.txt @@ -111,7 +111,8 @@ Make sure that your tabulated forces and tabulated energies are consistent (dE/dr = -F) along the entire range of r values. :l Use as large an inner cutoff as possible. This avoids fitting splines -to very steep parts of the potential. :l,ule +to very steep parts of the potential. :l +:ule :line diff --git a/doc/src/read_data.txt b/doc/src/read_data.txt index d040872e73..bcdc7ac434 100644 --- a/doc/src/read_data.txt +++ b/doc/src/read_data.txt @@ -698,7 +698,8 @@ atoms in such a bond. :l If you plan to "dump"_dump.html image flags and perform post-analysis that will unwrap atom coordinates, it may be important that a continued run (restarted from a data file) begins with image flags -that are consistent with the previous run. :l,ule +that are consistent with the previous run. :l +:ule NOTE: If your system is an infinite periodic crystal with bonds then it is impossible to have fully consistent image flags. This is because diff --git a/doc/src/region.txt b/doc/src/region.txt index 0dc415a8a8..0bc578c07e 100644 --- a/doc/src/region.txt +++ b/doc/src/region.txt @@ -243,7 +243,8 @@ to yz. :l For style {sphere}, the lattice spacing in dimensions x,y,z are applied to the sphere center x,y,z. The spacing in dimension x is -applied to the sphere radius. :l,ule +applied to the sphere radius. :l +:ule :line diff --git a/doc/src/rerun.txt b/doc/src/rerun.txt index c623d4bebc..da8c8d6895 100644 --- a/doc/src/rerun.txt +++ b/doc/src/rerun.txt @@ -60,7 +60,8 @@ Calculate the portion of per-atom forces resulting from a subset of the potential. E.g. compute only Coulombic forces. This can be done by only defining only a Coulombic pair style in the rerun script. Doing this in the original script would result in different (bad) -dynamics. :l,ule +dynamics. :l +:ule Conceptually, using the rerun command is like running an input script that has a loop in it (see the "next"_next.html and "jump"_jump.html diff --git a/doc/src/suffix.txt b/doc/src/suffix.txt index 51aead3f37..7450d27baf 100644 --- a/doc/src/suffix.txt +++ b/doc/src/suffix.txt @@ -59,7 +59,8 @@ multi-threading :l OPT = a handful of pair styles, cache-optimized for faster CPU performance :l -HYBRID = a combination of two packages can be specified (see below) :ule,l +HYBRID = a combination of two packages can be specified (see below) :l +:ule As an example, all of the packages provide a "pair_style lj/cut"_pair_lj.html variant, with style names lj/cut/opt, lj/cut/omp, diff --git a/doc/src/tutorial_drude.txt b/doc/src/tutorial_drude.txt index 3ab8afcae3..10de99a80c 100644 --- a/doc/src/tutorial_drude.txt +++ b/doc/src/tutorial_drude.txt @@ -67,7 +67,8 @@ for all Drude particles, and to calculate the force constant for each \ type of core-Drude bond from equation (1). The timesteps used by these \ authors are between 0.5 and 2 fs, with the degrees of freedom of the \ Drude oscillators kept cold at 1 K. :l -In both these force fields hydrogen atoms are treated as non-polarizable. :ule,l +In both these force fields hydrogen atoms are treated as non-polarizable. :l +:ule The motion of of the Drude particles can be calculated by minimizing @@ -104,7 +105,8 @@ due to the short distances, so an atom may capture the Drude particle \ (shell) of a neighbor, or the induced dipoles within the same molecule \ may align too much. To avoid this, damping at short of the \ interactions between the point charges composing the induced dipole \ -can be done by "Thole"_#Thole functions. :ole,l +can be done by "Thole"_#Thole functions. :l +:ole :line @@ -330,8 +332,8 @@ For the {thole} pair style the coefficients are the atom polarizability in units of cubic length :olb,l the screening factor of the Thole function (optional, default value specified by the pair_style command) :l -the cutoff (optional, default value defined by the pair_style command) -:l,ole +the cutoff (optional, default value defined by the pair_style command) :l +:ole The special neighbors have charge-charge and charge-dipole interactions screened by the {coul} factors of the {special_bonds} diff --git a/doc/src/tutorial_github.txt b/doc/src/tutorial_github.txt index 06f15df874..f31de522cc 100644 --- a/doc/src/tutorial_github.txt +++ b/doc/src/tutorial_github.txt @@ -22,7 +22,7 @@ book"_http://git-scm.com/book/ to reacquaint yourself. First of all, you need a GitHub account. This is fairly simple, just go to "GitHub"_https://github.com and create an account by clicking -the ``Sign up for GitHub'' button. Once your account is created, you +the "Sign up for GitHub" button. Once your account is created, you can sign in by clicking the button in the top left and filling in your username or e-mail address and password. @@ -33,7 +33,7 @@ username or e-mail address and password. To get changes into LAMMPS, you need to first fork the repository. At the time of writing, LAMMPS-ICMS is the preferred fork. Go to "LAMMPS on GitHub"_https://github.com/lammps/lammps and make sure branch is -set to ``lammps-icms'', see the figure below. +set to "lammps-icms", see the figure below. :c,image(JPG/tutorial_branch.png) @@ -58,7 +58,7 @@ will contain these changes, a so-called feature branch. Since LAMMPS is such a big project and most user contributions come in small portions, the most ideal workflow for LAMMPS is the so-called -``Feature branch'' workflow. It is explained in great detail here: +"Feature branch" workflow. It is explained in great detail here: "feature branch workflow"_https://www.atlassian.com/git/tutorials/comparing-workflows/feature-branch-workflow. @@ -78,7 +78,7 @@ You can find the proper url to the right of the "HTTPS" block, see figure. :c,image(JPG/tutorial_https_block.png) -The above command copies (``clones'') the git repository to your local +The above command copies ("clones") the git repository to your local machine. You can use this local clone to make changes and test them without interfering with the repository on github. First, however, it is recommended to make a new branch for a particular feature you would @@ -101,7 +101,7 @@ you should switch branches! After everything is done, add the files to the branch and commit them: $ git add src/USER-MANIFOLD examples/USER/manifold/ - $ git add doc/fix_nv{t,e}_manifold_rattle.txt + $ git add doc/fix_nv\{t,e\}_manifold_rattle.txt $ git add doc/fix_manifoldforce.txt doc/user_manifolds.txt :pre After the files are added, the change should be comitted: diff --git a/doc/src/write_dump.txt b/doc/src/write_dump.txt index 8f6e860a48..a4ed7b1664 100644 --- a/doc/src/write_dump.txt +++ b/doc/src/write_dump.txt @@ -17,7 +17,8 @@ style = any of the supported "dump styles"_dump.html :l file = name of file to write dump info to :l dump-args = any additional args needed for a particular "dump style"_dump.html :l modify = all args after this keyword are passed to "dump_modify"_dump_modify.html (optional) :l -dump-modify-args = args for "dump_modify"_dump_modify.html (optional) :l,ule +dump-modify-args = args for "dump_modify"_dump_modify.html (optional) :l +:ule [Examples:] diff --git a/doc/utils/converters/lammpsdoc/txt2html.py b/doc/utils/converters/lammpsdoc/txt2html.py index ab132a380d..6e559723b4 100755 --- a/doc/utils/converters/lammpsdoc/txt2html.py +++ b/doc/utils/converters/lammpsdoc/txt2html.py @@ -518,6 +518,9 @@ class TxtParser(object): def last_word(self, text): return text.split()[-1] + def order_commands(self, commands): + return list(reversed(commands)) + def do_formatting(self, paragraph): last_word = self.last_word(paragraph) format_str = paragraph[paragraph.rfind(last_word):] @@ -529,7 +532,7 @@ class TxtParser(object): commands = [x[0] for x in command_pattern.findall(commands)] - for command in reversed(commands): + for command in self.order_commands(commands): paragraph = self.format.convert(command, paragraph, commands) return paragraph + '\n' diff --git a/doc/utils/converters/lammpsdoc/txt2rst.py b/doc/utils/converters/lammpsdoc/txt2rst.py index f9ceb9b7ae..1bc279c0f3 100755 --- a/doc/utils/converters/lammpsdoc/txt2rst.py +++ b/doc/utils/converters/lammpsdoc/txt2rst.py @@ -57,10 +57,23 @@ class RSTMarkup(Markup): return text def convert(self, text): + text = self.escape_rst_chars(text) text = super().convert(text) text = self.inline_math(text) return text + def escape_rst_chars(self, text): + text = text.replace('*', '\\*') + text = text.replace('^', '\\^') + text = re.sub(r'([^"])_', r'\1\\_', text) + return text + + def unescape_rst_chars(self, text): + text = text.replace('\\*', '*') + text = text.replace('\\^', '^') + text = text.replace('\\_', '_') + return text + def inline_math(self, text): start_pos = text.find("\\(") end_pos = text.find("\\)") @@ -68,6 +81,7 @@ class RSTMarkup(Markup): while start_pos >= 0 and end_pos >= 0: original = text[start_pos:end_pos+2] formula = original[2:-2] + formula = self.unescape_rst_chars(formula) replacement = ":math:`" + formula.replace('\n', ' ').strip() + "`" text = text.replace(original, replacement) @@ -80,6 +94,8 @@ class RSTMarkup(Markup): content = content.strip() content = content.replace('\n', ' ') + href = self.unescape_rst_chars(href) + anchor_pos = href.find('#') if anchor_pos >= 0: @@ -122,11 +138,11 @@ class RSTFormatting(Formatting): link.lower().endswith('.jpeg') or link.lower().endswith('.png') or link.lower().endswith('.gif')): - converted = ".. thumbnail:: " + link + "\n" + converted = ".. thumbnail:: " + self.markup.unescape_rst_chars(link) + "\n" else: - converted = ".. image:: " + file + "\n" + converted = ".. image:: " + self.markup.unescape_rst_chars(file) + "\n" if link: - converted += " :target: " + link + "\n" + converted += " :target: " + self.markup.unescape_rst_chars(link) + "\n" if "c" in self.current_command_list: converted += " :align: center\n" @@ -295,6 +311,8 @@ class RSTFormatting(Formatting): start = "" body = parts[0] + body = self.markup.unescape_rst_chars(body) + if len(start) > 0: text += start + "\n" text += "\n.. math::\n\n" @@ -329,6 +347,14 @@ class Txt2Rst(TxtParser): def is_raw_textblock_end(self, line): return line.startswith('END_RST -->') + def order_commands(self, commands): + if 'ule' in commands and 'l' in commands and commands.index('ule') > commands.index('l'): + return commands + elif 'ole' in commands and 'l' in commands and commands.index('ole') > commands.index('l'): + return commands + return super().order_commands(commands) + + class Txt2RstConverter(TxtConverter): def get_argument_parser(self): parser = argparse.ArgumentParser(description='converts a text file with simple formatting & markup into ' diff --git a/doc/utils/converters/tests/test_txt2rst.py b/doc/utils/converters/tests/test_txt2rst.py index e2c20434be..2fa2bd699e 100644 --- a/doc/utils/converters/tests/test_txt2rst.py +++ b/doc/utils/converters/tests/test_txt2rst.py @@ -77,6 +77,18 @@ class TestMarkup(unittest.TestCase): self.assertEqual("**bold** = [bold]\n" "*italic* = {italic}\n", s) + def test_escape_rst_characters(self): + s = self.markup.convert("[*bold] and {italic*}") + self.assertEqual("**\*bold** and *italic\**", s) + + def test_escape_hat_character(self): + s = self.markup.convert("x^2") + self.assertEqual("x\^2", s) + + def test_escape_underscore(self): + s = self.markup.convert("x_") + self.assertEqual("x\_", s) + def test_paragraph_with_italic(self): self.assertEqual("A sentence with a *italic* word", self.markup.convert("A sentence with a {italic} word")) @@ -224,6 +236,14 @@ class TestListFormatting(unittest.TestCase): "* two\n" "* three\n\n", s) + def test_elementwise_unordered_list_reverse(self): + s = self.txt2rst.convert("one :ulb,l\n" + "two :l\n" + "three :l,ule\n") + self.assertEqual("* one\n" + "* two\n" + "* three\n\n", s) + def test_multi_line_unordered_list_elements(self): s = self.txt2rst.convert("one :ulb,l\n" "two\n" @@ -407,6 +427,16 @@ class TestMathMarkup(unittest.TestCase): " \\frac{s_{ij} r_{ij} }{2} \\right)\n" " \\exp \\left( - s_{ij} r_{ij} \\right) \\end{equation}\n\n", s) + def test_detect_latex_equation_with_mult(self): + s = self.txt2rst.convert("\\begin\\{equation\\} a = b * c \\end\\{equation\\}\n") + self.assertEqual("\n.. math::\n\n" + " \\begin{equation} a = b * c \\end{equation}\n\n", s) + + def test_detect_latex_equation_with_pow(self): + s = self.txt2rst.convert("\\begin\\{equation\\} a = b^c \\end\\{equation\\}\n") + self.assertEqual("\n.. math::\n\n" + " \\begin{equation} a = b^c \\end{equation}\n\n", s) + def test_detect_inline_latex_equation(self): s = self.txt2rst.convert("Masses: \\begin\\{equation\\} M' = M + m \\end\\{equation\\}\n" "\\begin\\{equation\\} m' = \\frac \\{M\\, m \\} \\{M'\\} \\end\\{equation\\}\n") @@ -422,6 +452,9 @@ class TestMathMarkup(unittest.TestCase): def test_detect_inline_math(self): self.assertEqual(":math:`x^2`", self.markup.convert("\\( x^2 \\)")) + def test_detect_inline_math_mult(self): + self.assertEqual(":math:`x * 2`", self.markup.convert("\\( x * 2 \\)")) + def test_detect_multiline_inline_math(self): line = "\\(\\sqrt \\{ \\frac \\{2\, k_B \\mathtt\\{Tcom\\}\, m'\\}\n" \ "\\{\\mathrm dt\\, \\mathtt\\{damp\\_com\\} \\}\n" \ diff --git a/lib/atc/Makefile.icc b/lib/atc/Makefile.icc index 502f103ba4..59be520b4b 100644 --- a/lib/atc/Makefile.icc +++ b/lib/atc/Makefile.icc @@ -48,4 +48,4 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - rm *.o *.d *~ $(LIB) + -rm *.o *.d *~ $(LIB) diff --git a/lib/atc/Makefile.mingw32-cross b/lib/atc/Makefile.mingw32-cross index 49795f1fd2..8b33540981 100644 --- a/lib/atc/Makefile.mingw32-cross +++ b/lib/atc/Makefile.mingw32-cross @@ -61,7 +61,7 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - rm $(DIR)*.o $(DIR)*.d *~ $(LIB) + -rm $(DIR)*.o $(DIR)*.d *~ $(LIB) $(DEPENDS) : $(DIR) sinclude $(DEPENDS) diff --git a/lib/atc/Makefile.mingw32-cross-mpi b/lib/atc/Makefile.mingw32-cross-mpi index 522a394dc0..c5feeca81a 100644 --- a/lib/atc/Makefile.mingw32-cross-mpi +++ b/lib/atc/Makefile.mingw32-cross-mpi @@ -62,7 +62,7 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - rm $(DIR)*.o $(DIR)*.d *~ $(LIB) + -rm $(DIR)*.o $(DIR)*.d *~ $(LIB) $(DEPENDS) : $(DIR) sinclude $(DEPENDS) diff --git a/lib/atc/Makefile.mingw64-cross b/lib/atc/Makefile.mingw64-cross index 2dfdf6fe80..fbd3a02610 100644 --- a/lib/atc/Makefile.mingw64-cross +++ b/lib/atc/Makefile.mingw64-cross @@ -61,7 +61,7 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - rm $(DIR)*.o $(DIR)*.d *~ $(LIB) + -rm $(DIR)*.o $(DIR)*.d *~ $(LIB) $(DEPENDS) : $(DIR) sinclude $(DEPENDS) diff --git a/lib/atc/Makefile.mingw64-cross-mpi b/lib/atc/Makefile.mingw64-cross-mpi index 935d86ba25..f8dd64eae3 100644 --- a/lib/atc/Makefile.mingw64-cross-mpi +++ b/lib/atc/Makefile.mingw64-cross-mpi @@ -62,7 +62,7 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - rm $(DIR)*.o $(DIR)*.d *~ $(LIB) + -rm $(DIR)*.o $(DIR)*.d *~ $(LIB) $(DEPENDS) : $(DIR) sinclude $(DEPENDS) diff --git a/lib/atc/Makefile.mpic++ b/lib/atc/Makefile.mpic++ index 982deac5d3..c9dfdb79c9 100644 --- a/lib/atc/Makefile.mpic++ +++ b/lib/atc/Makefile.mpic++ @@ -34,6 +34,6 @@ lib: $(OBJ) DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - @rm *.o *.d *~ $(LIB) + -rm *.o *.d *~ $(LIB) sinclude $(DEPENDS) diff --git a/lib/atc/Makefile.serial b/lib/atc/Makefile.serial index 8204430c81..44ce5fd341 100644 --- a/lib/atc/Makefile.serial +++ b/lib/atc/Makefile.serial @@ -46,6 +46,6 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - @rm *.o *.d *~ $(LIB) + -rm *.o *.d *~ $(LIB) sinclude $(DEPENDS) diff --git a/lib/awpmd/Makefile.mingw32-cross b/lib/awpmd/Makefile.mingw32-cross index af66187b89..6a93987173 100644 --- a/lib/awpmd/Makefile.mingw32-cross +++ b/lib/awpmd/Makefile.mingw32-cross @@ -77,4 +77,4 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - rm *.d *~ $(OBJ) $(LIB) + -rm *.d *~ $(OBJ) $(LIB) diff --git a/lib/awpmd/Makefile.mingw64-cross b/lib/awpmd/Makefile.mingw64-cross index f1df999bab..1f3e608129 100644 --- a/lib/awpmd/Makefile.mingw64-cross +++ b/lib/awpmd/Makefile.mingw64-cross @@ -76,4 +76,4 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - rm *.d *~ $(OBJ) $(LIB) + -rm *.d *~ $(OBJ) $(LIB) diff --git a/lib/awpmd/Makefile.mpicc b/lib/awpmd/Makefile.mpicc index c1a6f3c01d..4c289ad88a 100644 --- a/lib/awpmd/Makefile.mpicc +++ b/lib/awpmd/Makefile.mpicc @@ -66,4 +66,4 @@ DEPENDS = $(OBJ:.o=.d) # ------ CLEAN ------ clean: - rm *.d *~ $(OBJ) $(LIB) + -rm *.d *~ $(OBJ) $(LIB) diff --git a/lib/colvars/Makefile.fermi b/lib/colvars/Makefile.fermi index fe8d3ac16c..906675ae12 100644 --- a/lib/colvars/Makefile.fermi +++ b/lib/colvars/Makefile.fermi @@ -54,58 +54,62 @@ colvars_standalone: colvars_main.o colvarproxy_standalone.o $(LIB) # ------ DEPENDENCIES ------ # colvaratoms.o: colvaratoms.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarparse.h colvarvalue.h colvaratoms.h + colvarvalue.h colvarparse.h colvardeps.h colvaratoms.h colvarbias_abf.o: colvarbias_abf.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvar.h colvarvalue.h colvarparse.h colvarbias_abf.h \ - colvarbias.h colvargrid.h + colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvardeps.h \ + colvarbias_abf.h colvarbias.h colvargrid.h colvarbias_alb.o: colvarbias_alb.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarbias_alb.h colvar.h colvarvalue.h colvarparse.h \ - colvarbias_restraint.h colvarbias.h + colvarproxy.h colvarvalue.h colvarbias_alb.h colvar.h colvarparse.h \ + colvardeps.h colvarbias_restraint.h colvarbias.h colvarbias.o: colvarbias.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarbias.h colvar.h colvarparse.h + colvarvalue.h colvarbias.h colvar.h colvarparse.h colvardeps.h colvarbias_histogram.o: colvarbias_histogram.cpp colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvar.h colvarparse.h \ - colvarbias_histogram.h colvarbias.h colvargrid.h + colvardeps.h colvarbias_histogram.h colvarbias.h colvargrid.h colvarbias_meta.o: colvarbias_meta.cpp colvar.h colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h \ + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ colvarbias_meta.h colvarbias.h colvargrid.h colvarbias_restraint.o: colvarbias_restraint.cpp colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvarbias_restraint.h \ - colvarbias.h colvar.h colvarparse.h + colvarbias.h colvar.h colvarparse.h colvardeps.h colvarcomp_angles.o: colvarcomp_angles.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvar.h colvarvalue.h colvarparse.h colvarcomp.h \ - colvaratoms.h + colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvardeps.h \ + colvarcomp.h colvaratoms.h colvarcomp_coordnums.o: colvarcomp_coordnums.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarparse.h colvarvalue.h colvaratoms.h \ - colvar.h colvarcomp.h + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvaratoms.h colvar.h colvarcomp.h colvarcomp.o: colvarcomp.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvar.h colvarparse.h colvarcomp.h colvaratoms.h + colvarvalue.h colvar.h colvarparse.h colvardeps.h colvarcomp.h \ + colvaratoms.h colvarcomp_distances.o: colvarcomp_distances.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvar.h \ - colvarcomp.h colvaratoms.h + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvar.h colvarcomp.h colvaratoms.h colvarcomp_protein.o: colvarcomp_protein.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvarparse.h colvar.h colvarcomp.h \ - colvaratoms.h -colvarcomp_rotations.o: colvarcomp_rotations.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvar.h \ + colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h colvar.h \ colvarcomp.h colvaratoms.h +colvarcomp_rotations.o: colvarcomp_rotations.cpp colvarmodule.h \ + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvar.h colvarcomp.h colvaratoms.h colvar.o: colvar.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvar.h colvarcomp.h colvaratoms.h \ - colvarscript.h colvarbias.h + colvarvalue.h colvarparse.h colvardeps.h colvar.h colvarcomp.h \ + colvaratoms.h colvarscript.h colvarbias.h +colvardeps.o: colvardeps.cpp colvardeps.h colvarmodule.h colvartypes.h \ + colvarproxy.h colvarvalue.h colvarparse.h colvargrid.o: colvargrid.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvar.h colvarcomp.h colvaratoms.h \ - colvargrid.h + colvarvalue.h colvarparse.h colvardeps.h colvar.h colvarcomp.h \ + colvaratoms.h colvargrid.h colvarmodule.o: colvarmodule.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvarparse.h colvar.h colvarbias.h \ - colvarbias_abf.h colvargrid.h colvarbias_alb.h colvarbias_restraint.h \ - colvarbias_histogram.h colvarbias_meta.h colvarscript.h + colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h colvar.h \ + colvarbias.h colvarbias_abf.h colvargrid.h colvarbias_alb.h \ + colvarbias_restraint.h colvarbias_histogram.h colvarbias_meta.h \ + colvarscript.h colvarparse.o: colvarparse.cpp colvarmodule.h colvartypes.h colvarproxy.h \ colvarvalue.h colvarparse.h colvarscript.o: colvarscript.cpp colvarscript.h colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvar.h colvarparse.h \ - colvarbias.h + colvartypes.h colvarproxy.h colvarvalue.h colvarbias.h colvar.h \ + colvarparse.h colvardeps.h colvartypes.o: colvartypes.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarparse.h colvarvalue.h + colvarvalue.h colvarparse.h colvarvalue.o: colvarvalue.cpp colvarmodule.h colvartypes.h colvarproxy.h \ colvarvalue.h diff --git a/lib/colvars/Makefile.g++ b/lib/colvars/Makefile.g++ index d0fdd1c325..c80fa1065e 100644 --- a/lib/colvars/Makefile.g++ +++ b/lib/colvars/Makefile.g++ @@ -53,56 +53,60 @@ colvars_standalone: colvars_main.o colvarproxy_standalone.o $(LIB) # ------ DEPENDENCIES ------ # colvaratoms.o: colvaratoms.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvaratoms.h + colvarvalue.h colvarparse.h colvardeps.h colvaratoms.h colvarbias_abf.o: colvarbias_abf.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvarbias_abf.h \ - colvarbias.h colvargrid.h + colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvardeps.h \ + colvarbias_abf.h colvarbias.h colvargrid.h colvarbias_alb.o: colvarbias_alb.cpp colvarmodule.h colvartypes.h \ colvarproxy.h colvarvalue.h colvarbias_alb.h colvar.h colvarparse.h \ - colvarbias_restraint.h colvarbias.h + colvardeps.h colvarbias_restraint.h colvarbias.h colvarbias.o: colvarbias.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarbias.h colvar.h colvarparse.h + colvarvalue.h colvarbias.h colvar.h colvarparse.h colvardeps.h colvarbias_histogram.o: colvarbias_histogram.cpp colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvar.h colvarparse.h \ - colvarbias_histogram.h colvarbias.h colvargrid.h + colvardeps.h colvarbias_histogram.h colvarbias.h colvargrid.h colvarbias_meta.o: colvarbias_meta.cpp colvar.h colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h \ + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ colvarbias_meta.h colvarbias.h colvargrid.h colvarbias_restraint.o: colvarbias_restraint.cpp colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvarbias_restraint.h \ - colvarbias.h colvar.h colvarparse.h + colvarbias.h colvar.h colvarparse.h colvardeps.h colvarcomp_angles.o: colvarcomp_angles.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvarcomp.h \ - colvaratoms.h + colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvardeps.h \ + colvarcomp.h colvaratoms.h colvarcomp_coordnums.o: colvarcomp_coordnums.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvaratoms.h \ - colvar.h colvarcomp.h + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvaratoms.h colvar.h colvarcomp.h colvarcomp.o: colvarcomp.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvar.h colvarparse.h colvarcomp.h colvaratoms.h + colvarvalue.h colvar.h colvarparse.h colvardeps.h colvarcomp.h \ + colvaratoms.h colvarcomp_distances.o: colvarcomp_distances.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvar.h \ - colvarcomp.h colvaratoms.h + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvar.h colvarcomp.h colvaratoms.h colvarcomp_protein.o: colvarcomp_protein.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvarparse.h colvar.h colvarcomp.h \ - colvaratoms.h -colvarcomp_rotations.o: colvarcomp_rotations.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvar.h \ + colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h colvar.h \ colvarcomp.h colvaratoms.h +colvarcomp_rotations.o: colvarcomp_rotations.cpp colvarmodule.h \ + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvar.h colvarcomp.h colvaratoms.h colvar.o: colvar.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvar.h colvarcomp.h colvaratoms.h \ - colvarscript.h colvarbias.h + colvarvalue.h colvarparse.h colvardeps.h colvar.h colvarcomp.h \ + colvaratoms.h colvarscript.h colvarbias.h +colvardeps.o: colvardeps.cpp colvardeps.h colvarmodule.h colvartypes.h \ + colvarproxy.h colvarvalue.h colvarparse.h colvargrid.o: colvargrid.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvar.h colvarcomp.h colvaratoms.h \ - colvargrid.h + colvarvalue.h colvarparse.h colvardeps.h colvar.h colvarcomp.h \ + colvaratoms.h colvargrid.h colvarmodule.o: colvarmodule.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvarparse.h colvar.h colvarbias.h \ - colvarbias_abf.h colvargrid.h colvarbias_alb.h colvarbias_restraint.h \ - colvarbias_histogram.h colvarbias_meta.h colvarscript.h + colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h colvar.h \ + colvarbias.h colvarbias_abf.h colvargrid.h colvarbias_alb.h \ + colvarbias_restraint.h colvarbias_histogram.h colvarbias_meta.h \ + colvarscript.h colvarparse.o: colvarparse.cpp colvarmodule.h colvartypes.h colvarproxy.h \ colvarvalue.h colvarparse.h colvarscript.o: colvarscript.cpp colvarscript.h colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvarbias.h colvar.h \ - colvarparse.h + colvarparse.h colvardeps.h colvartypes.o: colvartypes.cpp colvarmodule.h colvartypes.h colvarproxy.h \ colvarvalue.h colvarparse.h colvarvalue.o: colvarvalue.cpp colvarmodule.h colvartypes.h colvarproxy.h \ diff --git a/lib/colvars/Makefile.mingw32-cross b/lib/colvars/Makefile.mingw32-cross index 289b006a45..eba83c555f 100644 --- a/lib/colvars/Makefile.mingw32-cross +++ b/lib/colvars/Makefile.mingw32-cross @@ -61,58 +61,62 @@ $(DIR)%.o: %.cpp # ------ DEPENDENCIES ------ # $(DIR)colvaratoms.o: colvaratoms.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarparse.h colvarvalue.h colvaratoms.h + colvarvalue.h colvarparse.h colvardeps.h colvaratoms.h $(DIR)colvarbias_abf.o: colvarbias_abf.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvar.h colvarvalue.h colvarparse.h colvarbias_abf.h \ - colvarbias.h colvargrid.h + colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvardeps.h \ + colvarbias_abf.h colvarbias.h colvargrid.h $(DIR)colvarbias_alb.o: colvarbias_alb.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarbias_alb.h colvar.h colvarvalue.h colvarparse.h \ - colvarbias_restraint.h colvarbias.h + colvarproxy.h colvarvalue.h colvarbias_alb.h colvar.h colvarparse.h \ + colvardeps.h colvarbias_restraint.h colvarbias.h $(DIR)colvarbias.o: colvarbias.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarbias.h colvar.h colvarparse.h + colvarvalue.h colvarbias.h colvar.h colvarparse.h colvardeps.h $(DIR)colvarbias_histogram.o: colvarbias_histogram.cpp colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvar.h colvarparse.h \ - colvarbias_histogram.h colvarbias.h colvargrid.h + colvardeps.h colvarbias_histogram.h colvarbias.h colvargrid.h $(DIR)colvarbias_meta.o: colvarbias_meta.cpp colvar.h colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h \ + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ colvarbias_meta.h colvarbias.h colvargrid.h $(DIR)colvarbias_restraint.o: colvarbias_restraint.cpp colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvarbias_restraint.h \ - colvarbias.h colvar.h colvarparse.h + colvarbias.h colvar.h colvarparse.h colvardeps.h $(DIR)colvarcomp_angles.o: colvarcomp_angles.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvar.h colvarvalue.h colvarparse.h colvarcomp.h \ - colvaratoms.h + colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvardeps.h \ + colvarcomp.h colvaratoms.h $(DIR)colvarcomp_coordnums.o: colvarcomp_coordnums.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarparse.h colvarvalue.h colvaratoms.h \ - colvar.h colvarcomp.h + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvaratoms.h colvar.h colvarcomp.h $(DIR)colvarcomp.o: colvarcomp.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvar.h colvarparse.h colvarcomp.h colvaratoms.h + colvarvalue.h colvar.h colvarparse.h colvardeps.h colvarcomp.h \ + colvaratoms.h $(DIR)colvarcomp_distances.o: colvarcomp_distances.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvar.h \ - colvarcomp.h colvaratoms.h + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvar.h colvarcomp.h colvaratoms.h $(DIR)colvarcomp_protein.o: colvarcomp_protein.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvarparse.h colvar.h colvarcomp.h \ - colvaratoms.h -$(DIR)colvarcomp_rotations.o: colvarcomp_rotations.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvar.h \ + colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h colvar.h \ colvarcomp.h colvaratoms.h +$(DIR)colvarcomp_rotations.o: colvarcomp_rotations.cpp colvarmodule.h \ + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvar.h colvarcomp.h colvaratoms.h $(DIR)colvar.o: colvar.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvar.h colvarcomp.h colvaratoms.h \ - colvarscript.h colvarbias.h + colvarvalue.h colvarparse.h colvardeps.h colvar.h colvarcomp.h \ + colvaratoms.h colvarscript.h colvarbias.h +$(DIR)colvardeps.o: colvardeps.cpp colvardeps.h colvarmodule.h colvartypes.h \ + colvarproxy.h colvarvalue.h colvarparse.h $(DIR)colvargrid.o: colvargrid.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvar.h colvarcomp.h colvaratoms.h \ - colvargrid.h + colvarvalue.h colvarparse.h colvardeps.h colvar.h colvarcomp.h \ + colvaratoms.h colvargrid.h $(DIR)colvarmodule.o: colvarmodule.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvarparse.h colvar.h colvarbias.h \ - colvarbias_abf.h colvargrid.h colvarbias_alb.h colvarbias_restraint.h \ - colvarbias_histogram.h colvarbias_meta.h colvarscript.h + colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h colvar.h \ + colvarbias.h colvarbias_abf.h colvargrid.h colvarbias_alb.h \ + colvarbias_restraint.h colvarbias_histogram.h colvarbias_meta.h \ + colvarscript.h $(DIR)colvarparse.o: colvarparse.cpp colvarmodule.h colvartypes.h colvarproxy.h \ colvarvalue.h colvarparse.h $(DIR)colvarscript.o: colvarscript.cpp colvarscript.h colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvar.h colvarparse.h \ - colvarbias.h + colvartypes.h colvarproxy.h colvarvalue.h colvarbias.h colvar.h \ + colvarparse.h colvardeps.h $(DIR)colvartypes.o: colvartypes.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarparse.h colvarvalue.h + colvarvalue.h colvarparse.h $(DIR)colvarvalue.o: colvarvalue.cpp colvarmodule.h colvartypes.h colvarproxy.h \ colvarvalue.h diff --git a/lib/colvars/Makefile.mingw32-cross-mpi b/lib/colvars/Makefile.mingw32-cross-mpi index cc2a76111a..1e35c5b461 100644 --- a/lib/colvars/Makefile.mingw32-cross-mpi +++ b/lib/colvars/Makefile.mingw32-cross-mpi @@ -4,10 +4,10 @@ SHELL=/bin/sh all: $(MAKE) $(MFLAGS) mingw32-cross - rm -f Obj_mingw32-mpi + -rm -f Obj_mingw32-mpi ln -s Obj_mingw32 Obj_mingw32-mpi clean: $(MAKE) $(MFLAGS) clean-mingw32-cross - rm -f Obj_mingw32-mpi + -rm -f Obj_mingw32-mpi diff --git a/lib/colvars/Makefile.mingw64-cross b/lib/colvars/Makefile.mingw64-cross index a6081273f8..1d83b6a0a8 100644 --- a/lib/colvars/Makefile.mingw64-cross +++ b/lib/colvars/Makefile.mingw64-cross @@ -61,58 +61,62 @@ $(DIR)%.o: %.cpp # ------ DEPENDENCIES ------ # $(DIR)colvaratoms.o: colvaratoms.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarparse.h colvarvalue.h colvaratoms.h + colvarvalue.h colvarparse.h colvardeps.h colvaratoms.h $(DIR)colvarbias_abf.o: colvarbias_abf.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvar.h colvarvalue.h colvarparse.h colvarbias_abf.h \ - colvarbias.h colvargrid.h + colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvardeps.h \ + colvarbias_abf.h colvarbias.h colvargrid.h $(DIR)colvarbias_alb.o: colvarbias_alb.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarbias_alb.h colvar.h colvarvalue.h colvarparse.h \ - colvarbias_restraint.h colvarbias.h + colvarproxy.h colvarvalue.h colvarbias_alb.h colvar.h colvarparse.h \ + colvardeps.h colvarbias_restraint.h colvarbias.h $(DIR)colvarbias.o: colvarbias.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarbias.h colvar.h colvarparse.h + colvarvalue.h colvarbias.h colvar.h colvarparse.h colvardeps.h $(DIR)colvarbias_histogram.o: colvarbias_histogram.cpp colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvar.h colvarparse.h \ - colvarbias_histogram.h colvarbias.h colvargrid.h + colvardeps.h colvarbias_histogram.h colvarbias.h colvargrid.h $(DIR)colvarbias_meta.o: colvarbias_meta.cpp colvar.h colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h \ + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ colvarbias_meta.h colvarbias.h colvargrid.h $(DIR)colvarbias_restraint.o: colvarbias_restraint.cpp colvarmodule.h \ colvartypes.h colvarproxy.h colvarvalue.h colvarbias_restraint.h \ - colvarbias.h colvar.h colvarparse.h + colvarbias.h colvar.h colvarparse.h colvardeps.h $(DIR)colvarcomp_angles.o: colvarcomp_angles.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvar.h colvarvalue.h colvarparse.h colvarcomp.h \ - colvaratoms.h + colvarproxy.h colvarvalue.h colvar.h colvarparse.h colvardeps.h \ + colvarcomp.h colvaratoms.h $(DIR)colvarcomp_coordnums.o: colvarcomp_coordnums.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarparse.h colvarvalue.h colvaratoms.h \ - colvar.h colvarcomp.h + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvaratoms.h colvar.h colvarcomp.h $(DIR)colvarcomp.o: colvarcomp.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvar.h colvarparse.h colvarcomp.h colvaratoms.h + colvarvalue.h colvar.h colvarparse.h colvardeps.h colvarcomp.h \ + colvaratoms.h $(DIR)colvarcomp_distances.o: colvarcomp_distances.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvar.h \ - colvarcomp.h colvaratoms.h + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvar.h colvarcomp.h colvaratoms.h $(DIR)colvarcomp_protein.o: colvarcomp_protein.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvarparse.h colvar.h colvarcomp.h \ - colvaratoms.h -$(DIR)colvarcomp_rotations.o: colvarcomp_rotations.cpp colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvar.h \ + colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h colvar.h \ colvarcomp.h colvaratoms.h +$(DIR)colvarcomp_rotations.o: colvarcomp_rotations.cpp colvarmodule.h \ + colvartypes.h colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h \ + colvar.h colvarcomp.h colvaratoms.h $(DIR)colvar.o: colvar.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvar.h colvarcomp.h colvaratoms.h \ - colvarscript.h colvarbias.h + colvarvalue.h colvarparse.h colvardeps.h colvar.h colvarcomp.h \ + colvaratoms.h colvarscript.h colvarbias.h +$(DIR)colvardeps.o: colvardeps.cpp colvardeps.h colvarmodule.h colvartypes.h \ + colvarproxy.h colvarvalue.h colvarparse.h $(DIR)colvargrid.o: colvargrid.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarvalue.h colvarparse.h colvar.h colvarcomp.h colvaratoms.h \ - colvargrid.h + colvarvalue.h colvarparse.h colvardeps.h colvar.h colvarcomp.h \ + colvaratoms.h colvargrid.h $(DIR)colvarmodule.o: colvarmodule.cpp colvarmodule.h colvartypes.h \ - colvarproxy.h colvarvalue.h colvarparse.h colvar.h colvarbias.h \ - colvarbias_abf.h colvargrid.h colvarbias_alb.h colvarbias_restraint.h \ - colvarbias_histogram.h colvarbias_meta.h colvarscript.h + colvarproxy.h colvarvalue.h colvarparse.h colvardeps.h colvar.h \ + colvarbias.h colvarbias_abf.h colvargrid.h colvarbias_alb.h \ + colvarbias_restraint.h colvarbias_histogram.h colvarbias_meta.h \ + colvarscript.h $(DIR)colvarparse.o: colvarparse.cpp colvarmodule.h colvartypes.h colvarproxy.h \ colvarvalue.h colvarparse.h $(DIR)colvarscript.o: colvarscript.cpp colvarscript.h colvarmodule.h \ - colvartypes.h colvarproxy.h colvarvalue.h colvar.h colvarparse.h \ - colvarbias.h + colvartypes.h colvarproxy.h colvarvalue.h colvarbias.h colvar.h \ + colvarparse.h colvardeps.h $(DIR)colvartypes.o: colvartypes.cpp colvarmodule.h colvartypes.h colvarproxy.h \ - colvarparse.h colvarvalue.h + colvarvalue.h colvarparse.h $(DIR)colvarvalue.o: colvarvalue.cpp colvarmodule.h colvartypes.h colvarproxy.h \ colvarvalue.h diff --git a/lib/colvars/Makefile.mingw64-cross-mpi b/lib/colvars/Makefile.mingw64-cross-mpi index 1ec1a0995b..ca6f4a6d43 100644 --- a/lib/colvars/Makefile.mingw64-cross-mpi +++ b/lib/colvars/Makefile.mingw64-cross-mpi @@ -4,10 +4,10 @@ SHELL=/bin/sh all: $(MAKE) $(MFLAGS) mingw64-cross - rm -f Obj_mingw64-mpi + -rm -f Obj_mingw64-mpi ln -s Obj_mingw64 Obj_mingw64-mpi clean: $(MAKE) $(MFLAGS) clean-mingw64-cross - rm -f Obj_mingw64-mpi + -rm -f Obj_mingw64-mpi diff --git a/lib/colvars/colvar.cpp b/lib/colvars/colvar.cpp index eec49d1fad..84880808af 100644 --- a/lib/colvars/colvar.cpp +++ b/lib/colvars/colvar.cpp @@ -43,7 +43,8 @@ colvar::colvar(std::string const &conf) kinetic_energy = 0.0; potential_energy = 0.0; - cvm::combine_errors(error_code, init_components(conf)); + error_code |= init_components(conf); + if (error_code != COLVARS_OK) return; size_t i; @@ -373,10 +374,19 @@ colvar::colvar(std::string const &conf) } { - bool b_output_system_force; - get_keyval(conf, "outputSystemForce", b_output_system_force, false); - if (b_output_system_force) { - enable(f_cv_output_system_force); + bool temp; + if (get_keyval(conf, "outputSystemForce", temp, false)) { + cvm::error("Colvar option outputSystemForce is deprecated.\n" + "Please use outputTotalForce, or outputSystemForce within an ABF bias."); + return; + } + } + + { + bool b_output_total_force; + get_keyval(conf, "outputTotalForce", b_output_total_force, false); + if (b_output_total_force) { + enable(f_cv_output_total_force); } } @@ -492,110 +502,44 @@ int colvar::init_components(std::string const &conf) { int error_code = COLVARS_OK; - cvm::combine_errors(error_code, - init_components_type<distance>(conf, - "distance", "distance")); - cvm::combine_errors(error_code, - init_components_type<distance_vec>(conf, - "distance vector", "distanceVec")); - cvm::combine_errors(error_code, - init_components_type<cartesian>(conf, - "Cartesian coordinates", "cartesian")); - cvm::combine_errors(error_code, - init_components_type<distance_dir>(conf, - "distance vector " - "direction", "distanceDir")); - cvm::combine_errors(error_code, - init_components_type<distance_z>(conf, - "distance projection " - "on an axis", "distanceZ")); - cvm::combine_errors(error_code, - init_components_type<distance_xy>(conf, - "distance projection " - "on a plane", "distanceXY")); - cvm::combine_errors(error_code, - init_components_type<distance_inv>(conf, - "average distance " - "weighted by inverse power", - "distanceInv")); - cvm::combine_errors(error_code, - init_components_type<distance_pairs>(conf, - "N1xN2-long vector " - "of pairwise distances", - "distancePairs")); - - cvm::combine_errors(error_code, - init_components_type<coordnum>(conf, - "coordination " - "number", "coordNum")); - cvm::combine_errors(error_code, - init_components_type<selfcoordnum>(conf, - "self-coordination " - "number", "selfCoordNum")); - - cvm::combine_errors(error_code, - init_components_type<angle>(conf, - "angle", "angle")); - cvm::combine_errors(error_code, - init_components_type<dipole_angle>(conf, - "dipole angle", "dipoleAngle")); - cvm::combine_errors(error_code, - init_components_type<dihedral>(conf, - "dihedral", "dihedral")); - - cvm::combine_errors(error_code, - init_components_type<h_bond>(conf, - "hydrogen bond", "hBond")); - - // cvm::combine_errors(error_code, init_components_type<alpha_dihedrals>(conf, "alpha helix", "alphaDihedrals")); - cvm::combine_errors(error_code, - init_components_type<alpha_angles>(conf, - "alpha helix", "alpha")); - - cvm::combine_errors(error_code, - init_components_type<dihedPC>(conf, - "dihedral " - "principal component", "dihedralPC")); - - cvm::combine_errors(error_code, - init_components_type<orientation>(conf, - "orientation", "orientation")); - cvm::combine_errors(error_code, - init_components_type<orientation_angle>(conf, - "orientation " - "angle", "orientationAngle")); - cvm::combine_errors(error_code, - init_components_type<orientation_proj>(conf, - "orientation " - "projection", "orientationProj")); - cvm::combine_errors(error_code, - init_components_type<tilt>(conf, - "tilt", "tilt")); - cvm::combine_errors(error_code, - init_components_type<spin_angle>(conf, - "spin angle", "spinAngle")); - - cvm::combine_errors(error_code, - init_components_type<rmsd>(conf, - "RMSD", "rmsd")); - - // cvm::combine_errors(error_code, init_components_type <logmsd>(conf,"logarithm of MSD", "logmsd")); - - cvm::combine_errors(error_code, - init_components_type<gyration>(conf, - "radius of " - "gyration", "gyration")); - cvm::combine_errors(error_code, - init_components_type<inertia>(conf, - "moment of " - "inertia", "inertia")); - cvm::combine_errors(error_code, - init_components_type<inertia_z>(conf, - "moment of inertia around an axis", - "inertiaZ")); - cvm::combine_errors(error_code, - init_components_type<eigenvector>(conf, - "eigenvector", "eigenvector")); + error_code |= init_components_type<distance>(conf, "distance", "distance"); + error_code |= init_components_type<distance_vec>(conf, "distance vector", "distanceVec"); + error_code |= init_components_type<cartesian>(conf, "Cartesian coordinates", "cartesian"); + error_code |= init_components_type<distance_dir>(conf, "distance vector " + "direction", "distanceDir"); + error_code |= init_components_type<distance_z>(conf, "distance projection " + "on an axis", "distanceZ"); + error_code |= init_components_type<distance_xy>(conf, "distance projection " + "on a plane", "distanceXY"); + error_code |= init_components_type<distance_inv>(conf, "average distance " + "weighted by inverse power", "distanceInv"); + error_code |= init_components_type<distance_pairs>(conf, "N1xN2-long vector " + "of pairwise distances", "distancePairs"); + error_code |= init_components_type<coordnum>(conf, "coordination " + "number", "coordNum"); + error_code |= init_components_type<selfcoordnum>(conf, "self-coordination " + "number", "selfCoordNum"); + error_code |= init_components_type<angle>(conf, "angle", "angle"); + error_code |= init_components_type<dipole_angle>(conf, "dipole angle", "dipoleAngle"); + error_code |= init_components_type<dihedral>(conf, "dihedral", "dihedral"); + error_code |= init_components_type<h_bond>(conf, "hydrogen bond", "hBond"); + error_code |= init_components_type<alpha_angles>(conf, "alpha helix", "alpha"); + error_code |= init_components_type<dihedPC>(conf, "dihedral " + "principal component", "dihedralPC"); + error_code |= init_components_type<orientation>(conf, "orientation", "orientation"); + error_code |= init_components_type<orientation_angle>(conf, "orientation " + "angle", "orientationAngle"); + error_code |= init_components_type<orientation_proj>(conf, "orientation " + "projection", "orientationProj"); + error_code |= init_components_type<tilt>(conf, "tilt", "tilt"); + error_code |= init_components_type<spin_angle>(conf, "spin angle", "spinAngle"); + error_code |= init_components_type<rmsd>(conf, "RMSD", "rmsd"); + error_code |= init_components_type<gyration>(conf, "radius of " + "gyration", "gyration"); + error_code |= init_components_type<inertia>(conf, "moment of " + "inertia", "inertia"); + error_code |= init_components_type<inertia_z>(conf, "moment of inertia around an axis", "inertiaZ"); + error_code |= init_components_type<eigenvector>(conf, "eigenvector", "eigenvector"); if (!cvcs.size() || (error_code != COLVARS_OK)) { cvm::error("Error: no valid components were provided " @@ -620,8 +564,8 @@ int colvar::init_components(std::string const &conf) int colvar::refresh_deps() { // If enabled features are changed upstream, the features below should be refreshed - if (is_enabled(f_cv_system_force_calc)) { - cvm::request_system_force(); + if (is_enabled(f_cv_total_force_calc)) { + cvm::request_total_force(); } if (is_enabled(f_cv_collect_gradient) && atom_ids.size() == 0) { build_atom_list(); @@ -732,7 +676,7 @@ int colvar::parse_analysis(std::string const &conf) } else { cvm::log("Unknown type of correlation function, \""+ acf_type_str+"\".\n"); - cvm::set_error_bit(INPUT_ERROR); + cvm::set_error_bits(INPUT_ERROR); } get_keyval(conf, "corrFuncOffset", acf_offset, 0); @@ -803,9 +747,11 @@ int colvar::calc() // Note: if anything is added here, it should be added also in the SMP block of calc_colvars() int error_code = COLVARS_OK; if (is_enabled(f_cv_active)) { - cvm::combine_errors(error_code, update_cvc_flags()); - cvm::combine_errors(error_code, calc_cvcs()); - cvm::combine_errors(error_code, collect_cvc_data()); + error_code |= update_cvc_flags(); + if (error_code != COLVARS_OK) return error_code; + error_code |= calc_cvcs(); + if (error_code != COLVARS_OK) return error_code; + error_code |= collect_cvc_data(); } return error_code; } @@ -818,15 +764,15 @@ int colvar::calc_cvcs(int first_cvc, size_t num_cvcs) cvm::log("Calculating colvar \""+this->name+"\", components "+ cvm::to_str(first_cvc)+" through "+cvm::to_str(first_cvc+num_cvcs)+".\n"); - cvm::combine_errors(error_code, check_cvc_range(first_cvc, num_cvcs)); + error_code |= check_cvc_range(first_cvc, num_cvcs); if (error_code != COLVARS_OK) { return error_code; } - cvm::combine_errors(error_code, calc_cvc_values(first_cvc, num_cvcs)); - cvm::combine_errors(error_code, calc_cvc_gradients(first_cvc, num_cvcs)); - cvm::combine_errors(error_code, calc_cvc_sys_forces(first_cvc, num_cvcs)); - cvm::combine_errors(error_code, calc_cvc_Jacobians(first_cvc, num_cvcs)); + error_code |= calc_cvc_values(first_cvc, num_cvcs); + error_code |= calc_cvc_gradients(first_cvc, num_cvcs); + error_code |= calc_cvc_total_force(first_cvc, num_cvcs); + error_code |= calc_cvc_Jacobians(first_cvc, num_cvcs); if (cvm::debug()) cvm::log("Done calculating colvar \""+this->name+"\".\n"); @@ -842,12 +788,11 @@ int colvar::collect_cvc_data() int error_code = COLVARS_OK; - cvm::combine_errors(error_code, collect_cvc_values()); - cvm::combine_errors(error_code, collect_cvc_gradients()); - cvm::combine_errors(error_code, collect_cvc_sys_forces()); - cvm::combine_errors(error_code, collect_cvc_Jacobians()); - - cvm::combine_errors(error_code, calc_colvar_properties()); + error_code |= collect_cvc_values(); + error_code |= collect_cvc_gradients(); + error_code |= collect_cvc_total_forces(); + error_code |= collect_cvc_Jacobians(); + error_code |= calc_colvar_properties(); if (cvm::debug()) cvm::log("Done calculating colvar \""+this->name+"\"'s properties.\n"); @@ -944,21 +889,22 @@ int colvar::calc_cvc_gradients(int first_cvc, size_t num_cvcs) size_t const cvc_max_count = num_cvcs ? num_cvcs : num_active_cvcs(); size_t i, cvc_count; - if (is_enabled(f_cv_gradient)) { + if (cvm::debug()) + cvm::log("Calculating gradients of colvar \""+this->name+"\".\n"); - if (cvm::debug()) - cvm::log("Calculating gradients of colvar \""+this->name+"\".\n"); + // calculate the gradients of each component + cvm::increase_depth(); + for (i = first_cvc, cvc_count = 0; + (i < cvcs.size()) && (cvc_count < cvc_max_count); + i++) { + if (!cvcs[i]->is_enabled()) continue; + cvc_count++; - // calculate the gradients of each component - cvm::increase_depth(); - for (i = first_cvc, cvc_count = 0; - (i < cvcs.size()) && (cvc_count < cvc_max_count); - i++) { - if (!cvcs[i]->is_enabled()) continue; - cvc_count++; + if ((cvcs[i])->is_enabled(f_cvc_gradient)) { (cvcs[i])->calc_gradients(); // if requested, propagate (via chain rule) the gradients above // to the atoms used to define the roto-translation + // This could be integrated in the CVC base class for (size_t ig = 0; ig < cvcs[i]->atom_groups.size(); ig++) { if (cvcs[i]->atom_groups[ig]->b_fit_gradients) cvcs[i]->atom_groups[ig]->calc_fit_gradients(); @@ -969,6 +915,7 @@ int colvar::calc_cvc_gradients(int first_cvc, size_t num_cvcs) } } } + cvm::decrease_depth(); if (cvm::debug()) @@ -1031,22 +978,22 @@ int colvar::collect_cvc_gradients() } -int colvar::calc_cvc_sys_forces(int first_cvc, size_t num_cvcs) +int colvar::calc_cvc_total_force(int first_cvc, size_t num_cvcs) { size_t const cvc_max_count = num_cvcs ? num_cvcs : num_active_cvcs(); size_t i, cvc_count; - if (is_enabled(f_cv_system_force_calc)) { + if (is_enabled(f_cv_total_force_calc)) { if (cvm::debug()) - cvm::log("Calculating system force of colvar \""+this->name+"\".\n"); + cvm::log("Calculating total force of colvar \""+this->name+"\".\n"); // if (!tasks[task_extended_lagrangian] && (cvm::step_relative() > 0)) { - // Disabled check to allow for explicit system force calculation + // Disabled check to allow for explicit total force calculation // even with extended Lagrangian if (cvm::step_relative() > 0) { cvm::increase_depth(); - // get from the cvcs the system forces from the PREVIOUS step + // get from the cvcs the total forces from the PREVIOUS step for (i = first_cvc, cvc_count = 0; (i < cvcs.size()) && (cvc_count < cvc_max_count); i++) { @@ -1058,29 +1005,29 @@ int colvar::calc_cvc_sys_forces(int first_cvc, size_t num_cvcs) } if (cvm::debug()) - cvm::log("Done calculating system force of colvar \""+this->name+"\".\n"); + cvm::log("Done calculating total force of colvar \""+this->name+"\".\n"); } return COLVARS_OK; } -int colvar::collect_cvc_sys_forces() +int colvar::collect_cvc_total_forces() { - if (is_enabled(f_cv_system_force_calc)) { + if (is_enabled(f_cv_total_force_calc)) { ft.reset(); if (cvm::step_relative() > 0) { - // get from the cvcs the system forces from the PREVIOUS step + // get from the cvcs the total forces from the PREVIOUS step for (size_t i = 0; i < cvcs.size(); i++) { if (!cvcs[i]->is_enabled()) continue; // linear combination is assumed - ft += (cvcs[i])->system_force() * (cvcs[i])->sup_coeff / active_cvc_square_norm; + ft += (cvcs[i])->total_force() * (cvcs[i])->sup_coeff / active_cvc_square_norm; } } if (!is_enabled(f_cv_hide_Jacobian)) { - // add the Jacobian force to the system force, and don't apply any silent + // add the Jacobian force to the total force, and don't apply any silent // correction internally: biases such as colvarbias_abf will handle it ft += fj; } @@ -1152,10 +1099,8 @@ int colvar::calc_colvar_properties() // report the restraint center as "value" x_reported = xr; v_reported = vr; - // the "system force" with the extended Lagrangian is just the - // harmonic term acting on the extended coordinate - // Note: this is the force for current timestep - ft_reported = (-0.5 * ext_force_k) * this->dist2_lgrad(xr, x); + // the "total force" with the extended Lagrangian is + // calculated in update_forces_energy() below } else { @@ -1181,46 +1126,12 @@ cvm::real colvar::update_forces_energy() f += fb; if (is_enabled(f_cv_Jacobian)) { - // the instantaneous Jacobian force was not included in the reported system force; + // the instantaneous Jacobian force was not included in the reported total force; // instead, it is subtracted from the applied force (silent Jacobian correction) if (is_enabled(f_cv_hide_Jacobian)) f -= fj; } - if (is_enabled(f_cv_extended_Lagrangian)) { - - cvm::real dt = cvm::dt(); - cvm::real f_ext; - - // the total force is applied to the fictitious mass, while the - // atoms only feel the harmonic force - // fr: bias force on extended coordinate (without harmonic spring), for output in trajectory - // f_ext: total force on extended coordinate (including harmonic spring) - // f: - initially, external biasing force - // - after this code block, colvar force to be applied to atomic coordinates, ie. spring force - // (note: wall potential is added to f after this block) - fr = f; - f_ext = f + (-0.5 * ext_force_k) * this->dist2_lgrad(xr, x); - f = (-0.5 * ext_force_k) * this->dist2_rgrad(xr, x); - - // leapfrog: starting from x_i, f_i, v_(i-1/2) - vr += (0.5 * dt) * f_ext / ext_mass; - // Because of leapfrog, kinetic energy at time i is approximate - kinetic_energy = 0.5 * ext_mass * vr * vr; - potential_energy = 0.5 * ext_force_k * this->dist2(xr, x); - // leap to v_(i+1/2) - if (is_enabled(f_cv_Langevin)) { - vr -= dt * ext_gamma * vr.real_value; - vr += dt * ext_sigma * cvm::rand_gaussian() / ext_mass; - } - vr += (0.5 * dt) * f_ext / ext_mass; - xr += dt * vr; - xr.apply_constraints(); - if (this->b_periodic) this->wrap(xr); - } - - - // Adding wall potential to "true" colvar force, whether or not an extended coordinate is in use if (is_enabled(f_cv_lower_wall) || is_enabled(f_cv_upper_wall)) { // Wall force @@ -1257,6 +1168,41 @@ cvm::real colvar::update_forces_energy() } } + if (is_enabled(f_cv_extended_Lagrangian)) { + + cvm::real dt = cvm::dt(); + cvm::real f_ext; + + // the total force is applied to the fictitious mass, while the + // atoms only feel the harmonic force + // fr: bias force on extended variable (without harmonic spring), for output in trajectory + // f_ext: total force on extended variable (including harmonic spring) + // f: - initially, external biasing force + // - after this code block, colvar force to be applied to atomic coordinates, ie. spring force + fr = f; + f_ext = f + (-0.5 * ext_force_k) * this->dist2_lgrad(xr, x); + f = (-0.5 * ext_force_k) * this->dist2_rgrad(xr, x); + + // The total force acting on the extended variable is f_ext + // This will be used in the next timestep + ft_reported = f_ext; + + // leapfrog: starting from x_i, f_i, v_(i-1/2) + vr += (0.5 * dt) * f_ext / ext_mass; + // Because of leapfrog, kinetic energy at time i is approximate + kinetic_energy = 0.5 * ext_mass * vr * vr; + potential_energy = 0.5 * ext_force_k * this->dist2(xr, x); + // leap to v_(i+1/2) + if (is_enabled(f_cv_Langevin)) { + vr -= dt * ext_gamma * vr.real_value; + vr += dt * ext_sigma * cvm::rand_gaussian() / ext_mass; + } + vr += (0.5 * dt) * f_ext / ext_mass; + xr += dt * vr; + xr.apply_constraints(); + if (this->b_periodic) this->wrap(xr); + } + f_accumulated += f; if (is_enabled(f_cv_fdiff_velocity)) { @@ -1377,7 +1323,7 @@ bool colvar::periodic_boundaries(colvarvalue const &lb, colvarvalue const &ub) c if ( (!is_enabled(f_cv_lower_boundary)) || (!is_enabled(f_cv_upper_boundary)) ) { cvm::log("Error: checking periodicity for collective variable \""+this->name+"\" " "requires lower and upper boundaries to be defined.\n"); - cvm::set_error_bit(INPUT_ERROR); + cvm::set_error_bits(INPUT_ERROR); } if (period > 0.0) { @@ -1549,7 +1495,7 @@ std::istream & colvar::read_traj(std::istream &is) } } - if (is_enabled(f_cv_output_system_force)) { + if (is_enabled(f_cv_output_total_force)) { is >> ft; ft_reported = ft; } @@ -1634,8 +1580,8 @@ std::ostream & colvar::write_traj_label(std::ostream & os) << cvm::wrap_string(this->name, this_cv_width-3); } - if (is_enabled(f_cv_output_system_force)) { - os << " fs_" + if (is_enabled(f_cv_output_total_force)) { + os << " ft_" << cvm::wrap_string(this->name, this_cv_width-3); } @@ -1687,7 +1633,7 @@ std::ostream & colvar::write_traj(std::ostream &os) } - if (is_enabled(f_cv_output_system_force)) { + if (is_enabled(f_cv_output_total_force)) { os << " " << std::setprecision(cvm::cv_prec) << std::setw(cvm::cv_width) << ft_reported; @@ -2019,4 +1965,4 @@ void colvar::calc_runave() // Static members -std::vector<cvm::deps::feature *> colvar::cv_features; +std::vector<colvardeps::feature *> colvar::cv_features; diff --git a/lib/colvars/colvar.h b/lib/colvars/colvar.h index 5f2fce35e0..0058b56a26 100644 --- a/lib/colvars/colvar.h +++ b/lib/colvars/colvar.h @@ -38,7 +38,7 @@ /// \link colvarvalue \endlink type, you should also add its /// initialization line in the \link colvar \endlink constructor. -class colvar : public colvarparse, public cvm::deps { +class colvar : public colvarparse, public colvardeps { public: @@ -54,7 +54,7 @@ public: /// \brief Current velocity (previously set by calc() or by read_traj()) colvarvalue const & velocity() const; - /// \brief Current system force (previously obtained from calc() or + /// \brief Current total force (previously obtained from calc() or /// read_traj()). Note: this is calculated using the atomic forces /// from the last simulation step. /// @@ -62,7 +62,7 @@ public: /// acting on the collective variable is calculated summing those /// from all colvar components, the bias and walls forces are /// subtracted. - colvarvalue const & system_force() const; + colvarvalue const & total_force() const; /// \brief Typical fluctuation amplitude for this collective /// variable (e.g. local width of a free energy basin) @@ -160,7 +160,7 @@ protected: /// \brief Jacobian force, when Jacobian_force is enabled colvarvalue fj; - /// Cached reported system force + /// Cached reported total force colvarvalue ft_reported; public: @@ -176,7 +176,7 @@ public: colvarvalue f; /// \brief Total force, as derived from the atomic trajectory; - /// should equal the total system force plus \link f \endlink + /// should equal the system force plus \link f \endlink colvarvalue ft; @@ -253,8 +253,8 @@ public: int calc_cvc_values(int first, size_t num_cvcs); /// \brief Same as \link colvar::calc_cvc_values \endlink but for gradients int calc_cvc_gradients(int first, size_t num_cvcs); - /// \brief Same as \link colvar::calc_cvc_values \endlink but for system forces - int calc_cvc_sys_forces(int first, size_t num_cvcs); + /// \brief Same as \link colvar::calc_cvc_values \endlink but for total forces + int calc_cvc_total_force(int first, size_t num_cvcs); /// \brief Same as \link colvar::calc_cvc_values \endlink but for Jacobian derivatives/forces int calc_cvc_Jacobians(int first, size_t num_cvcs); @@ -265,8 +265,8 @@ public: int collect_cvc_values(); /// \brief Same as \link colvar::collect_cvc_values \endlink but for gradients int collect_cvc_gradients(); - /// \brief Same as \link colvar::collect_cvc_values \endlink but for system forces - int collect_cvc_sys_forces(); + /// \brief Same as \link colvar::collect_cvc_values \endlink but for total forces + int collect_cvc_total_forces(); /// \brief Same as \link colvar::collect_cvc_values \endlink but for Jacobian derivatives/forces int collect_cvc_Jacobians(); /// \brief Calculate the quantities associated to the colvar (but not to the CVCs) @@ -555,7 +555,7 @@ inline colvarvalue const & colvar::velocity() const } -inline colvarvalue const & colvar::system_force() const +inline colvarvalue const & colvar::total_force() const { return ft_reported; } diff --git a/lib/colvars/colvaratoms.cpp b/lib/colvars/colvaratoms.cpp index b77576e896..0d0a339a69 100644 --- a/lib/colvars/colvaratoms.cpp +++ b/lib/colvars/colvaratoms.cpp @@ -297,7 +297,7 @@ int cvm::atom_group::parse(std::string const &conf) std::string numbers_conf = ""; size_t pos = 0; while (key_lookup(group_conf, "atomNumbers", numbers_conf, pos)) { - cvm::combine_errors(parse_error, add_atom_numbers(numbers_conf)); + parse_error |= add_atom_numbers(numbers_conf); numbers_conf = ""; } } @@ -306,7 +306,7 @@ int cvm::atom_group::parse(std::string const &conf) std::string index_group_name; if (get_keyval(group_conf, "indexGroup", index_group_name)) { // use an index group from the index file read globally - cvm::combine_errors(parse_error, add_index_group(index_group_name)); + parse_error |= add_index_group(index_group_name); } } @@ -315,7 +315,7 @@ int cvm::atom_group::parse(std::string const &conf) size_t pos = 0; while (key_lookup(group_conf, "atomNumbersRange", range_conf, pos)) { - cvm::combine_errors(parse_error, add_atom_numbers_range(range_conf)); + parse_error |= add_atom_numbers_range(range_conf); range_conf = ""; } } @@ -342,8 +342,8 @@ int cvm::atom_group::parse(std::string const &conf) cvm::error("Error: more instances of \"atomNameResidueRange\" than " "values of \"psfSegID\".\n", INPUT_ERROR); } else { - cvm::combine_errors(parse_error, add_atom_name_residue_range(psf_segids.size() ? - *psii : std::string(""), range_conf)); + parse_error |= add_atom_name_residue_range(psf_segids.size() ? + *psii : std::string(""), range_conf); if (psf_segids.size()) psii++; } range_conf = ""; @@ -407,7 +407,7 @@ int cvm::atom_group::parse(std::string const &conf) index = (cvm::proxy)->init_atom_group(atoms_ids); } - cvm::combine_errors(parse_error, parse_fitting_options(group_conf)); + parse_error |= parse_fitting_options(group_conf); // TODO move this to colvarparse object check_keywords(group_conf, key.c_str()); @@ -870,21 +870,21 @@ void cvm::atom_group::read_velocities() // TODO make this a calc function -void cvm::atom_group::read_system_forces() +void cvm::atom_group::read_total_forces() { if (b_dummy) return; if (b_rotate) { for (cvm::atom_iter ai = this->begin(); ai != this->end(); ai++) { - ai->read_system_force(); - ai->system_force = rot.rotate(ai->system_force); + ai->read_total_force(); + ai->total_force = rot.rotate(ai->total_force); } } else { for (cvm::atom_iter ai = this->begin(); ai != this->end(); ai++) { - ai->read_system_force(); + ai->read_total_force(); } } } @@ -1070,15 +1070,15 @@ std::vector<cvm::rvector> cvm::atom_group::velocities() const return v; } -std::vector<cvm::rvector> cvm::atom_group::system_forces() const +std::vector<cvm::rvector> cvm::atom_group::total_forces() const { if (b_dummy) { - cvm::error("Error: system forces are not available " + cvm::error("Error: total forces are not available " "from a dummy atom group.\n", INPUT_ERROR); } if (is_enabled(f_ag_scalable)) { - cvm::error("Error: atomic system forces are not available " + cvm::error("Error: atomic total forces are not available " "from a scalable atom group.\n", INPUT_ERROR); } @@ -1086,27 +1086,27 @@ std::vector<cvm::rvector> cvm::atom_group::system_forces() const cvm::atom_const_iter ai = this->begin(); std::vector<cvm::atom_pos>::iterator fi = f.begin(); for ( ; ai != this->end(); ++fi, ++ai) { - *fi = ai->system_force; + *fi = ai->total_force; } return f; } // TODO make this an accessor -cvm::rvector cvm::atom_group::system_force() const +cvm::rvector cvm::atom_group::total_force() const { if (b_dummy) { - cvm::error("Error: total system forces are not available " + cvm::error("Error: total total forces are not available " "from a dummy atom group.\n", INPUT_ERROR); } if (is_enabled(f_ag_scalable)) { - return (cvm::proxy)->get_atom_group_system_force(index); + return (cvm::proxy)->get_atom_group_total_force(index); } cvm::rvector f(0.0); for (cvm::atom_const_iter ai = this->begin(); ai != this->end(); ai++) { - f += ai->system_force; + f += ai->total_force; } return f; } @@ -1192,6 +1192,6 @@ void cvm::atom_group::apply_force(cvm::rvector const &force) // Static members -std::vector<cvm::deps::feature *> cvm::atom_group::ag_features; +std::vector<colvardeps::feature *> cvm::atom_group::ag_features; diff --git a/lib/colvars/colvaratoms.h b/lib/colvars/colvaratoms.h index 440afd57cb..7a4d031daa 100644 --- a/lib/colvars/colvaratoms.h +++ b/lib/colvars/colvaratoms.h @@ -45,7 +45,7 @@ public: /// \brief System force at the previous step (copied from the /// program, can be modified if necessary) - cvm::rvector system_force; + cvm::rvector total_force; /// \brief Gradient of a scalar collective variable with respect /// to this atom @@ -86,7 +86,7 @@ public: inline void reset_data() { pos = cvm::atom_pos(0.0); - vel = grad = system_force = cvm::rvector(0.0); + vel = grad = total_force = cvm::rvector(0.0); } /// Get the latest value of the mass @@ -113,10 +113,10 @@ public: vel = (cvm::proxy)->get_atom_velocity(index); } - /// Get the system force - inline void read_system_force() + /// Get the total force + inline void read_total_force() { - system_force = (cvm::proxy)->get_atom_system_force(index); + total_force = (cvm::proxy)->get_atom_total_force(index); } /// \brief Apply a force to the atom @@ -139,7 +139,7 @@ public: /// \brief Group of \link atom \endlink objects, mostly used by a /// \link cvc \endlink object to gather all atomic data class colvarmodule::atom_group - : public colvarparse, public cvm::deps + : public colvarparse, public colvardeps { public: @@ -336,10 +336,10 @@ public: /// rotation applied to the coordinates will be used void read_velocities(); - /// \brief Get the current system_forces; this must be called always + /// \brief Get the current total_forces; this must be called always /// *after* read_positions(); if b_rotate is defined, the same /// rotation applied to the coordinates will be used - void read_system_forces(); + void read_total_forces(); /// Call reset_data() for each atom inline void reset_atoms_data() @@ -410,11 +410,11 @@ public: return dip; } - /// \brief Return a copy of the system forces - std::vector<cvm::rvector> system_forces() const; + /// \brief Return a copy of the total forces + std::vector<cvm::rvector> total_forces() const; /// \brief Return a copy of the aggregated total force on the group - cvm::rvector system_force() const; + cvm::rvector total_force() const; /// \brief Shorthand: save the specified gradient on each atom, diff --git a/lib/colvars/colvarbias.cpp b/lib/colvars/colvarbias.cpp index 90c552ac0b..76d8489de9 100644 --- a/lib/colvars/colvarbias.cpp +++ b/lib/colvars/colvarbias.cpp @@ -203,7 +203,7 @@ cvm::real colvarbias::energy_difference(std::string const &conf) } -// So far, these are only implemented in colvarsbias_abf +// So far, these are only implemented in colvarbias_abf int colvarbias::bin_num() { cvm::error("Error: bin_num() not implemented.\n"); @@ -246,4 +246,4 @@ std::ostream & colvarbias::write_traj(std::ostream &os) // Static members -std::vector<cvm::deps::feature *> colvarbias::cvb_features; +std::vector<colvardeps::feature *> colvarbias::cvb_features; diff --git a/lib/colvars/colvarbias.h b/lib/colvars/colvarbias.h index 712dc44ff0..8238f58f40 100644 --- a/lib/colvars/colvarbias.h +++ b/lib/colvars/colvarbias.h @@ -9,7 +9,7 @@ /// \brief Collective variable bias, base class -class colvarbias : public colvarparse, public cvm::deps { +class colvarbias : public colvarparse, public colvardeps { public: /// Name of this bias diff --git a/lib/colvars/colvarbias_abf.cpp b/lib/colvars/colvarbias_abf.cpp index 648ef9e721..870079a619 100644 --- a/lib/colvars/colvarbias_abf.cpp +++ b/lib/colvars/colvarbias_abf.cpp @@ -7,11 +7,12 @@ colvarbias_abf::colvarbias_abf(char const *key) : colvarbias(key), - force(NULL), + system_force(NULL), gradients(NULL), samples(NULL), z_gradients(NULL), z_samples(NULL), + czar_gradients(NULL), last_gradients(NULL), last_samples(NULL) { @@ -30,10 +31,8 @@ int colvarbias_abf::init(std::string const &conf) // ************* parsing general ABF options *********************** - get_keyval(conf, "applyBias", apply_bias, true); - if (apply_bias) { - enable(f_cvb_apply_force); - } else { + get_keyval_feature((colvarparse *)this, conf, "applyBias", f_cvb_apply_force, true); + if (!is_enabled(f_cvb_apply_force)){ cvm::log("WARNING: ABF biases will *not* be applied!\n"); } @@ -80,11 +79,8 @@ int colvarbias_abf::init(std::string const &conf) } if (update_bias) { - // Request calculation of system force (which also checks for availability) - if(enable(f_cvb_get_system_force)) return cvm::get_error(); - } - if (apply_bias) { - if(enable(f_cvb_apply_force)) return cvm::get_error(); + // Request calculation of total force (which also checks for availability) + if(enable(f_cvb_get_total_force)) return cvm::get_error(); } bool b_extended = false; @@ -111,7 +107,7 @@ int colvarbias_abf::init(std::string const &conf) if (max_force.size() != colvars.size()) { cvm::error("Error: Number of parameters to maxForce does not match number of colvars."); } - for (size_t i=0; i<colvars.size(); i++) { + for (size_t i = 0; i < colvars.size(); i++) { if (max_force[i] < 0.0) { cvm::error("Error: maxForce should be non-negative."); } @@ -123,7 +119,7 @@ int colvarbias_abf::init(std::string const &conf) bin.assign(colvars.size(), 0); force_bin.assign(colvars.size(), 0); - force = new cvm::real [colvars.size()]; + system_force = new cvm::real [colvars.size()]; // Construct empty grids based on the colvars if (cvm::debug()) { @@ -144,6 +140,7 @@ int colvarbias_abf::init(std::string const &conf) z_gradients->request_actual_value(); z_gradients->samples = z_samples; z_samples->has_parent_data = true; + czar_gradients = new colvar_grid_gradient(colvars); } // For shared ABF, we store a second set of grids. @@ -178,6 +175,21 @@ colvarbias_abf::~colvarbias_abf() gradients = NULL; } + if (z_samples) { + delete z_samples; + z_samples = NULL; + } + + if (z_gradients) { + delete z_gradients; + z_gradients = NULL; + } + + if (czar_gradients) { + delete czar_gradients; + czar_gradients = NULL; + } + // shared ABF // We used to only do this if "shared" was defined, // but now we can call shared externally @@ -191,9 +203,9 @@ colvarbias_abf::~colvarbias_abf() last_gradients = NULL; } - if (force) { - delete [] force; - force = NULL; + if (system_force) { + delete [] system_force; + system_force = NULL; } if (cvm::n_abf_biases > 0) @@ -214,31 +226,44 @@ int colvarbias_abf::update() // initialization stuff (file operations relying on n_abf_biases // compute current value of colvars - for (size_t i=0; i<colvars.size(); i++) { + for (size_t i = 0; i < colvars.size(); i++) { bin[i] = samples->current_bin_scalar(i); } } else { - for (size_t i=0; i<colvars.size(); i++) { + for (size_t i = 0; i < colvars.size(); i++) { bin[i] = samples->current_bin_scalar(i); } if ( update_bias && samples->index_ok(force_bin) ) { // Only if requested and within bounds of the grid... - for (size_t i=0; i<colvars.size(); i++) { // get forces(lagging by 1 timestep) from colvars - force[i] = colvars[i]->system_force(); + for (size_t i = 0; i < colvars.size(); i++) { + // get total forces (lagging by 1 timestep) from colvars + // and subtract previous ABF force + system_force[i] = colvars[i]->total_force().real_value + - colvar_forces[i].real_value; +// if (cvm::debug()) +// cvm::log("ABF System force calc: cv " + cvm::to_str(i) + +// " fs " + cvm::to_str(system_force[i]) + +// " = ft " + cvm::to_str(colvars[i]->total_force().real_value) + +// " - fa " + cvm::to_str(colvar_forces[i].real_value)); } - gradients->acc_force(force_bin, force); + gradients->acc_force(force_bin, system_force); } if ( z_gradients && update_bias ) { - for (size_t i=0; i<colvars.size(); i++) { + for (size_t i = 0; i < colvars.size(); i++) { z_bin[i] = z_samples->current_bin_scalar(i); } if ( z_samples->index_ok(z_bin) ) { - // Set increment flag to 0 to only increment - z_gradients->acc_force(z_bin, force); + for (size_t i = 0; i < colvars.size(); i++) { + // If we are outside the range of xi, the force has not been obtained above + // the function is just an accessor, so cheap to call again anyway + system_force[i] = colvars[i]->total_force().real_value + - colvar_forces[i].real_value; + } + z_gradients->acc_force(z_bin, system_force); } } } @@ -247,12 +272,12 @@ int colvarbias_abf::update() force_bin = bin; // Reset biasing forces from previous timestep - for (size_t i=0; i<colvars.size(); i++) { + for (size_t i = 0; i < colvars.size(); i++) { colvar_forces[i].reset(); } // Compute and apply the new bias, if applicable - if ( apply_bias && samples->index_ok(bin) ) { + if (is_enabled(f_cvb_apply_force) && samples->index_ok(bin)) { size_t count = samples->value(bin); cvm::real fact = 1.0; @@ -271,13 +296,13 @@ int colvarbias_abf::update() // in other words: boundary condition is that the biasing potential is periodic colvar_forces[0].real_value = fact * (grad[0] / cvm::real(count) - gradients->average()); } else { - for (size_t i=0; i<colvars.size(); i++) { + for (size_t i = 0; i < colvars.size(); i++) { // subtracting the mean force (opposite of the FE gradient) means adding the gradient colvar_forces[i].real_value = fact * grad[i] / cvm::real(count); } } if (cap_force) { - for (size_t i=0; i<colvars.size(); i++) { + for (size_t i = 0; i < colvars.size(); i++) { if ( colvar_forces[i].real_value * colvar_forces[i].real_value > max_force[i] * max_force[i] ) { colvar_forces[i].real_value = (colvar_forces[i].real_value > 0 ? max_force[i] : -1.0 * max_force[i]); } @@ -404,14 +429,10 @@ void colvarbias_abf::write_gradients_samples(const std::string &prefix, bool app { std::string samples_out_name = prefix + ".count"; std::string gradients_out_name = prefix + ".grad"; - std::string z_gradients_out_name = prefix + ".zgrad"; - std::string z_samples_out_name = prefix + ".zcount"; std::ios::openmode mode = (append ? std::ios::app : std::ios::out); cvm::ofstream samples_os; cvm::ofstream gradients_os; - cvm::ofstream z_samples_os; - cvm::ofstream z_gradients_os; if (!append) cvm::backup_file(samples_out_name.c_str()); samples_os.open(samples_out_name.c_str(), mode); @@ -442,6 +463,14 @@ void colvarbias_abf::write_gradients_samples(const std::string &prefix, bool app } if (z_gradients) { + // Write eABF-related quantities + std::string z_samples_out_name = prefix + ".zcount"; + std::string z_gradients_out_name = prefix + ".zgrad"; + std::string czar_gradients_out_name = prefix + ".czar"; + cvm::ofstream z_samples_os; + cvm::ofstream z_gradients_os; + cvm::ofstream czar_gradients_os; + if (!append) cvm::backup_file(z_samples_out_name.c_str()); z_samples_os.open(z_samples_out_name.c_str(), mode); if (!z_samples_os.is_open()) { @@ -458,6 +487,24 @@ void colvarbias_abf::write_gradients_samples(const std::string &prefix, bool app z_gradients->write_multicol(z_gradients_os); z_gradients_os.close(); + // Calculate CZAR estimator of gradients + for (std::vector<int> ix = czar_gradients->new_index(); + czar_gradients->index_ok(ix); czar_gradients->incr(ix)) { + for (size_t n = 0; n < czar_gradients->multiplicity(); n++) { + czar_gradients->set_value(ix, z_gradients->value_output(ix, n) + - cvm::temperature() * cvm::boltzmann() * z_samples->log_gradient_finite_diff(ix, n), + n); + } + } + + if (!append) cvm::backup_file(czar_gradients_out_name.c_str()); + czar_gradients_os.open(czar_gradients_out_name.c_str(), mode); + if (!czar_gradients_os.is_open()) { + cvm::error("Error opening CZAR gradient file " + czar_gradients_out_name + " for writing"); + } + czar_gradients->write_multicol(czar_gradients_os); + czar_gradients_os.close(); + if (colvars.size() == 1) { std::string z_pmf_out_name = prefix + ".zpmf"; if (!append) cvm::backup_file(z_pmf_out_name.c_str()); @@ -468,6 +515,16 @@ void colvarbias_abf::write_gradients_samples(const std::string &prefix, bool app z_gradients->write_1D_integral(z_pmf_os); z_pmf_os << std::endl; z_pmf_os.close(); + + std::string czar_pmf_out_name = prefix + ".czarpmf"; + if (!append) cvm::backup_file(czar_pmf_out_name.c_str()); + cvm::ofstream czar_pmf_os; + // Do numerical integration and output a PMF + czar_pmf_os.open(czar_pmf_out_name.c_str(), mode); + if (!czar_pmf_os.is_open()) cvm::error("Error opening CZAR pmf file " + czar_pmf_out_name + " for writing"); + czar_gradients->write_1D_integral(czar_pmf_os); + czar_pmf_os << std::endl; + czar_pmf_os.close(); } } @@ -545,24 +602,27 @@ std::ostream & colvarbias_abf::write_restart(std::ostream& os) { std::ios::fmtflags flags(os.flags()); - os.setf(std::ios::fmtflags(0), std::ios::floatfield); // default floating-point format os << "abf {\n" << " configuration {\n" << " name " << this->name << "\n"; os << " }\n"; - os << "samples\n"; + os.setf(std::ios::fmtflags(0), std::ios::floatfield); // default floating-point format + os << "\nsamples\n"; samples->write_raw(os, 8); + os.flags(flags); os << "\ngradient\n"; - gradients->write_raw(os); + gradients->write_raw(os, 8); if (z_gradients) { - os << "z_samples\n"; + os.setf(std::ios::fmtflags(0), std::ios::floatfield); // default floating-point format + os << "\nz_samples\n"; z_samples->write_raw(os, 8); + os.flags(flags); os << "\nz_gradient\n"; - z_gradients->write_raw(os); + z_gradients->write_raw(os, 8); } os << "}\n\n"; @@ -638,7 +698,7 @@ std::istream & colvarbias_abf::read_restart(std::istream& is) } if (z_gradients) { - if ( !(is >> key) || !(key == "z_samples")) { + if ( !(is >> key) || !(key == "z_samples")) { cvm::log("Error: in reading restart configuration for ABF bias \""+ this->name+"\" at position "+ cvm::to_str(is.tellg())+" in stream.\n"); diff --git a/lib/colvars/colvarbias_abf.h b/lib/colvars/colvarbias_abf.h index 3527eeb63a..93079220ba 100644 --- a/lib/colvars/colvarbias_abf.h +++ b/lib/colvars/colvarbias_abf.h @@ -27,12 +27,11 @@ public: private: /// Filename prefix for human-readable gradient/sample count output - std::string output_prefix; + std::string output_prefix; /// Base filename(s) for reading previous gradient data (replaces data from restart file) std::vector<std::string> input_prefix; - bool apply_bias; bool update_bias; bool hide_Jacobian; size_t full_samples; @@ -50,7 +49,7 @@ private: // Internal data and methods std::vector<int> bin, force_bin, z_bin; - gradient_t force; + gradient_t system_force, applied_force; /// n-dim grid of free energy gradients colvar_grid_gradient *gradients; @@ -60,6 +59,8 @@ private: colvar_grid_gradient *z_gradients; /// n-dim grid of number of samples on "real" coordinate for eABF z-based estimator colvar_grid_count *z_samples; + /// n-dim grid contining CZAR estimator of "real" free energy gradients + colvar_grid_gradient *czar_gradients; // shared ABF bool shared_on; diff --git a/lib/colvars/colvarbias_histogram.cpp b/lib/colvars/colvarbias_histogram.cpp index 0d52c18361..15ad5936aa 100644 --- a/lib/colvars/colvarbias_histogram.cpp +++ b/lib/colvars/colvarbias_histogram.cpp @@ -75,13 +75,12 @@ int colvarbias_histogram::init(std::string const &conf) } grid = new colvar_grid_scalar(); + grid->init_from_colvars(colvars); { std::string grid_conf; if (key_lookup(conf, "grid", grid_conf)) { grid->parse_params(grid_conf); - } else { - grid->init_from_colvars(colvars); } } @@ -105,7 +104,7 @@ int colvarbias_histogram::update() { int error_code = COLVARS_OK; // update base class - cvm::combine_errors(error_code, colvarbias::update()); + error_code |= colvarbias::update(); if (cvm::debug()) { cvm::log("Updating histogram bias " + this->name); @@ -158,7 +157,7 @@ int colvarbias_histogram::update() write_output_files(); } - cvm::combine_errors(error_code, cvm::get_error()); + error_code |= cvm::get_error(); return error_code; } @@ -256,6 +255,9 @@ std::istream & colvarbias_histogram::read_restart(std::istream& is) std::ostream & colvarbias_histogram::write_restart(std::ostream& os) { + std::ios::fmtflags flags(os.flags()); + os.setf(std::ios::fmtflags(0), std::ios::floatfield); + os << "histogram {\n" << " configuration {\n" << " name " << this->name << "\n"; @@ -266,5 +268,6 @@ std::ostream & colvarbias_histogram::write_restart(std::ostream& os) os << "}\n\n"; + os.flags(flags); return os; } diff --git a/lib/colvars/colvarcomp.cpp b/lib/colvars/colvarcomp.cpp index eec43d0963..534a927fda 100644 --- a/lib/colvars/colvarcomp.cpp +++ b/lib/colvars/colvarcomp.cpp @@ -43,11 +43,8 @@ colvar::cvc::cvc(std::string const &conf) // All cvcs implement this provide(f_cvc_debug_gradient); - { - bool b_debug_gradient; - get_keyval(conf, "debugGradients", b_debug_gradient, false, parse_silent); - if (b_debug_gradient) enable(f_cvc_debug_gradient); - } + get_keyval_feature((colvarparse *)this, conf, "debugGradients", + f_cvc_debug_gradient, false, parse_silent); // Attempt scalable calculations when in parallel? (By default yes, if available) get_keyval(conf, "scalable", b_try_scalable, true); @@ -107,7 +104,7 @@ int colvar::cvc::setup() description = "cvc " + name; for (i = 0; i < atom_groups.size(); i++) { - add_child((cvm::deps *) atom_groups[i]); + add_child((colvardeps *) atom_groups[i]); } return COLVARS_OK; @@ -276,4 +273,4 @@ void colvar::cvc::debug_gradients(cvm::atom_group *group) // Static members -std::vector<cvm::deps::feature *> colvar::cvc::cvc_features; +std::vector<colvardeps::feature *> colvar::cvc::cvc_features; diff --git a/lib/colvars/colvarcomp.h b/lib/colvars/colvarcomp.h index 1ed3c38924..f632754ab6 100644 --- a/lib/colvars/colvarcomp.h +++ b/lib/colvars/colvarcomp.h @@ -61,7 +61,7 @@ /// call to e.g. apply_force(). class colvar::cvc - : public colvarparse, public cvm::deps + : public colvarparse, public colvardeps { public: @@ -153,8 +153,8 @@ public: // /// \brief Return const pointer to the previously calculated value // virtual const colvarvalue *p_value() const; - /// \brief Return the previously calculated system force - virtual colvarvalue const & system_force() const; + /// \brief Return the previously calculated total force + virtual colvarvalue const & total_force() const; /// \brief Return the previously calculated divergence of the /// inverse atomic gradients @@ -232,7 +232,7 @@ protected: /// \brief Value at the previous step colvarvalue x_old; - /// \brief Calculated system force (\b Note: this is calculated from + /// \brief Calculated total force (\b Note: this is calculated from /// the total atomic forces read from the program, subtracting fromt /// the "internal" forces of the system the "external" forces from /// the colvar biases) @@ -256,7 +256,7 @@ inline colvarvalue const & colvar::cvc::value() const // return &x; // } -inline colvarvalue const & colvar::cvc::system_force() const +inline colvarvalue const & colvar::cvc::total_force() const { return ft; } @@ -306,7 +306,7 @@ protected: cvm::rvector dist_v; /// Use absolute positions, ignoring PBCs when present bool b_no_PBC; - /// Compute system force on first site only to avoid unwanted + /// Compute total force on first site only to avoid unwanted /// coupling to other colvars (see e.g. Ciccotti et al., 2005) bool b_1site_force; public: @@ -388,7 +388,7 @@ protected: cvm::atom_group *ref2; /// Use absolute positions, ignoring PBCs when present bool b_no_PBC; - /// Compute system force on one site only to avoid unwanted + /// Compute total force on one site only to avoid unwanted /// coupling to other colvars (see e.g. Ciccotti et al., 2005) bool b_1site_force; /// Vector on which the distance vector is projected @@ -637,7 +637,7 @@ protected: /// Derivatives wrt group centers of mass cvm::rvector dxdr1, dxdr3; - /// Compute system force on first site only to avoid unwanted + /// Compute total force on first site only to avoid unwanted /// coupling to other colvars (see e.g. Ciccotti et al., 2005) /// (or to allow dummy atoms) bool b_1site_force; @@ -683,7 +683,7 @@ protected: /// Derivatives wrt group centers of mass cvm::rvector dxdr1, dxdr3; - /// Compute system force on first site only to avoid unwanted + /// Compute total force on first site only to avoid unwanted /// coupling to other colvars (see e.g. Ciccotti et al., 2005) /// (or to allow dummy atoms) bool b_1site_force; @@ -724,7 +724,7 @@ protected: /// Inter site vectors cvm::rvector r12, r23, r34; - /// \brief Compute system force on first site only to avoid unwanted + /// \brief Compute total force on first site only to avoid unwanted /// coupling to other colvars (see e.g. Ciccotti et al., 2005) bool b_1site_force; diff --git a/lib/colvars/colvarcomp_angles.cpp b/lib/colvars/colvarcomp_angles.cpp index a4bf53feb7..b1acb201ae 100644 --- a/lib/colvars/colvarcomp_angles.cpp +++ b/lib/colvars/colvarcomp_angles.cpp @@ -19,7 +19,7 @@ colvar::angle::angle(std::string const &conf) group2 = parse_group(conf, "group2"); group3 = parse_group(conf, "group3"); if (get_keyval(conf, "oneSiteSystemForce", b_1site_force, false)) { - cvm::log("Computing system force on group 1 only"); + cvm::log("Computing total force on group 1 only"); } x.type(colvarvalue::type_scalar); } @@ -95,15 +95,15 @@ void colvar::angle::calc_force_invgrads() // when propagating changes in the angle) if (b_1site_force) { - group1->read_system_forces(); + group1->read_total_forces(); cvm::real norm_fact = 1.0 / dxdr1.norm2(); - ft.real_value = norm_fact * dxdr1 * group1->system_force(); + ft.real_value = norm_fact * dxdr1 * group1->total_force(); } else { - group1->read_system_forces(); - group3->read_system_forces(); + group1->read_total_forces(); + group3->read_total_forces(); cvm::real norm_fact = 1.0 / (dxdr1.norm2() + dxdr3.norm2()); - ft.real_value = norm_fact * ( dxdr1 * group1->system_force() - + dxdr3 * group3->system_force()); + ft.real_value = norm_fact * ( dxdr1 * group1->total_force() + + dxdr3 * group3->total_force()); } return; } @@ -141,7 +141,7 @@ colvar::dipole_angle::dipole_angle(std::string const &conf) group3 = parse_group(conf, "group3"); if (get_keyval(conf, "oneSiteSystemForce", b_1site_force, false)) { - cvm::log("Computing system force on group 1 only"); + cvm::log("Computing total force on group 1 only"); } x.type(colvarvalue::type_scalar); } @@ -251,7 +251,7 @@ colvar::dihedral::dihedral(std::string const &conf) provide(f_cvc_com_based); if (get_keyval(conf, "oneSiteSystemForce", b_1site_force, false)) { - cvm::log("Computing system force on group 1 only"); + cvm::log("Computing total force on group 1 only"); } group1 = parse_group(conf, "group1"); group2 = parse_group(conf, "group2"); @@ -421,15 +421,15 @@ void colvar::dihedral::calc_force_invgrads() cvm::real const fact1 = d12 * std::sqrt(1.0 - dot1 * dot1); cvm::real const fact4 = d34 * std::sqrt(1.0 - dot4 * dot4); - group1->read_system_forces(); + group1->read_total_forces(); if ( b_1site_force ) { // This is only measuring the force on group 1 - ft.real_value = PI/180.0 * fact1 * (cross1 * group1->system_force()); + ft.real_value = PI/180.0 * fact1 * (cross1 * group1->total_force()); } else { // Default case: use groups 1 and 4 - group4->read_system_forces(); - ft.real_value = PI/180.0 * 0.5 * (fact1 * (cross1 * group1->system_force()) - + fact4 * (cross4 * group4->system_force())); + group4->read_total_forces(); + ft.real_value = PI/180.0 * 0.5 * (fact1 * (cross1 * group1->total_force()) + + fact4 * (cross4 * group4->total_force())); } } diff --git a/lib/colvars/colvarcomp_distances.cpp b/lib/colvars/colvarcomp_distances.cpp index ff6b03e2c5..f7bf2b87f0 100644 --- a/lib/colvars/colvarcomp_distances.cpp +++ b/lib/colvars/colvarcomp_distances.cpp @@ -22,7 +22,7 @@ colvar::distance::distance(std::string const &conf) cvm::log("Computing distance using absolute positions (not minimal-image)"); } if (get_keyval(conf, "oneSiteSystemForce", b_1site_force, false)) { - cvm::log("Computing system force on group 1 only"); + cvm::log("Computing total force on group 1 only"); } group1 = parse_group(conf, "group1"); group2 = parse_group(conf, "group2"); @@ -66,12 +66,12 @@ void colvar::distance::calc_gradients() void colvar::distance::calc_force_invgrads() { - group1->read_system_forces(); + group1->read_total_forces(); if ( b_1site_force ) { - ft.real_value = -1.0 * (group1->system_force() * dist_v.unit()); + ft.real_value = -1.0 * (group1->total_force() * dist_v.unit()); } else { - group2->read_system_forces(); - ft.real_value = 0.5 * ((group2->system_force() - group1->system_force()) * dist_v.unit()); + group2->read_total_forces(); + ft.real_value = 0.5 * ((group2->total_force() - group1->total_force()) * dist_v.unit()); } } @@ -186,7 +186,7 @@ colvar::distance_z::distance_z(std::string const &conf) cvm::log("Computing distance using absolute positions (not minimal-image)"); } if (get_keyval(conf, "oneSiteSystemForce", b_1site_force, false)) { - cvm::log("Computing system force on group \"main\" only"); + cvm::log("Computing total force on group \"main\" only"); } } @@ -249,13 +249,13 @@ void colvar::distance_z::calc_gradients() void colvar::distance_z::calc_force_invgrads() { - main->read_system_forces(); + main->read_total_forces(); if (fixed_axis && !b_1site_force) { - ref1->read_system_forces(); - ft.real_value = 0.5 * ((main->system_force() - ref1->system_force()) * axis); + ref1->read_total_forces(); + ft.real_value = 0.5 * ((main->total_force() - ref1->total_force()) * axis); } else { - ft.real_value = main->system_force() * axis; + ft.real_value = main->total_force() * axis; } } @@ -349,13 +349,13 @@ void colvar::distance_xy::calc_gradients() void colvar::distance_xy::calc_force_invgrads() { - main->read_system_forces(); + main->read_total_forces(); if (fixed_axis && !b_1site_force) { - ref1->read_system_forces(); - ft.real_value = 0.5 / x.real_value * ((main->system_force() - ref1->system_force()) * dist_v_ortho); + ref1->read_total_forces(); + ft.real_value = 0.5 / x.real_value * ((main->total_force() - ref1->total_force()) * dist_v_ortho); } else { - ft.real_value = 1.0 / x.real_value * main->system_force() * dist_v_ortho; + ft.real_value = 1.0 / x.real_value * main->total_force() * dist_v_ortho; } } @@ -655,13 +655,13 @@ void colvar::gyration::calc_gradients() void colvar::gyration::calc_force_invgrads() { - atoms->read_system_forces(); + atoms->read_total_forces(); cvm::real const dxdr = 1.0/x.real_value; ft.real_value = 0.0; for (cvm::atom_iter ai = atoms->begin(); ai != atoms->end(); ai++) { - ft.real_value += dxdr * ai->pos * ai->system_force; + ft.real_value += dxdr * ai->pos * ai->total_force; } } @@ -903,13 +903,13 @@ void colvar::rmsd::apply_force(colvarvalue const &force) void colvar::rmsd::calc_force_invgrads() { - atoms->read_system_forces(); + atoms->read_total_forces(); ft.real_value = 0.0; // Note: gradient square norm is 1/N_atoms for (size_t ia = 0; ia < atoms->size(); ia++) { - ft.real_value += (*atoms)[ia].grad * (*atoms)[ia].system_force; + ft.real_value += (*atoms)[ia].grad * (*atoms)[ia].total_force; } ft.real_value *= atoms->size(); } @@ -1191,12 +1191,12 @@ void colvar::eigenvector::apply_force(colvarvalue const &force) void colvar::eigenvector::calc_force_invgrads() { - atoms->read_system_forces(); + atoms->read_total_forces(); ft.real_value = 0.0; for (size_t ia = 0; ia < atoms->size(); ia++) { ft.real_value += eigenvec_invnorm2 * (*atoms)[ia].grad * - (*atoms)[ia].system_force; + (*atoms)[ia].total_force; } } diff --git a/lib/colvars/colvardeps.cpp b/lib/colvars/colvardeps.cpp index eabb67de4c..7dce7e31f6 100644 --- a/lib/colvars/colvardeps.cpp +++ b/lib/colvars/colvardeps.cpp @@ -1,8 +1,7 @@ -#include "colvarmodule.h" #include "colvardeps.h" -cvm::deps::~deps() { +colvardeps::~colvardeps() { size_t i; for (i=0; i<feature_states.size(); i++) { @@ -25,12 +24,24 @@ cvm::deps::~deps() { } -void cvm::deps::provide(int feature_id) { +void colvardeps::provide(int feature_id) { feature_states[feature_id]->available = true; } -int cvm::deps::enable(int feature_id, +bool colvardeps::get_keyval_feature(colvarparse *cvp, + std::string const &conf, char const *key, + int feature_id, bool const &def_value, + colvarparse::Parse_Mode const parse_mode) +{ + bool value; + bool const found = cvp->get_keyval(conf, key, value, def_value, parse_mode); + if (value) enable(feature_id); + return found; +} + + +int colvardeps::enable(int feature_id, bool dry_run /* default: false */, // dry_run: fail silently, do not enable if available // flag is passed recursively to deps of this feature @@ -48,7 +59,7 @@ int cvm::deps::enable(int feature_id, if (cvm::debug()) { cvm::log("DEPS: " + description + (dry_run ? " testing " : " requiring ") + - "\"" + f->description); + "\"" + f->description +"\""); } if (fs->enabled) { @@ -140,11 +151,7 @@ int cvm::deps::enable(int feature_id, // 4) solve deps in children for (i=0; i<f->requires_children.size(); i++) { int g = f->requires_children[i]; - if (cvm::debug()) - cvm::log("requires children " + features()[g]->description); -// cvm::log("children " + cvm::to_str(g)); for (j=0; j<children.size(); j++) { -// cvm::log("child " + children[j]->description); cvm::increase_depth(); res = children[j]->enable(g, dry_run, false); cvm::decrease_depth(); @@ -193,7 +200,7 @@ int cvm::deps::enable(int feature_id, features()[f]->requires_alt.back()[1] = h; \ features()[f]->requires_alt.back()[2] = i -void cvm::deps::init_cvb_requires() { +void colvardeps::init_cvb_requires() { int i; if (features().size() == 0) { for (i = 0; i < f_cvb_ntot; i++) { @@ -207,8 +214,8 @@ void cvm::deps::init_cvb_requires() { f_description(f_cvb_apply_force, "apply force"); f_req_children(f_cvb_apply_force, f_cv_gradient); - f_description(f_cvb_get_system_force, "obtain system force"); - f_req_children(f_cvb_get_system_force, f_cv_system_force); + f_description(f_cvb_get_total_force, "obtain total force"); + f_req_children(f_cvb_get_total_force, f_cv_total_force); f_description(f_cvb_history_dependent, "history-dependent"); @@ -225,7 +232,7 @@ void cvm::deps::init_cvb_requires() { } -void cvm::deps::init_cv_requires() { +void colvardeps::init_cv_requires() { size_t i; if (features().size() == 0) { for (i = 0; i < f_cv_ntot; i++) { @@ -247,15 +254,15 @@ void cvm::deps::init_cv_requires() { f_description(f_cv_fdiff_velocity, "fdiff_velocity"); // System force: either trivial (spring force); through extended Lagrangian, or calculated explicitly - f_description(f_cv_system_force, "system force"); - f_req_alt2(f_cv_system_force, f_cv_extended_Lagrangian, f_cv_system_force_calc); + f_description(f_cv_total_force, "total force"); + f_req_alt2(f_cv_total_force, f_cv_extended_Lagrangian, f_cv_total_force_calc); - // Deps for explicit system force calculation - f_description(f_cv_system_force_calc, "system force calculation"); - f_req_self(f_cv_system_force_calc, f_cv_scalar); - f_req_self(f_cv_system_force_calc, f_cv_linear); - f_req_children(f_cv_system_force_calc, f_cvc_inv_gradient); - f_req_self(f_cv_system_force_calc, f_cv_Jacobian); + // Deps for explicit total force calculation + f_description(f_cv_total_force_calc, "total force calculation"); + f_req_self(f_cv_total_force_calc, f_cv_scalar); + f_req_self(f_cv_total_force_calc, f_cv_linear); + f_req_children(f_cv_total_force_calc, f_cvc_inv_gradient); + f_req_self(f_cv_total_force_calc, f_cv_Jacobian); f_description(f_cv_Jacobian, "Jacobian derivative"); f_req_self(f_cv_Jacobian, f_cv_scalar); @@ -283,8 +290,8 @@ void cvm::deps::init_cv_requires() { f_description(f_cv_output_applied_force, "output applied force"); - f_description(f_cv_output_system_force, "output system force"); - f_req_self(f_cv_output_system_force, f_cv_system_force); + f_description(f_cv_output_total_force, "output total force"); + f_req_self(f_cv_output_total_force, f_cv_total_force); f_description(f_cv_lower_boundary, "lower boundary"); f_req_self(f_cv_lower_boundary, f_cv_scalar); @@ -342,11 +349,11 @@ void cvm::deps::init_cv_requires() { } -void cvm::deps::init_cvc_requires() { +void colvardeps::init_cvc_requires() { size_t i; // Initialize static array once and for all if (features().size() == 0) { - for (i = 0; i < cvm::deps::f_cvc_ntot; i++) { + for (i = 0; i < colvardeps::f_cvc_ntot; i++) { features().push_back(new feature); } @@ -364,7 +371,7 @@ void cvm::deps::init_cvc_requires() { f_description(f_cvc_debug_gradient, "debug gradient"); f_req_self(f_cvc_debug_gradient, f_cvc_gradient); - f_description(f_cvc_Jacobian, "Jacobian"); + f_description(f_cvc_Jacobian, "Jacobian derivative"); f_req_self(f_cvc_Jacobian, f_cvc_inv_gradient); f_description(f_cvc_com_based, "depends on group centers of mass"); @@ -384,7 +391,7 @@ void cvm::deps::init_cvc_requires() { // Initialize feature_states for each instance // default as unavailable, not enabled feature_states.reserve(f_cvc_ntot); - for (i = 0; i < cvm::deps::f_cvc_ntot; i++) { + for (i = 0; i < colvardeps::f_cvc_ntot; i++) { feature_states.push_back(new feature_state(false, false)); } @@ -392,12 +399,12 @@ void cvm::deps::init_cvc_requires() { // Each cvc specifies what other features are available feature_states[f_cvc_active]->available = true; feature_states[f_cvc_gradient]->available = true; - feature_states[f_cvc_scalable_com]->available = (proxy->scalable_group_coms() == COLVARS_OK); + feature_states[f_cvc_scalable_com]->available = (cvm::proxy->scalable_group_coms() == COLVARS_OK); feature_states[f_cvc_scalable]->available = feature_states[f_cvc_scalable_com]->available; } -void cvm::deps::init_ag_requires() { +void colvardeps::init_ag_requires() { size_t i; // Initialize static array once and for all if (features().size() == 0) { @@ -428,18 +435,18 @@ void cvm::deps::init_ag_requires() { // Initialize feature_states for each instance // default as unavailable, not enabled feature_states.reserve(f_ag_ntot); - for (i = 0; i < cvm::deps::f_ag_ntot; i++) { + for (i = 0; i < colvardeps::f_ag_ntot; i++) { feature_states.push_back(new feature_state(false, false)); } // Features that are implemented (or not) by all atom groups feature_states[f_ag_active]->available = true; - feature_states[f_ag_scalable_com]->available = (proxy->scalable_group_coms() == COLVARS_OK); + feature_states[f_ag_scalable_com]->available = (cvm::proxy->scalable_group_coms() == COLVARS_OK); feature_states[f_ag_scalable]->available = feature_states[f_ag_scalable_com]->available; } -void cvm::deps::print_state() { +void colvardeps::print_state() { size_t i; cvm::log("Enabled features of " + description); for (i = 0; i < feature_states.size(); i++) { @@ -456,13 +463,13 @@ void cvm::deps::print_state() { -void cvm::deps::add_child(deps *child) { +void colvardeps::add_child(colvardeps *child) { children.push_back(child); - child->parents.push_back((deps *)this); + child->parents.push_back((colvardeps *)this); } -void cvm::deps::remove_child(deps *child) { +void colvardeps::remove_child(colvardeps *child) { int i; bool found = false; @@ -490,7 +497,7 @@ void cvm::deps::remove_child(deps *child) { } -void cvm::deps::remove_all_children() { +void colvardeps::remove_all_children() { size_t i; int j; bool found; diff --git a/lib/colvars/colvardeps.h b/lib/colvars/colvardeps.h index 8787819b45..089461c532 100644 --- a/lib/colvars/colvardeps.h +++ b/lib/colvars/colvardeps.h @@ -1,10 +1,11 @@ // -*- c++ -*- -#include "colvarmodule.h" - #ifndef COLVARDEPS_H #define COLVARDEPS_H +#include "colvarmodule.h" +#include "colvarparse.h" + /// Parent class for a member object of a bias, cv or cvc etc. containing dependencies /// (features) and handling dependency resolution @@ -16,11 +17,11 @@ // It seems important to have available default to false (for safety) and enabled to false (for efficiency) -class cvm::deps { +class colvardeps { public: - deps() {} - virtual ~deps(); + colvardeps() {} + virtual ~colvardeps(); // Subclasses should initialize the following members: @@ -84,9 +85,9 @@ public: // implement this as virtual to allow overriding virtual std::vector<feature *>&features() = 0; - void add_child(deps *child); + void add_child(colvardeps *child); - void remove_child(deps *child); + void remove_child(colvardeps *child); /// Used before deleting an object, if not handled by that object's destructor /// (useful for cvcs because their children are member objects) @@ -98,11 +99,11 @@ private: // pointers to objects this object depends on // list should be maintained by any code that modifies the object // this could be secured by making lists of colvars / cvcs / atom groups private and modified through accessor functions - std::vector<deps *> children; + std::vector<colvardeps *> children; // pointers to objects that depend on this object // the size of this array is in effect a reference counter - std::vector<deps *> parents; + std::vector<colvardeps *> parents; public: // disabling a feature f: @@ -115,7 +116,7 @@ public: // // } - // std::vector<deps *> parents; // Needed to trigger a refresh if capabilities of this object change + // std::vector<colvardeps *> parents; // Needed to trigger a refresh if capabilities of this object change // End of members to be initialized by subclasses @@ -133,6 +134,12 @@ public: void provide(int feature_id); // set the feature's flag to available in local object + /// Parse a keyword and enable a feature accordingly + bool get_keyval_feature(colvarparse *cvp, + std::string const &conf, char const *key, + int feature_id, bool const &def_value, + colvarparse::Parse_Mode const parse_mode = colvarparse::parse_normal); + int enable(int f, bool dry_run = false, bool toplevel = true); // enable a feature and recursively solve its dependencies // dry_run is set to true to recursively test if a feature is available, without enabling it // int disable(int f); @@ -148,7 +155,7 @@ public: /// \brief Bias is active f_cvb_active, f_cvb_apply_force, // will apply forces - f_cvb_get_system_force, // requires system forces + f_cvb_get_total_force, // requires total forces f_cvb_history_dependent, // depends on simulation history f_cvb_ntot }; @@ -164,14 +171,14 @@ public: f_cv_collect_gradient, /// \brief Calculate the velocity with finite differences f_cv_fdiff_velocity, - /// \brief The system force is calculated, projecting the atomic + /// \brief The total force is calculated, projecting the atomic /// forces on the inverse gradient - f_cv_system_force, - /// \brief Calculate system force from atomic forces - f_cv_system_force_calc, + f_cv_total_force, + /// \brief Calculate total force from atomic forces + f_cv_total_force_calc, /// \brief Estimate Jacobian derivative f_cv_Jacobian, - /// \brief Do not report the Jacobian force as part of the system force + /// \brief Do not report the Jacobian force as part of the total force /// instead, apply a correction internally to cancel it f_cv_hide_Jacobian, /// \brief The variable has a harmonic restraint around a moving @@ -189,8 +196,8 @@ public: f_cv_output_velocity, /// \brief Output the applied force to the trajectory file f_cv_output_applied_force, - /// \brief Output the system force to the trajectory file - f_cv_output_system_force, + /// \brief Output the total force to the trajectory file + f_cv_output_total_force, /// \brief A lower boundary is defined f_cv_lower_boundary, /// \brief An upper boundary is defined diff --git a/lib/colvars/colvargrid.cpp b/lib/colvars/colvargrid.cpp index 3b07a0b3d5..ca2d935e1c 100644 --- a/lib/colvars/colvargrid.cpp +++ b/lib/colvars/colvargrid.cpp @@ -35,13 +35,13 @@ colvar_grid_scalar::colvar_grid_scalar(colvar_grid_scalar const &g) } colvar_grid_scalar::colvar_grid_scalar(std::vector<int> const &nx_i) - : colvar_grid<cvm::real>(nx_i, 0.0, 1), samples(NULL) + : colvar_grid<cvm::real>(nx_i, 0.0, 1), samples(NULL), grad(NULL) { grad = new cvm::real[nd]; } colvar_grid_scalar::colvar_grid_scalar(std::vector<colvar *> &colvars, bool margin) - : colvar_grid<cvm::real>(colvars, 0.0, 1, margin), samples(NULL) + : colvar_grid<cvm::real>(colvars, 0.0, 1, margin), samples(NULL), grad(NULL) { grad = new cvm::real[nd]; } diff --git a/lib/colvars/colvargrid.h b/lib/colvars/colvargrid.h index e00405d278..473348d3e7 100644 --- a/lib/colvars/colvargrid.h +++ b/lib/colvars/colvargrid.h @@ -1160,6 +1160,50 @@ public: } has_data = true; } + + /// \brief Return the log-gradient from finite differences + /// on the *same* grid for dimension n + inline const cvm::real log_gradient_finite_diff( const std::vector<int> &ix0, + int n = 0) + { + cvm::real A0, A1; + std::vector<int> ix; + + // factor for mesh width, 2.0 for central finite difference + // but only 1.0 on edges for non-PBC coordinates + cvm::real factor; + + if (periodic[n]) { + factor = 2.; + ix = ix0; + ix[n]--; wrap(ix); + A0 = data[address(ix)]; + ix = ix0; + ix[n]++; wrap(ix); + A1 = data[address(ix)]; + } else { + factor = 0.; + ix = ix0; + if (ix[n] > 0) { // not left edge + ix[n]--; + factor += 1.; + } + A0 = data[address(ix)]; + ix = ix0; + if (ix[n]+1 < nx[n]) { // not right edge + ix[n]++; + factor += 1.; + } + A1 = data[address(ix)]; + } + if (A0 == 0 || A1 == 0) { + // can't handle empty bins + return 0.; + } else { + return (std::log((cvm::real)A1) - std::log((cvm::real)A0)) + / (widths[n] * factor); + } + } }; diff --git a/lib/colvars/colvarmodule.cpp b/lib/colvars/colvarmodule.cpp index 9317c421ed..d7071df0b8 100644 --- a/lib/colvars/colvarmodule.cpp +++ b/lib/colvars/colvarmodule.cpp @@ -83,7 +83,9 @@ int colvarmodule::read_config_file(char const *config_filename) std::string conf = ""; std::string line; while (colvarparse::getline_nocomments(config_s, line)) { - conf.append(line+"\n"); + // Delete lines that contain only white space after removing comments + if (line.find_first_not_of(colvarparse::white_space) != std::string::npos) + conf.append(line+"\n"); } config_s.close(); @@ -101,7 +103,9 @@ int colvarmodule::read_config_string(std::string const &config_str) std::string conf = ""; std::string line; while (colvarparse::getline_nocomments(config_s, line)) { - conf.append(line+"\n"); + // Delete lines that contain only white space after removing comments + if (line.find_first_not_of(colvarparse::white_space) != std::string::npos) + conf.append(line+"\n"); } return parse_config(conf); } @@ -302,7 +306,7 @@ int colvarmodule::parse_biases(std::string const &conf) size_t i; for (i = 0; i < biases.size(); i++) { - biases[i]->enable(cvm::deps::f_cvb_active); + biases[i]->enable(colvardeps::f_cvb_active); if (cvm::debug()) biases[i]->print_state(); } @@ -310,8 +314,8 @@ int colvarmodule::parse_biases(std::string const &conf) size_t n_hist_dep_biases = 0; std::vector<std::string> hist_dep_biases_names; for (i = 0; i < biases.size(); i++) { - if (biases[i]->is_enabled(cvm::deps::f_cvb_apply_force) && - biases[i]->is_enabled(cvm::deps::f_cvb_history_dependent)) { + if (biases[i]->is_enabled(colvardeps::f_cvb_apply_force) && + biases[i]->is_enabled(colvardeps::f_cvb_history_dependent)) { n_hist_dep_biases++; hist_dep_biases_names.push_back(biases[i]->name); } @@ -340,8 +344,8 @@ int colvarmodule::parse_biases(std::string const &conf) int colvarmodule::catch_input_errors(int result) { if (result != COLVARS_OK || get_error()) { - set_error_bit(result); - set_error_bit(INPUT_ERROR); + set_error_bits(result); + set_error_bits(INPUT_ERROR); parse->init(); return get_error(); } @@ -493,27 +497,27 @@ int colvarmodule::calc() cvm::to_str(cvm::step_absolute())+"\n"); } - combine_errors(error_code, calc_colvars()); + error_code |= calc_colvars(); // set biasing forces to zero before biases are calculated and summed over for (std::vector<colvar *>::iterator cvi = colvars.begin(); cvi != colvars.end(); cvi++) { (*cvi)->reset_bias_force(); } - combine_errors(error_code, calc_biases()); - combine_errors(error_code, update_colvar_forces()); + error_code |= calc_biases(); + error_code |= update_colvar_forces(); if (cvm::b_analysis) { - combine_errors(error_code, analyze()); + error_code |= analyze(); } // write trajectory files, if needed if (cv_traj_freq && cv_traj_name.size()) { - combine_errors(error_code, write_traj_files()); + error_code |= write_traj_files(); } // write restart files, if needed if (restart_out_freq && restart_out_name.size()) { - combine_errors(error_code, write_restart_files()); + error_code |= write_restart_files(); } return error_code; @@ -531,7 +535,7 @@ int colvarmodule::calc_colvars() // Determine which colvars are active at this time step for (cvi = colvars.begin(); cvi != colvars.end(); cvi++) { - (*cvi)->feature_states[cvm::deps::f_cv_active]->enabled = (step_absolute() % (*cvi)->get_time_step_factor() == 0); + (*cvi)->feature_states[colvardeps::f_cv_active]->enabled = (step_absolute() % (*cvi)->get_time_step_factor() == 0); } // if SMP support is available, split up the work @@ -551,7 +555,7 @@ int colvarmodule::calc_colvars() for (cvi = colvars.begin(); cvi != colvars.end(); cvi++) { if (!(*cvi)->is_enabled()) continue; - combine_errors(error_code, (*cvi)->update_cvc_flags()); + error_code |= (*cvi)->update_cvc_flags(); size_t num_items = (*cvi)->num_active_cvcs(); colvars_smp.reserve(colvars_smp.size() + num_items); @@ -566,12 +570,12 @@ int colvarmodule::calc_colvars() cvm::decrease_depth(); // calculate colvar components in parallel - combine_errors(error_code, proxy->smp_colvars_loop()); + error_code |= proxy->smp_colvars_loop(); cvm::increase_depth(); for (cvi = colvars.begin(); cvi != colvars.end(); cvi++) { if (!(*cvi)->is_enabled()) continue; - combine_errors(error_code, (*cvi)->collect_cvc_data()); + error_code |= (*cvi)->collect_cvc_data(); } cvm::decrease_depth(); @@ -581,7 +585,7 @@ int colvarmodule::calc_colvars() cvm::increase_depth(); for (cvi = colvars.begin(); cvi != colvars.end(); cvi++) { if (!(*cvi)->is_enabled()) continue; - combine_errors(error_code, (*cvi)->calc()); + error_code |= (*cvi)->calc(); if (cvm::get_error()) { return COLVARS_ERROR; } @@ -589,7 +593,7 @@ int colvarmodule::calc_colvars() cvm::decrease_depth(); } - combine_errors(error_code, cvm::get_error()); + error_code |= cvm::get_error(); return error_code; } @@ -609,21 +613,21 @@ int colvarmodule::calc_biases() if (use_scripted_forces && !scripting_after_biases) { // calculate biases and scripted forces in parallel - combine_errors(error_code, proxy->smp_biases_script_loop()); + error_code |= proxy->smp_biases_script_loop(); } else { // calculate biases in parallel - combine_errors(error_code, proxy->smp_biases_loop()); + error_code |= proxy->smp_biases_loop(); } } else { if (use_scripted_forces && !scripting_after_biases) { - combine_errors(error_code, calc_scripted_forces()); + error_code |= calc_scripted_forces(); } cvm::increase_depth(); for (bi = biases.begin(); bi != biases.end(); bi++) { - combine_errors(error_code, (*bi)->update()); + error_code |= (*bi)->update(); if (cvm::get_error()) { return COLVARS_ERROR; } @@ -661,7 +665,7 @@ int colvarmodule::update_colvar_forces() cvm::decrease_depth(); if (use_scripted_forces && scripting_after_biases) { - combine_errors(error_code, calc_scripted_forces()); + error_code |= calc_scripted_forces(); } cvm::real total_colvar_energy = 0.0; @@ -689,7 +693,7 @@ int colvarmodule::update_colvar_forces() cvm::log("Communicating forces from the colvars to the atoms.\n"); cvm::increase_depth(); for (cvi = colvars.begin(); cvi != colvars.end(); cvi++) { - if ((*cvi)->is_enabled(cvm::deps::f_cv_gradient)) { + if ((*cvi)->is_enabled(colvardeps::f_cv_gradient)) { if (!(*cvi)->is_enabled()) continue; (*cvi)->communicate_forces(); if (cvm::get_error()) { @@ -913,17 +917,17 @@ int colvarmodule::setup_output() std::string("")); if (cv_traj_freq && cv_traj_name.size()) { - combine_errors(error_code, open_traj_file(cv_traj_name)); + error_code |= open_traj_file(cv_traj_name); } for (std::vector<colvarbias *>::iterator bi = biases.begin(); bi != biases.end(); bi++) { - combine_errors(error_code, (*bi)->setup_output()); + error_code |= (*bi)->setup_output(); } if (error_code != COLVARS_OK || cvm::get_error()) { - set_error_bit(FILE_ERROR); + set_error_bits(FILE_ERROR); } return (cvm::get_error() ? COLVARS_ERROR : COLVARS_OK); @@ -1259,29 +1263,20 @@ size_t & cvm::depth() } -void colvarmodule::set_error_bit(int code) +void colvarmodule::set_error_bits(int code) { - if (code > 0) { - cvm::fatal_error("Error: set_error_bit() received positive error code.\n"); + if (code < 0) { + cvm::fatal_error("Error: set_error_bits() received negative error code.\n"); return; } proxy->smp_lock(); - errorCode = -1 * ((-1 * errorCode) | (-1 * code) | (-1 * COLVARS_ERROR)); + errorCode |= code | COLVARS_ERROR; proxy->smp_unlock(); } bool colvarmodule::get_error_bit(int code) { - return bool((-1 * errorCode) & (-1 * code)); -} - -void colvarmodule::combine_errors(int &target, int const code) -{ - if (code > 0 || target > 0) { - cvm::fatal_error("Error: combine_errors() received positive error code.\n"); - return; - } - target = -1 * ((-1 * target) | (-1 * code)); + return bool(errorCode & code); } void colvarmodule::clear_error() @@ -1294,7 +1289,7 @@ void colvarmodule::clear_error() void cvm::error(std::string const &message, int code) { - set_error_bit(code); + set_error_bits(code); proxy->error(message); } @@ -1303,7 +1298,7 @@ void cvm::fatal_error(std::string const &message) { // TODO once all non-fatal errors have been set to be handled by error(), // set DELETE_COLVARS here for VMD to handle it - set_error_bit(FATAL_ERROR); + set_error_bits(FATAL_ERROR); proxy->fatal_error(message); } diff --git a/lib/colvars/colvarmodule.h b/lib/colvars/colvarmodule.h index e6d21af85b..deb20c9670 100644 --- a/lib/colvars/colvarmodule.h +++ b/lib/colvars/colvarmodule.h @@ -4,7 +4,7 @@ #define COLVARMODULE_H #ifndef COLVARS_VERSION -#define COLVARS_VERSION "2016-08-01" +#define COLVARS_VERSION "2016-09-03" #endif #ifndef COLVARS_DEBUG @@ -23,19 +23,16 @@ /// shared between all object instances) to be accessed from other /// objects. -// Error codes are the negative of powers-of-two -// as a result, error codes should NOT be bitwise-ORed but only -// accessed through set_error_bit() and get_error_bit() #define COLVARS_OK 0 -#define COLVARS_ERROR -1 -#define COLVARS_NOT_IMPLEMENTED (-1*(1<<1)) -#define INPUT_ERROR (-1*(1<<2)) // out of bounds or inconsistent input -#define BUG_ERROR (-1*(1<<3)) // Inconsistent state indicating bug -#define FILE_ERROR (-1*(1<<4)) -#define MEMORY_ERROR (-1*(1<<5)) -#define FATAL_ERROR (-1*(1<<6)) // Should be set, or not, together with other bits -#define DELETE_COLVARS (-1*(1<<7)) // Instruct the caller to delete cvm -#define COLVARS_NO_SUCH_FRAME (-1*(1<<8)) // Cannot load the requested frame +#define COLVARS_ERROR 1 +#define COLVARS_NOT_IMPLEMENTED (1<<1) +#define INPUT_ERROR (1<<2) // out of bounds or inconsistent input +#define BUG_ERROR (1<<3) // Inconsistent state indicating bug +#define FILE_ERROR (1<<4) +#define MEMORY_ERROR (1<<5) +#define FATAL_ERROR (1<<6) // Should be set, or not, together with other bits +#define DELETE_COLVARS (1<<7) // Instruct the caller to delete cvm +#define COLVARS_NO_SUCH_FRAME (1<<8) // Cannot load the requested frame #include <iostream> #include <iomanip> @@ -77,9 +74,6 @@ private: public: - /// Base class to handle mutual dependencies of most objects - class deps; - friend class colvarproxy; // TODO colvarscript should be unaware of colvarmodule's internals friend class colvarscript; @@ -118,12 +112,10 @@ protected: public: - static void set_error_bit(int code); + static void set_error_bits(int code); static bool get_error_bit(int code); - static void combine_errors(int &target, int const code); - static inline int get_error() { return errorCode; @@ -392,8 +384,8 @@ public: /// \brief Time step of MD integrator (fs) static real dt(); - /// Request calculation of system force from MD engine - static void request_system_force(); + /// Request calculation of total force from MD engine + static void request_total_force(); /// Print a message to the main log static void log(std::string const &message); @@ -642,9 +634,9 @@ inline int cvm::replica_comm_send(char* msg_data, int msg_len, int dest_rep) { } -inline void cvm::request_system_force() +inline void cvm::request_total_force() { - proxy->request_system_force(true); + proxy->request_total_force(true); } inline void cvm::select_closest_image(atom_pos &pos, diff --git a/lib/colvars/colvarparse.cpp b/lib/colvars/colvarparse.cpp index f6e904c83a..e222fa9ecf 100644 --- a/lib/colvars/colvarparse.cpp +++ b/lib/colvars/colvarparse.cpp @@ -524,7 +524,7 @@ int colvarparse::check_keywords(std::string &conf, char const *key) } } - init(); + clear_keyword_registry(); return COLVARS_OK; } @@ -548,6 +548,10 @@ bool colvarparse::key_lookup(std::string const &conf, std::string &data, size_t &save_pos) { + if (cvm::debug()) { + cvm::log("Looking for the keyword \""+std::string(key_in)+"\" and its value.\n"); + } + // add this keyword to the register (in its camelCase version) add_keyword(key_in); @@ -568,11 +572,14 @@ bool colvarparse::key_lookup(std::string const &conf, // start from the first occurrence of key size_t pos = conf_lower.find(key, save_pos); - // iterate over all instances until it finds the isolated keyword + // iterate over all instances of the substring until it finds it as isolated keyword while (true) { if (pos == std::string::npos) { // no valid instance of the keyword has been found + if (cvm::debug()) { + cvm::log("Keyword \""+std::string(key_in)+"\" not found.\n"); + } return false; } @@ -625,25 +632,46 @@ bool colvarparse::key_lookup(std::string const &conf, size_t data_begin = (to_lower_cppstr(line)).find(key) + key.size(); data_begin = line.find_first_not_of(white_space, data_begin+1); - // size_t data_begin_absolute = data_begin + line_begin; - // size_t data_end_absolute = data_begin; - if (data_begin != std::string::npos) { size_t data_end = line.find_last_not_of(white_space) + 1; data_end = (data_end == std::string::npos) ? line.size() : data_end; - // data_end_absolute = data_end + line_begin; - if (line.find('{', data_begin) != std::string::npos) { + size_t brace = line.find('{', data_begin); // look for an opening brace + size_t brace_last = brace; + + if (brace != std::string::npos) { - size_t brace_count = 1; - size_t brace = line.find('{', data_begin); // start from the first opening brace + // find the matching closing brace + + if (cvm::debug()) { + cvm::log("Multi-line value, config is now \""+line+"\".\n"); + } + + int brace_count = 1; while (brace_count > 0) { - // find the matching closing brace - brace = line.find_first_of("{}", brace+1); - while (brace == std::string::npos) { + brace = line.find_first_of("{}", brace_last+1); + // find all braces within this line + while (brace < std::string::npos) { + brace_last = brace; + if (line[brace] == '{') brace_count++; + if (line[brace] == '}') brace_count--; + if (brace_count == 0) { + data_end = brace+1; + break; + } + brace = line.find_first_of("{}", brace+1); + } + + if (brace_count == 0) { + data_end = brace+1; + break; + } + + if (brace == std::string::npos) { + // add a new line if (line_end >= conf.size()) { cvm::error("Parse error: reached the end while " @@ -652,8 +680,6 @@ bool colvarparse::key_lookup(std::string const &conf, line+"\".\n", INPUT_ERROR); return false; } - size_t const old_end = line.size(); - // data_end_absolute += old_end+1; line_begin = line_end; nl = conf.find('\n', line_begin+1); @@ -663,36 +689,35 @@ bool colvarparse::key_lookup(std::string const &conf, line_end = nl; line.append(conf, line_begin, (line_end-line_begin)); - brace = line.find_first_of("{}", old_end); + if (cvm::debug()) { + cvm::log("Added a new line, config is now \""+line+"\".\n"); + } } - if (line[brace] == '{') brace_count++; - if (line[brace] == '}') brace_count--; + if (brace_count < 0) { + cvm::error("Error: found closing brace without opening brace.\n", INPUT_ERROR); + } } - // set data_begin after the opening brace - data_begin = line.find_first_of('{', data_begin) + 1; + // strip the leading and trailing braces + data_begin = line.find_first_of('{') + 1; data_begin = line.find_first_not_of(white_space, data_begin); - // set data_end before the closing brace - data_end = brace; - data_end = line.find_last_not_of(white_space+"}", - data_end) + 1; - // data_end_absolute = line_end; - if (data_end > line.size()) - data_end = line.size(); + data_end = line.find_last_of('}', line.size()) - 1; + data_end = line.find_last_not_of(white_space, + data_end) + 1; } data.append(line, data_begin, (data_end-data_begin)); + if (cvm::debug()) { + cvm::log("Keyword value = \""+data+"\".\n"); + } + if (data.size() && save_delimiters) { data_begin_pos.push_back(conf.find(data, pos+key.size())); data_end_pos.push_back(data_begin_pos.back()+data.size()); - // std::cerr << "key = " << key << ", data = \"" - // << data << "\", data_begin, data_end = " - // << data_begin_pos.back() << ", " << data_end_pos.back() - // << "\n"; } } diff --git a/lib/colvars/colvarparse.h b/lib/colvars/colvarparse.h index 9bce5412ed..892f1632e1 100644 --- a/lib/colvars/colvarparse.h +++ b/lib/colvars/colvarparse.h @@ -180,7 +180,6 @@ public: bool &value, bool const &def_value = false, Parse_Mode const parse_mode = parse_normal); - bool get_keyval(std::string const &conf, char const *key, std::vector<int> &values, diff --git a/lib/colvars/colvarproxy.h b/lib/colvars/colvarproxy.h index 0d29a7297d..bd5ee3da47 100644 --- a/lib/colvars/colvarproxy.h +++ b/lib/colvars/colvarproxy.h @@ -69,12 +69,12 @@ public: virtual cvm::real rand_gaussian(void) = 0; /// \brief Get the current frame number - // Negative return values indicate error - virtual int frame() { return COLVARS_NOT_IMPLEMENTED; } + // Returns error code + virtual int get_frame(long int&) { return COLVARS_NOT_IMPLEMENTED; } - /// \brief Set the current frame number - // return frame number on success, COLVARS_NO_SUCH_FRAME otherwise - virtual int frame(int) { return COLVARS_NOT_IMPLEMENTED; } + /// \brief Set the current frame number (as well as colvarmodule::it) + // Returns error code + virtual int set_frame(long int) { return COLVARS_NOT_IMPLEMENTED; } /// \brief Prefix to be used for input files (restarts, not /// configuration) @@ -295,11 +295,11 @@ public: /// Pass restraint energy value for current timestep to MD engine virtual void add_energy(cvm::real energy) = 0; - /// Tell the proxy whether system forces are needed (may not always be available) - virtual void request_system_force(bool yesno) + /// Tell the proxy whether total forces are needed (may not always be available) + virtual void request_total_force(bool yesno) { if (yesno == true) - cvm::error("Error: system forces are currently not implemented.\n", + cvm::error("Error: total forces are currently not implemented.\n", COLVARS_NOT_IMPLEMENTED); } @@ -354,8 +354,6 @@ protected: std::vector<cvm::rvector> atoms_positions; /// \brief Most recent total forces on each atom std::vector<cvm::rvector> atoms_total_forces; - /// \brief Most recent forces applied by external potentials onto each atom - std::vector<cvm::rvector> atoms_applied_forces; /// \brief Forces applied from colvars, to be communicated to the MD integrator std::vector<cvm::rvector> atoms_new_colvar_forces; @@ -368,7 +366,6 @@ protected: atoms_charges.push_back(0.0); atoms_positions.push_back(cvm::rvector(0.0, 0.0, 0.0)); atoms_total_forces.push_back(cvm::rvector(0.0, 0.0, 0.0)); - atoms_applied_forces.push_back(cvm::rvector(0.0, 0.0, 0.0)); atoms_new_colvar_forces.push_back(cvm::rvector(0.0, 0.0, 0.0)); return (atoms_ids.size() - 1); } @@ -439,10 +436,10 @@ public: return atoms_positions[index]; } - /// Read the current total system force of the given atom - inline cvm::rvector get_atom_system_force(int index) const + /// Read the current total force of the given atom + inline cvm::rvector get_atom_total_force(int index) const { - return atoms_total_forces[index] - atoms_applied_forces[index]; + return atoms_total_forces[index]; } /// Request that this force is applied to the given atom @@ -465,7 +462,6 @@ public: inline std::vector<cvm::real> *modify_atom_charges() { return &atoms_charges; } inline std::vector<cvm::rvector> *modify_atom_positions() { return &atoms_positions; } inline std::vector<cvm::rvector> *modify_atom_total_forces() { return &atoms_total_forces; } - inline std::vector<cvm::rvector> *modify_atom_applied_forces() { return &atoms_applied_forces; } inline std::vector<cvm::rvector> *modify_atom_new_colvar_forces() { return &atoms_new_colvar_forces; } /// \brief Read atom identifiers from a file \param filename name of @@ -513,8 +509,6 @@ protected: std::vector<cvm::rvector> atom_groups_coms; /// \brief Most recently updated total forces on the com of each group std::vector<cvm::rvector> atom_groups_total_forces; - /// \brief Most recent forces applied by external potentials onto each group - std::vector<cvm::rvector> atom_groups_applied_forces; /// \brief Forces applied from colvars, to be communicated to the MD integrator std::vector<cvm::rvector> atom_groups_new_colvar_forces; @@ -538,7 +532,6 @@ public: atom_groups_charges.push_back(0.0); atom_groups_coms.push_back(cvm::rvector(0.0, 0.0, 0.0)); atom_groups_total_forces.push_back(cvm::rvector(0.0, 0.0, 0.0)); - atom_groups_applied_forces.push_back(cvm::rvector(0.0, 0.0, 0.0)); atom_groups_new_colvar_forces.push_back(cvm::rvector(0.0, 0.0, 0.0)); return (atom_groups_ids.size() - 1); } @@ -592,10 +585,10 @@ public: return atom_groups_coms[index]; } - /// Read the current total system force of the given atom group - inline cvm::rvector get_atom_group_system_force(int index) const + /// Read the current total force of the given atom group + inline cvm::rvector get_atom_group_total_force(int index) const { - return atom_groups_total_forces[index] - atom_groups_applied_forces[index]; + return atom_groups_total_forces[index]; } /// Request that this force is applied to the given atom group diff --git a/lib/colvars/colvarscript.cpp b/lib/colvars/colvarscript.cpp index 091162fc18..dc3619fe5e 100644 --- a/lib/colvars/colvarscript.cpp +++ b/lib/colvars/colvarscript.cpp @@ -55,14 +55,14 @@ int colvarscript::run(int argc, char const *argv[]) { if (cmd == "delete") { // Note: the delete bit may be ignored by some backends // it is mostly useful in VMD - colvars->set_error_bit(DELETE_COLVARS); + colvars->set_error_bits(DELETE_COLVARS); return COLVARS_OK; } if (cmd == "update") { - cvm::combine_errors(error_code, proxy->update_input()); - cvm::combine_errors(error_code, colvars->calc()); - cvm::combine_errors(error_code, proxy->update_output()); + error_code |= proxy->update_input(); + error_code |= colvars->calc(); + error_code |= proxy->update_output(); if (error_code) { result += "Error updating the colvars module.\n"; } @@ -142,8 +142,8 @@ int colvarscript::run(int argc, char const *argv[]) { } proxy->output_prefix_str = argv[2]; int error = 0; - cvm::combine_errors(error, colvars->setup_output()); - cvm::combine_errors(error, colvars->write_output_files()); + error |= colvars->setup_output(); + error |= colvars->write_output_files(); return error ? COLVARSCRIPT_ERROR : COLVARS_OK; } @@ -163,8 +163,9 @@ int colvarscript::run(int argc, char const *argv[]) { if (cmd == "frame") { if (argc == 2) { - int f = proxy->frame(); - if (f >= 0) { + long int f; + int error = proxy->get_frame(f); + if (error == COLVARS_OK) { result = cvm::to_str(f); return COLVARS_OK; } else { @@ -173,10 +174,9 @@ int colvarscript::run(int argc, char const *argv[]) { } } else if (argc == 3) { // Failure of this function does not trigger an error, but - // returns the plain result to let scripts detect available frames - long int f = proxy->frame(strtol(argv[2], NULL, 10)); - colvars->it = proxy->frame(); - result = cvm::to_str(f); + // returns nonzero, to let scripts detect available frames + int error = proxy->set_frame(strtol(argv[2], NULL, 10)); + result = cvm::to_str(error == COLVARS_OK ? 0 : -1); return COLVARS_OK; } else { result = "Wrong arguments to command \"frame\"\n" + help_string(); @@ -248,7 +248,7 @@ int colvarscript::proc_colvar(int argc, char const *argv[]) { } if (subcmd == "getsystemforce") { - result = (cv->system_force()).to_simple_string(); + result = (cv->total_force()).to_simple_string(); return COLVARS_OK; } @@ -336,6 +336,11 @@ int colvarscript::proc_bias(int argc, char const *argv[]) { return COLVARS_OK; } + if (subcmd == "state") { + b->print_state(); + return COLVARS_OK; + } + // Subcommands for MW ABF if (subcmd == "bin") { int r = b->current_bin(); @@ -414,7 +419,8 @@ Input and output:\n\ printframe -- return a summary of the current frame\n\ printframelabels -- return labels to annotate printframe's output\n"; - if (proxy->frame() != COLVARS_NOT_IMPLEMENTED) { + long int tmp; + if (proxy->get_frame(tmp) != COLVARS_NOT_IMPLEMENTED) { buf += "\ frame -- return current frame number\n\ frame <new_frame> -- set frame number\n"; diff --git a/lib/gpu/Nvidia.makefile b/lib/gpu/Nvidia.makefile index 18efbda55a..e02849cfed 100644 --- a/lib/gpu/Nvidia.makefile +++ b/lib/gpu/Nvidia.makefile @@ -789,10 +789,10 @@ $(GPU_LIB): $(OBJS) $(CUDPP) @cp $(EXTRAMAKE) Makefile.lammps clean: - rm -f $(EXECS) $(GPU_LIB) $(OBJS) $(CUDPP) $(CBNS) *.linkinfo + -rm -f $(EXECS) $(GPU_LIB) $(OBJS) $(CUDPP) $(CBNS) *.linkinfo veryclean: clean - rm -rf *~ *.linkinfo + -rm -rf *~ *.linkinfo cleanlib: - rm -f $(EXECS) $(GPU_LIB) $(OBJS) $(CBNS) *.linkinfo + -rm -f $(EXECS) $(GPU_LIB) $(OBJS) $(CBNS) *.linkinfo diff --git a/lib/gpu/Opencl.makefile b/lib/gpu/Opencl.makefile index b33a392242..7ef1dfba0c 100644 --- a/lib/gpu/Opencl.makefile +++ b/lib/gpu/Opencl.makefile @@ -577,8 +577,8 @@ $(OCL_LIB): $(OBJS) $(PTXS) opencl: $(OCL_EXECS) clean: - rm -rf $(EXECS) $(OCL_EXECS) $(OCL_LIB) $(OBJS) $(KERS) *.linkinfo + -rm -rf $(EXECS) $(OCL_EXECS) $(OCL_LIB) $(OBJS) $(KERS) *.linkinfo veryclean: clean - rm -rf *~ *.linkinfo + -rm -rf *~ *.linkinfo diff --git a/lib/kokkos/Makefile.kokkos b/lib/kokkos/Makefile.kokkos index c9b6cc464d..73a332ee11 100644 --- a/lib/kokkos/Makefile.kokkos +++ b/lib/kokkos/Makefile.kokkos @@ -471,7 +471,7 @@ KOKKOS_OBJ_LINK = $(notdir $(KOKKOS_OBJ)) include $(KOKKOS_PATH)/Makefile.targets kokkos-clean: - rm -f $(KOKKOS_OBJ_LINK) KokkosCore_config.h KokkosCore_config.tmp libkokkos.a + -rm -f $(KOKKOS_OBJ_LINK) KokkosCore_config.h KokkosCore_config.tmp libkokkos.a libkokkos.a: $(KOKKOS_OBJ_LINK) $(KOKKOS_SRC) $(KOKKOS_HEADERS) ar cr libkokkos.a $(KOKKOS_OBJ_LINK) diff --git a/lib/linalg/Makefile.mingw32-cross-mpi b/lib/linalg/Makefile.mingw32-cross-mpi index cc2a76111a..1e35c5b461 100644 --- a/lib/linalg/Makefile.mingw32-cross-mpi +++ b/lib/linalg/Makefile.mingw32-cross-mpi @@ -4,10 +4,10 @@ SHELL=/bin/sh all: $(MAKE) $(MFLAGS) mingw32-cross - rm -f Obj_mingw32-mpi + -rm -f Obj_mingw32-mpi ln -s Obj_mingw32 Obj_mingw32-mpi clean: $(MAKE) $(MFLAGS) clean-mingw32-cross - rm -f Obj_mingw32-mpi + -rm -f Obj_mingw32-mpi diff --git a/lib/linalg/Makefile.mingw64-cross-mpi b/lib/linalg/Makefile.mingw64-cross-mpi index 1ec1a0995b..ca6f4a6d43 100644 --- a/lib/linalg/Makefile.mingw64-cross-mpi +++ b/lib/linalg/Makefile.mingw64-cross-mpi @@ -4,10 +4,10 @@ SHELL=/bin/sh all: $(MAKE) $(MFLAGS) mingw64-cross - rm -f Obj_mingw64-mpi + -rm -f Obj_mingw64-mpi ln -s Obj_mingw64 Obj_mingw64-mpi clean: $(MAKE) $(MFLAGS) clean-mingw64-cross - rm -f Obj_mingw64-mpi + -rm -f Obj_mingw64-mpi diff --git a/lib/meam/Makefile.mingw32-cross-mpi b/lib/meam/Makefile.mingw32-cross-mpi index cc2a76111a..1e35c5b461 100644 --- a/lib/meam/Makefile.mingw32-cross-mpi +++ b/lib/meam/Makefile.mingw32-cross-mpi @@ -4,10 +4,10 @@ SHELL=/bin/sh all: $(MAKE) $(MFLAGS) mingw32-cross - rm -f Obj_mingw32-mpi + -rm -f Obj_mingw32-mpi ln -s Obj_mingw32 Obj_mingw32-mpi clean: $(MAKE) $(MFLAGS) clean-mingw32-cross - rm -f Obj_mingw32-mpi + -rm -f Obj_mingw32-mpi diff --git a/lib/meam/Makefile.mingw64-cross-mpi b/lib/meam/Makefile.mingw64-cross-mpi index 1ec1a0995b..ca6f4a6d43 100644 --- a/lib/meam/Makefile.mingw64-cross-mpi +++ b/lib/meam/Makefile.mingw64-cross-mpi @@ -4,10 +4,10 @@ SHELL=/bin/sh all: $(MAKE) $(MFLAGS) mingw64-cross - rm -f Obj_mingw64-mpi + -rm -f Obj_mingw64-mpi ln -s Obj_mingw64 Obj_mingw64-mpi clean: $(MAKE) $(MFLAGS) clean-mingw64-cross - rm -f Obj_mingw64-mpi + -rm -f Obj_mingw64-mpi diff --git a/lib/poems/Makefile.mingw32-cross-mpi b/lib/poems/Makefile.mingw32-cross-mpi index cc2a76111a..1e35c5b461 100644 --- a/lib/poems/Makefile.mingw32-cross-mpi +++ b/lib/poems/Makefile.mingw32-cross-mpi @@ -4,10 +4,10 @@ SHELL=/bin/sh all: $(MAKE) $(MFLAGS) mingw32-cross - rm -f Obj_mingw32-mpi + -rm -f Obj_mingw32-mpi ln -s Obj_mingw32 Obj_mingw32-mpi clean: $(MAKE) $(MFLAGS) clean-mingw32-cross - rm -f Obj_mingw32-mpi + -rm -f Obj_mingw32-mpi diff --git a/lib/poems/Makefile.mingw64-cross-mpi b/lib/poems/Makefile.mingw64-cross-mpi index 1ec1a0995b..ca6f4a6d43 100644 --- a/lib/poems/Makefile.mingw64-cross-mpi +++ b/lib/poems/Makefile.mingw64-cross-mpi @@ -4,10 +4,10 @@ SHELL=/bin/sh all: $(MAKE) $(MFLAGS) mingw64-cross - rm -f Obj_mingw64-mpi + -rm -f Obj_mingw64-mpi ln -s Obj_mingw64 Obj_mingw64-mpi clean: $(MAKE) $(MFLAGS) clean-mingw64-cross - rm -f Obj_mingw64-mpi + -rm -f Obj_mingw64-mpi diff --git a/lib/qmmm/Makefile.gfortran b/lib/qmmm/Makefile.gfortran index 73fb35cbfd..717922b4b6 100644 --- a/lib/qmmm/Makefile.gfortran +++ b/lib/qmmm/Makefile.gfortran @@ -58,7 +58,7 @@ tldeps: $(MAKE) -C ../../src $(MFLAGS) mode=lib $(LAMMPSCFG) clean : - - /bin/rm -f *.x *.o *.a *~ *.F90 *.d *.mod *.i *.L + -rm -f *.x *.o *.a *~ *.F90 *.d *.mod *.i *.L # explicit dependencies diff --git a/lib/qmmm/Makefile.ifort b/lib/qmmm/Makefile.ifort index fef9653a80..d03e67b8a0 100644 --- a/lib/qmmm/Makefile.ifort +++ b/lib/qmmm/Makefile.ifort @@ -58,7 +58,7 @@ tldeps: $(MAKE) -C ../../src $(MFLAGS) mode=lib $(LAMMPSCFG) clean : - - /bin/rm -f *.x *.o *.a *~ *.F90 *.d *.mod *.i *.L + -rm -f *.x *.o *.a *~ *.F90 *.d *.mod *.i *.L # explicit dependencies diff --git a/src/KIM/pair_kim.h b/src/KIM/pair_kim.h index 6e2fd2e342..843fb6db2a 100644 --- a/src/KIM/pair_kim.h +++ b/src/KIM/pair_kim.h @@ -197,19 +197,19 @@ E: Unknown unit_style Self-explanatory. Check the input script or data file. -W: KIM Model does not provide `energy'; Potential energy will be zero +W: KIM Model does not provide 'energy'; Potential energy will be zero Self-explanatory. -W: KIM Model does not provide `forces'; Forces will be zero +W: KIM Model does not provide 'forces'; Forces will be zero Self-explanatory. -W: KIM Model does not provide `particleEnergy'; energy per atom will be zero +W: KIM Model does not provide 'particleEnergy'; energy per atom will be zero Self-explanatory. -W: KIM Model does not provide `particleVirial'; virial per atom will be zero +W: KIM Model does not provide 'particleVirial'; virial per atom will be zero Self-explanatory. diff --git a/src/USER-COLVARS/colvarproxy_lammps.cpp b/src/USER-COLVARS/colvarproxy_lammps.cpp index 71786f060e..f02fd23951 100644 --- a/src/USER-COLVARS/colvarproxy_lammps.cpp +++ b/src/USER-COLVARS/colvarproxy_lammps.cpp @@ -73,7 +73,7 @@ colvarproxy_lammps::colvarproxy_lammps(LAMMPS_NS::LAMMPS *lmp, _random = new LAMMPS_NS::RanPark(lmp,seed); first_timestep=true; - system_force_requested=false; + total_force_requested=false; previous_step=-1; t_target=temp; do_exit=false; @@ -154,7 +154,6 @@ void colvarproxy_lammps::init(const char *conf_file) log("atoms_ids = "+cvm::to_str(atoms_ids)+"\n"); log("atoms_ncopies = "+cvm::to_str(atoms_ncopies)+"\n"); log("atoms_positions = "+cvm::to_str(atoms_positions)+"\n"); - log("atoms_applied_forces = "+cvm::to_str(atoms_applied_forces)+"\n"); log(cvm::line_marker); log("Info: done initializing the colvars proxy object.\n"); } @@ -199,13 +198,8 @@ double colvarproxy_lammps::compute() "Updating internal data.\n"); } - // backup applied forces if necessary to calculate system forces - if (system_force_requested) { - atoms_applied_forces = atoms_new_colvar_forces; - } - // zero the forces on the atoms, so that they can be accumulated by the colvars - for (size_t i = 0; i < atoms_applied_forces.size(); i++) { + for (size_t i = 0; i < atoms_new_colvar_forces.size(); i++) { atoms_new_colvar_forces[i].reset(); } diff --git a/src/USER-COLVARS/colvarproxy_lammps.h b/src/USER-COLVARS/colvarproxy_lammps.h index 0ce7e29a0c..925fefac04 100644 --- a/src/USER-COLVARS/colvarproxy_lammps.h +++ b/src/USER-COLVARS/colvarproxy_lammps.h @@ -55,7 +55,7 @@ class colvarproxy_lammps : public colvarproxy { int previous_step; bool first_timestep; - bool system_force_requested; + bool total_force_requested; bool do_exit; // std::vector<int> colvars_atoms; @@ -86,7 +86,7 @@ class colvarproxy_lammps : public colvarproxy { // methods for lammps to move data or trigger actions in the proxy public: void set_temperature(double t) { t_target = t; }; - bool need_system_forces() const { return system_force_requested; }; + bool need_total_forces() const { return total_force_requested; }; bool want_exit() const { return do_exit; }; // perform colvars computation. returns biasing energy @@ -109,7 +109,7 @@ class colvarproxy_lammps : public colvarproxy { inline size_t restart_frequency() { return restart_every; }; void add_energy(cvm::real energy) { bias_energy += energy; }; - void request_system_force(bool yesno) { system_force_requested = yesno; }; + void request_total_force(bool yesno) { total_force_requested = yesno; }; void log(std::string const &message); void error(std::string const &message); diff --git a/src/USER-COLVARS/fix_colvars.cpp b/src/USER-COLVARS/fix_colvars.cpp index 3e86cd13a4..4f85c882d4 100644 --- a/src/USER-COLVARS/fix_colvars.cpp +++ b/src/USER-COLVARS/fix_colvars.cpp @@ -766,7 +766,7 @@ void FixColvars::post_force(int vflag) // call our workhorse and retrieve additional information. if (me == 0) { energy = proxy->compute(); - store_forces = proxy->need_system_forces(); + store_forces = proxy->need_total_forces(); } //////////////////////////////////////////////////////////////////////// diff --git a/src/atom.cpp b/src/atom.cpp index 86b1dea3d6..2db73d4325 100644 --- a/src/atom.cpp +++ b/src/atom.cpp @@ -210,6 +210,15 @@ Atom::Atom(LAMMPS *lmp) : Pointers(lmp) datamask = ALL_MASK; datamask_ext = ALL_MASK; + + avec_map = new AtomVecCreatorMap(); + +#define ATOM_CLASS +#define AtomStyle(key,Class) \ + (*avec_map)[#key] = &avec_creator<Class>; +#include "style_atom.h" +#undef AtomStyle +#undef ATOM_CLASS } /* ---------------------------------------------------------------------- */ @@ -218,6 +227,7 @@ Atom::~Atom() { delete [] atom_style; delete avec; + delete avec_map; delete [] firstgroupname; memory->destroy(binhead); @@ -445,46 +455,43 @@ AtomVec *Atom::new_avec(const char *style, int trysuffix, int &sflag) sflag = 1; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix); - - if (0) return NULL; - -#define ATOM_CLASS -#define AtomStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_atom.h" -#undef AtomStyle -#undef ATOM_CLASS + if (avec_map->find(estyle) != avec_map->end()) { + AtomVecCreator avec_creator = (*avec_map)[estyle]; + return avec_creator(lmp); + } } if (lmp->suffix2) { sflag = 2; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix2); - - if (0) return NULL; - -#define ATOM_CLASS -#define AtomStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_atom.h" -#undef AtomStyle -#undef ATOM_CLASS + if (avec_map->find(estyle) != avec_map->end()) { + AtomVecCreator avec_creator = (*avec_map)[estyle]; + return avec_creator(lmp); + } } } sflag = 0; - if (0) return NULL; - -#define ATOM_CLASS -#define AtomStyle(key,Class) \ - else if (strcmp(style,#key) == 0) return new Class(lmp); -#include "style_atom.h" -#undef ATOM_CLASS + if (avec_map->find(style) != avec_map->end()) { + AtomVecCreator avec_creator = (*avec_map)[style]; + return avec_creator(lmp); + } - else error->all(FLERR,"Unknown atom style"); + error->all(FLERR,"Unknown atom style"); return NULL; } +/* ---------------------------------------------------------------------- + one instance per AtomVec style in style_atom.h +------------------------------------------------------------------------- */ + +template <typename T> +AtomVec *Atom::avec_creator(LAMMPS *lmp) +{ + return new T(lmp); +} + /* ---------------------------------------------------------------------- */ void Atom::init() diff --git a/src/atom.h b/src/atom.h index 6d0b881b75..31fd355f9a 100644 --- a/src/atom.h +++ b/src/atom.h @@ -15,6 +15,8 @@ #define LMP_ATOM_H #include "pointers.h" +#include <map> +#include <string> namespace LAMMPS_NS { @@ -197,6 +199,12 @@ class Atom : protected Pointers { int *sametag; // sametag[I] = next atom with same ID, -1 if no more + // AtomVec factory types and map + + typedef AtomVec *(*AtomVecCreator)(LAMMPS *); + typedef std::map<std::string,AtomVecCreator> AtomVecCreatorMap; + AtomVecCreatorMap *avec_map; + // functions Atom(class LAMMPS *); @@ -322,6 +330,9 @@ class Atom : protected Pointers { void setup_sort_bins(); int next_prime(int); + + private: + template <typename T> static AtomVec *avec_creator(LAMMPS *); }; } diff --git a/src/domain.cpp b/src/domain.cpp index 0590b956dd..2c3f61401d 100644 --- a/src/domain.cpp +++ b/src/domain.cpp @@ -105,6 +105,15 @@ Domain::Domain(LAMMPS *lmp) : Pointers(lmp) regions = NULL; copymode = 0; + + region_map = new RegionCreatorMap(); + +#define REGION_CLASS +#define RegionStyle(key,Class) \ + (*region_map)[#key] = ®ion_creator<Class>; +#include "style_region.h" +#undef RegionStyle +#undef REGION_CLASS } /* ---------------------------------------------------------------------- */ @@ -116,6 +125,8 @@ Domain::~Domain() delete lattice; for (int i = 0; i < nregion; i++) delete regions[i]; memory->sfree(regions); + + delete region_map; } /* ---------------------------------------------------------------------- */ @@ -1524,51 +1535,33 @@ void Domain::add_region(int narg, char **arg) if (lmp->suffix) { char estyle[256]; sprintf(estyle,"%s/%s",arg[1],lmp->suffix); - - if (0) return; - -#define REGION_CLASS -#define RegionStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) { \ - regions[nregion] = new Class(lmp,narg,arg); \ - regions[nregion]->init(); \ - nregion++; \ - return; \ + if (region_map->find(estyle) != region_map->end()) { + RegionCreator region_creator = (*region_map)[estyle]; + regions[nregion] = region_creator(lmp, narg, arg); + regions[nregion]->init(); + nregion++; + return; } -#include "style_region.h" -#undef RegionStyle -#undef REGION_CLASS } if (lmp->suffix2) { char estyle[256]; sprintf(estyle,"%s/%s",arg[1],lmp->suffix2); - - if (0) return; - -#define REGION_CLASS -#define RegionStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) { \ - regions[nregion] = new Class(lmp,narg,arg); \ - regions[nregion]->init(); \ - nregion++; \ - return; \ + if (region_map->find(estyle) != region_map->end()) { + RegionCreator region_creator = (*region_map)[estyle]; + regions[nregion] = region_creator(lmp, narg, arg); + regions[nregion]->init(); + nregion++; + return; } -#include "style_region.h" -#undef RegionStyle -#undef REGION_CLASS } } if (strcmp(arg[1],"none") == 0) error->all(FLERR,"Unknown region style"); - -#define REGION_CLASS -#define RegionStyle(key,Class) \ - else if (strcmp(arg[1],#key) == 0) \ - regions[nregion] = new Class(lmp,narg,arg); -#include "style_region.h" -#undef REGION_CLASS - + if (region_map->find(arg[1]) != region_map->end()) { + RegionCreator region_creator = (*region_map)[arg[1]]; + regions[nregion] = region_creator(lmp, narg, arg); + } else error->all(FLERR,"Unknown region style"); // initialize any region variables via init() @@ -1578,6 +1571,16 @@ void Domain::add_region(int narg, char **arg) nregion++; } +/* ---------------------------------------------------------------------- + one instance per region style in style_region.h +------------------------------------------------------------------------- */ + +template <typename T> +Region *Domain::region_creator(LAMMPS *lmp, int narg, char ** arg) +{ + return new T(lmp, narg, arg); +} + /* ---------------------------------------------------------------------- delete a region ------------------------------------------------------------------------- */ diff --git a/src/domain.h b/src/domain.h index 8654b59168..ef3de42071 100644 --- a/src/domain.h +++ b/src/domain.h @@ -16,6 +16,8 @@ #include <math.h> #include "pointers.h" +#include <map> +#include <string> namespace LAMMPS_NS { @@ -92,6 +94,10 @@ class Domain : protected Pointers { int copymode; + typedef Region *(*RegionCreator)(LAMMPS *,int,char**); + typedef std::map<std::string,RegionCreator> RegionCreatorMap; + RegionCreatorMap *region_map; + Domain(class LAMMPS *); virtual ~Domain(); virtual void init(); @@ -151,6 +157,9 @@ class Domain : protected Pointers { protected: double small[3]; // fractions of box lengths + + private: + template <typename T> static Region *region_creator(LAMMPS *,int,char**); }; } diff --git a/src/force.cpp b/src/force.cpp index 37ac4f4ee6..dbc71b49a9 100644 --- a/src/force.cpp +++ b/src/force.cpp @@ -78,7 +78,7 @@ Force::Force(LAMMPS *lmp) : Pointers(lmp) // fill pair map with pair styles listed in style_pair.h - pair_map = new std::map<std::string,PairCreator>(); + pair_map = new PairCreatorMap(); #define PAIR_CLASS #define PairStyle(key,Class) \ @@ -86,6 +86,51 @@ Force::Force(LAMMPS *lmp) : Pointers(lmp) #include "style_pair.h" #undef PairStyle #undef PAIR_CLASS + + bond_map = new BondCreatorMap(); + +#define BOND_CLASS +#define BondStyle(key,Class) \ + (*bond_map)[#key] = &bond_creator<Class>; +#include "style_bond.h" +#undef BondStyle +#undef BOND_CLASS + + angle_map = new AngleCreatorMap(); + +#define ANGLE_CLASS +#define AngleStyle(key,Class) \ + (*angle_map)[#key] = &angle_creator<Class>; +#include "style_angle.h" +#undef AngleStyle +#undef ANGLE_CLASS + + dihedral_map = new DihedralCreatorMap(); + +#define DIHEDRAL_CLASS +#define DihedralStyle(key,Class) \ + (*dihedral_map)[#key] = &dihedral_creator<Class>; +#include "style_dihedral.h" +#undef DihedralStyle +#undef DIHEDRAL_CLASS + + improper_map = new ImproperCreatorMap(); + +#define IMPROPER_CLASS +#define ImproperStyle(key,Class) \ + (*improper_map)[#key] = &improper_creator<Class>; +#include "style_improper.h" +#undef ImproperStyle +#undef IMPROPER_CLASS + + kspace_map = new KSpaceCreatorMap(); + +#define KSPACE_CLASS +#define KSpaceStyle(key,Class) \ + (*kspace_map)[#key] = &kspace_creator<Class>; +#include "style_kspace.h" +#undef KSpaceStyle +#undef KSPACE_CLASS } /* ---------------------------------------------------------------------- */ @@ -114,6 +159,11 @@ Force::~Force() kspace = NULL; delete pair_map; + delete bond_map; + delete angle_map; + delete dihedral_map; + delete improper_map; + delete kspace_map; } /* ---------------------------------------------------------------------- */ @@ -288,46 +338,44 @@ Bond *Force::new_bond(const char *style, int trysuffix, int &sflag) sflag = 1; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix); - - if (0) return NULL; - -#define BOND_CLASS -#define BondStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_bond.h" -#undef BondStyle -#undef BOND_CLASS + if (bond_map->find(estyle) != bond_map->end()) { + BondCreator bond_creator = (*bond_map)[estyle]; + return bond_creator(lmp); + } } if (lmp->suffix2) { sflag = 2; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix2); - - if (0) return NULL; - -#define BOND_CLASS -#define BondStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_bond.h" -#undef BondStyle -#undef BOND_CLASS + if (bond_map->find(estyle) != bond_map->end()) { + BondCreator bond_creator = (*bond_map)[estyle]; + return bond_creator(lmp); + } } } sflag = 0; if (strcmp(style,"none") == 0) return NULL; + if (bond_map->find(style) != bond_map->end()) { + BondCreator bond_creator = (*bond_map)[style]; + return bond_creator(lmp); + } -#define BOND_CLASS -#define BondStyle(key,Class) \ - else if (strcmp(style,#key) == 0) return new Class(lmp); -#include "style_bond.h" -#undef BOND_CLASS - - else error->all(FLERR,"Unknown bond style"); + error->all(FLERR,"Unknown bond style"); return NULL; } +/* ---------------------------------------------------------------------- + one instance per bond style in style_bond.h +------------------------------------------------------------------------- */ + +template <typename T> +Bond *Force::bond_creator(LAMMPS *lmp) +{ + return new T(lmp); +} + /* ---------------------------------------------------------------------- return ptr to current bond class or hybrid sub-class if matches style ------------------------------------------------------------------------- */ @@ -368,46 +416,45 @@ Angle *Force::new_angle(const char *style, int trysuffix, int &sflag) sflag = 1; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix); - - if (0) return NULL; - -#define ANGLE_CLASS -#define AngleStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_angle.h" -#undef AngleStyle -#undef ANGLE_CLASS + if (angle_map->find(estyle) != angle_map->end()) { + AngleCreator angle_creator = (*angle_map)[estyle]; + return angle_creator(lmp); + } } if (lmp->suffix2) { sflag = 2; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix); - - if (0) return NULL; - -#define ANGLE_CLASS -#define AngleStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_angle.h" -#undef AngleStyle -#undef ANGLE_CLASS + if (angle_map->find(estyle) != angle_map->end()) { + AngleCreator angle_creator = (*angle_map)[estyle]; + return angle_creator(lmp); + } } } sflag = 0; if (strcmp(style,"none") == 0) return NULL; + if (angle_map->find(style) != angle_map->end()) { + AngleCreator angle_creator = (*angle_map)[style]; + return angle_creator(lmp); + } -#define ANGLE_CLASS -#define AngleStyle(key,Class) \ - else if (strcmp(style,#key) == 0) return new Class(lmp); -#include "style_angle.h" -#undef ANGLE_CLASS - - else error->all(FLERR,"Unknown angle style"); + error->all(FLERR,"Unknown angle style"); return NULL; } +/* ---------------------------------------------------------------------- + one instance per angle style in style_angle.h +------------------------------------------------------------------------- */ + +template <typename T> +Angle *Force::angle_creator(LAMMPS *lmp) +{ + return new T(lmp); +} + + /* ---------------------------------------------------------------------- return ptr to current angle class or hybrid sub-class if matches style ------------------------------------------------------------------------- */ @@ -448,47 +495,44 @@ Dihedral *Force::new_dihedral(const char *style, int trysuffix, int &sflag) sflag = 1; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix); - - if (0) return NULL; - -#define DIHEDRAL_CLASS -#define DihedralStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_dihedral.h" -#undef DihedralStyle -#undef DIHEDRAL_CLASS + if (dihedral_map->find(estyle) != dihedral_map->end()) { + DihedralCreator dihedral_creator = (*dihedral_map)[estyle]; + return dihedral_creator(lmp); + } } if (lmp->suffix2) { sflag = 2; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix2); - - if (0) return NULL; - -#define DIHEDRAL_CLASS -#define DihedralStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_dihedral.h" -#undef DihedralStyle -#undef DIHEDRAL_CLASS + if (dihedral_map->find(estyle) != dihedral_map->end()) { + DihedralCreator dihedral_creator = (*dihedral_map)[estyle]; + return dihedral_creator(lmp); + } } } sflag = 0; if (strcmp(style,"none") == 0) return NULL; + if (dihedral_map->find(style) != dihedral_map->end()) { + DihedralCreator dihedral_creator = (*dihedral_map)[style]; + return dihedral_creator(lmp); + } -#define DIHEDRAL_CLASS -#define DihedralStyle(key,Class) \ - else if (strcmp(style,#key) == 0) return new Class(lmp); -#include "style_dihedral.h" -#undef DihedralStyle -#undef DIHEDRAL_CLASS - - else error->all(FLERR,"Unknown dihedral style"); + error->all(FLERR,"Unknown dihedral style"); return NULL; } +/* ---------------------------------------------------------------------- + one instance per dihedral style in style_dihedral.h +------------------------------------------------------------------------- */ + +template <typename T> +Dihedral *Force::dihedral_creator(LAMMPS *lmp) +{ + return new T(lmp); +} + /* ---------------------------------------------------------------------- return ptr to current angle class or hybrid sub-class if matches style ------------------------------------------------------------------------- */ @@ -529,46 +573,44 @@ Improper *Force::new_improper(const char *style, int trysuffix, int &sflag) sflag = 1; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix); - - if (0) return NULL; - -#define IMPROPER_CLASS -#define ImproperStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_improper.h" -#undef ImproperStyle -#undef IMPROPER_CLASS + if (improper_map->find(estyle) != improper_map->end()) { + ImproperCreator improper_creator = (*improper_map)[estyle]; + return improper_creator(lmp); + } } if (lmp->suffix2) { sflag = 2; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix2); - - if (0) return NULL; - -#define IMPROPER_CLASS -#define ImproperStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp); -#include "style_improper.h" -#undef ImproperStyle -#undef IMPROPER_CLASS + if (improper_map->find(estyle) != improper_map->end()) { + ImproperCreator improper_creator = (*improper_map)[estyle]; + return improper_creator(lmp); + } } } sflag = 0; if (strcmp(style,"none") == 0) return NULL; + if (improper_map->find(style) != improper_map->end()) { + ImproperCreator improper_creator = (*improper_map)[style]; + return improper_creator(lmp); + } -#define IMPROPER_CLASS -#define ImproperStyle(key,Class) \ - else if (strcmp(style,#key) == 0) return new Class(lmp); -#include "style_improper.h" -#undef IMPROPER_CLASS - - else error->all(FLERR,"Unknown improper style"); + error->all(FLERR,"Unknown improper style"); return NULL; } +/* ---------------------------------------------------------------------- + one instance per improper style in style_improper.h +------------------------------------------------------------------------- */ + +template <typename T> +Improper *Force::improper_creator(LAMMPS *lmp) +{ + return new T(lmp); +} + /* ---------------------------------------------------------------------- return ptr to current improper class or hybrid sub-class if matches style ------------------------------------------------------------------------- */ @@ -613,46 +655,44 @@ KSpace *Force::new_kspace(int narg, char **arg, int trysuffix, int &sflag) sflag = 1; char estyle[256]; sprintf(estyle,"%s/%s",arg[0],lmp->suffix); - - if (0) return NULL; - -#define KSPACE_CLASS -#define KSpaceStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp,narg-1,&arg[1]); -#include "style_kspace.h" -#undef KSpaceStyle -#undef KSPACE_CLASS + if (kspace_map->find(estyle) != kspace_map->end()) { + KSpaceCreator kspace_creator = (*kspace_map)[estyle]; + return kspace_creator(lmp, narg-1, &arg[1]); + } } if (lmp->suffix2) { sflag = 1; char estyle[256]; sprintf(estyle,"%s/%s",arg[0],lmp->suffix2); - - if (0) return NULL; - -#define KSPACE_CLASS -#define KSpaceStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) return new Class(lmp,narg-1,&arg[1]); -#include "style_kspace.h" -#undef KSpaceStyle -#undef KSPACE_CLASS + if (kspace_map->find(estyle) != kspace_map->end()) { + KSpaceCreator kspace_creator = (*kspace_map)[estyle]; + return kspace_creator(lmp, narg-1, &arg[1]); + } } } sflag = 0; if (strcmp(arg[0],"none") == 0) return NULL; + if (kspace_map->find(arg[0]) != kspace_map->end()) { + KSpaceCreator kspace_creator = (*kspace_map)[arg[0]]; + return kspace_creator(lmp, narg-1, &arg[1]); + } -#define KSPACE_CLASS -#define KSpaceStyle(key,Class) \ - else if (strcmp(arg[0],#key) == 0) return new Class(lmp,narg-1,&arg[1]); -#include "style_kspace.h" -#undef KSPACE_CLASS - - else error->all(FLERR,"Unknown kspace style"); + error->all(FLERR,"Unknown kspace style"); return NULL; } +/* ---------------------------------------------------------------------- + one instance per kspace style in style_kspace.h +------------------------------------------------------------------------- */ + +template <typename T> +KSpace *Force::kspace_creator(LAMMPS *lmp, int narg, char ** arg) +{ + return new T(lmp, narg, arg); +} + /* ---------------------------------------------------------------------- return ptr to Kspace class if matches word if exact, then style name must be exact match to word diff --git a/src/force.h b/src/force.h index 1873173a74..78788826a4 100644 --- a/src/force.h +++ b/src/force.h @@ -48,9 +48,6 @@ class Force : protected Pointers { class Pair *pair; char *pair_style; - typedef Pair *(*PairCreator)(LAMMPS *); - std::map<std::string,PairCreator> *pair_map; - class Bond *bond; char *bond_style; @@ -65,6 +62,28 @@ class Force : protected Pointers { class KSpace *kspace; char *kspace_style; + + typedef Pair *(*PairCreator)(LAMMPS *); + typedef Bond *(*BondCreator)(LAMMPS *); + typedef Angle *(*AngleCreator)(LAMMPS *); + typedef Dihedral *(*DihedralCreator)(LAMMPS *); + typedef Improper *(*ImproperCreator)(LAMMPS *); + typedef KSpace *(*KSpaceCreator)(LAMMPS *,int,char**); + + typedef std::map<std::string,PairCreator> PairCreatorMap; + typedef std::map<std::string,BondCreator> BondCreatorMap; + typedef std::map<std::string,AngleCreator> AngleCreatorMap; + typedef std::map<std::string,DihedralCreator> DihedralCreatorMap; + typedef std::map<std::string,ImproperCreator> ImproperCreatorMap; + typedef std::map<std::string,KSpaceCreator> KSpaceCreatorMap; + + PairCreatorMap *pair_map; + BondCreatorMap *bond_map; + AngleCreatorMap *angle_map; + DihedralCreatorMap *dihedral_map; + ImproperCreatorMap *improper_map; + KSpaceCreatorMap *kspace_map; + // index [0] is not used in these arrays double special_lj[4]; // 1-2, 1-3, 1-4 prefactors for LJ double special_coul[4]; // 1-2, 1-3, 1-4 prefactors for Coulombics @@ -121,6 +140,11 @@ class Force : protected Pointers { private: template <typename T> static Pair *pair_creator(LAMMPS *); + template <typename T> static Bond *bond_creator(LAMMPS *); + template <typename T> static Angle *angle_creator(LAMMPS *); + template <typename T> static Dihedral *dihedral_creator(LAMMPS *); + template <typename T> static Improper *improper_creator(LAMMPS *); + template <typename T> static KSpace *kspace_creator(LAMMPS *, int, char **); }; } diff --git a/src/info.cpp b/src/info.cpp index a791becf0e..175ea7c94f 100644 --- a/src/info.cpp +++ b/src/info.cpp @@ -1,4 +1,5 @@ /* ---------------------------------------------------------------------- + fputs LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator http://lammps.sandia.gov, Sandia National Laboratories Steve Plimpton, sjplimp@sandia.gov @@ -12,7 +13,8 @@ ------------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- - Contributing author: Axel Kohlmeyer (Temple U) + Contributing authors: Axel Kohlmeyer (Temple U), + Richard Berger (Temple U) ------------------------------------------------------------------------- */ #include <string.h> @@ -39,6 +41,9 @@ #include "error.h" #include <time.h> +#include <vector> +#include <string> +#include <algorithm> #ifdef _WIN32 #define PSAPI_VERSION=1 @@ -70,9 +75,29 @@ enum {COMPUTES=1<<0, VARIABLES=1<<7, SYSTEM=1<<8, COMM=1<<9, + ATOM_STYLES=1<<10, + INTEGRATE_STYLES=1<<11, + MINIMIZE_STYLES=1<<12, + PAIR_STYLES=1<<13, + BOND_STYLES=1<<14, + ANGLE_STYLES=1<<15, + DIHEDRAL_STYLES=1<<16, + IMPROPER_STYLES=1<<17, + KSPACE_STYLES=1<<18, + FIX_STYLES=1<<19, + COMPUTE_STYLES=1<<20, + REGION_STYLES=1<<21, + DUMP_STYLES=1<<22, + COMMAND_STYLES=1<<23, ALL=~0}; + +static const int STYLES = ATOM_STYLES | INTEGRATE_STYLES | MINIMIZE_STYLES | PAIR_STYLES | BOND_STYLES | \ + ANGLE_STYLES | DIHEDRAL_STYLES | IMPROPER_STYLES | KSPACE_STYLES | FIX_STYLES | \ + COMPUTE_STYLES | REGION_STYLES | DUMP_STYLES | COMMAND_STYLES; + } + static const char *varstyles[] = { "index", "loop", "world", "universe", "uloop", "string", "getenv", "file", "atomfile", "format", "equal", "atom", "python", "(unknown)"}; @@ -85,6 +110,9 @@ static const char *commlayout[] = { "uniform", "nonuniform", "irregular" }; static const char bstyles[] = "pfsm"; using namespace LAMMPS_NS; +using namespace std; + +static void print_columns(FILE* fp, vector<string> & styles); /* ---------------------------------------------------------------------- */ @@ -122,16 +150,16 @@ void Info::command(int narg, char **arg) if ((out != screen) && (out != logfile)) fclose(out); out = fopen(arg[idx+2],"w"); idx += 3; - } else if (strncmp(arg[idx],"communication",4) == 0) { + } else if (strncmp(arg[idx],"communication",5) == 0) { flags |= COMM; ++idx; - } else if (strncmp(arg[idx],"computes",4) == 0) { + } else if (strncmp(arg[idx],"computes",5) == 0) { flags |= COMPUTES; ++idx; - } else if (strncmp(arg[idx],"dumps",3) == 0) { + } else if (strncmp(arg[idx],"dumps",5) == 0) { flags |= DUMPS; ++idx; - } else if (strncmp(arg[idx],"fixes",3) == 0) { + } else if (strncmp(arg[idx],"fixes",5) == 0) { flags |= FIXES; ++idx; } else if (strncmp(arg[idx],"groups",3) == 0) { @@ -152,6 +180,61 @@ void Info::command(int narg, char **arg) } else if (strncmp(arg[idx],"system",3) == 0) { flags |= SYSTEM; ++idx; + } else if (strncmp(arg[idx],"styles",3) == 0) { + if (idx+1 < narg) { + ++idx; + if (strncmp(arg[idx],"all",3) == 0) { + flags |= STYLES; + ++idx; + } else if (strncmp(arg[idx],"atom",3) == 0) { + flags |= ATOM_STYLES; + ++idx; + } else if (strncmp(arg[idx],"integrate",3) == 0) { + flags |= INTEGRATE_STYLES; + ++idx; + } else if (strncmp(arg[idx],"minimize",3) == 0) { + flags |= MINIMIZE_STYLES; + ++idx; + } else if (strncmp(arg[idx],"pair",3) == 0) { + flags |= PAIR_STYLES; + ++idx; + } else if (strncmp(arg[idx],"bond",3) == 0) { + flags |= BOND_STYLES; + ++idx; + } else if (strncmp(arg[idx],"angle",3) == 0) { + flags |= ANGLE_STYLES; + ++idx; + } else if (strncmp(arg[idx],"dihedral",3) == 0) { + flags |= DIHEDRAL_STYLES; + ++idx; + } else if (strncmp(arg[idx],"improper",3) == 0) { + flags |= IMPROPER_STYLES; + ++idx; + } else if (strncmp(arg[idx],"kspace",3) == 0) { + flags |= KSPACE_STYLES; + ++idx; + } else if (strncmp(arg[idx],"fix",3) == 0) { + flags |= FIX_STYLES; + ++idx; + } else if (strncmp(arg[idx],"compute",4) == 0) { + flags |= COMPUTE_STYLES; + ++idx; + } else if (strncmp(arg[idx],"region",3) == 0) { + flags |= REGION_STYLES; + ++idx; + } else if (strncmp(arg[idx],"dump",3) == 0) { + flags |= DUMP_STYLES; + ++idx; + } else if (strncmp(arg[idx],"command",4) == 0) { + flags |= COMMAND_STYLES; + ++idx; + } else { + flags |= STYLES; + } + } else { + flags |= STYLES; + ++idx; + } } else { error->warning(FLERR,"Ignoring unknown or incorrect info command flag"); ++idx; @@ -457,6 +540,10 @@ void Info::command(int narg, char **arg) cpuh,cpum,cpus,wallh,wallm,walls); } + if (flags & STYLES) { + available_styles(out, flags); + } + fputs("\nInfo-Info-Info-Info-Info-Info-Info-Info-Info-Info-Info\n\n",out); // close output file pointer if opened locally thus forcing a hard sync. @@ -464,6 +551,225 @@ void Info::command(int narg, char **arg) fclose(out); } + +void Info::available_styles(FILE * out, int flags) +{ + + fprintf(out,"\nStyles information:\n"); + + if(flags & ATOM_STYLES) atom_styles(out); + if(flags & INTEGRATE_STYLES) integrate_styles(out); + if(flags & MINIMIZE_STYLES) minimize_styles(out); + if(flags & PAIR_STYLES) pair_styles(out); + if(flags & BOND_STYLES) bond_styles(out); + if(flags & ANGLE_STYLES) angle_styles(out); + if(flags & DIHEDRAL_STYLES) dihedral_styles(out); + if(flags & IMPROPER_STYLES) improper_styles(out); + if(flags & KSPACE_STYLES) kspace_styles(out); + if(flags & FIX_STYLES) fix_styles(out); + if(flags & COMPUTE_STYLES) compute_styles(out); + if(flags & REGION_STYLES) region_styles(out); + if(flags & DUMP_STYLES) dump_styles(out); + if(flags & COMMAND_STYLES) command_styles(out); +} + +void Info::atom_styles(FILE * out) +{ + fprintf(out, "\nAtom styles:\n"); + + vector<string> styles; + + for(Atom::AtomVecCreatorMap::iterator it = atom->avec_map->begin(); it != atom->avec_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::integrate_styles(FILE * out) +{ + fprintf(out, "\nIntegrate styles:\n"); + + vector<string> styles; + + for(Update::IntegrateCreatorMap::iterator it = update->integrate_map->begin(); it != update->integrate_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::minimize_styles(FILE * out) +{ + fprintf(out, "\nMinimize styles:\n"); + + vector<string> styles; + + for(Update::MinimizeCreatorMap::iterator it = update->minimize_map->begin(); it != update->minimize_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::pair_styles(FILE * out) +{ + fprintf(out, "\nPair styles:\n"); + + vector<string> styles; + + for(Force::PairCreatorMap::iterator it = force->pair_map->begin(); it != force->pair_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::bond_styles(FILE * out) +{ + fprintf(out, "\nBond styles:\n"); + + vector<string> styles; + + for(Force::BondCreatorMap::iterator it = force->bond_map->begin(); it != force->bond_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::angle_styles(FILE * out) +{ + fprintf(out, "\nAngle styles:\n"); + + vector<string> styles; + + for(Force::AngleCreatorMap::iterator it = force->angle_map->begin(); it != force->angle_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::dihedral_styles(FILE * out) +{ + fprintf(out, "\nDihedral styles:\n"); + + vector<string> styles; + + for(Force::DihedralCreatorMap::iterator it = force->dihedral_map->begin(); it != force->dihedral_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::improper_styles(FILE * out) +{ + fprintf(out, "\nImproper styles:\n"); + + vector<string> styles; + + for(Force::ImproperCreatorMap::iterator it = force->improper_map->begin(); it != force->improper_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::kspace_styles(FILE * out) +{ + fprintf(out, "\nKSpace styles:\n"); + + vector<string> styles; + + for(Force::KSpaceCreatorMap::iterator it = force->kspace_map->begin(); it != force->kspace_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::fix_styles(FILE * out) +{ + fprintf(out, "\nFix styles:\n"); + + vector<string> styles; + + for(Modify::FixCreatorMap::iterator it = modify->fix_map->begin(); it != modify->fix_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::compute_styles(FILE * out) +{ + fprintf(out, "\nCompute styles:\n"); + + vector<string> styles; + + for(Modify::ComputeCreatorMap::iterator it = modify->compute_map->begin(); it != modify->compute_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::region_styles(FILE * out) +{ + fprintf(out, "\nRegion styles:\n"); + + vector<string> styles; + + for(Domain::RegionCreatorMap::iterator it = domain->region_map->begin(); it != domain->region_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::dump_styles(FILE * out) +{ + fprintf(out, "\nDump styles:\n"); + + vector<string> styles; + + for(Output::DumpCreatorMap::iterator it = output->dump_map->begin(); it != output->dump_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + +void Info::command_styles(FILE * out) +{ + fprintf(out, "\nCommand styles (add-on input script commands):\n"); + + vector<string> styles; + + for(Input::CommandCreatorMap::iterator it = input->command_map->begin(); it != input->command_map->end(); ++it) { + styles.push_back(it->first); + } + + print_columns(out, styles); + fprintf(out, "\n\n\n"); +} + + /* ---------------------------------------------------------------------- */ // the is_active() function returns true if the selected style or name @@ -681,3 +987,43 @@ bool Info::is_defined(const char *category, const char *name) return false; } + +static void print_columns(FILE* fp, vector<string> & styles) +{ + if (styles.size() == 0) { + fprintf(fp, "\nNone"); + return; + } + + std::sort(styles.begin(), styles.end()); + + int pos = 80; + for (int i = 0; i < styles.size(); ++i) { + + // skip "secret" styles + if (isupper(styles[i][0])) continue; + + int len = styles[i].length(); + if (pos + len > 80) { + fprintf(fp,"\n"); + pos = 0; + } + + if (len < 16) { + fprintf(fp,"%-16s",styles[i].c_str()); + pos += 16; + } else if (len < 32) { + fprintf(fp,"%-32s",styles[i].c_str()); + pos += 32; + } else if (len < 48) { + fprintf(fp,"%-48s",styles[i].c_str()); + pos += 48; + } else if (len < 64) { + fprintf(fp,"%-64s",styles[i].c_str()); + pos += 64; + } else { + fprintf(fp,"%-80s",styles[i].c_str()); + pos += 80; + } + } +} diff --git a/src/info.h b/src/info.h index 4a7388d186..f4549badf7 100644 --- a/src/info.h +++ b/src/info.h @@ -32,6 +32,24 @@ class Info : protected Pointers { bool is_active(const char *, const char *); bool is_defined(const char *, const char *); bool is_available(const char *, const char *); + +private: + void available_styles(FILE * out, int flags); + + void atom_styles(FILE * out); + void integrate_styles(FILE * out); + void minimize_styles(FILE * out); + void pair_styles(FILE * out); + void bond_styles(FILE * out); + void angle_styles(FILE * out); + void dihedral_styles(FILE * out); + void improper_styles(FILE * out); + void kspace_styles(FILE * out); + void fix_styles(FILE * out); + void compute_styles(FILE * out); + void region_styles(FILE * out); + void dump_styles(FILE * out); + void command_styles(FILE * out); }; } diff --git a/src/input.cpp b/src/input.cpp index 4ab4a6b968..905e7f0590 100644 --- a/src/input.cpp +++ b/src/input.cpp @@ -93,7 +93,7 @@ Input::Input(LAMMPS *lmp, int argc, char **argv) : Pointers(lmp) // fill map with commands listed in style_command.h - command_map = new std::map<std::string,CommandCreator>(); + command_map = new CommandCreatorMap(); #define COMMAND_CLASS #define CommandStyle(key,Class) \ diff --git a/src/input.h b/src/input.h index c1947fee03..33a271ccdf 100644 --- a/src/input.h +++ b/src/input.h @@ -53,10 +53,12 @@ class Input : protected Pointers { FILE **infiles; // list of open input files - protected: + public: typedef void (*CommandCreator)(LAMMPS *, int, char **); - std::map<std::string,CommandCreator> *command_map; + typedef std::map<std::string,CommandCreator> CommandCreatorMap; + CommandCreatorMap *command_map; + protected: template <typename T> static void command_creator(LAMMPS *, int, char **); private: diff --git a/src/modify.cpp b/src/modify.cpp index 219c233f2b..dea0d9dc08 100644 --- a/src/modify.cpp +++ b/src/modify.cpp @@ -28,8 +28,6 @@ #include "memory.h" #include "error.h" -#include <map> - using namespace LAMMPS_NS; using namespace FixConst; @@ -80,7 +78,7 @@ Modify::Modify(LAMMPS *lmp) : Pointers(lmp) // fill map with fixes listed in style_fix.h - fix_map = new std::map<std::string,FixCreator>(); + fix_map = new FixCreatorMap(); #define FIX_CLASS #define FixStyle(key,Class) \ @@ -91,7 +89,7 @@ Modify::Modify(LAMMPS *lmp) : Pointers(lmp) // fill map with computes listed in style_compute.h - compute_map = new std::map<std::string,ComputeCreator>(); + compute_map = new ComputeCreatorMap(); #define COMPUTE_CLASS #define ComputeStyle(key,Class) \ diff --git a/src/modify.h b/src/modify.h index 934ceb13dc..6472c9bf6a 100644 --- a/src/modify.h +++ b/src/modify.h @@ -149,13 +149,16 @@ class Modify : protected Pointers { void list_init_dofflag(int &, int *&); void list_init_compute(); - protected: + public: typedef Compute *(*ComputeCreator)(LAMMPS *, int, char **); - std::map<std::string,ComputeCreator> *compute_map; + typedef std::map<std::string,ComputeCreator> ComputeCreatorMap; + ComputeCreatorMap *compute_map; typedef Fix *(*FixCreator)(LAMMPS *, int, char **); - std::map<std::string,FixCreator> *fix_map; + typedef std::map<std::string,FixCreator> FixCreatorMap; + FixCreatorMap *fix_map; + protected: template <typename T> static Compute *compute_creator(LAMMPS *, int, char **); template <typename T> static Fix *fix_creator(LAMMPS *, int, char **); }; diff --git a/src/output.cpp b/src/output.cpp index 073171735f..df7c33e101 100644 --- a/src/output.cpp +++ b/src/output.cpp @@ -89,6 +89,15 @@ Output::Output(LAMMPS *lmp) : Pointers(lmp) restart1 = restart2a = restart2b = NULL; var_restart_single = var_restart_double = NULL; restart = NULL; + + dump_map = new DumpCreatorMap(); + +#define DUMP_CLASS +#define DumpStyle(key,Class) \ + (*dump_map)[#key] = &dump_creator<Class>; +#include "style_dump.h" +#undef DumpStyle +#undef DUMP_CLASS } /* ---------------------------------------------------------------------- @@ -115,6 +124,8 @@ Output::~Output() delete [] var_restart_single; delete [] var_restart_double; delete restart; + + delete dump_map; } /* ---------------------------------------------------------------------- */ @@ -571,14 +582,10 @@ void Output::add_dump(int narg, char **arg) // create the Dump - if (0) return; // dummy line to enable else-if macro expansion - -#define DUMP_CLASS -#define DumpStyle(key,Class) \ - else if (strcmp(arg[2],#key) == 0) dump[ndump] = new Class(lmp,narg,arg); -#include "style_dump.h" -#undef DUMP_CLASS - + if (dump_map->find(arg[2]) != dump_map->end()) { + DumpCreator dump_creator = (*dump_map)[arg[2]]; + dump[ndump] = dump_creator(lmp, narg, arg); + } else error->all(FLERR,"Unknown dump style"); every_dump[ndump] = force->inumeric(FLERR,arg[3]); @@ -588,6 +595,16 @@ void Output::add_dump(int narg, char **arg) ndump++; } +/* ---------------------------------------------------------------------- + one instance per dump style in style_dump.h +------------------------------------------------------------------------- */ + +template <typename T> +Dump *Output::dump_creator(LAMMPS *lmp, int narg, char ** arg) +{ + return new T(lmp, narg, arg); +} + /* ---------------------------------------------------------------------- modify parameters of a Dump ------------------------------------------------------------------------- */ diff --git a/src/output.h b/src/output.h index 6bbd92a259..cc282cbedd 100644 --- a/src/output.h +++ b/src/output.h @@ -15,6 +15,8 @@ #define LMP_OUTPUT_H #include "pointers.h" +#include <map> +#include <string> namespace LAMMPS_NS { @@ -57,6 +59,11 @@ class Output : protected Pointers { char *restart2a,*restart2b; // names of double restart files class WriteRestart *restart; // class for writing restart files + + typedef Dump *(*DumpCreator)(LAMMPS *,int,char**); + typedef std::map<std::string,DumpCreator> DumpCreatorMap; + DumpCreatorMap *dump_map; + Output(class LAMMPS *); ~Output(); void init(); @@ -75,6 +82,9 @@ class Output : protected Pointers { void create_restart(int, char **); // create Restart and restart files void memory_usage(); // print out memory usage + + private: + template <typename T> static Dump *dump_creator(LAMMPS *, int, char **); }; } diff --git a/src/update.cpp b/src/update.cpp index faf3a8c148..35492006cc 100644 --- a/src/update.cpp +++ b/src/update.cpp @@ -61,6 +61,24 @@ Update::Update(LAMMPS *lmp) : Pointers(lmp) minimize_style = NULL; minimize = NULL; + integrate_map = new IntegrateCreatorMap(); + +#define INTEGRATE_CLASS +#define IntegrateStyle(key,Class) \ + (*integrate_map)[#key] = &integrate_creator<Class>; +#include "style_integrate.h" +#undef IntegrateStyle +#undef INTEGRATE_CLASS + + minimize_map = new MinimizeCreatorMap(); + +#define MINIMIZE_CLASS +#define MinimizeStyle(key,Class) \ + (*minimize_map)[#key] = &minimize_creator<Class>; +#include "style_minimize.h" +#undef MinimizeStyle +#undef MINIMIZE_CLASS + str = (char *) "verlet"; create_integrate(1,&str,1); @@ -79,6 +97,9 @@ Update::~Update() delete [] minimize_style; delete minimize; + + delete integrate_map; + delete minimize_map; } /* ---------------------------------------------------------------------- */ @@ -319,52 +340,43 @@ void Update::new_integrate(char *style, int narg, char **arg, sflag = 1; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix); - int success = 1; - - if (0) return; - -#define INTEGRATE_CLASS -#define IntegrateStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) integrate = new Class(lmp,narg,arg); -#include "style_integrate.h" -#undef IntegrateStyle -#undef INTEGRATE_CLASS - - else success = 0; - if (success) return; + if (integrate_map->find(estyle) != integrate_map->end()) { + IntegrateCreator integrate_creator = (*integrate_map)[estyle]; + integrate = integrate_creator(lmp, narg, arg); + return; + } } if (lmp->suffix2) { sflag = 2; char estyle[256]; sprintf(estyle,"%s/%s",style,lmp->suffix2); - int success = 1; - - if (0) return; - -#define INTEGRATE_CLASS -#define IntegrateStyle(key,Class) \ - else if (strcmp(estyle,#key) == 0) integrate = new Class(lmp,narg,arg); -#include "style_integrate.h" -#undef IntegrateStyle -#undef INTEGRATE_CLASS - - else success = 0; - if (success) return; + if (integrate_map->find(estyle) != integrate_map->end()) { + IntegrateCreator integrate_creator = (*integrate_map)[estyle]; + integrate = integrate_creator(lmp, narg, arg); + return; + } } } sflag = 0; - if (0) return; + if (integrate_map->find(style) != integrate_map->end()) { + IntegrateCreator integrate_creator = (*integrate_map)[style]; + integrate = integrate_creator(lmp, narg, arg); + return; + } -#define INTEGRATE_CLASS -#define IntegrateStyle(key,Class) \ - else if (strcmp(style,#key) == 0) integrate = new Class(lmp,narg,arg); -#include "style_integrate.h" -#undef IntegrateStyle -#undef INTEGRATE_CLASS + error->all(FLERR,"Illegal integrate style"); +} - else error->all(FLERR,"Illegal integrate style"); +/* ---------------------------------------------------------------------- + one instance per integrate style in style_integrate.h +------------------------------------------------------------------------- */ + +template <typename T> +Integrate *Update::integrate_creator(LAMMPS *lmp, int narg, char ** arg) +{ + return new T(lmp, narg, arg); } /* ---------------------------------------------------------------------- */ @@ -376,14 +388,10 @@ void Update::create_minimize(int narg, char **arg) delete [] minimize_style; delete minimize; - if (0) return; // dummy line to enable else-if macro expansion - -#define MINIMIZE_CLASS -#define MinimizeStyle(key,Class) \ - else if (strcmp(arg[0],#key) == 0) minimize = new Class(lmp); -#include "style_minimize.h" -#undef MINIMIZE_CLASS - + if (minimize_map->find(arg[0]) != minimize_map->end()) { + MinimizeCreator minimize_creator = (*minimize_map)[arg[0]]; + minimize = minimize_creator(lmp); + } else error->all(FLERR,"Illegal min_style command"); int n = strlen(arg[0]) + 1; @@ -391,6 +399,16 @@ void Update::create_minimize(int narg, char **arg) strcpy(minimize_style,arg[0]); } +/* ---------------------------------------------------------------------- + one instance per minimize style in style_minimize.h +------------------------------------------------------------------------- */ + +template <typename T> +Min *Update::minimize_creator(LAMMPS *lmp) +{ + return new T(lmp); +} + /* ---------------------------------------------------------------------- reset timestep as called from input script ------------------------------------------------------------------------- */ diff --git a/src/update.h b/src/update.h index bbb29bc7ee..fe17dc6bb4 100644 --- a/src/update.h +++ b/src/update.h @@ -15,6 +15,8 @@ #define LMP_UPDATE_H #include "pointers.h" +#include <map> +#include <string> namespace LAMMPS_NS { @@ -46,6 +48,15 @@ class Update : protected Pointers { class Min *minimize; char *minimize_style; + typedef Integrate *(*IntegrateCreator)(LAMMPS *,int,char**); + typedef Min *(*MinimizeCreator)(LAMMPS *); + + typedef std::map<std::string,IntegrateCreator> IntegrateCreatorMap; + typedef std::map<std::string,MinimizeCreator> MinimizeCreatorMap; + + IntegrateCreatorMap *integrate_map; + MinimizeCreatorMap *minimize_map; + Update(class LAMMPS *); ~Update(); void init(); @@ -60,6 +71,8 @@ class Update : protected Pointers { private: void new_integrate(char *, int, char **, int, int &); + template <typename T> static Integrate *integrate_creator(LAMMPS *, int, char **); + template <typename T> static Min *minimize_creator(LAMMPS *); }; } -- GitLab