diff --git a/doc/Makefile b/doc/Makefile index fc5e93012156c071e8455b78e63a3671816d9138..5dcb070f4f5ddebbc17c893fbfcde5d77c468438 100644 --- a/doc/Makefile +++ b/doc/Makefile @@ -1,11 +1,12 @@ # Makefile for LAMMPS documentation SHELL = /bin/bash -BUILDDIR = ${PWD} -RSTDIR = $(BUILDDIR)/rst +BUILDDIR = ${CURDIR} +RSTDIR = $(BUILDDIR)/src +TXTDIR = $(BUILDDIR)/txt VENV = $(BUILDDIR)/docenv TXT2RST = $(VENV)/bin/txt2rst -ANCHORCHECK = $(VENV)/bin/doc_anchor_check +ANCHORCHECK = $(VENV)/bin/rst_anchor_check PYTHON = $(shell which python3) VIRTUALENV = virtualenv @@ -27,8 +28,8 @@ HAS_VIRTUALENV = YES endif SPHINXEXTRA = -j $(shell $(PYTHON) -c 'import multiprocessing;print(multiprocessing.cpu_count())') -SOURCES=$(filter-out $(wildcard src/lammps_commands*.txt) src/lammps_support.txt src/lammps_tutorials.txt,$(wildcard src/*.txt)) -OBJECTS=$(SOURCES:src/%.txt=$(RSTDIR)/%.rst) +SOURCES=$(filter-out $(wildcard $(TXTDIR)/lammps_commands*.txt) $(TXTDIR)/lammps_support.txt $(TXTDIR)/lammps_tutorials.txt,$(wildcard $(TXTDIR)/*.txt)) +OBJECTS=$(SOURCES:$(TXTDIR)/%.txt=$(RSTDIR)/%.rst) .PHONY: help clean-all clean epub mobi rst html pdf venv spelling anchor_check @@ -53,7 +54,7 @@ clean-all: clean rm -rf $(BUILDDIR)/docenv $(BUILDDIR)/doctrees clean: - rm -rf $(RSTDIR)/{Eqs,JPG,*.rst} html epub latex + rm -rf html epub latex rm -rf spelling clean-spelling: @@ -64,12 +65,10 @@ rst: clean $(OBJECTS) $(ANCHORCHECK) html: $(OBJECTS) $(ANCHORCHECK) @(\ . $(VENV)/bin/activate ;\ - cp -r src/JPG $(RSTDIR)/ ;\ - cp -r src/Eqs $(RSTDIR)/ ;\ sphinx-build $(SPHINXEXTRA) -b html -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) html ;\ echo "############################################" ;\ - doc_anchor_check src/*.txt ;\ - env LC_ALL=C grep -n '[^ -~]' src/*.txt ;\ + rst_anchor_check src/*.rst ;\ + env LC_ALL=C grep -n '[^ -~]' $(RSTDIR)/*.rst ;\ echo "############################################" ;\ deactivate ;\ ) @@ -89,7 +88,7 @@ spelling: $(OBJECTS) utils/sphinx-config/false_positives.txt @(\ . $(VENV)/bin/activate ;\ pip install sphinxcontrib-spelling ;\ - cp utils/sphinx-config/false_positives.txt $(RSTDIR)/ ;\ + cp utils/sphinx-config/false_positives.txt $(RSTDIR)/ ;\ sphinx-build -b spelling -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) spelling ;\ deactivate ;\ ) @@ -126,7 +125,7 @@ pdf: $(OBJECTS) $(ANCHORCHECK) . $(VENV)/bin/activate ;\ sphinx-build $(SPHINXEXTRA) -b latex -c utils/sphinx-config -d $(BUILDDIR)/doctrees $(RSTDIR) latex ;\ echo "############################################" ;\ - doc_anchor_check src/*.txt ;\ + rst_anchor_check src/*.rst ;\ echo "############################################" ;\ deactivate ;\ ) @@ -163,7 +162,7 @@ fetch: anchor_check : $(ANCHORCHECK) @(\ . $(VENV)/bin/activate ;\ - doc_anchor_check src/*.txt ;\ + rst_anchor_check src/*.txt ;\ deactivate ;\ ) diff --git a/doc/rst/angles.rst b/doc/rst/angles.rst deleted file mode 100644 index 84a8fad6a8b6a0c056de5b238280473bfd01eb20..0000000000000000000000000000000000000000 --- a/doc/rst/angles.rst +++ /dev/null @@ -1,29 +0,0 @@ -Angle Styles -############ - - -.. toctree:: - :maxdepth: 1 - - angle_charmm - angle_class2 - angle_cosine - angle_cosine_buck6d - angle_cosine_delta - angle_cosine_periodic - angle_cosine_shift - angle_cosine_shift_exp - angle_cosine_squared - angle_cross - angle_dipole - angle_fourier - angle_fourier_simple - angle_harmonic - angle_hybrid - angle_mm3 - angle_none - angle_quartic - angle_sdk - angle_table - angle_zero - diff --git a/doc/rst/bonds.rst b/doc/rst/bonds.rst deleted file mode 100644 index 55c97021719824a8338c22907464126428c031ca..0000000000000000000000000000000000000000 --- a/doc/rst/bonds.rst +++ /dev/null @@ -1,24 +0,0 @@ -Bond Styles -########### - - -.. toctree:: - :maxdepth: 1 - - bond_class2 - bond_fene - bond_fene_expand - bond_gromos - bond_harmonic - bond_harmonic_shift - bond_harmonic_shift_cut - bond_hybrid - bond_mm3 - bond_morse - bond_none - bond_nonlinear - bond_oxdna - bond_quartic - bond_table - bond_zero - diff --git a/doc/rst/computes.rst b/doc/rst/computes.rst deleted file mode 100644 index 1bb603f39cce9240cb3d0490ce06a8587697ad27..0000000000000000000000000000000000000000 --- a/doc/rst/computes.rst +++ /dev/null @@ -1,136 +0,0 @@ -Computes -######## - - -.. toctree:: - :maxdepth: 1 - - compute_ackland_atom - compute_adf - compute_angle - compute_angle_local - compute_angmom_chunk - compute_basal_atom - compute_body_local - compute_bond - compute_bond_local - compute_centro_atom - compute_chunk_atom - compute_chunk_spread_atom - compute_cluster_atom - compute_cna_atom - compute_cnp_atom - compute_com - compute_com_chunk - compute_contact_atom - compute_coord_atom - compute_damage_atom - compute_dihedral - compute_dihedral_local - compute_dilatation_atom - compute_dipole_chunk - compute_displace_atom - compute_dpd - compute_dpd_atom - compute_edpd_temp_atom - compute_entropy_atom - compute_erotate_asphere - compute_erotate_rigid - compute_erotate_sphere - compute_erotate_sphere_atom - compute_event_displace - compute_fep - compute_global_atom - compute_group_group - compute_gyration - compute_gyration_chunk - compute_gyration_shape - compute_heat_flux - compute_hexorder_atom - compute_hma - compute_improper - compute_improper_local - compute_inertia_chunk - compute_ke - compute_ke_atom - compute_ke_atom_eff - compute_ke_eff - compute_ke_rigid - compute_meso_e_atom - compute_meso_rho_atom - compute_meso_t_atom - compute_momentum - compute_msd - compute_msd_chunk - compute_msd_nongauss - compute_omega_chunk - compute_orientorder_atom - compute_pair - compute_pair_local - compute_pe - compute_pe_atom - compute_plasticity_atom - compute_pressure - compute_pressure_cylinder - compute_pressure_uef - compute_property_atom - compute_property_chunk - compute_property_local - compute_ptm_atom - compute_rdf - compute_reduce - compute_reduce_chunk - compute_rigid_local - compute_saed - compute_slice - compute_smd_contact_radius - compute_smd_damage - compute_smd_hourglass_error - compute_smd_internal_energy - compute_smd_plastic_strain - compute_smd_plastic_strain_rate - compute_smd_rho - compute_smd_tlsph_defgrad - compute_smd_tlsph_dt - compute_smd_tlsph_num_neighs - compute_smd_tlsph_shape - compute_smd_tlsph_strain - compute_smd_tlsph_strain_rate - compute_smd_tlsph_stress - compute_smd_triangle_vertices - compute_smd_ulsph_num_neighs - compute_smd_ulsph_strain - compute_smd_ulsph_strain_rate - compute_smd_ulsph_stress - compute_smd_vol - compute_sna_atom - compute_spin - compute_stress_atom - compute_stress_mop - compute_tally - compute_tdpd_cc_atom - compute_temp - compute_temp_asphere - compute_temp_body - compute_temp_chunk - compute_temp_com - compute_temp_cs - compute_temp_deform - compute_temp_deform_eff - compute_temp_drude - compute_temp_eff - compute_temp_partial - compute_temp_profile - compute_temp_ramp - compute_temp_region - compute_temp_region_eff - compute_temp_rotate - compute_temp_sphere - compute_temp_uef - compute_ti - compute_torque_chunk - compute_vacf - compute_vcm_chunk - compute_voronoi_atom - compute_xrd - diff --git a/doc/rst/dihedrals.rst b/doc/rst/dihedrals.rst deleted file mode 100644 index e14399fcb6a4de60ebc378511b770b1aec25a0be..0000000000000000000000000000000000000000 --- a/doc/rst/dihedrals.rst +++ /dev/null @@ -1,39 +0,0 @@ -Dihedral Styles -############### - - -.. toctree:: - :maxdepth: 1 - - dihedral_charmm - dihedral_class2 - dihedral_cosine_shift_exp - dihedral_fourier - dihedral_harmonic - dihedral_helix - dihedral_hybrid - dihedral_multi_harmonic - dihedral_nharmonic - dihedral_none - dihedral_opls - dihedral_quadratic - dihedral_spherical - dihedral_table - dihedral_table_cut - dihedral_zero - dihedral_charmm - dihedral_class2 - dihedral_cosine_shift_exp - dihedral_fourier - dihedral_harmonic - dihedral_helix - dihedral_hybrid - dihedral_multi_harmonic - dihedral_nharmonic - dihedral_none - dihedral_opls - dihedral_quadratic - dihedral_spherical - dihedral_table - dihedral_zero - diff --git a/doc/rst/fixes.rst b/doc/rst/fixes.rst deleted file mode 100644 index 3678fcc8534c5d5840bf2d08ed801041808a37c7..0000000000000000000000000000000000000000 --- a/doc/rst/fixes.rst +++ /dev/null @@ -1,189 +0,0 @@ -Fixes -##### - - -.. toctree:: - :maxdepth: 1 - - fix_adapt - fix_adapt_fep - fix_addforce - fix_addtorque - fix_append_atoms - fix_atc - fix_atom_swap - fix_ave_atom - fix_ave_chunk - fix_ave_correlate - fix_ave_correlate_long - fix_ave_histo - fix_ave_time - fix_aveforce - fix_balance - fix_bocs - fix_bond_break - fix_bond_create - fix_bond_swap - fix_bond_react - fix_box_relax - fix_client_md - fix_cmap - fix_colvars - fix_controller - fix_deform - fix_deposit - fix_drag - fix_drude - fix_drude_transform - fix_dpd_energy - fix_dpd_source - fix_dt_reset - fix_efield - fix_ehex - fix_electron_stopping - fix_enforce2d - fix_eos_cv - fix_eos_table - fix_eos_table_rx - fix_evaporate - fix_external - fix_ffl - fix_filter_corotate - fix_flow_gauss - fix_freeze - fix_gcmc - fix_gld - fix_gle - fix_gravity - fix_grem - fix_halt - fix_heat - fix_hyper_global - fix_hyper_local - fix_imd - fix_indent - fix_ipi - fix_langevin - fix_langevin_drude - fix_langevin_eff - fix_langevin_spin - fix_latte - fix_lb_fluid - fix_lb_momentum - fix_lb_pc - fix_lb_rigid_pc_sphere - fix_lb_viscous - fix_lineforce - fix_manifoldforce - fix_meso - fix_meso_move - fix_meso_stationary - fix_momentum - fix_move - fix_mscg - fix_msst - fix_mvv_dpd - fix_neb - fix_neb_spin - fix_nh - fix_nh_eff - fix_nh_uef - fix_nph_asphere - fix_nph_body - fix_nph_sphere - fix_nphug - fix_npt_asphere - fix_npt_body - fix_npt_sphere - fix_nve - fix_nve_asphere - fix_nve_asphere_noforce - fix_nve_awpmd - fix_nve_body - fix_nve_dot - fix_nve_dotc_langevin - fix_nve_eff - fix_nve_limit - fix_nve_line - fix_nve_manifold_rattle - fix_nve_noforce - fix_nve_sphere - fix_nve_spin - fix_nve_tri - fix_nvk - fix_nvt_asphere - fix_nvt_body - fix_nvt_manifold_rattle - fix_nvt_sllod - fix_nvt_sllod_eff - fix_nvt_sphere - fix_oneway - fix_orient - fix_phonon - fix_pimd - fix_planeforce - fix_plumed - fix_poems - fix_pour - fix_precession_spin - fix_press_berendsen - fix_print - fix_property_atom - fix_python_invoke - fix_python_move - fix_qbmsst - fix_qeq - fix_qeq_comb - fix_qeq_reax - fix_qmmm - fix_qtb - fix_reaxc_bonds - fix_reaxc_species - fix_recenter - fix_restrain - fix_rhok - fix_rigid - fix_rigid_meso - fix_rx - fix_saed_vtk - fix_setforce - fix_shake - fix_shardlow - fix_smd - fix_smd_adjust_dt - fix_smd_integrate_tlsph - fix_smd_integrate_ulsph - fix_smd_move_triangulated_surface - fix_smd_setvel - fix_smd_wall_surface - fix_spring - fix_spring_chunk - fix_spring_rg - fix_spring_self - fix_srd - fix_store_force - fix_store_state - fix_temp_berendsen - fix_temp_csvr - fix_temp_rescale - fix_temp_rescale_eff - fix_tfmc - fix_thermal_conductivity - fix_ti_spring - fix_tmd - fix_ttm - fix_tune_kspace - fix_vector - fix_viscosity - fix_viscous - fix_wall - fix_wall_body_polygon - fix_wall_body_polyhedron - fix_wall_ees - fix_wall_gran - fix_wall_gran_region - fix_wall_piston - fix_wall_reflect - fix_wall_region - fix_wall_srd - diff --git a/doc/rst/impropers.rst b/doc/rst/impropers.rst deleted file mode 100644 index c524004fc4f0a9743cf883cd8d91d6fb910349aa..0000000000000000000000000000000000000000 --- a/doc/rst/impropers.rst +++ /dev/null @@ -1,22 +0,0 @@ -Improper Styles -############### - - -.. toctree:: - :maxdepth: 1 - - improper_class2 - improper_cossq - improper_cvff - improper_distance - improper_distharm - improper_fourier - improper_harmonic - improper_hybrid - improper_inversion_harmonic - improper_none - improper_ring - improper_umbrella - improper_sqdistharm - improper_zero - diff --git a/doc/rst/pairs.rst b/doc/rst/pairs.rst deleted file mode 100644 index 9124013161214b8cf2b69f819115e537c1a25011..0000000000000000000000000000000000000000 --- a/doc/rst/pairs.rst +++ /dev/null @@ -1,130 +0,0 @@ -Pair Styles -########### - - -.. toctree:: - :maxdepth: 1 - - pair_adp - pair_agni - pair_airebo - pair_atm - pair_awpmd - pair_beck - pair_body_nparticle - pair_body_rounded_polygon - pair_body_rounded_polyhedron - pair_bop - pair_born - pair_brownian - pair_buck - pair_buck_long - pair_buck6d_coul_gauss - pair_charmm - pair_class2 - pair_colloid - pair_comb - pair_cosine_squared - pair_coul - pair_coul_diel - pair_coul_shield - pair_cs - pair_dipole - pair_dpd - pair_dpd_fdt - pair_drip - pair_dsmc - pair_e3b - pair_eam - pair_edip - pair_eff - pair_eim - pair_exp6_rx - pair_extep - pair_fep_soft - pair_gauss - pair_gayberne - pair_gran - pair_granular - pair_gromacs - pair_gw - pair_hbond_dreiding - pair_hybrid - pair_ilp_graphene_hbn - pair_kim - pair_kolmogorov_crespi_full - pair_kolmogorov_crespi_z - pair_lcbop - pair_lebedeva_z - pair_line_lj - pair_list - pair_lj - pair_lj96 - pair_lj_cubic - pair_lj_expand - pair_lj_long - pair_lj_smooth - pair_lj_smooth_linear - pair_lj_switch3_coulgauss - pair_local_density - pair_lubricate - pair_lubricateU - pair_mdf - pair_meamc - pair_meam_spline - pair_meam_sw_spline - pair_meso - pair_mgpt - pair_mie - pair_mm3_switch3_coulgauss - pair_momb - pair_morse - pair_multi_lucy - pair_multi_lucy_rx - pair_nb3b_harmonic - pair_nm - pair_none - pair_oxdna - pair_oxdna2 - pair_peri - pair_polymorphic - pair_python - pair_quip - pair_reaxc - pair_resquared - pair_sdk - pair_sdpd_taitwater_isothermal - pair_smd_hertz - pair_smd_tlsph - pair_smd_triangulated_surface - pair_smd_ulsph - pair_smtbq - pair_snap - pair_soft - pair_sph_heatconduction - pair_sph_idealgas - pair_sph_lj - pair_sph_rhosum - pair_sph_taitwater - pair_sph_taitwater_morris - pair_spin_dipole - pair_spin_dmi - pair_spin_exchange - pair_spin_magelec - pair_spin_neel - pair_srp - pair_sw - pair_table - pair_table_rx - pair_tersoff - pair_tersoff_mod - pair_tersoff_zbl - pair_thole - pair_tri_lj - pair_ufm - pair_vashishta - pair_yukawa - pair_yukawa_colloid - pair_zbl - pair_zero - diff --git a/doc/rst/.gitignore b/doc/src/.gitignore similarity index 100% rename from doc/rst/.gitignore rename to doc/src/.gitignore diff --git a/doc/rst/Build.rst b/doc/src/Build.rst similarity index 100% rename from doc/rst/Build.rst rename to doc/src/Build.rst diff --git a/doc/rst/Build_basics.rst b/doc/src/Build_basics.rst similarity index 100% rename from doc/rst/Build_basics.rst rename to doc/src/Build_basics.rst diff --git a/doc/rst/Build_cmake.rst b/doc/src/Build_cmake.rst similarity index 100% rename from doc/rst/Build_cmake.rst rename to doc/src/Build_cmake.rst diff --git a/doc/rst/Build_development.rst b/doc/src/Build_development.rst similarity index 100% rename from doc/rst/Build_development.rst rename to doc/src/Build_development.rst diff --git a/doc/rst/Build_extras.rst b/doc/src/Build_extras.rst similarity index 99% rename from doc/rst/Build_extras.rst rename to doc/src/Build_extras.rst index 1b5fa1672fb91640cc728887eeca096e12728c44..61629400159e30e2b120d27bae37678cc83f2908 100644 --- a/doc/rst/Build_extras.rst +++ b/doc/src/Build_extras.rst @@ -1254,11 +1254,11 @@ lib/quip/README file for details on how to do this. .. parsed-literal:: - -D QUIP_LIBRARIES=path # path to libquip.a (only needed if a custom location) + -D QUIP_LIBRARY=path # path to libquip.a (only needed if a custom location) CMake will not download and build the QUIP library. But once you have done that, a CMake build of LAMMPS with "-D PKG\_USER-QUIP=yes" should -work. Set QUIP\_LIBRARIES if CMake cannot find the QUIP library. +work. Set QUIP\_LIBRARY if CMake cannot find the QUIP library. **Traditional make**\ : diff --git a/doc/rst/Build_link.rst b/doc/src/Build_link.rst similarity index 100% rename from doc/rst/Build_link.rst rename to doc/src/Build_link.rst diff --git a/doc/rst/Build_make.rst b/doc/src/Build_make.rst similarity index 100% rename from doc/rst/Build_make.rst rename to doc/src/Build_make.rst diff --git a/doc/rst/Build_package.rst b/doc/src/Build_package.rst similarity index 100% rename from doc/rst/Build_package.rst rename to doc/src/Build_package.rst diff --git a/doc/rst/Build_settings.rst b/doc/src/Build_settings.rst similarity index 100% rename from doc/rst/Build_settings.rst rename to doc/src/Build_settings.rst diff --git a/doc/rst/Build_windows.rst b/doc/src/Build_windows.rst similarity index 100% rename from doc/rst/Build_windows.rst rename to doc/src/Build_windows.rst diff --git a/doc/rst/Commands.rst b/doc/src/Commands.rst similarity index 100% rename from doc/rst/Commands.rst rename to doc/src/Commands.rst diff --git a/doc/rst/Commands_all.rst b/doc/src/Commands_all.rst similarity index 100% rename from doc/rst/Commands_all.rst rename to doc/src/Commands_all.rst diff --git a/doc/rst/Commands_bond.rst b/doc/src/Commands_bond.rst similarity index 100% rename from doc/rst/Commands_bond.rst rename to doc/src/Commands_bond.rst diff --git a/doc/rst/Commands_category.rst b/doc/src/Commands_category.rst similarity index 100% rename from doc/rst/Commands_category.rst rename to doc/src/Commands_category.rst diff --git a/doc/rst/Commands_compute.rst b/doc/src/Commands_compute.rst similarity index 100% rename from doc/rst/Commands_compute.rst rename to doc/src/Commands_compute.rst diff --git a/doc/rst/Commands_fix.rst b/doc/src/Commands_fix.rst similarity index 100% rename from doc/rst/Commands_fix.rst rename to doc/src/Commands_fix.rst diff --git a/doc/rst/Commands_input.rst b/doc/src/Commands_input.rst similarity index 100% rename from doc/rst/Commands_input.rst rename to doc/src/Commands_input.rst diff --git a/doc/rst/Commands_kspace.rst b/doc/src/Commands_kspace.rst similarity index 100% rename from doc/rst/Commands_kspace.rst rename to doc/src/Commands_kspace.rst diff --git a/doc/rst/Commands_pair.rst b/doc/src/Commands_pair.rst similarity index 100% rename from doc/rst/Commands_pair.rst rename to doc/src/Commands_pair.rst diff --git a/doc/rst/Commands_parse.rst b/doc/src/Commands_parse.rst similarity index 100% rename from doc/rst/Commands_parse.rst rename to doc/src/Commands_parse.rst diff --git a/doc/rst/Commands_removed.rst b/doc/src/Commands_removed.rst similarity index 100% rename from doc/rst/Commands_removed.rst rename to doc/src/Commands_removed.rst diff --git a/doc/rst/Commands_structure.rst b/doc/src/Commands_structure.rst similarity index 100% rename from doc/rst/Commands_structure.rst rename to doc/src/Commands_structure.rst diff --git a/doc/rst/Errors.rst b/doc/src/Errors.rst similarity index 100% rename from doc/rst/Errors.rst rename to doc/src/Errors.rst diff --git a/doc/rst/Errors_bugs.rst b/doc/src/Errors_bugs.rst similarity index 100% rename from doc/rst/Errors_bugs.rst rename to doc/src/Errors_bugs.rst diff --git a/doc/rst/Errors_common.rst b/doc/src/Errors_common.rst similarity index 100% rename from doc/rst/Errors_common.rst rename to doc/src/Errors_common.rst diff --git a/doc/rst/Errors_messages.rst b/doc/src/Errors_messages.rst similarity index 100% rename from doc/rst/Errors_messages.rst rename to doc/src/Errors_messages.rst diff --git a/doc/rst/Errors_warnings.rst b/doc/src/Errors_warnings.rst similarity index 100% rename from doc/rst/Errors_warnings.rst rename to doc/src/Errors_warnings.rst diff --git a/doc/rst/Examples.rst b/doc/src/Examples.rst similarity index 100% rename from doc/rst/Examples.rst rename to doc/src/Examples.rst diff --git a/doc/rst/Howto.rst b/doc/src/Howto.rst similarity index 100% rename from doc/rst/Howto.rst rename to doc/src/Howto.rst diff --git a/doc/rst/Howto_2d.rst b/doc/src/Howto_2d.rst similarity index 100% rename from doc/rst/Howto_2d.rst rename to doc/src/Howto_2d.rst diff --git a/doc/rst/Howto_barostat.rst b/doc/src/Howto_barostat.rst similarity index 100% rename from doc/rst/Howto_barostat.rst rename to doc/src/Howto_barostat.rst diff --git a/doc/rst/Howto_bash.rst b/doc/src/Howto_bash.rst similarity index 100% rename from doc/rst/Howto_bash.rst rename to doc/src/Howto_bash.rst diff --git a/doc/rst/Howto_bioFF.rst b/doc/src/Howto_bioFF.rst similarity index 100% rename from doc/rst/Howto_bioFF.rst rename to doc/src/Howto_bioFF.rst diff --git a/doc/rst/Howto_body.rst b/doc/src/Howto_body.rst similarity index 100% rename from doc/rst/Howto_body.rst rename to doc/src/Howto_body.rst diff --git a/doc/rst/Howto_chunk.rst b/doc/src/Howto_chunk.rst similarity index 100% rename from doc/rst/Howto_chunk.rst rename to doc/src/Howto_chunk.rst diff --git a/doc/rst/Howto_client_server.rst b/doc/src/Howto_client_server.rst similarity index 100% rename from doc/rst/Howto_client_server.rst rename to doc/src/Howto_client_server.rst diff --git a/doc/rst/Howto_coreshell.rst b/doc/src/Howto_coreshell.rst similarity index 100% rename from doc/rst/Howto_coreshell.rst rename to doc/src/Howto_coreshell.rst diff --git a/doc/rst/Howto_couple.rst b/doc/src/Howto_couple.rst similarity index 100% rename from doc/rst/Howto_couple.rst rename to doc/src/Howto_couple.rst diff --git a/doc/rst/Howto_diffusion.rst b/doc/src/Howto_diffusion.rst similarity index 100% rename from doc/rst/Howto_diffusion.rst rename to doc/src/Howto_diffusion.rst diff --git a/doc/rst/Howto_dispersion.rst b/doc/src/Howto_dispersion.rst similarity index 100% rename from doc/rst/Howto_dispersion.rst rename to doc/src/Howto_dispersion.rst diff --git a/doc/rst/Howto_drude.rst b/doc/src/Howto_drude.rst similarity index 100% rename from doc/rst/Howto_drude.rst rename to doc/src/Howto_drude.rst diff --git a/doc/rst/Howto_drude2.rst b/doc/src/Howto_drude2.rst similarity index 100% rename from doc/rst/Howto_drude2.rst rename to doc/src/Howto_drude2.rst diff --git a/doc/rst/Howto_elastic.rst b/doc/src/Howto_elastic.rst similarity index 100% rename from doc/rst/Howto_elastic.rst rename to doc/src/Howto_elastic.rst diff --git a/doc/rst/Howto_github.rst b/doc/src/Howto_github.rst similarity index 100% rename from doc/rst/Howto_github.rst rename to doc/src/Howto_github.rst diff --git a/doc/rst/Howto_granular.rst b/doc/src/Howto_granular.rst similarity index 100% rename from doc/rst/Howto_granular.rst rename to doc/src/Howto_granular.rst diff --git a/doc/rst/Howto_kappa.rst b/doc/src/Howto_kappa.rst similarity index 100% rename from doc/rst/Howto_kappa.rst rename to doc/src/Howto_kappa.rst diff --git a/doc/rst/Howto_library.rst b/doc/src/Howto_library.rst similarity index 100% rename from doc/rst/Howto_library.rst rename to doc/src/Howto_library.rst diff --git a/doc/rst/Howto_manifold.rst b/doc/src/Howto_manifold.rst similarity index 100% rename from doc/rst/Howto_manifold.rst rename to doc/src/Howto_manifold.rst diff --git a/doc/rst/Howto_multiple.rst b/doc/src/Howto_multiple.rst similarity index 100% rename from doc/rst/Howto_multiple.rst rename to doc/src/Howto_multiple.rst diff --git a/doc/rst/Howto_nemd.rst b/doc/src/Howto_nemd.rst similarity index 100% rename from doc/rst/Howto_nemd.rst rename to doc/src/Howto_nemd.rst diff --git a/doc/rst/Howto_output.rst b/doc/src/Howto_output.rst similarity index 100% rename from doc/rst/Howto_output.rst rename to doc/src/Howto_output.rst diff --git a/doc/rst/Howto_polarizable.rst b/doc/src/Howto_polarizable.rst similarity index 100% rename from doc/rst/Howto_polarizable.rst rename to doc/src/Howto_polarizable.rst diff --git a/doc/rst/Howto_pylammps.rst b/doc/src/Howto_pylammps.rst similarity index 100% rename from doc/rst/Howto_pylammps.rst rename to doc/src/Howto_pylammps.rst diff --git a/doc/rst/Howto_replica.rst b/doc/src/Howto_replica.rst similarity index 100% rename from doc/rst/Howto_replica.rst rename to doc/src/Howto_replica.rst diff --git a/doc/rst/Howto_restart.rst b/doc/src/Howto_restart.rst similarity index 100% rename from doc/rst/Howto_restart.rst rename to doc/src/Howto_restart.rst diff --git a/doc/rst/Howto_spc.rst b/doc/src/Howto_spc.rst similarity index 100% rename from doc/rst/Howto_spc.rst rename to doc/src/Howto_spc.rst diff --git a/doc/rst/Howto_spherical.rst b/doc/src/Howto_spherical.rst similarity index 100% rename from doc/rst/Howto_spherical.rst rename to doc/src/Howto_spherical.rst diff --git a/doc/rst/Howto_spins.rst b/doc/src/Howto_spins.rst similarity index 100% rename from doc/rst/Howto_spins.rst rename to doc/src/Howto_spins.rst diff --git a/doc/rst/Howto_temperature.rst b/doc/src/Howto_temperature.rst similarity index 100% rename from doc/rst/Howto_temperature.rst rename to doc/src/Howto_temperature.rst diff --git a/doc/rst/Howto_thermostat.rst b/doc/src/Howto_thermostat.rst similarity index 100% rename from doc/rst/Howto_thermostat.rst rename to doc/src/Howto_thermostat.rst diff --git a/doc/rst/Howto_tip3p.rst b/doc/src/Howto_tip3p.rst similarity index 100% rename from doc/rst/Howto_tip3p.rst rename to doc/src/Howto_tip3p.rst diff --git a/doc/rst/Howto_tip4p.rst b/doc/src/Howto_tip4p.rst similarity index 100% rename from doc/rst/Howto_tip4p.rst rename to doc/src/Howto_tip4p.rst diff --git a/doc/rst/Howto_triclinic.rst b/doc/src/Howto_triclinic.rst similarity index 100% rename from doc/rst/Howto_triclinic.rst rename to doc/src/Howto_triclinic.rst diff --git a/doc/rst/Howto_viscosity.rst b/doc/src/Howto_viscosity.rst similarity index 100% rename from doc/rst/Howto_viscosity.rst rename to doc/src/Howto_viscosity.rst diff --git a/doc/rst/Howto_viz.rst b/doc/src/Howto_viz.rst similarity index 100% rename from doc/rst/Howto_viz.rst rename to doc/src/Howto_viz.rst diff --git a/doc/rst/Howto_walls.rst b/doc/src/Howto_walls.rst similarity index 100% rename from doc/rst/Howto_walls.rst rename to doc/src/Howto_walls.rst diff --git a/doc/rst/Install.rst b/doc/src/Install.rst similarity index 100% rename from doc/rst/Install.rst rename to doc/src/Install.rst diff --git a/doc/rst/Install_git.rst b/doc/src/Install_git.rst similarity index 100% rename from doc/rst/Install_git.rst rename to doc/src/Install_git.rst diff --git a/doc/rst/Install_linux.rst b/doc/src/Install_linux.rst similarity index 100% rename from doc/rst/Install_linux.rst rename to doc/src/Install_linux.rst diff --git a/doc/rst/Install_mac.rst b/doc/src/Install_mac.rst similarity index 100% rename from doc/rst/Install_mac.rst rename to doc/src/Install_mac.rst diff --git a/doc/rst/Install_patch.rst b/doc/src/Install_patch.rst similarity index 100% rename from doc/rst/Install_patch.rst rename to doc/src/Install_patch.rst diff --git a/doc/rst/Install_svn.rst b/doc/src/Install_svn.rst similarity index 100% rename from doc/rst/Install_svn.rst rename to doc/src/Install_svn.rst diff --git a/doc/rst/Install_tarball.rst b/doc/src/Install_tarball.rst similarity index 100% rename from doc/rst/Install_tarball.rst rename to doc/src/Install_tarball.rst diff --git a/doc/rst/Install_windows.rst b/doc/src/Install_windows.rst similarity index 100% rename from doc/rst/Install_windows.rst rename to doc/src/Install_windows.rst diff --git a/doc/rst/Intro.rst b/doc/src/Intro.rst similarity index 100% rename from doc/rst/Intro.rst rename to doc/src/Intro.rst diff --git a/doc/rst/Intro_authors.rst b/doc/src/Intro_authors.rst similarity index 100% rename from doc/rst/Intro_authors.rst rename to doc/src/Intro_authors.rst diff --git a/doc/rst/Intro_features.rst b/doc/src/Intro_features.rst similarity index 100% rename from doc/rst/Intro_features.rst rename to doc/src/Intro_features.rst diff --git a/doc/rst/Intro_nonfeatures.rst b/doc/src/Intro_nonfeatures.rst similarity index 100% rename from doc/rst/Intro_nonfeatures.rst rename to doc/src/Intro_nonfeatures.rst diff --git a/doc/rst/Intro_opensource.rst b/doc/src/Intro_opensource.rst similarity index 100% rename from doc/rst/Intro_opensource.rst rename to doc/src/Intro_opensource.rst diff --git a/doc/rst/Intro_overview.rst b/doc/src/Intro_overview.rst similarity index 100% rename from doc/rst/Intro_overview.rst rename to doc/src/Intro_overview.rst diff --git a/doc/rst/Intro_website.rst b/doc/src/Intro_website.rst similarity index 100% rename from doc/rst/Intro_website.rst rename to doc/src/Intro_website.rst diff --git a/doc/rst/Manual.rst b/doc/src/Manual.rst similarity index 98% rename from doc/rst/Manual.rst rename to doc/src/Manual.rst index c5485271e1585a0b67e097fdd9cac02be7a260c4..dd67a13427bc2aaac9705104678f637b88d84aaa 100644 --- a/doc/rst/Manual.rst +++ b/doc/src/Manual.rst @@ -1,8 +1,8 @@ LAMMPS Documentation #################### -30 Oct 2019 version -******************* +|version| version +***************** :doc:`What is a LAMMPS version? ` diff --git a/doc/src/Manual.txt b/doc/src/Manual.txt deleted file mode 100644 index 041a481547cd5a3e6e8ce948508487037568bc17..0000000000000000000000000000000000000000 --- a/doc/src/Manual.txt +++ /dev/null @@ -1,124 +0,0 @@ - - -LAMMPS Users Manual - - - - - - - -

- - - -"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c - -:link(lws,http://lammps.sandia.gov) -:link(ld,Manual.html) -:link(lc,Commands_all.html#comm) - -:line - -LAMMPS Documentation :c,h1 -30 Oct 2019 version :c,h2 - -"What is a LAMMPS version?"_Manual_version.html - -LAMMPS stands for Large-scale Atomic/Molecular Massively Parallel -Simulator. - -LAMMPS is a classical molecular dynamics simulation code with a focus -on materials modeling. It was designed to run efficiently on parallel -computers. It was developed originally at Sandia National -Laboratories, a US Department of Energy facility. The majority of -funding for LAMMPS has come from the US Department of Energy (DOE). -LAMMPS is an open-source code, distributed freely under the terms of -the GNU Public License (GPL). - -The "LAMMPS website"_lws has a variety of information about the code. -It includes links to an on-line version of this manual, a "mailing -list"_http://lammps.sandia.gov/mail.html where users can post -questions, and a "GitHub site"_https://github.com/lammps/lammps where -all LAMMPS development is coordinated. - -:line - -The content for this manual is part of the LAMMPS distribution. You -can build a local copy of the Manual as HTML pages or a PDF file, by -following the steps on the "Manual build"_Manual_build.html doc page. -There is also a "Developer.pdf"_Developer.pdf document which gives -a brief description of the basic code structure of LAMMPS. - -:line - -Once you are familiar with LAMMPS, you may want to bookmark "this -page"_Commands.html since it gives quick access to a doc page for -every LAMMPS command. - - - - -"Introduction"_Intro.html :olb,l -"Install LAMMPS"_Install.html :l -"Build LAMMPS"_Build.html :l -"Run LAMMPS"_Run_head.html :l -"Commands"_Commands.html :l -"Optional packages"_Packages.html :l -"Accelerate performance"_Speed.html :l -"How-to discussions"_Howto.html :l -"Example scripts"_Examples.html :l -"Auxiliary tools"_Tools.html :l -"Modify & extend LAMMPS"_Modify.html :l -"Use Python with LAMMPS"_Python_head.html :l -"Errors"_Errors.html :l -"Building the LAMMPS manual"_Manual_build.html :l -:ole - - - - diff --git a/doc/rst/Manual_build.rst b/doc/src/Manual_build.rst similarity index 100% rename from doc/rst/Manual_build.rst rename to doc/src/Manual_build.rst diff --git a/doc/rst/Manual_version.rst b/doc/src/Manual_version.rst similarity index 100% rename from doc/rst/Manual_version.rst rename to doc/src/Manual_version.rst diff --git a/doc/rst/Modify.rst b/doc/src/Modify.rst similarity index 100% rename from doc/rst/Modify.rst rename to doc/src/Modify.rst diff --git a/doc/rst/Modify_atom.rst b/doc/src/Modify_atom.rst similarity index 100% rename from doc/rst/Modify_atom.rst rename to doc/src/Modify_atom.rst diff --git a/doc/rst/Modify_body.rst b/doc/src/Modify_body.rst similarity index 100% rename from doc/rst/Modify_body.rst rename to doc/src/Modify_body.rst diff --git a/doc/rst/Modify_bond.rst b/doc/src/Modify_bond.rst similarity index 100% rename from doc/rst/Modify_bond.rst rename to doc/src/Modify_bond.rst diff --git a/doc/rst/Modify_command.rst b/doc/src/Modify_command.rst similarity index 100% rename from doc/rst/Modify_command.rst rename to doc/src/Modify_command.rst diff --git a/doc/rst/Modify_compute.rst b/doc/src/Modify_compute.rst similarity index 100% rename from doc/rst/Modify_compute.rst rename to doc/src/Modify_compute.rst diff --git a/doc/rst/Modify_contribute.rst b/doc/src/Modify_contribute.rst similarity index 100% rename from doc/rst/Modify_contribute.rst rename to doc/src/Modify_contribute.rst diff --git a/doc/rst/Modify_dump.rst b/doc/src/Modify_dump.rst similarity index 100% rename from doc/rst/Modify_dump.rst rename to doc/src/Modify_dump.rst diff --git a/doc/rst/Modify_fix.rst b/doc/src/Modify_fix.rst similarity index 100% rename from doc/rst/Modify_fix.rst rename to doc/src/Modify_fix.rst diff --git a/doc/rst/Modify_kspace.rst b/doc/src/Modify_kspace.rst similarity index 100% rename from doc/rst/Modify_kspace.rst rename to doc/src/Modify_kspace.rst diff --git a/doc/rst/Modify_min.rst b/doc/src/Modify_min.rst similarity index 100% rename from doc/rst/Modify_min.rst rename to doc/src/Modify_min.rst diff --git a/doc/rst/Modify_overview.rst b/doc/src/Modify_overview.rst similarity index 100% rename from doc/rst/Modify_overview.rst rename to doc/src/Modify_overview.rst diff --git a/doc/rst/Modify_pair.rst b/doc/src/Modify_pair.rst similarity index 100% rename from doc/rst/Modify_pair.rst rename to doc/src/Modify_pair.rst diff --git a/doc/rst/Modify_region.rst b/doc/src/Modify_region.rst similarity index 100% rename from doc/rst/Modify_region.rst rename to doc/src/Modify_region.rst diff --git a/doc/rst/Modify_thermo.rst b/doc/src/Modify_thermo.rst similarity index 100% rename from doc/rst/Modify_thermo.rst rename to doc/src/Modify_thermo.rst diff --git a/doc/rst/Modify_variable.rst b/doc/src/Modify_variable.rst similarity index 100% rename from doc/rst/Modify_variable.rst rename to doc/src/Modify_variable.rst diff --git a/doc/rst/Packages.rst b/doc/src/Packages.rst similarity index 100% rename from doc/rst/Packages.rst rename to doc/src/Packages.rst diff --git a/doc/rst/Packages_details.rst b/doc/src/Packages_details.rst similarity index 100% rename from doc/rst/Packages_details.rst rename to doc/src/Packages_details.rst diff --git a/doc/rst/Packages_standard.rst b/doc/src/Packages_standard.rst similarity index 100% rename from doc/rst/Packages_standard.rst rename to doc/src/Packages_standard.rst diff --git a/doc/rst/Packages_user.rst b/doc/src/Packages_user.rst similarity index 100% rename from doc/rst/Packages_user.rst rename to doc/src/Packages_user.rst diff --git a/doc/rst/Python_call.rst b/doc/src/Python_call.rst similarity index 100% rename from doc/rst/Python_call.rst rename to doc/src/Python_call.rst diff --git a/doc/rst/Python_examples.rst b/doc/src/Python_examples.rst similarity index 100% rename from doc/rst/Python_examples.rst rename to doc/src/Python_examples.rst diff --git a/doc/rst/Python_head.rst b/doc/src/Python_head.rst similarity index 100% rename from doc/rst/Python_head.rst rename to doc/src/Python_head.rst diff --git a/doc/rst/Python_install.rst b/doc/src/Python_install.rst similarity index 100% rename from doc/rst/Python_install.rst rename to doc/src/Python_install.rst diff --git a/doc/rst/Python_library.rst b/doc/src/Python_library.rst similarity index 100% rename from doc/rst/Python_library.rst rename to doc/src/Python_library.rst diff --git a/doc/rst/Python_mpi.rst b/doc/src/Python_mpi.rst similarity index 100% rename from doc/rst/Python_mpi.rst rename to doc/src/Python_mpi.rst diff --git a/doc/rst/Python_overview.rst b/doc/src/Python_overview.rst similarity index 100% rename from doc/rst/Python_overview.rst rename to doc/src/Python_overview.rst diff --git a/doc/rst/Python_pylammps.rst b/doc/src/Python_pylammps.rst similarity index 100% rename from doc/rst/Python_pylammps.rst rename to doc/src/Python_pylammps.rst diff --git a/doc/rst/Python_run.rst b/doc/src/Python_run.rst similarity index 100% rename from doc/rst/Python_run.rst rename to doc/src/Python_run.rst diff --git a/doc/rst/Python_shlib.rst b/doc/src/Python_shlib.rst similarity index 100% rename from doc/rst/Python_shlib.rst rename to doc/src/Python_shlib.rst diff --git a/doc/rst/Python_test.rst b/doc/src/Python_test.rst similarity index 100% rename from doc/rst/Python_test.rst rename to doc/src/Python_test.rst diff --git a/doc/rst/Run_basics.rst b/doc/src/Run_basics.rst similarity index 100% rename from doc/rst/Run_basics.rst rename to doc/src/Run_basics.rst diff --git a/doc/rst/Run_head.rst b/doc/src/Run_head.rst similarity index 100% rename from doc/rst/Run_head.rst rename to doc/src/Run_head.rst diff --git a/doc/rst/Run_options.rst b/doc/src/Run_options.rst similarity index 100% rename from doc/rst/Run_options.rst rename to doc/src/Run_options.rst diff --git a/doc/rst/Run_output.rst b/doc/src/Run_output.rst similarity index 100% rename from doc/rst/Run_output.rst rename to doc/src/Run_output.rst diff --git a/doc/rst/Run_windows.rst b/doc/src/Run_windows.rst similarity index 100% rename from doc/rst/Run_windows.rst rename to doc/src/Run_windows.rst diff --git a/doc/rst/Speed.rst b/doc/src/Speed.rst similarity index 100% rename from doc/rst/Speed.rst rename to doc/src/Speed.rst diff --git a/doc/rst/Speed_bench.rst b/doc/src/Speed_bench.rst similarity index 100% rename from doc/rst/Speed_bench.rst rename to doc/src/Speed_bench.rst diff --git a/doc/rst/Speed_compare.rst b/doc/src/Speed_compare.rst similarity index 100% rename from doc/rst/Speed_compare.rst rename to doc/src/Speed_compare.rst diff --git a/doc/rst/Speed_gpu.rst b/doc/src/Speed_gpu.rst similarity index 100% rename from doc/rst/Speed_gpu.rst rename to doc/src/Speed_gpu.rst diff --git a/doc/rst/Speed_intel.rst b/doc/src/Speed_intel.rst similarity index 100% rename from doc/rst/Speed_intel.rst rename to doc/src/Speed_intel.rst diff --git a/doc/rst/Speed_kokkos.rst b/doc/src/Speed_kokkos.rst similarity index 100% rename from doc/rst/Speed_kokkos.rst rename to doc/src/Speed_kokkos.rst diff --git a/doc/rst/Speed_measure.rst b/doc/src/Speed_measure.rst similarity index 100% rename from doc/rst/Speed_measure.rst rename to doc/src/Speed_measure.rst diff --git a/doc/rst/Speed_omp.rst b/doc/src/Speed_omp.rst similarity index 100% rename from doc/rst/Speed_omp.rst rename to doc/src/Speed_omp.rst diff --git a/doc/rst/Speed_opt.rst b/doc/src/Speed_opt.rst similarity index 100% rename from doc/rst/Speed_opt.rst rename to doc/src/Speed_opt.rst diff --git a/doc/rst/Speed_packages.rst b/doc/src/Speed_packages.rst similarity index 100% rename from doc/rst/Speed_packages.rst rename to doc/src/Speed_packages.rst diff --git a/doc/rst/Speed_tips.rst b/doc/src/Speed_tips.rst similarity index 100% rename from doc/rst/Speed_tips.rst rename to doc/src/Speed_tips.rst diff --git a/doc/rst/Tools.rst b/doc/src/Tools.rst similarity index 100% rename from doc/rst/Tools.rst rename to doc/src/Tools.rst diff --git a/doc/rst/angle_charmm.rst b/doc/src/angle_charmm.rst similarity index 100% rename from doc/rst/angle_charmm.rst rename to doc/src/angle_charmm.rst diff --git a/doc/rst/angle_class2.rst b/doc/src/angle_class2.rst similarity index 100% rename from doc/rst/angle_class2.rst rename to doc/src/angle_class2.rst diff --git a/doc/rst/angle_coeff.rst b/doc/src/angle_coeff.rst similarity index 100% rename from doc/rst/angle_coeff.rst rename to doc/src/angle_coeff.rst diff --git a/doc/rst/angle_cosine.rst b/doc/src/angle_cosine.rst similarity index 100% rename from doc/rst/angle_cosine.rst rename to doc/src/angle_cosine.rst diff --git a/doc/rst/angle_cosine_buck6d.rst b/doc/src/angle_cosine_buck6d.rst similarity index 100% rename from doc/rst/angle_cosine_buck6d.rst rename to doc/src/angle_cosine_buck6d.rst diff --git a/doc/rst/angle_cosine_delta.rst b/doc/src/angle_cosine_delta.rst similarity index 100% rename from doc/rst/angle_cosine_delta.rst rename to doc/src/angle_cosine_delta.rst diff --git a/doc/rst/angle_cosine_periodic.rst b/doc/src/angle_cosine_periodic.rst similarity index 100% rename from doc/rst/angle_cosine_periodic.rst rename to doc/src/angle_cosine_periodic.rst diff --git a/doc/rst/angle_cosine_shift.rst b/doc/src/angle_cosine_shift.rst similarity index 100% rename from doc/rst/angle_cosine_shift.rst rename to doc/src/angle_cosine_shift.rst diff --git a/doc/rst/angle_cosine_shift_exp.rst b/doc/src/angle_cosine_shift_exp.rst similarity index 100% rename from doc/rst/angle_cosine_shift_exp.rst rename to doc/src/angle_cosine_shift_exp.rst diff --git a/doc/rst/angle_cosine_squared.rst b/doc/src/angle_cosine_squared.rst similarity index 100% rename from doc/rst/angle_cosine_squared.rst rename to doc/src/angle_cosine_squared.rst diff --git a/doc/rst/angle_cross.rst b/doc/src/angle_cross.rst similarity index 100% rename from doc/rst/angle_cross.rst rename to doc/src/angle_cross.rst diff --git a/doc/rst/angle_dipole.rst b/doc/src/angle_dipole.rst similarity index 100% rename from doc/rst/angle_dipole.rst rename to doc/src/angle_dipole.rst diff --git a/doc/rst/angle_fourier.rst b/doc/src/angle_fourier.rst similarity index 100% rename from doc/rst/angle_fourier.rst rename to doc/src/angle_fourier.rst diff --git a/doc/rst/angle_fourier_simple.rst b/doc/src/angle_fourier_simple.rst similarity index 100% rename from doc/rst/angle_fourier_simple.rst rename to doc/src/angle_fourier_simple.rst diff --git a/doc/rst/angle_harmonic.rst b/doc/src/angle_harmonic.rst similarity index 100% rename from doc/rst/angle_harmonic.rst rename to doc/src/angle_harmonic.rst diff --git a/doc/rst/angle_hybrid.rst b/doc/src/angle_hybrid.rst similarity index 100% rename from doc/rst/angle_hybrid.rst rename to doc/src/angle_hybrid.rst diff --git a/doc/rst/angle_mm3.rst b/doc/src/angle_mm3.rst similarity index 100% rename from doc/rst/angle_mm3.rst rename to doc/src/angle_mm3.rst diff --git a/doc/rst/angle_none.rst b/doc/src/angle_none.rst similarity index 100% rename from doc/rst/angle_none.rst rename to doc/src/angle_none.rst diff --git a/doc/rst/angle_quartic.rst b/doc/src/angle_quartic.rst similarity index 100% rename from doc/rst/angle_quartic.rst rename to doc/src/angle_quartic.rst diff --git a/doc/rst/angle_sdk.rst b/doc/src/angle_sdk.rst similarity index 100% rename from doc/rst/angle_sdk.rst rename to doc/src/angle_sdk.rst diff --git a/doc/rst/angle_style.rst b/doc/src/angle_style.rst similarity index 100% rename from doc/rst/angle_style.rst rename to doc/src/angle_style.rst diff --git a/doc/rst/angle_table.rst b/doc/src/angle_table.rst similarity index 100% rename from doc/rst/angle_table.rst rename to doc/src/angle_table.rst diff --git a/doc/rst/angle_zero.rst b/doc/src/angle_zero.rst similarity index 100% rename from doc/rst/angle_zero.rst rename to doc/src/angle_zero.rst diff --git a/doc/src/angles.rst b/doc/src/angles.rst new file mode 100644 index 0000000000000000000000000000000000000000..79c52a552570f5f738cddc7b0da2bee4650fef05 --- /dev/null +++ b/doc/src/angles.rst @@ -0,0 +1,9 @@ +Angle Styles +############ + + +.. toctree:: + :maxdepth: 1 + :glob: + + angle_* diff --git a/doc/src/angles.txt b/doc/src/angles.txt deleted file mode 100644 index 3d8a47b2ebceb834ca91aec44d81dd42f5b4c9e2..0000000000000000000000000000000000000000 --- a/doc/src/angles.txt +++ /dev/null @@ -1,30 +0,0 @@ -Angle Styles :h1 - - diff --git a/doc/rst/atom_modify.rst b/doc/src/atom_modify.rst similarity index 100% rename from doc/rst/atom_modify.rst rename to doc/src/atom_modify.rst diff --git a/doc/rst/atom_style.rst b/doc/src/atom_style.rst similarity index 100% rename from doc/rst/atom_style.rst rename to doc/src/atom_style.rst diff --git a/doc/rst/balance.rst b/doc/src/balance.rst similarity index 100% rename from doc/rst/balance.rst rename to doc/src/balance.rst diff --git a/doc/rst/bond_class2.rst b/doc/src/bond_class2.rst similarity index 100% rename from doc/rst/bond_class2.rst rename to doc/src/bond_class2.rst diff --git a/doc/rst/bond_coeff.rst b/doc/src/bond_coeff.rst similarity index 100% rename from doc/rst/bond_coeff.rst rename to doc/src/bond_coeff.rst diff --git a/doc/rst/bond_fene.rst b/doc/src/bond_fene.rst similarity index 100% rename from doc/rst/bond_fene.rst rename to doc/src/bond_fene.rst diff --git a/doc/rst/bond_fene_expand.rst b/doc/src/bond_fene_expand.rst similarity index 100% rename from doc/rst/bond_fene_expand.rst rename to doc/src/bond_fene_expand.rst diff --git a/doc/rst/bond_gromos.rst b/doc/src/bond_gromos.rst similarity index 100% rename from doc/rst/bond_gromos.rst rename to doc/src/bond_gromos.rst diff --git a/doc/rst/bond_harmonic.rst b/doc/src/bond_harmonic.rst similarity index 100% rename from doc/rst/bond_harmonic.rst rename to doc/src/bond_harmonic.rst diff --git a/doc/rst/bond_harmonic_shift.rst b/doc/src/bond_harmonic_shift.rst similarity index 100% rename from doc/rst/bond_harmonic_shift.rst rename to doc/src/bond_harmonic_shift.rst diff --git a/doc/rst/bond_harmonic_shift_cut.rst b/doc/src/bond_harmonic_shift_cut.rst similarity index 100% rename from doc/rst/bond_harmonic_shift_cut.rst rename to doc/src/bond_harmonic_shift_cut.rst diff --git a/doc/rst/bond_hybrid.rst b/doc/src/bond_hybrid.rst similarity index 100% rename from doc/rst/bond_hybrid.rst rename to doc/src/bond_hybrid.rst diff --git a/doc/rst/bond_mm3.rst b/doc/src/bond_mm3.rst similarity index 100% rename from doc/rst/bond_mm3.rst rename to doc/src/bond_mm3.rst diff --git a/doc/rst/bond_morse.rst b/doc/src/bond_morse.rst similarity index 100% rename from doc/rst/bond_morse.rst rename to doc/src/bond_morse.rst diff --git a/doc/rst/bond_none.rst b/doc/src/bond_none.rst similarity index 100% rename from doc/rst/bond_none.rst rename to doc/src/bond_none.rst diff --git a/doc/rst/bond_nonlinear.rst b/doc/src/bond_nonlinear.rst similarity index 100% rename from doc/rst/bond_nonlinear.rst rename to doc/src/bond_nonlinear.rst diff --git a/doc/rst/bond_oxdna.rst b/doc/src/bond_oxdna.rst similarity index 100% rename from doc/rst/bond_oxdna.rst rename to doc/src/bond_oxdna.rst diff --git a/doc/rst/bond_quartic.rst b/doc/src/bond_quartic.rst similarity index 100% rename from doc/rst/bond_quartic.rst rename to doc/src/bond_quartic.rst diff --git a/doc/rst/bond_style.rst b/doc/src/bond_style.rst similarity index 100% rename from doc/rst/bond_style.rst rename to doc/src/bond_style.rst diff --git a/doc/rst/bond_table.rst b/doc/src/bond_table.rst similarity index 100% rename from doc/rst/bond_table.rst rename to doc/src/bond_table.rst diff --git a/doc/rst/bond_write.rst b/doc/src/bond_write.rst similarity index 100% rename from doc/rst/bond_write.rst rename to doc/src/bond_write.rst diff --git a/doc/rst/bond_zero.rst b/doc/src/bond_zero.rst similarity index 100% rename from doc/rst/bond_zero.rst rename to doc/src/bond_zero.rst diff --git a/doc/src/bonds.rst b/doc/src/bonds.rst new file mode 100644 index 0000000000000000000000000000000000000000..3019e0c177b8ce344097502816f83b32dcae3250 --- /dev/null +++ b/doc/src/bonds.rst @@ -0,0 +1,9 @@ +Bond Styles +########### + + +.. toctree:: + :maxdepth: 1 + :glob: + + bond_* diff --git a/doc/src/bonds.txt b/doc/src/bonds.txt deleted file mode 100644 index 48896e711c3bcdc57dd637c00ec0d285a6914f61..0000000000000000000000000000000000000000 --- a/doc/src/bonds.txt +++ /dev/null @@ -1,25 +0,0 @@ -Bond Styles :h1 - - diff --git a/doc/rst/boundary.rst b/doc/src/boundary.rst similarity index 100% rename from doc/rst/boundary.rst rename to doc/src/boundary.rst diff --git a/doc/rst/box.rst b/doc/src/box.rst similarity index 100% rename from doc/rst/box.rst rename to doc/src/box.rst diff --git a/doc/rst/change_box.rst b/doc/src/change_box.rst similarity index 100% rename from doc/rst/change_box.rst rename to doc/src/change_box.rst diff --git a/doc/rst/clear.rst b/doc/src/clear.rst similarity index 100% rename from doc/rst/clear.rst rename to doc/src/clear.rst diff --git a/doc/rst/comm_modify.rst b/doc/src/comm_modify.rst similarity index 100% rename from doc/rst/comm_modify.rst rename to doc/src/comm_modify.rst diff --git a/doc/rst/comm_style.rst b/doc/src/comm_style.rst similarity index 100% rename from doc/rst/comm_style.rst rename to doc/src/comm_style.rst diff --git a/doc/rst/commands_list.rst b/doc/src/commands_list.rst similarity index 100% rename from doc/rst/commands_list.rst rename to doc/src/commands_list.rst diff --git a/doc/rst/compute.rst b/doc/src/compute.rst similarity index 100% rename from doc/rst/compute.rst rename to doc/src/compute.rst diff --git a/doc/rst/compute_ackland_atom.rst b/doc/src/compute_ackland_atom.rst similarity index 100% rename from doc/rst/compute_ackland_atom.rst rename to doc/src/compute_ackland_atom.rst diff --git a/doc/rst/compute_adf.rst b/doc/src/compute_adf.rst similarity index 100% rename from doc/rst/compute_adf.rst rename to doc/src/compute_adf.rst diff --git a/doc/rst/compute_angle.rst b/doc/src/compute_angle.rst similarity index 100% rename from doc/rst/compute_angle.rst rename to doc/src/compute_angle.rst diff --git a/doc/rst/compute_angle_local.rst b/doc/src/compute_angle_local.rst similarity index 100% rename from doc/rst/compute_angle_local.rst rename to doc/src/compute_angle_local.rst diff --git a/doc/rst/compute_angmom_chunk.rst b/doc/src/compute_angmom_chunk.rst similarity index 100% rename from doc/rst/compute_angmom_chunk.rst rename to doc/src/compute_angmom_chunk.rst diff --git a/doc/rst/compute_basal_atom.rst b/doc/src/compute_basal_atom.rst similarity index 100% rename from doc/rst/compute_basal_atom.rst rename to doc/src/compute_basal_atom.rst diff --git a/doc/rst/compute_body_local.rst b/doc/src/compute_body_local.rst similarity index 100% rename from doc/rst/compute_body_local.rst rename to doc/src/compute_body_local.rst diff --git a/doc/rst/compute_bond.rst b/doc/src/compute_bond.rst similarity index 100% rename from doc/rst/compute_bond.rst rename to doc/src/compute_bond.rst diff --git a/doc/rst/compute_bond_local.rst b/doc/src/compute_bond_local.rst similarity index 100% rename from doc/rst/compute_bond_local.rst rename to doc/src/compute_bond_local.rst diff --git a/doc/rst/compute_centro_atom.rst b/doc/src/compute_centro_atom.rst similarity index 100% rename from doc/rst/compute_centro_atom.rst rename to doc/src/compute_centro_atom.rst diff --git a/doc/rst/compute_chunk_atom.rst b/doc/src/compute_chunk_atom.rst similarity index 100% rename from doc/rst/compute_chunk_atom.rst rename to doc/src/compute_chunk_atom.rst diff --git a/doc/rst/compute_chunk_spread_atom.rst b/doc/src/compute_chunk_spread_atom.rst similarity index 100% rename from doc/rst/compute_chunk_spread_atom.rst rename to doc/src/compute_chunk_spread_atom.rst diff --git a/doc/rst/compute_cluster_atom.rst b/doc/src/compute_cluster_atom.rst similarity index 100% rename from doc/rst/compute_cluster_atom.rst rename to doc/src/compute_cluster_atom.rst diff --git a/doc/rst/compute_cna_atom.rst b/doc/src/compute_cna_atom.rst similarity index 100% rename from doc/rst/compute_cna_atom.rst rename to doc/src/compute_cna_atom.rst diff --git a/doc/rst/compute_cnp_atom.rst b/doc/src/compute_cnp_atom.rst similarity index 100% rename from doc/rst/compute_cnp_atom.rst rename to doc/src/compute_cnp_atom.rst diff --git a/doc/rst/compute_com.rst b/doc/src/compute_com.rst similarity index 100% rename from doc/rst/compute_com.rst rename to doc/src/compute_com.rst diff --git a/doc/rst/compute_com_chunk.rst b/doc/src/compute_com_chunk.rst similarity index 100% rename from doc/rst/compute_com_chunk.rst rename to doc/src/compute_com_chunk.rst diff --git a/doc/rst/compute_contact_atom.rst b/doc/src/compute_contact_atom.rst similarity index 100% rename from doc/rst/compute_contact_atom.rst rename to doc/src/compute_contact_atom.rst diff --git a/doc/rst/compute_coord_atom.rst b/doc/src/compute_coord_atom.rst similarity index 100% rename from doc/rst/compute_coord_atom.rst rename to doc/src/compute_coord_atom.rst diff --git a/doc/rst/compute_damage_atom.rst b/doc/src/compute_damage_atom.rst similarity index 100% rename from doc/rst/compute_damage_atom.rst rename to doc/src/compute_damage_atom.rst diff --git a/doc/rst/compute_dihedral.rst b/doc/src/compute_dihedral.rst similarity index 100% rename from doc/rst/compute_dihedral.rst rename to doc/src/compute_dihedral.rst diff --git a/doc/rst/compute_dihedral_local.rst b/doc/src/compute_dihedral_local.rst similarity index 100% rename from doc/rst/compute_dihedral_local.rst rename to doc/src/compute_dihedral_local.rst diff --git a/doc/rst/compute_dilatation_atom.rst b/doc/src/compute_dilatation_atom.rst similarity index 100% rename from doc/rst/compute_dilatation_atom.rst rename to doc/src/compute_dilatation_atom.rst diff --git a/doc/rst/compute_dipole_chunk.rst b/doc/src/compute_dipole_chunk.rst similarity index 100% rename from doc/rst/compute_dipole_chunk.rst rename to doc/src/compute_dipole_chunk.rst diff --git a/doc/rst/compute_displace_atom.rst b/doc/src/compute_displace_atom.rst similarity index 100% rename from doc/rst/compute_displace_atom.rst rename to doc/src/compute_displace_atom.rst diff --git a/doc/rst/compute_dpd.rst b/doc/src/compute_dpd.rst similarity index 100% rename from doc/rst/compute_dpd.rst rename to doc/src/compute_dpd.rst diff --git a/doc/rst/compute_dpd_atom.rst b/doc/src/compute_dpd_atom.rst similarity index 100% rename from doc/rst/compute_dpd_atom.rst rename to doc/src/compute_dpd_atom.rst diff --git a/doc/rst/compute_edpd_temp_atom.rst b/doc/src/compute_edpd_temp_atom.rst similarity index 100% rename from doc/rst/compute_edpd_temp_atom.rst rename to doc/src/compute_edpd_temp_atom.rst diff --git a/doc/rst/compute_entropy_atom.rst b/doc/src/compute_entropy_atom.rst similarity index 100% rename from doc/rst/compute_entropy_atom.rst rename to doc/src/compute_entropy_atom.rst diff --git a/doc/rst/compute_erotate_asphere.rst b/doc/src/compute_erotate_asphere.rst similarity index 100% rename from doc/rst/compute_erotate_asphere.rst rename to doc/src/compute_erotate_asphere.rst diff --git a/doc/rst/compute_erotate_rigid.rst b/doc/src/compute_erotate_rigid.rst similarity index 100% rename from doc/rst/compute_erotate_rigid.rst rename to doc/src/compute_erotate_rigid.rst diff --git a/doc/rst/compute_erotate_sphere.rst b/doc/src/compute_erotate_sphere.rst similarity index 100% rename from doc/rst/compute_erotate_sphere.rst rename to doc/src/compute_erotate_sphere.rst diff --git a/doc/rst/compute_erotate_sphere_atom.rst b/doc/src/compute_erotate_sphere_atom.rst similarity index 100% rename from doc/rst/compute_erotate_sphere_atom.rst rename to doc/src/compute_erotate_sphere_atom.rst diff --git a/doc/rst/compute_event_displace.rst b/doc/src/compute_event_displace.rst similarity index 100% rename from doc/rst/compute_event_displace.rst rename to doc/src/compute_event_displace.rst diff --git a/doc/rst/compute_fep.rst b/doc/src/compute_fep.rst similarity index 100% rename from doc/rst/compute_fep.rst rename to doc/src/compute_fep.rst diff --git a/doc/rst/compute_global_atom.rst b/doc/src/compute_global_atom.rst similarity index 100% rename from doc/rst/compute_global_atom.rst rename to doc/src/compute_global_atom.rst diff --git a/doc/rst/compute_group_group.rst b/doc/src/compute_group_group.rst similarity index 100% rename from doc/rst/compute_group_group.rst rename to doc/src/compute_group_group.rst diff --git a/doc/rst/compute_gyration.rst b/doc/src/compute_gyration.rst similarity index 100% rename from doc/rst/compute_gyration.rst rename to doc/src/compute_gyration.rst diff --git a/doc/rst/compute_gyration_chunk.rst b/doc/src/compute_gyration_chunk.rst similarity index 100% rename from doc/rst/compute_gyration_chunk.rst rename to doc/src/compute_gyration_chunk.rst diff --git a/doc/rst/compute_gyration_shape.rst b/doc/src/compute_gyration_shape.rst similarity index 100% rename from doc/rst/compute_gyration_shape.rst rename to doc/src/compute_gyration_shape.rst diff --git a/doc/rst/compute_heat_flux.rst b/doc/src/compute_heat_flux.rst similarity index 100% rename from doc/rst/compute_heat_flux.rst rename to doc/src/compute_heat_flux.rst diff --git a/doc/rst/compute_hexorder_atom.rst b/doc/src/compute_hexorder_atom.rst similarity index 100% rename from doc/rst/compute_hexorder_atom.rst rename to doc/src/compute_hexorder_atom.rst diff --git a/doc/rst/compute_hma.rst b/doc/src/compute_hma.rst similarity index 100% rename from doc/rst/compute_hma.rst rename to doc/src/compute_hma.rst diff --git a/doc/rst/compute_improper.rst b/doc/src/compute_improper.rst similarity index 100% rename from doc/rst/compute_improper.rst rename to doc/src/compute_improper.rst diff --git a/doc/rst/compute_improper_local.rst b/doc/src/compute_improper_local.rst similarity index 100% rename from doc/rst/compute_improper_local.rst rename to doc/src/compute_improper_local.rst diff --git a/doc/rst/compute_inertia_chunk.rst b/doc/src/compute_inertia_chunk.rst similarity index 100% rename from doc/rst/compute_inertia_chunk.rst rename to doc/src/compute_inertia_chunk.rst diff --git a/doc/rst/compute_ke.rst b/doc/src/compute_ke.rst similarity index 100% rename from doc/rst/compute_ke.rst rename to doc/src/compute_ke.rst diff --git a/doc/rst/compute_ke_atom.rst b/doc/src/compute_ke_atom.rst similarity index 100% rename from doc/rst/compute_ke_atom.rst rename to doc/src/compute_ke_atom.rst diff --git a/doc/rst/compute_ke_atom_eff.rst b/doc/src/compute_ke_atom_eff.rst similarity index 100% rename from doc/rst/compute_ke_atom_eff.rst rename to doc/src/compute_ke_atom_eff.rst diff --git a/doc/rst/compute_ke_eff.rst b/doc/src/compute_ke_eff.rst similarity index 100% rename from doc/rst/compute_ke_eff.rst rename to doc/src/compute_ke_eff.rst diff --git a/doc/rst/compute_ke_rigid.rst b/doc/src/compute_ke_rigid.rst similarity index 100% rename from doc/rst/compute_ke_rigid.rst rename to doc/src/compute_ke_rigid.rst diff --git a/doc/rst/compute_meso_e_atom.rst b/doc/src/compute_meso_e_atom.rst similarity index 100% rename from doc/rst/compute_meso_e_atom.rst rename to doc/src/compute_meso_e_atom.rst diff --git a/doc/rst/compute_meso_rho_atom.rst b/doc/src/compute_meso_rho_atom.rst similarity index 100% rename from doc/rst/compute_meso_rho_atom.rst rename to doc/src/compute_meso_rho_atom.rst diff --git a/doc/rst/compute_meso_t_atom.rst b/doc/src/compute_meso_t_atom.rst similarity index 100% rename from doc/rst/compute_meso_t_atom.rst rename to doc/src/compute_meso_t_atom.rst diff --git a/doc/rst/compute_modify.rst b/doc/src/compute_modify.rst similarity index 100% rename from doc/rst/compute_modify.rst rename to doc/src/compute_modify.rst diff --git a/doc/rst/compute_momentum.rst b/doc/src/compute_momentum.rst similarity index 100% rename from doc/rst/compute_momentum.rst rename to doc/src/compute_momentum.rst diff --git a/doc/rst/compute_msd.rst b/doc/src/compute_msd.rst similarity index 100% rename from doc/rst/compute_msd.rst rename to doc/src/compute_msd.rst diff --git a/doc/rst/compute_msd_chunk.rst b/doc/src/compute_msd_chunk.rst similarity index 100% rename from doc/rst/compute_msd_chunk.rst rename to doc/src/compute_msd_chunk.rst diff --git a/doc/rst/compute_msd_nongauss.rst b/doc/src/compute_msd_nongauss.rst similarity index 100% rename from doc/rst/compute_msd_nongauss.rst rename to doc/src/compute_msd_nongauss.rst diff --git a/doc/rst/compute_omega_chunk.rst b/doc/src/compute_omega_chunk.rst similarity index 100% rename from doc/rst/compute_omega_chunk.rst rename to doc/src/compute_omega_chunk.rst diff --git a/doc/rst/compute_orientorder_atom.rst b/doc/src/compute_orientorder_atom.rst similarity index 100% rename from doc/rst/compute_orientorder_atom.rst rename to doc/src/compute_orientorder_atom.rst diff --git a/doc/rst/compute_pair.rst b/doc/src/compute_pair.rst similarity index 100% rename from doc/rst/compute_pair.rst rename to doc/src/compute_pair.rst diff --git a/doc/rst/compute_pair_local.rst b/doc/src/compute_pair_local.rst similarity index 100% rename from doc/rst/compute_pair_local.rst rename to doc/src/compute_pair_local.rst diff --git a/doc/rst/compute_pe.rst b/doc/src/compute_pe.rst similarity index 100% rename from doc/rst/compute_pe.rst rename to doc/src/compute_pe.rst diff --git a/doc/rst/compute_pe_atom.rst b/doc/src/compute_pe_atom.rst similarity index 100% rename from doc/rst/compute_pe_atom.rst rename to doc/src/compute_pe_atom.rst diff --git a/doc/rst/compute_plasticity_atom.rst b/doc/src/compute_plasticity_atom.rst similarity index 100% rename from doc/rst/compute_plasticity_atom.rst rename to doc/src/compute_plasticity_atom.rst diff --git a/doc/rst/compute_pressure.rst b/doc/src/compute_pressure.rst similarity index 100% rename from doc/rst/compute_pressure.rst rename to doc/src/compute_pressure.rst diff --git a/doc/rst/compute_pressure_cylinder.rst b/doc/src/compute_pressure_cylinder.rst similarity index 100% rename from doc/rst/compute_pressure_cylinder.rst rename to doc/src/compute_pressure_cylinder.rst diff --git a/doc/rst/compute_pressure_uef.rst b/doc/src/compute_pressure_uef.rst similarity index 100% rename from doc/rst/compute_pressure_uef.rst rename to doc/src/compute_pressure_uef.rst diff --git a/doc/rst/compute_property_atom.rst b/doc/src/compute_property_atom.rst similarity index 100% rename from doc/rst/compute_property_atom.rst rename to doc/src/compute_property_atom.rst diff --git a/doc/rst/compute_property_chunk.rst b/doc/src/compute_property_chunk.rst similarity index 100% rename from doc/rst/compute_property_chunk.rst rename to doc/src/compute_property_chunk.rst diff --git a/doc/rst/compute_property_local.rst b/doc/src/compute_property_local.rst similarity index 100% rename from doc/rst/compute_property_local.rst rename to doc/src/compute_property_local.rst diff --git a/doc/rst/compute_ptm_atom.rst b/doc/src/compute_ptm_atom.rst similarity index 100% rename from doc/rst/compute_ptm_atom.rst rename to doc/src/compute_ptm_atom.rst diff --git a/doc/rst/compute_rdf.rst b/doc/src/compute_rdf.rst similarity index 100% rename from doc/rst/compute_rdf.rst rename to doc/src/compute_rdf.rst diff --git a/doc/rst/compute_reduce.rst b/doc/src/compute_reduce.rst similarity index 100% rename from doc/rst/compute_reduce.rst rename to doc/src/compute_reduce.rst diff --git a/doc/rst/compute_reduce_chunk.rst b/doc/src/compute_reduce_chunk.rst similarity index 100% rename from doc/rst/compute_reduce_chunk.rst rename to doc/src/compute_reduce_chunk.rst diff --git a/doc/rst/compute_rigid_local.rst b/doc/src/compute_rigid_local.rst similarity index 100% rename from doc/rst/compute_rigid_local.rst rename to doc/src/compute_rigid_local.rst diff --git a/doc/rst/compute_saed.rst b/doc/src/compute_saed.rst similarity index 100% rename from doc/rst/compute_saed.rst rename to doc/src/compute_saed.rst diff --git a/doc/rst/compute_slice.rst b/doc/src/compute_slice.rst similarity index 100% rename from doc/rst/compute_slice.rst rename to doc/src/compute_slice.rst diff --git a/doc/rst/compute_smd_contact_radius.rst b/doc/src/compute_smd_contact_radius.rst similarity index 100% rename from doc/rst/compute_smd_contact_radius.rst rename to doc/src/compute_smd_contact_radius.rst diff --git a/doc/rst/compute_smd_damage.rst b/doc/src/compute_smd_damage.rst similarity index 100% rename from doc/rst/compute_smd_damage.rst rename to doc/src/compute_smd_damage.rst diff --git a/doc/rst/compute_smd_hourglass_error.rst b/doc/src/compute_smd_hourglass_error.rst similarity index 100% rename from doc/rst/compute_smd_hourglass_error.rst rename to doc/src/compute_smd_hourglass_error.rst diff --git a/doc/rst/compute_smd_internal_energy.rst b/doc/src/compute_smd_internal_energy.rst similarity index 100% rename from doc/rst/compute_smd_internal_energy.rst rename to doc/src/compute_smd_internal_energy.rst diff --git a/doc/rst/compute_smd_plastic_strain.rst b/doc/src/compute_smd_plastic_strain.rst similarity index 100% rename from doc/rst/compute_smd_plastic_strain.rst rename to doc/src/compute_smd_plastic_strain.rst diff --git a/doc/rst/compute_smd_plastic_strain_rate.rst b/doc/src/compute_smd_plastic_strain_rate.rst similarity index 100% rename from doc/rst/compute_smd_plastic_strain_rate.rst rename to doc/src/compute_smd_plastic_strain_rate.rst diff --git a/doc/rst/compute_smd_rho.rst b/doc/src/compute_smd_rho.rst similarity index 100% rename from doc/rst/compute_smd_rho.rst rename to doc/src/compute_smd_rho.rst diff --git a/doc/rst/compute_smd_tlsph_defgrad.rst b/doc/src/compute_smd_tlsph_defgrad.rst similarity index 100% rename from doc/rst/compute_smd_tlsph_defgrad.rst rename to doc/src/compute_smd_tlsph_defgrad.rst diff --git a/doc/rst/compute_smd_tlsph_dt.rst b/doc/src/compute_smd_tlsph_dt.rst similarity index 100% rename from doc/rst/compute_smd_tlsph_dt.rst rename to doc/src/compute_smd_tlsph_dt.rst diff --git a/doc/rst/compute_smd_tlsph_num_neighs.rst b/doc/src/compute_smd_tlsph_num_neighs.rst similarity index 100% rename from doc/rst/compute_smd_tlsph_num_neighs.rst rename to doc/src/compute_smd_tlsph_num_neighs.rst diff --git a/doc/rst/compute_smd_tlsph_shape.rst b/doc/src/compute_smd_tlsph_shape.rst similarity index 100% rename from doc/rst/compute_smd_tlsph_shape.rst rename to doc/src/compute_smd_tlsph_shape.rst diff --git a/doc/rst/compute_smd_tlsph_strain.rst b/doc/src/compute_smd_tlsph_strain.rst similarity index 100% rename from doc/rst/compute_smd_tlsph_strain.rst rename to doc/src/compute_smd_tlsph_strain.rst diff --git a/doc/rst/compute_smd_tlsph_strain_rate.rst b/doc/src/compute_smd_tlsph_strain_rate.rst similarity index 100% rename from doc/rst/compute_smd_tlsph_strain_rate.rst rename to doc/src/compute_smd_tlsph_strain_rate.rst diff --git a/doc/rst/compute_smd_tlsph_stress.rst b/doc/src/compute_smd_tlsph_stress.rst similarity index 100% rename from doc/rst/compute_smd_tlsph_stress.rst rename to doc/src/compute_smd_tlsph_stress.rst diff --git a/doc/rst/compute_smd_triangle_vertices.rst b/doc/src/compute_smd_triangle_vertices.rst similarity index 100% rename from doc/rst/compute_smd_triangle_vertices.rst rename to doc/src/compute_smd_triangle_vertices.rst diff --git a/doc/rst/compute_smd_ulsph_num_neighs.rst b/doc/src/compute_smd_ulsph_num_neighs.rst similarity index 100% rename from doc/rst/compute_smd_ulsph_num_neighs.rst rename to doc/src/compute_smd_ulsph_num_neighs.rst diff --git a/doc/rst/compute_smd_ulsph_strain.rst b/doc/src/compute_smd_ulsph_strain.rst similarity index 100% rename from doc/rst/compute_smd_ulsph_strain.rst rename to doc/src/compute_smd_ulsph_strain.rst diff --git a/doc/rst/compute_smd_ulsph_strain_rate.rst b/doc/src/compute_smd_ulsph_strain_rate.rst similarity index 100% rename from doc/rst/compute_smd_ulsph_strain_rate.rst rename to doc/src/compute_smd_ulsph_strain_rate.rst diff --git a/doc/rst/compute_smd_ulsph_stress.rst b/doc/src/compute_smd_ulsph_stress.rst similarity index 100% rename from doc/rst/compute_smd_ulsph_stress.rst rename to doc/src/compute_smd_ulsph_stress.rst diff --git a/doc/rst/compute_smd_vol.rst b/doc/src/compute_smd_vol.rst similarity index 100% rename from doc/rst/compute_smd_vol.rst rename to doc/src/compute_smd_vol.rst diff --git a/doc/rst/compute_sna_atom.rst b/doc/src/compute_sna_atom.rst similarity index 100% rename from doc/rst/compute_sna_atom.rst rename to doc/src/compute_sna_atom.rst diff --git a/doc/rst/compute_spin.rst b/doc/src/compute_spin.rst similarity index 100% rename from doc/rst/compute_spin.rst rename to doc/src/compute_spin.rst diff --git a/doc/rst/compute_stress_atom.rst b/doc/src/compute_stress_atom.rst similarity index 100% rename from doc/rst/compute_stress_atom.rst rename to doc/src/compute_stress_atom.rst diff --git a/doc/rst/compute_stress_mop.rst b/doc/src/compute_stress_mop.rst similarity index 100% rename from doc/rst/compute_stress_mop.rst rename to doc/src/compute_stress_mop.rst diff --git a/doc/rst/compute_tally.rst b/doc/src/compute_tally.rst similarity index 100% rename from doc/rst/compute_tally.rst rename to doc/src/compute_tally.rst diff --git a/doc/rst/compute_tdpd_cc_atom.rst b/doc/src/compute_tdpd_cc_atom.rst similarity index 100% rename from doc/rst/compute_tdpd_cc_atom.rst rename to doc/src/compute_tdpd_cc_atom.rst diff --git a/doc/rst/compute_temp.rst b/doc/src/compute_temp.rst similarity index 100% rename from doc/rst/compute_temp.rst rename to doc/src/compute_temp.rst diff --git a/doc/rst/compute_temp_asphere.rst b/doc/src/compute_temp_asphere.rst similarity index 100% rename from doc/rst/compute_temp_asphere.rst rename to doc/src/compute_temp_asphere.rst diff --git a/doc/rst/compute_temp_body.rst b/doc/src/compute_temp_body.rst similarity index 100% rename from doc/rst/compute_temp_body.rst rename to doc/src/compute_temp_body.rst diff --git a/doc/rst/compute_temp_chunk.rst b/doc/src/compute_temp_chunk.rst similarity index 100% rename from doc/rst/compute_temp_chunk.rst rename to doc/src/compute_temp_chunk.rst diff --git a/doc/rst/compute_temp_com.rst b/doc/src/compute_temp_com.rst similarity index 100% rename from doc/rst/compute_temp_com.rst rename to doc/src/compute_temp_com.rst diff --git a/doc/rst/compute_temp_cs.rst b/doc/src/compute_temp_cs.rst similarity index 100% rename from doc/rst/compute_temp_cs.rst rename to doc/src/compute_temp_cs.rst diff --git a/doc/rst/compute_temp_deform.rst b/doc/src/compute_temp_deform.rst similarity index 100% rename from doc/rst/compute_temp_deform.rst rename to doc/src/compute_temp_deform.rst diff --git a/doc/rst/compute_temp_deform_eff.rst b/doc/src/compute_temp_deform_eff.rst similarity index 100% rename from doc/rst/compute_temp_deform_eff.rst rename to doc/src/compute_temp_deform_eff.rst diff --git a/doc/rst/compute_temp_drude.rst b/doc/src/compute_temp_drude.rst similarity index 100% rename from doc/rst/compute_temp_drude.rst rename to doc/src/compute_temp_drude.rst diff --git a/doc/rst/compute_temp_eff.rst b/doc/src/compute_temp_eff.rst similarity index 100% rename from doc/rst/compute_temp_eff.rst rename to doc/src/compute_temp_eff.rst diff --git a/doc/rst/compute_temp_partial.rst b/doc/src/compute_temp_partial.rst similarity index 100% rename from doc/rst/compute_temp_partial.rst rename to doc/src/compute_temp_partial.rst diff --git a/doc/rst/compute_temp_profile.rst b/doc/src/compute_temp_profile.rst similarity index 100% rename from doc/rst/compute_temp_profile.rst rename to doc/src/compute_temp_profile.rst diff --git a/doc/rst/compute_temp_ramp.rst b/doc/src/compute_temp_ramp.rst similarity index 100% rename from doc/rst/compute_temp_ramp.rst rename to doc/src/compute_temp_ramp.rst diff --git a/doc/rst/compute_temp_region.rst b/doc/src/compute_temp_region.rst similarity index 100% rename from doc/rst/compute_temp_region.rst rename to doc/src/compute_temp_region.rst diff --git a/doc/rst/compute_temp_region_eff.rst b/doc/src/compute_temp_region_eff.rst similarity index 100% rename from doc/rst/compute_temp_region_eff.rst rename to doc/src/compute_temp_region_eff.rst diff --git a/doc/rst/compute_temp_rotate.rst b/doc/src/compute_temp_rotate.rst similarity index 100% rename from doc/rst/compute_temp_rotate.rst rename to doc/src/compute_temp_rotate.rst diff --git a/doc/rst/compute_temp_sphere.rst b/doc/src/compute_temp_sphere.rst similarity index 100% rename from doc/rst/compute_temp_sphere.rst rename to doc/src/compute_temp_sphere.rst diff --git a/doc/rst/compute_temp_uef.rst b/doc/src/compute_temp_uef.rst similarity index 100% rename from doc/rst/compute_temp_uef.rst rename to doc/src/compute_temp_uef.rst diff --git a/doc/rst/compute_ti.rst b/doc/src/compute_ti.rst similarity index 100% rename from doc/rst/compute_ti.rst rename to doc/src/compute_ti.rst diff --git a/doc/rst/compute_torque_chunk.rst b/doc/src/compute_torque_chunk.rst similarity index 100% rename from doc/rst/compute_torque_chunk.rst rename to doc/src/compute_torque_chunk.rst diff --git a/doc/rst/compute_vacf.rst b/doc/src/compute_vacf.rst similarity index 100% rename from doc/rst/compute_vacf.rst rename to doc/src/compute_vacf.rst diff --git a/doc/rst/compute_vcm_chunk.rst b/doc/src/compute_vcm_chunk.rst similarity index 100% rename from doc/rst/compute_vcm_chunk.rst rename to doc/src/compute_vcm_chunk.rst diff --git a/doc/rst/compute_voronoi_atom.rst b/doc/src/compute_voronoi_atom.rst similarity index 100% rename from doc/rst/compute_voronoi_atom.rst rename to doc/src/compute_voronoi_atom.rst diff --git a/doc/rst/compute_xrd.rst b/doc/src/compute_xrd.rst similarity index 100% rename from doc/rst/compute_xrd.rst rename to doc/src/compute_xrd.rst diff --git a/doc/src/computes.rst b/doc/src/computes.rst new file mode 100644 index 0000000000000000000000000000000000000000..1c1819a444db76dad68f176ec412b53028313d14 --- /dev/null +++ b/doc/src/computes.rst @@ -0,0 +1,9 @@ +Computes +######## + + +.. toctree:: + :maxdepth: 1 + :glob: + + compute_* diff --git a/doc/rst/create_atoms.rst b/doc/src/create_atoms.rst similarity index 100% rename from doc/rst/create_atoms.rst rename to doc/src/create_atoms.rst diff --git a/doc/rst/create_bonds.rst b/doc/src/create_bonds.rst similarity index 100% rename from doc/rst/create_bonds.rst rename to doc/src/create_bonds.rst diff --git a/doc/rst/create_box.rst b/doc/src/create_box.rst similarity index 100% rename from doc/rst/create_box.rst rename to doc/src/create_box.rst diff --git a/doc/rst/delete_atoms.rst b/doc/src/delete_atoms.rst similarity index 100% rename from doc/rst/delete_atoms.rst rename to doc/src/delete_atoms.rst diff --git a/doc/rst/delete_bonds.rst b/doc/src/delete_bonds.rst similarity index 100% rename from doc/rst/delete_bonds.rst rename to doc/src/delete_bonds.rst diff --git a/doc/rst/dielectric.rst b/doc/src/dielectric.rst similarity index 100% rename from doc/rst/dielectric.rst rename to doc/src/dielectric.rst diff --git a/doc/rst/dihedral_charmm.rst b/doc/src/dihedral_charmm.rst similarity index 100% rename from doc/rst/dihedral_charmm.rst rename to doc/src/dihedral_charmm.rst diff --git a/doc/rst/dihedral_class2.rst b/doc/src/dihedral_class2.rst similarity index 100% rename from doc/rst/dihedral_class2.rst rename to doc/src/dihedral_class2.rst diff --git a/doc/rst/dihedral_coeff.rst b/doc/src/dihedral_coeff.rst similarity index 100% rename from doc/rst/dihedral_coeff.rst rename to doc/src/dihedral_coeff.rst diff --git a/doc/rst/dihedral_cosine_shift_exp.rst b/doc/src/dihedral_cosine_shift_exp.rst similarity index 100% rename from doc/rst/dihedral_cosine_shift_exp.rst rename to doc/src/dihedral_cosine_shift_exp.rst diff --git a/doc/rst/dihedral_fourier.rst b/doc/src/dihedral_fourier.rst similarity index 100% rename from doc/rst/dihedral_fourier.rst rename to doc/src/dihedral_fourier.rst diff --git a/doc/rst/dihedral_harmonic.rst b/doc/src/dihedral_harmonic.rst similarity index 100% rename from doc/rst/dihedral_harmonic.rst rename to doc/src/dihedral_harmonic.rst diff --git a/doc/rst/dihedral_helix.rst b/doc/src/dihedral_helix.rst similarity index 100% rename from doc/rst/dihedral_helix.rst rename to doc/src/dihedral_helix.rst diff --git a/doc/rst/dihedral_hybrid.rst b/doc/src/dihedral_hybrid.rst similarity index 100% rename from doc/rst/dihedral_hybrid.rst rename to doc/src/dihedral_hybrid.rst diff --git a/doc/rst/dihedral_multi_harmonic.rst b/doc/src/dihedral_multi_harmonic.rst similarity index 100% rename from doc/rst/dihedral_multi_harmonic.rst rename to doc/src/dihedral_multi_harmonic.rst diff --git a/doc/rst/dihedral_nharmonic.rst b/doc/src/dihedral_nharmonic.rst similarity index 100% rename from doc/rst/dihedral_nharmonic.rst rename to doc/src/dihedral_nharmonic.rst diff --git a/doc/rst/dihedral_none.rst b/doc/src/dihedral_none.rst similarity index 100% rename from doc/rst/dihedral_none.rst rename to doc/src/dihedral_none.rst diff --git a/doc/rst/dihedral_opls.rst b/doc/src/dihedral_opls.rst similarity index 100% rename from doc/rst/dihedral_opls.rst rename to doc/src/dihedral_opls.rst diff --git a/doc/rst/dihedral_quadratic.rst b/doc/src/dihedral_quadratic.rst similarity index 100% rename from doc/rst/dihedral_quadratic.rst rename to doc/src/dihedral_quadratic.rst diff --git a/doc/rst/dihedral_spherical.rst b/doc/src/dihedral_spherical.rst similarity index 100% rename from doc/rst/dihedral_spherical.rst rename to doc/src/dihedral_spherical.rst diff --git a/doc/rst/dihedral_style.rst b/doc/src/dihedral_style.rst similarity index 100% rename from doc/rst/dihedral_style.rst rename to doc/src/dihedral_style.rst diff --git a/doc/rst/dihedral_table.rst b/doc/src/dihedral_table.rst similarity index 100% rename from doc/rst/dihedral_table.rst rename to doc/src/dihedral_table.rst diff --git a/doc/rst/dihedral_table_cut.rst b/doc/src/dihedral_table_cut.rst similarity index 100% rename from doc/rst/dihedral_table_cut.rst rename to doc/src/dihedral_table_cut.rst diff --git a/doc/rst/dihedral_zero.rst b/doc/src/dihedral_zero.rst similarity index 100% rename from doc/rst/dihedral_zero.rst rename to doc/src/dihedral_zero.rst diff --git a/doc/src/dihedrals.rst b/doc/src/dihedrals.rst new file mode 100644 index 0000000000000000000000000000000000000000..bab913f1c2d0b38f64acea2fa0137a0ac993ee56 --- /dev/null +++ b/doc/src/dihedrals.rst @@ -0,0 +1,9 @@ +Dihedral Styles +############### + + +.. toctree:: + :maxdepth: 1 + :glob: + + dihedral_* diff --git a/doc/src/dihedrals.txt b/doc/src/dihedrals.txt deleted file mode 100644 index a862bf50a0a9c357ffeed1129e3b67423259447c..0000000000000000000000000000000000000000 --- a/doc/src/dihedrals.txt +++ /dev/null @@ -1,40 +0,0 @@ -Dihedral Styles :h1 - - diff --git a/doc/rst/dimension.rst b/doc/src/dimension.rst similarity index 100% rename from doc/rst/dimension.rst rename to doc/src/dimension.rst diff --git a/doc/rst/displace_atoms.rst b/doc/src/displace_atoms.rst similarity index 100% rename from doc/rst/displace_atoms.rst rename to doc/src/displace_atoms.rst diff --git a/doc/rst/dump.rst b/doc/src/dump.rst similarity index 100% rename from doc/rst/dump.rst rename to doc/src/dump.rst diff --git a/doc/rst/dump_adios.rst b/doc/src/dump_adios.rst similarity index 100% rename from doc/rst/dump_adios.rst rename to doc/src/dump_adios.rst diff --git a/doc/rst/dump_cfg_uef.rst b/doc/src/dump_cfg_uef.rst similarity index 100% rename from doc/rst/dump_cfg_uef.rst rename to doc/src/dump_cfg_uef.rst diff --git a/doc/rst/dump_h5md.rst b/doc/src/dump_h5md.rst similarity index 100% rename from doc/rst/dump_h5md.rst rename to doc/src/dump_h5md.rst diff --git a/doc/rst/dump_image.rst b/doc/src/dump_image.rst similarity index 100% rename from doc/rst/dump_image.rst rename to doc/src/dump_image.rst diff --git a/doc/rst/dump_modify.rst b/doc/src/dump_modify.rst similarity index 100% rename from doc/rst/dump_modify.rst rename to doc/src/dump_modify.rst diff --git a/doc/rst/dump_molfile.rst b/doc/src/dump_molfile.rst similarity index 100% rename from doc/rst/dump_molfile.rst rename to doc/src/dump_molfile.rst diff --git a/doc/rst/dump_netcdf.rst b/doc/src/dump_netcdf.rst similarity index 100% rename from doc/rst/dump_netcdf.rst rename to doc/src/dump_netcdf.rst diff --git a/doc/rst/dump_vtk.rst b/doc/src/dump_vtk.rst similarity index 100% rename from doc/rst/dump_vtk.rst rename to doc/src/dump_vtk.rst diff --git a/doc/rst/dynamical_matrix.rst b/doc/src/dynamical_matrix.rst similarity index 100% rename from doc/rst/dynamical_matrix.rst rename to doc/src/dynamical_matrix.rst diff --git a/doc/rst/echo.rst b/doc/src/echo.rst similarity index 100% rename from doc/rst/echo.rst rename to doc/src/echo.rst diff --git a/doc/rst/fix.rst b/doc/src/fix.rst similarity index 100% rename from doc/rst/fix.rst rename to doc/src/fix.rst diff --git a/doc/rst/fix_adapt.rst b/doc/src/fix_adapt.rst similarity index 100% rename from doc/rst/fix_adapt.rst rename to doc/src/fix_adapt.rst diff --git a/doc/rst/fix_adapt_fep.rst b/doc/src/fix_adapt_fep.rst similarity index 100% rename from doc/rst/fix_adapt_fep.rst rename to doc/src/fix_adapt_fep.rst diff --git a/doc/rst/fix_addforce.rst b/doc/src/fix_addforce.rst similarity index 100% rename from doc/rst/fix_addforce.rst rename to doc/src/fix_addforce.rst diff --git a/doc/rst/fix_addtorque.rst b/doc/src/fix_addtorque.rst similarity index 100% rename from doc/rst/fix_addtorque.rst rename to doc/src/fix_addtorque.rst diff --git a/doc/rst/fix_append_atoms.rst b/doc/src/fix_append_atoms.rst similarity index 100% rename from doc/rst/fix_append_atoms.rst rename to doc/src/fix_append_atoms.rst diff --git a/doc/rst/fix_atc.rst b/doc/src/fix_atc.rst similarity index 100% rename from doc/rst/fix_atc.rst rename to doc/src/fix_atc.rst diff --git a/doc/rst/fix_atom_swap.rst b/doc/src/fix_atom_swap.rst similarity index 100% rename from doc/rst/fix_atom_swap.rst rename to doc/src/fix_atom_swap.rst diff --git a/doc/rst/fix_ave_atom.rst b/doc/src/fix_ave_atom.rst similarity index 100% rename from doc/rst/fix_ave_atom.rst rename to doc/src/fix_ave_atom.rst diff --git a/doc/rst/fix_ave_chunk.rst b/doc/src/fix_ave_chunk.rst similarity index 100% rename from doc/rst/fix_ave_chunk.rst rename to doc/src/fix_ave_chunk.rst diff --git a/doc/rst/fix_ave_correlate.rst b/doc/src/fix_ave_correlate.rst similarity index 100% rename from doc/rst/fix_ave_correlate.rst rename to doc/src/fix_ave_correlate.rst diff --git a/doc/rst/fix_ave_correlate_long.rst b/doc/src/fix_ave_correlate_long.rst similarity index 100% rename from doc/rst/fix_ave_correlate_long.rst rename to doc/src/fix_ave_correlate_long.rst diff --git a/doc/rst/fix_ave_histo.rst b/doc/src/fix_ave_histo.rst similarity index 100% rename from doc/rst/fix_ave_histo.rst rename to doc/src/fix_ave_histo.rst diff --git a/doc/rst/fix_ave_time.rst b/doc/src/fix_ave_time.rst similarity index 100% rename from doc/rst/fix_ave_time.rst rename to doc/src/fix_ave_time.rst diff --git a/doc/rst/fix_aveforce.rst b/doc/src/fix_aveforce.rst similarity index 100% rename from doc/rst/fix_aveforce.rst rename to doc/src/fix_aveforce.rst diff --git a/doc/rst/fix_balance.rst b/doc/src/fix_balance.rst similarity index 100% rename from doc/rst/fix_balance.rst rename to doc/src/fix_balance.rst diff --git a/doc/rst/fix_bocs.rst b/doc/src/fix_bocs.rst similarity index 100% rename from doc/rst/fix_bocs.rst rename to doc/src/fix_bocs.rst diff --git a/doc/rst/fix_bond_break.rst b/doc/src/fix_bond_break.rst similarity index 100% rename from doc/rst/fix_bond_break.rst rename to doc/src/fix_bond_break.rst diff --git a/doc/rst/fix_bond_create.rst b/doc/src/fix_bond_create.rst similarity index 100% rename from doc/rst/fix_bond_create.rst rename to doc/src/fix_bond_create.rst diff --git a/doc/rst/fix_bond_react.rst b/doc/src/fix_bond_react.rst similarity index 100% rename from doc/rst/fix_bond_react.rst rename to doc/src/fix_bond_react.rst diff --git a/doc/rst/fix_bond_swap.rst b/doc/src/fix_bond_swap.rst similarity index 100% rename from doc/rst/fix_bond_swap.rst rename to doc/src/fix_bond_swap.rst diff --git a/doc/rst/fix_box_relax.rst b/doc/src/fix_box_relax.rst similarity index 100% rename from doc/rst/fix_box_relax.rst rename to doc/src/fix_box_relax.rst diff --git a/doc/rst/fix_client_md.rst b/doc/src/fix_client_md.rst similarity index 100% rename from doc/rst/fix_client_md.rst rename to doc/src/fix_client_md.rst diff --git a/doc/rst/fix_cmap.rst b/doc/src/fix_cmap.rst similarity index 100% rename from doc/rst/fix_cmap.rst rename to doc/src/fix_cmap.rst diff --git a/doc/rst/fix_colvars.rst b/doc/src/fix_colvars.rst similarity index 100% rename from doc/rst/fix_colvars.rst rename to doc/src/fix_colvars.rst diff --git a/doc/rst/fix_controller.rst b/doc/src/fix_controller.rst similarity index 100% rename from doc/rst/fix_controller.rst rename to doc/src/fix_controller.rst diff --git a/doc/rst/fix_deform.rst b/doc/src/fix_deform.rst similarity index 100% rename from doc/rst/fix_deform.rst rename to doc/src/fix_deform.rst diff --git a/doc/rst/fix_deposit.rst b/doc/src/fix_deposit.rst similarity index 100% rename from doc/rst/fix_deposit.rst rename to doc/src/fix_deposit.rst diff --git a/doc/rst/fix_dpd_energy.rst b/doc/src/fix_dpd_energy.rst similarity index 100% rename from doc/rst/fix_dpd_energy.rst rename to doc/src/fix_dpd_energy.rst diff --git a/doc/rst/fix_dpd_source.rst b/doc/src/fix_dpd_source.rst similarity index 100% rename from doc/rst/fix_dpd_source.rst rename to doc/src/fix_dpd_source.rst diff --git a/doc/rst/fix_drag.rst b/doc/src/fix_drag.rst similarity index 100% rename from doc/rst/fix_drag.rst rename to doc/src/fix_drag.rst diff --git a/doc/rst/fix_drude.rst b/doc/src/fix_drude.rst similarity index 100% rename from doc/rst/fix_drude.rst rename to doc/src/fix_drude.rst diff --git a/doc/rst/fix_drude_transform.rst b/doc/src/fix_drude_transform.rst similarity index 100% rename from doc/rst/fix_drude_transform.rst rename to doc/src/fix_drude_transform.rst diff --git a/doc/rst/fix_dt_reset.rst b/doc/src/fix_dt_reset.rst similarity index 100% rename from doc/rst/fix_dt_reset.rst rename to doc/src/fix_dt_reset.rst diff --git a/doc/rst/fix_efield.rst b/doc/src/fix_efield.rst similarity index 100% rename from doc/rst/fix_efield.rst rename to doc/src/fix_efield.rst diff --git a/doc/rst/fix_ehex.rst b/doc/src/fix_ehex.rst similarity index 100% rename from doc/rst/fix_ehex.rst rename to doc/src/fix_ehex.rst diff --git a/doc/rst/fix_electron_stopping.rst b/doc/src/fix_electron_stopping.rst similarity index 100% rename from doc/rst/fix_electron_stopping.rst rename to doc/src/fix_electron_stopping.rst diff --git a/doc/rst/fix_enforce2d.rst b/doc/src/fix_enforce2d.rst similarity index 100% rename from doc/rst/fix_enforce2d.rst rename to doc/src/fix_enforce2d.rst diff --git a/doc/rst/fix_eos_cv.rst b/doc/src/fix_eos_cv.rst similarity index 100% rename from doc/rst/fix_eos_cv.rst rename to doc/src/fix_eos_cv.rst diff --git a/doc/rst/fix_eos_table.rst b/doc/src/fix_eos_table.rst similarity index 100% rename from doc/rst/fix_eos_table.rst rename to doc/src/fix_eos_table.rst diff --git a/doc/rst/fix_eos_table_rx.rst b/doc/src/fix_eos_table_rx.rst similarity index 100% rename from doc/rst/fix_eos_table_rx.rst rename to doc/src/fix_eos_table_rx.rst diff --git a/doc/rst/fix_evaporate.rst b/doc/src/fix_evaporate.rst similarity index 100% rename from doc/rst/fix_evaporate.rst rename to doc/src/fix_evaporate.rst diff --git a/doc/rst/fix_external.rst b/doc/src/fix_external.rst similarity index 100% rename from doc/rst/fix_external.rst rename to doc/src/fix_external.rst diff --git a/doc/rst/fix_ffl.rst b/doc/src/fix_ffl.rst similarity index 100% rename from doc/rst/fix_ffl.rst rename to doc/src/fix_ffl.rst diff --git a/doc/rst/fix_filter_corotate.rst b/doc/src/fix_filter_corotate.rst similarity index 100% rename from doc/rst/fix_filter_corotate.rst rename to doc/src/fix_filter_corotate.rst diff --git a/doc/rst/fix_flow_gauss.rst b/doc/src/fix_flow_gauss.rst similarity index 100% rename from doc/rst/fix_flow_gauss.rst rename to doc/src/fix_flow_gauss.rst diff --git a/doc/rst/fix_freeze.rst b/doc/src/fix_freeze.rst similarity index 100% rename from doc/rst/fix_freeze.rst rename to doc/src/fix_freeze.rst diff --git a/doc/rst/fix_gcmc.rst b/doc/src/fix_gcmc.rst similarity index 100% rename from doc/rst/fix_gcmc.rst rename to doc/src/fix_gcmc.rst diff --git a/doc/rst/fix_gld.rst b/doc/src/fix_gld.rst similarity index 100% rename from doc/rst/fix_gld.rst rename to doc/src/fix_gld.rst diff --git a/doc/rst/fix_gle.rst b/doc/src/fix_gle.rst similarity index 100% rename from doc/rst/fix_gle.rst rename to doc/src/fix_gle.rst diff --git a/doc/rst/fix_gravity.rst b/doc/src/fix_gravity.rst similarity index 100% rename from doc/rst/fix_gravity.rst rename to doc/src/fix_gravity.rst diff --git a/doc/rst/fix_grem.rst b/doc/src/fix_grem.rst similarity index 100% rename from doc/rst/fix_grem.rst rename to doc/src/fix_grem.rst diff --git a/doc/rst/fix_halt.rst b/doc/src/fix_halt.rst similarity index 100% rename from doc/rst/fix_halt.rst rename to doc/src/fix_halt.rst diff --git a/doc/rst/fix_heat.rst b/doc/src/fix_heat.rst similarity index 100% rename from doc/rst/fix_heat.rst rename to doc/src/fix_heat.rst diff --git a/doc/rst/fix_hyper_global.rst b/doc/src/fix_hyper_global.rst similarity index 100% rename from doc/rst/fix_hyper_global.rst rename to doc/src/fix_hyper_global.rst diff --git a/doc/rst/fix_hyper_local.rst b/doc/src/fix_hyper_local.rst similarity index 100% rename from doc/rst/fix_hyper_local.rst rename to doc/src/fix_hyper_local.rst diff --git a/doc/rst/fix_imd.rst b/doc/src/fix_imd.rst similarity index 100% rename from doc/rst/fix_imd.rst rename to doc/src/fix_imd.rst diff --git a/doc/rst/fix_indent.rst b/doc/src/fix_indent.rst similarity index 100% rename from doc/rst/fix_indent.rst rename to doc/src/fix_indent.rst diff --git a/doc/rst/fix_ipi.rst b/doc/src/fix_ipi.rst similarity index 100% rename from doc/rst/fix_ipi.rst rename to doc/src/fix_ipi.rst diff --git a/doc/rst/fix_langevin.rst b/doc/src/fix_langevin.rst similarity index 100% rename from doc/rst/fix_langevin.rst rename to doc/src/fix_langevin.rst diff --git a/doc/rst/fix_langevin_drude.rst b/doc/src/fix_langevin_drude.rst similarity index 100% rename from doc/rst/fix_langevin_drude.rst rename to doc/src/fix_langevin_drude.rst diff --git a/doc/rst/fix_langevin_eff.rst b/doc/src/fix_langevin_eff.rst similarity index 100% rename from doc/rst/fix_langevin_eff.rst rename to doc/src/fix_langevin_eff.rst diff --git a/doc/rst/fix_langevin_spin.rst b/doc/src/fix_langevin_spin.rst similarity index 100% rename from doc/rst/fix_langevin_spin.rst rename to doc/src/fix_langevin_spin.rst diff --git a/doc/rst/fix_latte.rst b/doc/src/fix_latte.rst similarity index 100% rename from doc/rst/fix_latte.rst rename to doc/src/fix_latte.rst diff --git a/doc/rst/fix_lb_fluid.rst b/doc/src/fix_lb_fluid.rst similarity index 100% rename from doc/rst/fix_lb_fluid.rst rename to doc/src/fix_lb_fluid.rst diff --git a/doc/rst/fix_lb_momentum.rst b/doc/src/fix_lb_momentum.rst similarity index 100% rename from doc/rst/fix_lb_momentum.rst rename to doc/src/fix_lb_momentum.rst diff --git a/doc/rst/fix_lb_pc.rst b/doc/src/fix_lb_pc.rst similarity index 100% rename from doc/rst/fix_lb_pc.rst rename to doc/src/fix_lb_pc.rst diff --git a/doc/rst/fix_lb_rigid_pc_sphere.rst b/doc/src/fix_lb_rigid_pc_sphere.rst similarity index 100% rename from doc/rst/fix_lb_rigid_pc_sphere.rst rename to doc/src/fix_lb_rigid_pc_sphere.rst diff --git a/doc/rst/fix_lb_viscous.rst b/doc/src/fix_lb_viscous.rst similarity index 100% rename from doc/rst/fix_lb_viscous.rst rename to doc/src/fix_lb_viscous.rst diff --git a/doc/rst/fix_lineforce.rst b/doc/src/fix_lineforce.rst similarity index 100% rename from doc/rst/fix_lineforce.rst rename to doc/src/fix_lineforce.rst diff --git a/doc/rst/fix_manifoldforce.rst b/doc/src/fix_manifoldforce.rst similarity index 100% rename from doc/rst/fix_manifoldforce.rst rename to doc/src/fix_manifoldforce.rst diff --git a/doc/rst/fix_meso.rst b/doc/src/fix_meso.rst similarity index 100% rename from doc/rst/fix_meso.rst rename to doc/src/fix_meso.rst diff --git a/doc/rst/fix_meso_move.rst b/doc/src/fix_meso_move.rst similarity index 100% rename from doc/rst/fix_meso_move.rst rename to doc/src/fix_meso_move.rst diff --git a/doc/rst/fix_meso_stationary.rst b/doc/src/fix_meso_stationary.rst similarity index 100% rename from doc/rst/fix_meso_stationary.rst rename to doc/src/fix_meso_stationary.rst diff --git a/doc/rst/fix_modify.rst b/doc/src/fix_modify.rst similarity index 100% rename from doc/rst/fix_modify.rst rename to doc/src/fix_modify.rst diff --git a/doc/rst/fix_momentum.rst b/doc/src/fix_momentum.rst similarity index 100% rename from doc/rst/fix_momentum.rst rename to doc/src/fix_momentum.rst diff --git a/doc/rst/fix_move.rst b/doc/src/fix_move.rst similarity index 100% rename from doc/rst/fix_move.rst rename to doc/src/fix_move.rst diff --git a/doc/rst/fix_mscg.rst b/doc/src/fix_mscg.rst similarity index 100% rename from doc/rst/fix_mscg.rst rename to doc/src/fix_mscg.rst diff --git a/doc/rst/fix_msst.rst b/doc/src/fix_msst.rst similarity index 100% rename from doc/rst/fix_msst.rst rename to doc/src/fix_msst.rst diff --git a/doc/rst/fix_mvv_dpd.rst b/doc/src/fix_mvv_dpd.rst similarity index 100% rename from doc/rst/fix_mvv_dpd.rst rename to doc/src/fix_mvv_dpd.rst diff --git a/doc/rst/fix_neb.rst b/doc/src/fix_neb.rst similarity index 100% rename from doc/rst/fix_neb.rst rename to doc/src/fix_neb.rst diff --git a/doc/rst/fix_neb_spin.rst b/doc/src/fix_neb_spin.rst similarity index 100% rename from doc/rst/fix_neb_spin.rst rename to doc/src/fix_neb_spin.rst diff --git a/doc/rst/fix_nh.rst b/doc/src/fix_nh.rst similarity index 100% rename from doc/rst/fix_nh.rst rename to doc/src/fix_nh.rst diff --git a/doc/rst/fix_nh_eff.rst b/doc/src/fix_nh_eff.rst similarity index 100% rename from doc/rst/fix_nh_eff.rst rename to doc/src/fix_nh_eff.rst diff --git a/doc/rst/fix_nh_uef.rst b/doc/src/fix_nh_uef.rst similarity index 100% rename from doc/rst/fix_nh_uef.rst rename to doc/src/fix_nh_uef.rst diff --git a/doc/rst/fix_nph_asphere.rst b/doc/src/fix_nph_asphere.rst similarity index 100% rename from doc/rst/fix_nph_asphere.rst rename to doc/src/fix_nph_asphere.rst diff --git a/doc/rst/fix_nph_body.rst b/doc/src/fix_nph_body.rst similarity index 100% rename from doc/rst/fix_nph_body.rst rename to doc/src/fix_nph_body.rst diff --git a/doc/rst/fix_nph_sphere.rst b/doc/src/fix_nph_sphere.rst similarity index 100% rename from doc/rst/fix_nph_sphere.rst rename to doc/src/fix_nph_sphere.rst diff --git a/doc/rst/fix_nphug.rst b/doc/src/fix_nphug.rst similarity index 100% rename from doc/rst/fix_nphug.rst rename to doc/src/fix_nphug.rst diff --git a/doc/rst/fix_npt_asphere.rst b/doc/src/fix_npt_asphere.rst similarity index 100% rename from doc/rst/fix_npt_asphere.rst rename to doc/src/fix_npt_asphere.rst diff --git a/doc/rst/fix_npt_body.rst b/doc/src/fix_npt_body.rst similarity index 100% rename from doc/rst/fix_npt_body.rst rename to doc/src/fix_npt_body.rst diff --git a/doc/rst/fix_npt_sphere.rst b/doc/src/fix_npt_sphere.rst similarity index 100% rename from doc/rst/fix_npt_sphere.rst rename to doc/src/fix_npt_sphere.rst diff --git a/doc/rst/fix_nve.rst b/doc/src/fix_nve.rst similarity index 100% rename from doc/rst/fix_nve.rst rename to doc/src/fix_nve.rst diff --git a/doc/rst/fix_nve_asphere.rst b/doc/src/fix_nve_asphere.rst similarity index 100% rename from doc/rst/fix_nve_asphere.rst rename to doc/src/fix_nve_asphere.rst diff --git a/doc/rst/fix_nve_asphere_noforce.rst b/doc/src/fix_nve_asphere_noforce.rst similarity index 100% rename from doc/rst/fix_nve_asphere_noforce.rst rename to doc/src/fix_nve_asphere_noforce.rst diff --git a/doc/rst/fix_nve_awpmd.rst b/doc/src/fix_nve_awpmd.rst similarity index 100% rename from doc/rst/fix_nve_awpmd.rst rename to doc/src/fix_nve_awpmd.rst diff --git a/doc/rst/fix_nve_body.rst b/doc/src/fix_nve_body.rst similarity index 100% rename from doc/rst/fix_nve_body.rst rename to doc/src/fix_nve_body.rst diff --git a/doc/rst/fix_nve_dot.rst b/doc/src/fix_nve_dot.rst similarity index 100% rename from doc/rst/fix_nve_dot.rst rename to doc/src/fix_nve_dot.rst diff --git a/doc/rst/fix_nve_dotc_langevin.rst b/doc/src/fix_nve_dotc_langevin.rst similarity index 100% rename from doc/rst/fix_nve_dotc_langevin.rst rename to doc/src/fix_nve_dotc_langevin.rst diff --git a/doc/rst/fix_nve_eff.rst b/doc/src/fix_nve_eff.rst similarity index 100% rename from doc/rst/fix_nve_eff.rst rename to doc/src/fix_nve_eff.rst diff --git a/doc/rst/fix_nve_limit.rst b/doc/src/fix_nve_limit.rst similarity index 100% rename from doc/rst/fix_nve_limit.rst rename to doc/src/fix_nve_limit.rst diff --git a/doc/rst/fix_nve_line.rst b/doc/src/fix_nve_line.rst similarity index 100% rename from doc/rst/fix_nve_line.rst rename to doc/src/fix_nve_line.rst diff --git a/doc/rst/fix_nve_manifold_rattle.rst b/doc/src/fix_nve_manifold_rattle.rst similarity index 100% rename from doc/rst/fix_nve_manifold_rattle.rst rename to doc/src/fix_nve_manifold_rattle.rst diff --git a/doc/rst/fix_nve_noforce.rst b/doc/src/fix_nve_noforce.rst similarity index 100% rename from doc/rst/fix_nve_noforce.rst rename to doc/src/fix_nve_noforce.rst diff --git a/doc/rst/fix_nve_sphere.rst b/doc/src/fix_nve_sphere.rst similarity index 100% rename from doc/rst/fix_nve_sphere.rst rename to doc/src/fix_nve_sphere.rst diff --git a/doc/rst/fix_nve_spin.rst b/doc/src/fix_nve_spin.rst similarity index 100% rename from doc/rst/fix_nve_spin.rst rename to doc/src/fix_nve_spin.rst diff --git a/doc/rst/fix_nve_tri.rst b/doc/src/fix_nve_tri.rst similarity index 100% rename from doc/rst/fix_nve_tri.rst rename to doc/src/fix_nve_tri.rst diff --git a/doc/rst/fix_nvk.rst b/doc/src/fix_nvk.rst similarity index 100% rename from doc/rst/fix_nvk.rst rename to doc/src/fix_nvk.rst diff --git a/doc/rst/fix_nvt_asphere.rst b/doc/src/fix_nvt_asphere.rst similarity index 100% rename from doc/rst/fix_nvt_asphere.rst rename to doc/src/fix_nvt_asphere.rst diff --git a/doc/rst/fix_nvt_body.rst b/doc/src/fix_nvt_body.rst similarity index 100% rename from doc/rst/fix_nvt_body.rst rename to doc/src/fix_nvt_body.rst diff --git a/doc/rst/fix_nvt_manifold_rattle.rst b/doc/src/fix_nvt_manifold_rattle.rst similarity index 100% rename from doc/rst/fix_nvt_manifold_rattle.rst rename to doc/src/fix_nvt_manifold_rattle.rst diff --git a/doc/rst/fix_nvt_sllod.rst b/doc/src/fix_nvt_sllod.rst similarity index 100% rename from doc/rst/fix_nvt_sllod.rst rename to doc/src/fix_nvt_sllod.rst diff --git a/doc/rst/fix_nvt_sllod_eff.rst b/doc/src/fix_nvt_sllod_eff.rst similarity index 100% rename from doc/rst/fix_nvt_sllod_eff.rst rename to doc/src/fix_nvt_sllod_eff.rst diff --git a/doc/rst/fix_nvt_sphere.rst b/doc/src/fix_nvt_sphere.rst similarity index 100% rename from doc/rst/fix_nvt_sphere.rst rename to doc/src/fix_nvt_sphere.rst diff --git a/doc/rst/fix_oneway.rst b/doc/src/fix_oneway.rst similarity index 100% rename from doc/rst/fix_oneway.rst rename to doc/src/fix_oneway.rst diff --git a/doc/rst/fix_orient.rst b/doc/src/fix_orient.rst similarity index 100% rename from doc/rst/fix_orient.rst rename to doc/src/fix_orient.rst diff --git a/doc/rst/fix_phonon.rst b/doc/src/fix_phonon.rst similarity index 100% rename from doc/rst/fix_phonon.rst rename to doc/src/fix_phonon.rst diff --git a/doc/rst/fix_pimd.rst b/doc/src/fix_pimd.rst similarity index 100% rename from doc/rst/fix_pimd.rst rename to doc/src/fix_pimd.rst diff --git a/doc/rst/fix_planeforce.rst b/doc/src/fix_planeforce.rst similarity index 100% rename from doc/rst/fix_planeforce.rst rename to doc/src/fix_planeforce.rst diff --git a/doc/rst/fix_plumed.rst b/doc/src/fix_plumed.rst similarity index 100% rename from doc/rst/fix_plumed.rst rename to doc/src/fix_plumed.rst diff --git a/doc/rst/fix_poems.rst b/doc/src/fix_poems.rst similarity index 100% rename from doc/rst/fix_poems.rst rename to doc/src/fix_poems.rst diff --git a/doc/rst/fix_pour.rst b/doc/src/fix_pour.rst similarity index 100% rename from doc/rst/fix_pour.rst rename to doc/src/fix_pour.rst diff --git a/doc/rst/fix_precession_spin.rst b/doc/src/fix_precession_spin.rst similarity index 100% rename from doc/rst/fix_precession_spin.rst rename to doc/src/fix_precession_spin.rst diff --git a/doc/rst/fix_press_berendsen.rst b/doc/src/fix_press_berendsen.rst similarity index 100% rename from doc/rst/fix_press_berendsen.rst rename to doc/src/fix_press_berendsen.rst diff --git a/doc/rst/fix_print.rst b/doc/src/fix_print.rst similarity index 100% rename from doc/rst/fix_print.rst rename to doc/src/fix_print.rst diff --git a/doc/rst/fix_property_atom.rst b/doc/src/fix_property_atom.rst similarity index 100% rename from doc/rst/fix_property_atom.rst rename to doc/src/fix_property_atom.rst diff --git a/doc/rst/fix_python_invoke.rst b/doc/src/fix_python_invoke.rst similarity index 100% rename from doc/rst/fix_python_invoke.rst rename to doc/src/fix_python_invoke.rst diff --git a/doc/rst/fix_python_move.rst b/doc/src/fix_python_move.rst similarity index 100% rename from doc/rst/fix_python_move.rst rename to doc/src/fix_python_move.rst diff --git a/doc/rst/fix_qbmsst.rst b/doc/src/fix_qbmsst.rst similarity index 100% rename from doc/rst/fix_qbmsst.rst rename to doc/src/fix_qbmsst.rst diff --git a/doc/rst/fix_qeq.rst b/doc/src/fix_qeq.rst similarity index 100% rename from doc/rst/fix_qeq.rst rename to doc/src/fix_qeq.rst diff --git a/doc/rst/fix_qeq_comb.rst b/doc/src/fix_qeq_comb.rst similarity index 100% rename from doc/rst/fix_qeq_comb.rst rename to doc/src/fix_qeq_comb.rst diff --git a/doc/rst/fix_qeq_reax.rst b/doc/src/fix_qeq_reax.rst similarity index 100% rename from doc/rst/fix_qeq_reax.rst rename to doc/src/fix_qeq_reax.rst diff --git a/doc/rst/fix_qmmm.rst b/doc/src/fix_qmmm.rst similarity index 100% rename from doc/rst/fix_qmmm.rst rename to doc/src/fix_qmmm.rst diff --git a/doc/rst/fix_qtb.rst b/doc/src/fix_qtb.rst similarity index 100% rename from doc/rst/fix_qtb.rst rename to doc/src/fix_qtb.rst diff --git a/doc/rst/fix_reaxc_bonds.rst b/doc/src/fix_reaxc_bonds.rst similarity index 100% rename from doc/rst/fix_reaxc_bonds.rst rename to doc/src/fix_reaxc_bonds.rst diff --git a/doc/rst/fix_reaxc_species.rst b/doc/src/fix_reaxc_species.rst similarity index 100% rename from doc/rst/fix_reaxc_species.rst rename to doc/src/fix_reaxc_species.rst diff --git a/doc/rst/fix_recenter.rst b/doc/src/fix_recenter.rst similarity index 100% rename from doc/rst/fix_recenter.rst rename to doc/src/fix_recenter.rst diff --git a/doc/rst/fix_restrain.rst b/doc/src/fix_restrain.rst similarity index 100% rename from doc/rst/fix_restrain.rst rename to doc/src/fix_restrain.rst diff --git a/doc/rst/fix_rhok.rst b/doc/src/fix_rhok.rst similarity index 100% rename from doc/rst/fix_rhok.rst rename to doc/src/fix_rhok.rst diff --git a/doc/rst/fix_rigid.rst b/doc/src/fix_rigid.rst similarity index 100% rename from doc/rst/fix_rigid.rst rename to doc/src/fix_rigid.rst diff --git a/doc/rst/fix_rigid_meso.rst b/doc/src/fix_rigid_meso.rst similarity index 100% rename from doc/rst/fix_rigid_meso.rst rename to doc/src/fix_rigid_meso.rst diff --git a/doc/rst/fix_rx.rst b/doc/src/fix_rx.rst similarity index 100% rename from doc/rst/fix_rx.rst rename to doc/src/fix_rx.rst diff --git a/doc/rst/fix_saed_vtk.rst b/doc/src/fix_saed_vtk.rst similarity index 100% rename from doc/rst/fix_saed_vtk.rst rename to doc/src/fix_saed_vtk.rst diff --git a/doc/rst/fix_setforce.rst b/doc/src/fix_setforce.rst similarity index 100% rename from doc/rst/fix_setforce.rst rename to doc/src/fix_setforce.rst diff --git a/doc/rst/fix_shake.rst b/doc/src/fix_shake.rst similarity index 100% rename from doc/rst/fix_shake.rst rename to doc/src/fix_shake.rst diff --git a/doc/rst/fix_shardlow.rst b/doc/src/fix_shardlow.rst similarity index 100% rename from doc/rst/fix_shardlow.rst rename to doc/src/fix_shardlow.rst diff --git a/doc/rst/fix_smd.rst b/doc/src/fix_smd.rst similarity index 100% rename from doc/rst/fix_smd.rst rename to doc/src/fix_smd.rst diff --git a/doc/rst/fix_smd_adjust_dt.rst b/doc/src/fix_smd_adjust_dt.rst similarity index 100% rename from doc/rst/fix_smd_adjust_dt.rst rename to doc/src/fix_smd_adjust_dt.rst diff --git a/doc/rst/fix_smd_integrate_tlsph.rst b/doc/src/fix_smd_integrate_tlsph.rst similarity index 100% rename from doc/rst/fix_smd_integrate_tlsph.rst rename to doc/src/fix_smd_integrate_tlsph.rst diff --git a/doc/rst/fix_smd_integrate_ulsph.rst b/doc/src/fix_smd_integrate_ulsph.rst similarity index 100% rename from doc/rst/fix_smd_integrate_ulsph.rst rename to doc/src/fix_smd_integrate_ulsph.rst diff --git a/doc/rst/fix_smd_move_triangulated_surface.rst b/doc/src/fix_smd_move_triangulated_surface.rst similarity index 100% rename from doc/rst/fix_smd_move_triangulated_surface.rst rename to doc/src/fix_smd_move_triangulated_surface.rst diff --git a/doc/rst/fix_smd_setvel.rst b/doc/src/fix_smd_setvel.rst similarity index 100% rename from doc/rst/fix_smd_setvel.rst rename to doc/src/fix_smd_setvel.rst diff --git a/doc/rst/fix_smd_wall_surface.rst b/doc/src/fix_smd_wall_surface.rst similarity index 100% rename from doc/rst/fix_smd_wall_surface.rst rename to doc/src/fix_smd_wall_surface.rst diff --git a/doc/rst/fix_spring.rst b/doc/src/fix_spring.rst similarity index 100% rename from doc/rst/fix_spring.rst rename to doc/src/fix_spring.rst diff --git a/doc/rst/fix_spring_chunk.rst b/doc/src/fix_spring_chunk.rst similarity index 100% rename from doc/rst/fix_spring_chunk.rst rename to doc/src/fix_spring_chunk.rst diff --git a/doc/rst/fix_spring_rg.rst b/doc/src/fix_spring_rg.rst similarity index 100% rename from doc/rst/fix_spring_rg.rst rename to doc/src/fix_spring_rg.rst diff --git a/doc/rst/fix_spring_self.rst b/doc/src/fix_spring_self.rst similarity index 100% rename from doc/rst/fix_spring_self.rst rename to doc/src/fix_spring_self.rst diff --git a/doc/rst/fix_srd.rst b/doc/src/fix_srd.rst similarity index 100% rename from doc/rst/fix_srd.rst rename to doc/src/fix_srd.rst diff --git a/doc/rst/fix_store_force.rst b/doc/src/fix_store_force.rst similarity index 100% rename from doc/rst/fix_store_force.rst rename to doc/src/fix_store_force.rst diff --git a/doc/rst/fix_store_state.rst b/doc/src/fix_store_state.rst similarity index 100% rename from doc/rst/fix_store_state.rst rename to doc/src/fix_store_state.rst diff --git a/doc/rst/fix_temp_berendsen.rst b/doc/src/fix_temp_berendsen.rst similarity index 100% rename from doc/rst/fix_temp_berendsen.rst rename to doc/src/fix_temp_berendsen.rst diff --git a/doc/rst/fix_temp_csvr.rst b/doc/src/fix_temp_csvr.rst similarity index 100% rename from doc/rst/fix_temp_csvr.rst rename to doc/src/fix_temp_csvr.rst diff --git a/doc/rst/fix_temp_rescale.rst b/doc/src/fix_temp_rescale.rst similarity index 100% rename from doc/rst/fix_temp_rescale.rst rename to doc/src/fix_temp_rescale.rst diff --git a/doc/rst/fix_temp_rescale_eff.rst b/doc/src/fix_temp_rescale_eff.rst similarity index 100% rename from doc/rst/fix_temp_rescale_eff.rst rename to doc/src/fix_temp_rescale_eff.rst diff --git a/doc/rst/fix_tfmc.rst b/doc/src/fix_tfmc.rst similarity index 100% rename from doc/rst/fix_tfmc.rst rename to doc/src/fix_tfmc.rst diff --git a/doc/rst/fix_thermal_conductivity.rst b/doc/src/fix_thermal_conductivity.rst similarity index 100% rename from doc/rst/fix_thermal_conductivity.rst rename to doc/src/fix_thermal_conductivity.rst diff --git a/doc/rst/fix_ti_spring.rst b/doc/src/fix_ti_spring.rst similarity index 100% rename from doc/rst/fix_ti_spring.rst rename to doc/src/fix_ti_spring.rst diff --git a/doc/rst/fix_tmd.rst b/doc/src/fix_tmd.rst similarity index 100% rename from doc/rst/fix_tmd.rst rename to doc/src/fix_tmd.rst diff --git a/doc/rst/fix_ttm.rst b/doc/src/fix_ttm.rst similarity index 100% rename from doc/rst/fix_ttm.rst rename to doc/src/fix_ttm.rst diff --git a/doc/rst/fix_tune_kspace.rst b/doc/src/fix_tune_kspace.rst similarity index 100% rename from doc/rst/fix_tune_kspace.rst rename to doc/src/fix_tune_kspace.rst diff --git a/doc/rst/fix_vector.rst b/doc/src/fix_vector.rst similarity index 100% rename from doc/rst/fix_vector.rst rename to doc/src/fix_vector.rst diff --git a/doc/rst/fix_viscosity.rst b/doc/src/fix_viscosity.rst similarity index 100% rename from doc/rst/fix_viscosity.rst rename to doc/src/fix_viscosity.rst diff --git a/doc/rst/fix_viscous.rst b/doc/src/fix_viscous.rst similarity index 100% rename from doc/rst/fix_viscous.rst rename to doc/src/fix_viscous.rst diff --git a/doc/rst/fix_wall.rst b/doc/src/fix_wall.rst similarity index 100% rename from doc/rst/fix_wall.rst rename to doc/src/fix_wall.rst diff --git a/doc/rst/fix_wall_body_polygon.rst b/doc/src/fix_wall_body_polygon.rst similarity index 100% rename from doc/rst/fix_wall_body_polygon.rst rename to doc/src/fix_wall_body_polygon.rst diff --git a/doc/rst/fix_wall_body_polyhedron.rst b/doc/src/fix_wall_body_polyhedron.rst similarity index 100% rename from doc/rst/fix_wall_body_polyhedron.rst rename to doc/src/fix_wall_body_polyhedron.rst diff --git a/doc/rst/fix_wall_ees.rst b/doc/src/fix_wall_ees.rst similarity index 100% rename from doc/rst/fix_wall_ees.rst rename to doc/src/fix_wall_ees.rst diff --git a/doc/rst/fix_wall_gran.rst b/doc/src/fix_wall_gran.rst similarity index 100% rename from doc/rst/fix_wall_gran.rst rename to doc/src/fix_wall_gran.rst diff --git a/doc/rst/fix_wall_gran_region.rst b/doc/src/fix_wall_gran_region.rst similarity index 100% rename from doc/rst/fix_wall_gran_region.rst rename to doc/src/fix_wall_gran_region.rst diff --git a/doc/rst/fix_wall_piston.rst b/doc/src/fix_wall_piston.rst similarity index 100% rename from doc/rst/fix_wall_piston.rst rename to doc/src/fix_wall_piston.rst diff --git a/doc/rst/fix_wall_reflect.rst b/doc/src/fix_wall_reflect.rst similarity index 100% rename from doc/rst/fix_wall_reflect.rst rename to doc/src/fix_wall_reflect.rst diff --git a/doc/rst/fix_wall_region.rst b/doc/src/fix_wall_region.rst similarity index 100% rename from doc/rst/fix_wall_region.rst rename to doc/src/fix_wall_region.rst diff --git a/doc/rst/fix_wall_srd.rst b/doc/src/fix_wall_srd.rst similarity index 100% rename from doc/rst/fix_wall_srd.rst rename to doc/src/fix_wall_srd.rst diff --git a/doc/src/fixes.rst b/doc/src/fixes.rst new file mode 100644 index 0000000000000000000000000000000000000000..5a85738c45128d4f7fac91e4bebc92916704b7ea --- /dev/null +++ b/doc/src/fixes.rst @@ -0,0 +1,9 @@ +Fixes +##### + + +.. toctree:: + :maxdepth: 1 + :glob: + + fix_* diff --git a/doc/src/fixes.txt b/doc/src/fixes.txt deleted file mode 100644 index d966b9a225cca510a0ce61daff21099a75a01e26..0000000000000000000000000000000000000000 --- a/doc/src/fixes.txt +++ /dev/null @@ -1,190 +0,0 @@ -Fixes :h1 - - diff --git a/doc/rst/group.rst b/doc/src/group.rst similarity index 100% rename from doc/rst/group.rst rename to doc/src/group.rst diff --git a/doc/rst/group2ndx.rst b/doc/src/group2ndx.rst similarity index 100% rename from doc/rst/group2ndx.rst rename to doc/src/group2ndx.rst diff --git a/doc/rst/hyper.rst b/doc/src/hyper.rst similarity index 100% rename from doc/rst/hyper.rst rename to doc/src/hyper.rst diff --git a/doc/rst/if.rst b/doc/src/if.rst similarity index 100% rename from doc/rst/if.rst rename to doc/src/if.rst diff --git a/doc/rst/improper_class2.rst b/doc/src/improper_class2.rst similarity index 100% rename from doc/rst/improper_class2.rst rename to doc/src/improper_class2.rst diff --git a/doc/rst/improper_coeff.rst b/doc/src/improper_coeff.rst similarity index 100% rename from doc/rst/improper_coeff.rst rename to doc/src/improper_coeff.rst diff --git a/doc/rst/improper_cossq.rst b/doc/src/improper_cossq.rst similarity index 100% rename from doc/rst/improper_cossq.rst rename to doc/src/improper_cossq.rst diff --git a/doc/rst/improper_cvff.rst b/doc/src/improper_cvff.rst similarity index 100% rename from doc/rst/improper_cvff.rst rename to doc/src/improper_cvff.rst diff --git a/doc/rst/improper_distance.rst b/doc/src/improper_distance.rst similarity index 100% rename from doc/rst/improper_distance.rst rename to doc/src/improper_distance.rst diff --git a/doc/rst/improper_distharm.rst b/doc/src/improper_distharm.rst similarity index 100% rename from doc/rst/improper_distharm.rst rename to doc/src/improper_distharm.rst diff --git a/doc/rst/improper_fourier.rst b/doc/src/improper_fourier.rst similarity index 100% rename from doc/rst/improper_fourier.rst rename to doc/src/improper_fourier.rst diff --git a/doc/rst/improper_harmonic.rst b/doc/src/improper_harmonic.rst similarity index 100% rename from doc/rst/improper_harmonic.rst rename to doc/src/improper_harmonic.rst diff --git a/doc/rst/improper_hybrid.rst b/doc/src/improper_hybrid.rst similarity index 100% rename from doc/rst/improper_hybrid.rst rename to doc/src/improper_hybrid.rst diff --git a/doc/rst/improper_inversion_harmonic.rst b/doc/src/improper_inversion_harmonic.rst similarity index 100% rename from doc/rst/improper_inversion_harmonic.rst rename to doc/src/improper_inversion_harmonic.rst diff --git a/doc/rst/improper_none.rst b/doc/src/improper_none.rst similarity index 100% rename from doc/rst/improper_none.rst rename to doc/src/improper_none.rst diff --git a/doc/rst/improper_ring.rst b/doc/src/improper_ring.rst similarity index 100% rename from doc/rst/improper_ring.rst rename to doc/src/improper_ring.rst diff --git a/doc/rst/improper_sqdistharm.rst b/doc/src/improper_sqdistharm.rst similarity index 100% rename from doc/rst/improper_sqdistharm.rst rename to doc/src/improper_sqdistharm.rst diff --git a/doc/rst/improper_style.rst b/doc/src/improper_style.rst similarity index 100% rename from doc/rst/improper_style.rst rename to doc/src/improper_style.rst diff --git a/doc/rst/improper_umbrella.rst b/doc/src/improper_umbrella.rst similarity index 100% rename from doc/rst/improper_umbrella.rst rename to doc/src/improper_umbrella.rst diff --git a/doc/rst/improper_zero.rst b/doc/src/improper_zero.rst similarity index 100% rename from doc/rst/improper_zero.rst rename to doc/src/improper_zero.rst diff --git a/doc/src/impropers.rst b/doc/src/impropers.rst new file mode 100644 index 0000000000000000000000000000000000000000..93b4776d2cd9a0e1d141749a5cdd643f23c588c8 --- /dev/null +++ b/doc/src/impropers.rst @@ -0,0 +1,9 @@ +Improper Styles +############### + + +.. toctree:: + :maxdepth: 1 + :glob: + + improper_* diff --git a/doc/rst/include.rst b/doc/src/include.rst similarity index 100% rename from doc/rst/include.rst rename to doc/src/include.rst diff --git a/doc/rst/info.rst b/doc/src/info.rst similarity index 100% rename from doc/rst/info.rst rename to doc/src/info.rst diff --git a/doc/rst/jump.rst b/doc/src/jump.rst similarity index 100% rename from doc/rst/jump.rst rename to doc/src/jump.rst diff --git a/doc/rst/kim_commands.rst b/doc/src/kim_commands.rst similarity index 65% rename from doc/rst/kim_commands.rst rename to doc/src/kim_commands.rst index e9393200d775a25dd575ce9f95551fc27243ad1a..9f0b5a6775c56e6b1120b2e061b2e621348163f1 100644 --- a/doc/rst/kim_commands.rst +++ b/doc/src/kim_commands.rst @@ -9,6 +9,9 @@ kim\_interactions command kim\_query command ================== +kim\_param command +================== + Syntax """""" @@ -18,15 +21,36 @@ Syntax kim_init model user_units unitarg kim_interactions typeargs kim_query variable formatarg query_function queryargs + kim_param get param_name index_range variables formatarg + kim_param set param_name index_range values + +.. _formatarg\_options: + + * model = name of the KIM interatomic model (the KIM ID for models archived in OpenKIM) * user\_units = the LAMMPS :doc:`units ` style assumed in the LAMMPS input script * unitarg = *unit\_conversion\_mode* (optional) * typeargs = atom type to species mapping (one entry per atom type) or *fixed\_types* for models with a preset fixed mapping -* variable = name of a (string style) variable where the result of the query is stored -* formatarg = *split* (optional) +* variable(s) = single name or list of names of (string style) LAMMPS variable(s) where a query result or parameter get result is stored. Variables that do not exist will be created by the command. +* formatarg = *list, split, or explicit* (optional): + + .. parsed-literal:: + + *list* = returns a single string with a list of space separated values + (e.g. "1.0 2.0 3.0"), which is placed in a LAMMPS variable as + defined by the *variable* argument. [default for *kim_query*] + *split* = returns the values separately in new variables with names based + on the prefix specified in *variable* and a number appended to + indicate which element in the list of values is in the variable. + *explicit* = returns the values separately in one more more variable names + provided as arguments that preceed *formatarg*\ . [default for *kim_param*] + * query\_function = name of the OpenKIM web API query function to be used * queryargs = a series of *keyword=value* pairs that represent the web query; supported keywords depend on the query function +* param\_name = name of a KIM portable model parameter +* index\_range = KIM portable model parameter index range (an integer for a single element, or pair of integers separated by a colon for a range of elements) +* values = new value(s) to replace the current value(s) of a KIM portable model parameter Examples """""""" @@ -39,9 +63,11 @@ Examples kim_init Sim_LAMMPS_ReaxFF_StrachanVanDuinChakraborty_2003_CHNO__SM_107643900657_000 real kim_init Sim_LAMMPS_ReaxFF_StrachanVanDuinChakraborty_2003_CHNO__SM_107643900657_000 metal unit_conversion_mode kim_interactions C H O - Sim_LAMMPS_IFF_PCFF_HeinzMishraLinEmami_2015Ver1v5_FccmetalsMineralsSolvents Polymers__SM_039297821658_000 real + kim_init Sim_LAMMPS_IFF_PCFF_HeinzMishraLinEmami_2015Ver1v5_FccmetalsMineralsSolventsPolymers__SM_039297821658_000 real kim_interactions fixed_types kim_query a0 get_lattice_constant_cubic crystal=["fcc"] species=["Al"] units=["angstrom"] + kim_param get gamma 1 varGamma + kim_param set gamma 1 3.0 Description """"""""""" @@ -90,6 +116,10 @@ Types of IMs in OpenKIM There are two types of IMs archived in OpenKIM: +.. _PM\_type: + + + 1. The first type is called a *KIM Portable Model* (PM). A KIM PM is an independent computer implementation of an IM written in one of the languages supported by KIM (C, C++, Fortran) that conforms to the KIM Application Programming Interface (`KIM API `_) Portable Model Interface (PMI) standard. A KIM PM will work seamlessly with any simulation code that supports the KIM API/PMI standard (including LAMMPS; see `complete list of supported codes `_). 2. The second type is called a *KIM Simulator Model* (SM). A KIM SM is an IM that is implemented natively within a simulation code (\ *simulator*\ ) that supports the KIM API Simulator Model Interface (SMI); in this case LAMMPS. A separate SM package is archived in OpenKIM for each parameterization of the IM, which includes all of the necessary parameter files, LAMMPS commands, and metadata (supported species, units, etc.) needed to run the IM in LAMMPS. @@ -126,7 +156,7 @@ The URL for the Model Page is constructed from the https://openkim.org/id/extended_KIM_ID -For example for the Stillinger-Weber potential +For example, for the Stillinger--Weber potential listed above the Model Page is located at: @@ -224,7 +254,8 @@ potential for Al: The above script will end with an error in the *kim\_init* line if the IM is changed to another potential for Al that does not work with *metal* -units. To address this *kim\_init* offers the *unit\_conversion\_mode*. +units. To address this *kim\_init* offers the *unit\_conversion\_mode* +as shown below. If unit conversion mode *is* active, then *kim\_init* calls the LAMMPS :doc:`units ` command to set the units to the IM's required or preferred units. Conversion factors between the IM's units and the *user\_units* @@ -284,7 +315,7 @@ will work correctly for any IM for Al (KIM PM or SM) selected by the *kim\_init* command. Care must be taken to apply unit conversion to dimensional variables read in -from a file. For example if a configuration of atoms is read in from a +from a file. For example, if a configuration of atoms is read in from a dump file using the :doc:`read\_dump ` command, the following can be done to convert the box and all atomic positions to the correct units: @@ -408,14 +439,40 @@ Using OpenKIM Web Queries in LAMMPS (*kim\_query*) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The *kim\_query* command performs a web query to retrieve the predictions -of the IM set by *kim\_init* for material properties archived in -`OpenKIM `_. The *kim\_query* command must be preceded -by a *kim\_init* command. The result of the query is stored in a -:doc:`string style variable `, the name of which is given as the first -argument of the *kim\_query command*. (For the case of multiple -return values, the optional *split* keyword can be used after the -variable name to separate the results into multiple variables; see -the :ref:`example ` below.) +of an IM set by *kim\_init* for material properties archived in +`OpenKIM `_. + +.. note:: + + The *kim\_query* command must be preceded by a *kim\_init* command. + +The syntax for the *kim\_query* command is as follows: + + +.. parsed-literal:: + + kim_query variable formatarg query_function queryargs + +The result of the query is stored in one or more +:doc:`string style variables ` as determined by the +optional *formatarg* argument :ref:`documented above `. +For the "list" setting of *formatarg* (or if *formatarg* is not +specified), the result is returned as a space-separated list of +values in *variable*\ . +The *formatarg* keyword "split" separates the result values into +individual variables of the form *prefix\_I*, where *prefix* is set to the +*kim\_query* *variable* argument and *I* ranges from 1 to the number of +returned values. The number and order of the returned values is determined +by the type of query performed. (Note that the "explicit" setting of +*formatarg* is not supported by *kim\_query*.) + +.. note:: + + *kim\_query* only supports queries that return a single result or + an array of values. More complex queries that return a JSON structure + are not currently supported. An attempt to use *kim\_query* in such + cases will generate an error. + The second required argument *query\_function* is the name of the query function to be called (e.g. *get\_lattice\_constant\_cubic*). All following :doc:`arguments ` are parameters handed over to @@ -443,8 +500,8 @@ is available on the OpenKIM webpage at `query documentation `_ to see which methods are available for a given *query function*\ . -*kim\_query* Usage Examples and Further Clarifications: -""""""""""""""""""""""""""""""""""""""""""""""""""""""" +*kim\_query* Usage Examples and Further Clarifications +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The data obtained by *kim\_query* commands can be used as part of the setup or analysis phases of LAMMPS simulations. Some examples are given below. @@ -473,10 +530,6 @@ Note that in *unit\_conversion\_mode* the results obtained from a For example, in the above script, the lattice command would need to be changed to: "lattice fcc ${a0}\*${\_u_distance}". -.. _split\_example: - - - **Define an equilibrium hcp crystal** @@ -494,12 +547,11 @@ changed to: "lattice fcc ${a0}\*${\_u_distance}". In this case the *kim\_query* returns two arguments (since the hexagonal close packed (hcp) structure has two independent lattice constants). -The default behavior of *kim\_query* returns the result as a string -with the values separated by commas. The optional keyword *split* -separates the result values into individual variables of the form -*prefix\_I*, where *prefix* is set to the the *kim\_query* *variable* argument -and *I* ranges from 1 to the number of returned values. The number and order of -the returned values is determined by the type of query performed. +The *formatarg* keyword "split" places the two values into +the variables *latconst\_1* and *latconst\_2*. (These variables are +created if they do not already exist.) For convenience the variables +*a0* and *c0* are created in order to make the remainder of the +input script more readable. **Define a crystal at finite temperature accounting for thermal expansion** @@ -560,6 +612,254 @@ ideal fcc cohesive energy of the atoms in the system obtained from from these programs are queried is tracked. No other information about the nature of the query or its source is recorded. +Accessing KIM Model Parameters from LAMMPS (*kim\_param*) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +All IMs are functional forms containing a set of +parameters. The values of these parameters are typically +selected to best reproduce a training set of quantum mechanical +calculations or available experimental data. For example, a +Lennard-Jones potential intended to model argon might have the values of +its two parameters, epsilon and sigma, fit to the +dimer dissociation energy or thermodynamic properties at a critical point +of the phase diagram. + +Normally a user employing an IM should not modify its parameters since, +as noted above, these are selected to reproduce material properties. +However, there are cases where accessing and modifying IM parameters +is desired, such as for assessing uncertainty, fitting an IM, +or working with an ensemble of IMs. As explained :ref:`above `, +IMs archived in OpenKIM are either Portable Models (PMs) or +Simulator Models (SMs). KIM PMs are complete independent implementations +of an IM, whereas KIM SMs are wrappers to an IM implemented within LAMMPS. +Two different mechanisms are provided for accessing IM parameters in these +two cases: + +* For a KIM PM, the *kim\_param* command can be used to *get* and *set* the values of the PM's parameters as explained below. +* For a KIM SM, the user should consult the documentation page for the specific IM and follow instructions there for how to modify its parameters (if possible). + +The *kim\_param get* and *kim\_param set* commands provide an interface +to access and change the parameters of a KIM PM that "publishes" its +parameters and makes them publicly available (see the +`KIM API documentation `_ +for details). + +.. note:: + + The *kim\_param get/set* commands must be preceded by *kim\_init*. + The *kim\_param set* command must additionally be preceded by a + *kim\_interactions* command (or alternatively by a *pair\_style kim* + and *pair\_coeff* commands). The *kim\_param set* command may be used wherever a *pair\_coeff* command may occur. + +The syntax for the *kim\_param* command is as follows: + + +.. parsed-literal:: + + kim_param get param_name index_range variable formatarg + kim_param set param_name index_range values + +Here, *param\_name* is the name of a KIM PM parameter (which is published +by the PM and available for access). The specific string used to identify +a parameter is defined by the PM. For example, for the +`Stillinger--Weber (SW) potential in OpenKIM `_, +the parameter names are *A, B, p, q, sigma, gamma, cutoff, lambda, costheta0*\ . + +.. note:: + + The list of all the parameters that a PM exposes for access/mutation are + automatically written to the lammps log file when *kim\_init* is called. + +Each published parameter of a KIM PM takes the form of an array of +numerical values. The array can contain one element for a single-valued +parameter, or a set of values. For example, the +`multispecies SW potential for the Zn-Cd-Hg-S-Se-Te system `_ +has the same parameter names as the +`single-species SW potential `_, +but each parameter array contains 21 entries that correspond to the parameter +values used for each pairwise combination of the model's six supported species +(this model does not have parameters specific to individual ternary +combinations of its supported species). + +The *index\_range* argument may either be an integer referring to +a specific element within the array associated with the parameter +specified by *param\_name*, or a pair of integers separated by a colon +that refer to a slice of this array. In both cases, one-based indexing is +used to refer to the entries of the array. + +The result of a *get* operation for a specific *index\_range* is stored in +one or more :doc:`LAMMPS string style variables ` as determined +by the optional *formatarg* argument :ref:`documented above. ` +If not specified, the default for *formatarg* is "explicit" for the +*kim\_param* command. + +For the case where the result is an array with multiple values +(i.e. *index\_range* contains a range), the optional "split" or "explicit" +*formatarg* keywords can be used to separate the results into multiple +variables; see the examples below. +Multiple parameters can be retrieved with a single call to *kim\_param get* +by repeating the argument list following *get*\ . + +For a *set* operation, the *values* argument contains the new value(s) +for the element(s) of the parameter specified by *index\_range*. For the case +where multiple values are being set, *values* contains a set of values +separated by spaces. Multiple parameters can be set with a single call to +*kim\_param set* by repeating the argument list following *set*\ . + +*kim\_param* Usage Examples and Further Clarifications +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Examples of getting and setting KIM PM parameters with further +clarifications are provided below. + +**Getting a scalar parameter** + + +.. parsed-literal:: + + kim_init SW_StillingerWeber_1985_Si__MO_405512056662_005 metal + ... + kim_param get A 1 VARA + +In this case, the value of the SW *A* parameter is retrieved and placed +in the LAMMPS variable *VARA*\ . The variable *VARA* can be used +in the remainder of the input script in the same manner as any other +LAMMPS variable. + +**Getting multiple scalar parameters with a single call** + + +.. parsed-literal:: + + kim_init SW_StillingerWeber_1985_Si__MO_405512056662_005 metal + ... + kim_param get A 1 VARA B 1 VARB + +This retrieves the *A* and *B* parameters of the SW potential and stores +them in the LAMMPS variables *VARA* and *VARB*\ . + +**Getting a range of values from a parameter** + +There are several options when getting a range of values from a parameter +determined by the *formatarg* argument. + + +.. parsed-literal:: + + kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal + ... + kim_param get lambda 7:9 LAM_TeTe LAM_TeZn LAM_TeSe + +In this case, *formatarg* is not specified and therefore the default +"explicit" mode is used. (The behavior would be the same if the word +*explicit* were added after *LAM\_TeSe*.) Elements 7, 8 and 9 of parameter +lambda retrieved by the *get* operation are placed in the LAMMPS variables +*LAM\_TeTe*, *LAM\_TeZn* and *LAM\_TeSe*, respectively. + +.. note:: + + In the above example, elements 7--9 of the lambda parameter correspond + to Te-Te, Te-Zm and Te-Se interactions. This can be determined by visiting + the `model page for the specified potential `_ + and looking at its parameter file linked to at the bottom of the page + (file with .param ending) and consulting the README documentation + provided with the driver for the PM being used. A link to the driver + is provided at the top of the model page. + + +.. parsed-literal:: + + kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal + ... + kim_param get lambda 15:17 LAMS list + variable LAM_VALUE index ${LAMS} + label loop_on_lambda + ... + ... do something with current value of lambda + ... + next LAM_VALUE + jump SELF loop_on_lambda + +In this case, the "list" mode of *formatarg* is used. +The result of the *get* operation is stored in the LAMMPS variable +*LAMS* as a string containing the three retrieved values separated +by spaces, e.g "1.0 2.0 3.0". This can be used in LAMMPS with an +*index* variable to access the values one at a time within a loop +as shown in the example. At each iteration of the loop *LAM\_VALUE* +contains the current value of lambda. + + +.. parsed-literal:: + + kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal + ... + kim_param get lambda 15:17 LAM split + +In this case, the "split" mode of *formatarg* is used. +The three values retrieved by the *get* operation are stored in +the three LAMMPS variables *LAM\_15*, *LAM\_16* and *LAM\_17*. +The provided name "LAM" is used as prefix and the location in +the lambda array is appended to create the variable names. + +**Setting a scalar parameter** + + +.. parsed-literal:: + + kim_init SW_StillingerWeber_1985_Si__MO_405512056662_005 metal + ... + kim_interactions Si + kim_param set gamma 1 2.6 + +Here, the SW potential's gamma parameter is set to 2.6. Note that the *get* +and *set* commands work together, so that a *get* following a *set* +operation will return the new value that was set. For example: + + +.. parsed-literal:: + + ... + kim_interactions Si + kim_param get gamma 1 ORIG_GAMMA + kim_param set gamma 1 2.6 + kim_param get gamma 1 NEW_GAMMA + ... + print "original gamma = ${ORIG_GAMMA}, new gamma = ${NEW_GAMMA}" + +Here, *ORIG\_GAMMA* will contain the original gamma value for the SW +potential, while *NEW\_GAMMA* will contain the value 2.6. + +**Setting multiple scalar parameters with a single call** + + +.. parsed-literal:: + + kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal + ... + kim_interactions Cd Te + variable VARG equal 2.6 + variable VARS equal 2.0951 + kim_param set gamma 1 ${VARG} sigma 3 ${VARS} + +In this case, the first element of the *gamma* parameter and +third element of the *sigma* parameter are set to 2.6 and 2.0951, +respectively. This example also shows how LAMMPS variables can +be used when setting parameters. + +**Setting a range of values of a parameter** + + +.. parsed-literal:: + + kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal + ... + kim_interactions Cd Te Zn Se Hg S + kim_param set sigma 2:6 2.35214 2.23869 2.04516 2.43269 1.80415 + +In this case, elements 2 through 6 of the parameter *sigma* +are set to the values 2.35214, 2.23869, 2.04516, 2.43269 and 1.80415 in +order. + Citation of OpenKIM IMs ----------------------- diff --git a/doc/rst/kspace_modify.rst b/doc/src/kspace_modify.rst similarity index 100% rename from doc/rst/kspace_modify.rst rename to doc/src/kspace_modify.rst diff --git a/doc/rst/kspace_style.rst b/doc/src/kspace_style.rst similarity index 100% rename from doc/rst/kspace_style.rst rename to doc/src/kspace_style.rst diff --git a/doc/rst/label.rst b/doc/src/label.rst similarity index 100% rename from doc/rst/label.rst rename to doc/src/label.rst diff --git a/doc/rst/lattice.rst b/doc/src/lattice.rst similarity index 100% rename from doc/rst/lattice.rst rename to doc/src/lattice.rst diff --git a/doc/rst/log.rst b/doc/src/log.rst similarity index 100% rename from doc/rst/log.rst rename to doc/src/log.rst diff --git a/doc/rst/mass.rst b/doc/src/mass.rst similarity index 100% rename from doc/rst/mass.rst rename to doc/src/mass.rst diff --git a/doc/rst/message.rst b/doc/src/message.rst similarity index 100% rename from doc/rst/message.rst rename to doc/src/message.rst diff --git a/doc/rst/min_modify.rst b/doc/src/min_modify.rst similarity index 100% rename from doc/rst/min_modify.rst rename to doc/src/min_modify.rst diff --git a/doc/rst/min_spin.rst b/doc/src/min_spin.rst similarity index 100% rename from doc/rst/min_spin.rst rename to doc/src/min_spin.rst diff --git a/doc/rst/min_style.rst b/doc/src/min_style.rst similarity index 100% rename from doc/rst/min_style.rst rename to doc/src/min_style.rst diff --git a/doc/rst/minimize.rst b/doc/src/minimize.rst similarity index 100% rename from doc/rst/minimize.rst rename to doc/src/minimize.rst diff --git a/doc/rst/molecule.rst b/doc/src/molecule.rst similarity index 100% rename from doc/rst/molecule.rst rename to doc/src/molecule.rst diff --git a/doc/rst/neb.rst b/doc/src/neb.rst similarity index 100% rename from doc/rst/neb.rst rename to doc/src/neb.rst diff --git a/doc/rst/neb_spin.rst b/doc/src/neb_spin.rst similarity index 100% rename from doc/rst/neb_spin.rst rename to doc/src/neb_spin.rst diff --git a/doc/rst/neigh_modify.rst b/doc/src/neigh_modify.rst similarity index 100% rename from doc/rst/neigh_modify.rst rename to doc/src/neigh_modify.rst diff --git a/doc/rst/neighbor.rst b/doc/src/neighbor.rst similarity index 100% rename from doc/rst/neighbor.rst rename to doc/src/neighbor.rst diff --git a/doc/rst/newton.rst b/doc/src/newton.rst similarity index 100% rename from doc/rst/newton.rst rename to doc/src/newton.rst diff --git a/doc/rst/next.rst b/doc/src/next.rst similarity index 100% rename from doc/rst/next.rst rename to doc/src/next.rst diff --git a/doc/rst/package.rst b/doc/src/package.rst similarity index 100% rename from doc/rst/package.rst rename to doc/src/package.rst diff --git a/doc/rst/pair_adp.rst b/doc/src/pair_adp.rst similarity index 100% rename from doc/rst/pair_adp.rst rename to doc/src/pair_adp.rst diff --git a/doc/rst/pair_agni.rst b/doc/src/pair_agni.rst similarity index 100% rename from doc/rst/pair_agni.rst rename to doc/src/pair_agni.rst diff --git a/doc/rst/pair_airebo.rst b/doc/src/pair_airebo.rst similarity index 100% rename from doc/rst/pair_airebo.rst rename to doc/src/pair_airebo.rst diff --git a/doc/rst/pair_atm.rst b/doc/src/pair_atm.rst similarity index 100% rename from doc/rst/pair_atm.rst rename to doc/src/pair_atm.rst diff --git a/doc/rst/pair_awpmd.rst b/doc/src/pair_awpmd.rst similarity index 100% rename from doc/rst/pair_awpmd.rst rename to doc/src/pair_awpmd.rst diff --git a/doc/rst/pair_beck.rst b/doc/src/pair_beck.rst similarity index 100% rename from doc/rst/pair_beck.rst rename to doc/src/pair_beck.rst diff --git a/doc/rst/pair_body_nparticle.rst b/doc/src/pair_body_nparticle.rst similarity index 100% rename from doc/rst/pair_body_nparticle.rst rename to doc/src/pair_body_nparticle.rst diff --git a/doc/rst/pair_body_rounded_polygon.rst b/doc/src/pair_body_rounded_polygon.rst similarity index 100% rename from doc/rst/pair_body_rounded_polygon.rst rename to doc/src/pair_body_rounded_polygon.rst diff --git a/doc/rst/pair_body_rounded_polyhedron.rst b/doc/src/pair_body_rounded_polyhedron.rst similarity index 100% rename from doc/rst/pair_body_rounded_polyhedron.rst rename to doc/src/pair_body_rounded_polyhedron.rst diff --git a/doc/rst/pair_bop.rst b/doc/src/pair_bop.rst similarity index 100% rename from doc/rst/pair_bop.rst rename to doc/src/pair_bop.rst diff --git a/doc/rst/pair_born.rst b/doc/src/pair_born.rst similarity index 100% rename from doc/rst/pair_born.rst rename to doc/src/pair_born.rst diff --git a/doc/rst/pair_brownian.rst b/doc/src/pair_brownian.rst similarity index 100% rename from doc/rst/pair_brownian.rst rename to doc/src/pair_brownian.rst diff --git a/doc/rst/pair_buck.rst b/doc/src/pair_buck.rst similarity index 100% rename from doc/rst/pair_buck.rst rename to doc/src/pair_buck.rst diff --git a/doc/rst/pair_buck6d_coul_gauss.rst b/doc/src/pair_buck6d_coul_gauss.rst similarity index 100% rename from doc/rst/pair_buck6d_coul_gauss.rst rename to doc/src/pair_buck6d_coul_gauss.rst diff --git a/doc/rst/pair_buck_long.rst b/doc/src/pair_buck_long.rst similarity index 100% rename from doc/rst/pair_buck_long.rst rename to doc/src/pair_buck_long.rst diff --git a/doc/rst/pair_charmm.rst b/doc/src/pair_charmm.rst similarity index 100% rename from doc/rst/pair_charmm.rst rename to doc/src/pair_charmm.rst diff --git a/doc/rst/pair_class2.rst b/doc/src/pair_class2.rst similarity index 100% rename from doc/rst/pair_class2.rst rename to doc/src/pair_class2.rst diff --git a/doc/rst/pair_coeff.rst b/doc/src/pair_coeff.rst similarity index 100% rename from doc/rst/pair_coeff.rst rename to doc/src/pair_coeff.rst diff --git a/doc/rst/pair_colloid.rst b/doc/src/pair_colloid.rst similarity index 100% rename from doc/rst/pair_colloid.rst rename to doc/src/pair_colloid.rst diff --git a/doc/rst/pair_comb.rst b/doc/src/pair_comb.rst similarity index 100% rename from doc/rst/pair_comb.rst rename to doc/src/pair_comb.rst diff --git a/doc/rst/pair_cosine_squared.rst b/doc/src/pair_cosine_squared.rst similarity index 100% rename from doc/rst/pair_cosine_squared.rst rename to doc/src/pair_cosine_squared.rst diff --git a/doc/rst/pair_coul.rst b/doc/src/pair_coul.rst similarity index 100% rename from doc/rst/pair_coul.rst rename to doc/src/pair_coul.rst diff --git a/doc/rst/pair_coul_diel.rst b/doc/src/pair_coul_diel.rst similarity index 100% rename from doc/rst/pair_coul_diel.rst rename to doc/src/pair_coul_diel.rst diff --git a/doc/rst/pair_coul_shield.rst b/doc/src/pair_coul_shield.rst similarity index 100% rename from doc/rst/pair_coul_shield.rst rename to doc/src/pair_coul_shield.rst diff --git a/doc/rst/pair_cs.rst b/doc/src/pair_cs.rst similarity index 100% rename from doc/rst/pair_cs.rst rename to doc/src/pair_cs.rst diff --git a/doc/rst/pair_dipole.rst b/doc/src/pair_dipole.rst similarity index 100% rename from doc/rst/pair_dipole.rst rename to doc/src/pair_dipole.rst diff --git a/doc/rst/pair_dpd.rst b/doc/src/pair_dpd.rst similarity index 100% rename from doc/rst/pair_dpd.rst rename to doc/src/pair_dpd.rst diff --git a/doc/rst/pair_dpd_fdt.rst b/doc/src/pair_dpd_fdt.rst similarity index 100% rename from doc/rst/pair_dpd_fdt.rst rename to doc/src/pair_dpd_fdt.rst diff --git a/doc/rst/pair_drip.rst b/doc/src/pair_drip.rst similarity index 100% rename from doc/rst/pair_drip.rst rename to doc/src/pair_drip.rst diff --git a/doc/rst/pair_dsmc.rst b/doc/src/pair_dsmc.rst similarity index 100% rename from doc/rst/pair_dsmc.rst rename to doc/src/pair_dsmc.rst diff --git a/doc/rst/pair_e3b.rst b/doc/src/pair_e3b.rst similarity index 100% rename from doc/rst/pair_e3b.rst rename to doc/src/pair_e3b.rst diff --git a/doc/rst/pair_eam.rst b/doc/src/pair_eam.rst similarity index 100% rename from doc/rst/pair_eam.rst rename to doc/src/pair_eam.rst diff --git a/doc/rst/pair_edip.rst b/doc/src/pair_edip.rst similarity index 100% rename from doc/rst/pair_edip.rst rename to doc/src/pair_edip.rst diff --git a/doc/rst/pair_eff.rst b/doc/src/pair_eff.rst similarity index 100% rename from doc/rst/pair_eff.rst rename to doc/src/pair_eff.rst diff --git a/doc/rst/pair_eim.rst b/doc/src/pair_eim.rst similarity index 100% rename from doc/rst/pair_eim.rst rename to doc/src/pair_eim.rst diff --git a/doc/rst/pair_exp6_rx.rst b/doc/src/pair_exp6_rx.rst similarity index 100% rename from doc/rst/pair_exp6_rx.rst rename to doc/src/pair_exp6_rx.rst diff --git a/doc/rst/pair_extep.rst b/doc/src/pair_extep.rst similarity index 100% rename from doc/rst/pair_extep.rst rename to doc/src/pair_extep.rst diff --git a/doc/rst/pair_fep_soft.rst b/doc/src/pair_fep_soft.rst similarity index 100% rename from doc/rst/pair_fep_soft.rst rename to doc/src/pair_fep_soft.rst diff --git a/doc/rst/pair_gauss.rst b/doc/src/pair_gauss.rst similarity index 100% rename from doc/rst/pair_gauss.rst rename to doc/src/pair_gauss.rst diff --git a/doc/rst/pair_gayberne.rst b/doc/src/pair_gayberne.rst similarity index 100% rename from doc/rst/pair_gayberne.rst rename to doc/src/pair_gayberne.rst diff --git a/doc/rst/pair_gran.rst b/doc/src/pair_gran.rst similarity index 100% rename from doc/rst/pair_gran.rst rename to doc/src/pair_gran.rst diff --git a/doc/rst/pair_granular.rst b/doc/src/pair_granular.rst similarity index 100% rename from doc/rst/pair_granular.rst rename to doc/src/pair_granular.rst diff --git a/doc/rst/pair_gromacs.rst b/doc/src/pair_gromacs.rst similarity index 100% rename from doc/rst/pair_gromacs.rst rename to doc/src/pair_gromacs.rst diff --git a/doc/rst/pair_gw.rst b/doc/src/pair_gw.rst similarity index 100% rename from doc/rst/pair_gw.rst rename to doc/src/pair_gw.rst diff --git a/doc/rst/pair_hbond_dreiding.rst b/doc/src/pair_hbond_dreiding.rst similarity index 100% rename from doc/rst/pair_hbond_dreiding.rst rename to doc/src/pair_hbond_dreiding.rst diff --git a/doc/rst/pair_hybrid.rst b/doc/src/pair_hybrid.rst similarity index 100% rename from doc/rst/pair_hybrid.rst rename to doc/src/pair_hybrid.rst diff --git a/doc/rst/pair_ilp_graphene_hbn.rst b/doc/src/pair_ilp_graphene_hbn.rst similarity index 100% rename from doc/rst/pair_ilp_graphene_hbn.rst rename to doc/src/pair_ilp_graphene_hbn.rst diff --git a/doc/rst/pair_kim.rst b/doc/src/pair_kim.rst similarity index 100% rename from doc/rst/pair_kim.rst rename to doc/src/pair_kim.rst diff --git a/doc/rst/pair_kolmogorov_crespi_full.rst b/doc/src/pair_kolmogorov_crespi_full.rst similarity index 100% rename from doc/rst/pair_kolmogorov_crespi_full.rst rename to doc/src/pair_kolmogorov_crespi_full.rst diff --git a/doc/rst/pair_kolmogorov_crespi_z.rst b/doc/src/pair_kolmogorov_crespi_z.rst similarity index 100% rename from doc/rst/pair_kolmogorov_crespi_z.rst rename to doc/src/pair_kolmogorov_crespi_z.rst diff --git a/doc/rst/pair_lcbop.rst b/doc/src/pair_lcbop.rst similarity index 100% rename from doc/rst/pair_lcbop.rst rename to doc/src/pair_lcbop.rst diff --git a/doc/rst/pair_lebedeva_z.rst b/doc/src/pair_lebedeva_z.rst similarity index 100% rename from doc/rst/pair_lebedeva_z.rst rename to doc/src/pair_lebedeva_z.rst diff --git a/doc/rst/pair_line_lj.rst b/doc/src/pair_line_lj.rst similarity index 100% rename from doc/rst/pair_line_lj.rst rename to doc/src/pair_line_lj.rst diff --git a/doc/rst/pair_list.rst b/doc/src/pair_list.rst similarity index 100% rename from doc/rst/pair_list.rst rename to doc/src/pair_list.rst diff --git a/doc/rst/pair_lj.rst b/doc/src/pair_lj.rst similarity index 100% rename from doc/rst/pair_lj.rst rename to doc/src/pair_lj.rst diff --git a/doc/rst/pair_lj96.rst b/doc/src/pair_lj96.rst similarity index 100% rename from doc/rst/pair_lj96.rst rename to doc/src/pair_lj96.rst diff --git a/doc/rst/pair_lj_cubic.rst b/doc/src/pair_lj_cubic.rst similarity index 100% rename from doc/rst/pair_lj_cubic.rst rename to doc/src/pair_lj_cubic.rst diff --git a/doc/rst/pair_lj_expand.rst b/doc/src/pair_lj_expand.rst similarity index 100% rename from doc/rst/pair_lj_expand.rst rename to doc/src/pair_lj_expand.rst diff --git a/doc/rst/pair_lj_long.rst b/doc/src/pair_lj_long.rst similarity index 100% rename from doc/rst/pair_lj_long.rst rename to doc/src/pair_lj_long.rst diff --git a/doc/rst/pair_lj_smooth.rst b/doc/src/pair_lj_smooth.rst similarity index 100% rename from doc/rst/pair_lj_smooth.rst rename to doc/src/pair_lj_smooth.rst diff --git a/doc/rst/pair_lj_smooth_linear.rst b/doc/src/pair_lj_smooth_linear.rst similarity index 100% rename from doc/rst/pair_lj_smooth_linear.rst rename to doc/src/pair_lj_smooth_linear.rst diff --git a/doc/rst/pair_lj_switch3_coulgauss.rst b/doc/src/pair_lj_switch3_coulgauss.rst similarity index 100% rename from doc/rst/pair_lj_switch3_coulgauss.rst rename to doc/src/pair_lj_switch3_coulgauss.rst diff --git a/doc/rst/pair_local_density.rst b/doc/src/pair_local_density.rst similarity index 100% rename from doc/rst/pair_local_density.rst rename to doc/src/pair_local_density.rst diff --git a/doc/rst/pair_lubricate.rst b/doc/src/pair_lubricate.rst similarity index 100% rename from doc/rst/pair_lubricate.rst rename to doc/src/pair_lubricate.rst diff --git a/doc/rst/pair_lubricateU.rst b/doc/src/pair_lubricateU.rst similarity index 100% rename from doc/rst/pair_lubricateU.rst rename to doc/src/pair_lubricateU.rst diff --git a/doc/rst/pair_mdf.rst b/doc/src/pair_mdf.rst similarity index 100% rename from doc/rst/pair_mdf.rst rename to doc/src/pair_mdf.rst diff --git a/doc/rst/pair_meam_spline.rst b/doc/src/pair_meam_spline.rst similarity index 100% rename from doc/rst/pair_meam_spline.rst rename to doc/src/pair_meam_spline.rst diff --git a/doc/rst/pair_meam_sw_spline.rst b/doc/src/pair_meam_sw_spline.rst similarity index 100% rename from doc/rst/pair_meam_sw_spline.rst rename to doc/src/pair_meam_sw_spline.rst diff --git a/doc/rst/pair_meamc.rst b/doc/src/pair_meamc.rst similarity index 100% rename from doc/rst/pair_meamc.rst rename to doc/src/pair_meamc.rst diff --git a/doc/rst/pair_meso.rst b/doc/src/pair_meso.rst similarity index 100% rename from doc/rst/pair_meso.rst rename to doc/src/pair_meso.rst diff --git a/doc/rst/pair_mgpt.rst b/doc/src/pair_mgpt.rst similarity index 100% rename from doc/rst/pair_mgpt.rst rename to doc/src/pair_mgpt.rst diff --git a/doc/rst/pair_mie.rst b/doc/src/pair_mie.rst similarity index 100% rename from doc/rst/pair_mie.rst rename to doc/src/pair_mie.rst diff --git a/doc/rst/pair_mm3_switch3_coulgauss.rst b/doc/src/pair_mm3_switch3_coulgauss.rst similarity index 100% rename from doc/rst/pair_mm3_switch3_coulgauss.rst rename to doc/src/pair_mm3_switch3_coulgauss.rst diff --git a/doc/rst/pair_modify.rst b/doc/src/pair_modify.rst similarity index 100% rename from doc/rst/pair_modify.rst rename to doc/src/pair_modify.rst diff --git a/doc/rst/pair_momb.rst b/doc/src/pair_momb.rst similarity index 100% rename from doc/rst/pair_momb.rst rename to doc/src/pair_momb.rst diff --git a/doc/rst/pair_morse.rst b/doc/src/pair_morse.rst similarity index 100% rename from doc/rst/pair_morse.rst rename to doc/src/pair_morse.rst diff --git a/doc/rst/pair_multi_lucy.rst b/doc/src/pair_multi_lucy.rst similarity index 100% rename from doc/rst/pair_multi_lucy.rst rename to doc/src/pair_multi_lucy.rst diff --git a/doc/rst/pair_multi_lucy_rx.rst b/doc/src/pair_multi_lucy_rx.rst similarity index 100% rename from doc/rst/pair_multi_lucy_rx.rst rename to doc/src/pair_multi_lucy_rx.rst diff --git a/doc/rst/pair_nb3b_harmonic.rst b/doc/src/pair_nb3b_harmonic.rst similarity index 100% rename from doc/rst/pair_nb3b_harmonic.rst rename to doc/src/pair_nb3b_harmonic.rst diff --git a/doc/rst/pair_nm.rst b/doc/src/pair_nm.rst similarity index 100% rename from doc/rst/pair_nm.rst rename to doc/src/pair_nm.rst diff --git a/doc/rst/pair_none.rst b/doc/src/pair_none.rst similarity index 100% rename from doc/rst/pair_none.rst rename to doc/src/pair_none.rst diff --git a/doc/rst/pair_oxdna.rst b/doc/src/pair_oxdna.rst similarity index 100% rename from doc/rst/pair_oxdna.rst rename to doc/src/pair_oxdna.rst diff --git a/doc/rst/pair_oxdna2.rst b/doc/src/pair_oxdna2.rst similarity index 100% rename from doc/rst/pair_oxdna2.rst rename to doc/src/pair_oxdna2.rst diff --git a/doc/rst/pair_peri.rst b/doc/src/pair_peri.rst similarity index 100% rename from doc/rst/pair_peri.rst rename to doc/src/pair_peri.rst diff --git a/doc/rst/pair_polymorphic.rst b/doc/src/pair_polymorphic.rst similarity index 100% rename from doc/rst/pair_polymorphic.rst rename to doc/src/pair_polymorphic.rst diff --git a/doc/rst/pair_python.rst b/doc/src/pair_python.rst similarity index 100% rename from doc/rst/pair_python.rst rename to doc/src/pair_python.rst diff --git a/doc/rst/pair_quip.rst b/doc/src/pair_quip.rst similarity index 100% rename from doc/rst/pair_quip.rst rename to doc/src/pair_quip.rst diff --git a/doc/rst/pair_reaxc.rst b/doc/src/pair_reaxc.rst similarity index 100% rename from doc/rst/pair_reaxc.rst rename to doc/src/pair_reaxc.rst diff --git a/doc/rst/pair_resquared.rst b/doc/src/pair_resquared.rst similarity index 100% rename from doc/rst/pair_resquared.rst rename to doc/src/pair_resquared.rst diff --git a/doc/rst/pair_sdk.rst b/doc/src/pair_sdk.rst similarity index 100% rename from doc/rst/pair_sdk.rst rename to doc/src/pair_sdk.rst diff --git a/doc/rst/pair_sdpd_taitwater_isothermal.rst b/doc/src/pair_sdpd_taitwater_isothermal.rst similarity index 100% rename from doc/rst/pair_sdpd_taitwater_isothermal.rst rename to doc/src/pair_sdpd_taitwater_isothermal.rst diff --git a/doc/rst/pair_smd_hertz.rst b/doc/src/pair_smd_hertz.rst similarity index 100% rename from doc/rst/pair_smd_hertz.rst rename to doc/src/pair_smd_hertz.rst diff --git a/doc/rst/pair_smd_tlsph.rst b/doc/src/pair_smd_tlsph.rst similarity index 100% rename from doc/rst/pair_smd_tlsph.rst rename to doc/src/pair_smd_tlsph.rst diff --git a/doc/rst/pair_smd_triangulated_surface.rst b/doc/src/pair_smd_triangulated_surface.rst similarity index 100% rename from doc/rst/pair_smd_triangulated_surface.rst rename to doc/src/pair_smd_triangulated_surface.rst diff --git a/doc/rst/pair_smd_ulsph.rst b/doc/src/pair_smd_ulsph.rst similarity index 100% rename from doc/rst/pair_smd_ulsph.rst rename to doc/src/pair_smd_ulsph.rst diff --git a/doc/rst/pair_smtbq.rst b/doc/src/pair_smtbq.rst similarity index 100% rename from doc/rst/pair_smtbq.rst rename to doc/src/pair_smtbq.rst diff --git a/doc/rst/pair_snap.rst b/doc/src/pair_snap.rst similarity index 100% rename from doc/rst/pair_snap.rst rename to doc/src/pair_snap.rst diff --git a/doc/rst/pair_soft.rst b/doc/src/pair_soft.rst similarity index 100% rename from doc/rst/pair_soft.rst rename to doc/src/pair_soft.rst diff --git a/doc/rst/pair_sph_heatconduction.rst b/doc/src/pair_sph_heatconduction.rst similarity index 100% rename from doc/rst/pair_sph_heatconduction.rst rename to doc/src/pair_sph_heatconduction.rst diff --git a/doc/rst/pair_sph_idealgas.rst b/doc/src/pair_sph_idealgas.rst similarity index 100% rename from doc/rst/pair_sph_idealgas.rst rename to doc/src/pair_sph_idealgas.rst diff --git a/doc/rst/pair_sph_lj.rst b/doc/src/pair_sph_lj.rst similarity index 100% rename from doc/rst/pair_sph_lj.rst rename to doc/src/pair_sph_lj.rst diff --git a/doc/rst/pair_sph_rhosum.rst b/doc/src/pair_sph_rhosum.rst similarity index 100% rename from doc/rst/pair_sph_rhosum.rst rename to doc/src/pair_sph_rhosum.rst diff --git a/doc/rst/pair_sph_taitwater.rst b/doc/src/pair_sph_taitwater.rst similarity index 100% rename from doc/rst/pair_sph_taitwater.rst rename to doc/src/pair_sph_taitwater.rst diff --git a/doc/rst/pair_sph_taitwater_morris.rst b/doc/src/pair_sph_taitwater_morris.rst similarity index 100% rename from doc/rst/pair_sph_taitwater_morris.rst rename to doc/src/pair_sph_taitwater_morris.rst diff --git a/doc/rst/pair_spin_dipole.rst b/doc/src/pair_spin_dipole.rst similarity index 100% rename from doc/rst/pair_spin_dipole.rst rename to doc/src/pair_spin_dipole.rst diff --git a/doc/rst/pair_spin_dmi.rst b/doc/src/pair_spin_dmi.rst similarity index 100% rename from doc/rst/pair_spin_dmi.rst rename to doc/src/pair_spin_dmi.rst diff --git a/doc/rst/pair_spin_exchange.rst b/doc/src/pair_spin_exchange.rst similarity index 100% rename from doc/rst/pair_spin_exchange.rst rename to doc/src/pair_spin_exchange.rst diff --git a/doc/rst/pair_spin_magelec.rst b/doc/src/pair_spin_magelec.rst similarity index 100% rename from doc/rst/pair_spin_magelec.rst rename to doc/src/pair_spin_magelec.rst diff --git a/doc/rst/pair_spin_neel.rst b/doc/src/pair_spin_neel.rst similarity index 100% rename from doc/rst/pair_spin_neel.rst rename to doc/src/pair_spin_neel.rst diff --git a/doc/rst/pair_srp.rst b/doc/src/pair_srp.rst similarity index 100% rename from doc/rst/pair_srp.rst rename to doc/src/pair_srp.rst diff --git a/doc/rst/pair_style.rst b/doc/src/pair_style.rst similarity index 100% rename from doc/rst/pair_style.rst rename to doc/src/pair_style.rst diff --git a/doc/rst/pair_sw.rst b/doc/src/pair_sw.rst similarity index 100% rename from doc/rst/pair_sw.rst rename to doc/src/pair_sw.rst diff --git a/doc/rst/pair_table.rst b/doc/src/pair_table.rst similarity index 100% rename from doc/rst/pair_table.rst rename to doc/src/pair_table.rst diff --git a/doc/rst/pair_table_rx.rst b/doc/src/pair_table_rx.rst similarity index 100% rename from doc/rst/pair_table_rx.rst rename to doc/src/pair_table_rx.rst diff --git a/doc/rst/pair_tersoff.rst b/doc/src/pair_tersoff.rst similarity index 100% rename from doc/rst/pair_tersoff.rst rename to doc/src/pair_tersoff.rst diff --git a/doc/rst/pair_tersoff_mod.rst b/doc/src/pair_tersoff_mod.rst similarity index 100% rename from doc/rst/pair_tersoff_mod.rst rename to doc/src/pair_tersoff_mod.rst diff --git a/doc/rst/pair_tersoff_zbl.rst b/doc/src/pair_tersoff_zbl.rst similarity index 100% rename from doc/rst/pair_tersoff_zbl.rst rename to doc/src/pair_tersoff_zbl.rst diff --git a/doc/rst/pair_thole.rst b/doc/src/pair_thole.rst similarity index 100% rename from doc/rst/pair_thole.rst rename to doc/src/pair_thole.rst diff --git a/doc/rst/pair_tri_lj.rst b/doc/src/pair_tri_lj.rst similarity index 100% rename from doc/rst/pair_tri_lj.rst rename to doc/src/pair_tri_lj.rst diff --git a/doc/rst/pair_ufm.rst b/doc/src/pair_ufm.rst similarity index 100% rename from doc/rst/pair_ufm.rst rename to doc/src/pair_ufm.rst diff --git a/doc/rst/pair_vashishta.rst b/doc/src/pair_vashishta.rst similarity index 100% rename from doc/rst/pair_vashishta.rst rename to doc/src/pair_vashishta.rst diff --git a/doc/rst/pair_write.rst b/doc/src/pair_write.rst similarity index 100% rename from doc/rst/pair_write.rst rename to doc/src/pair_write.rst diff --git a/doc/rst/pair_yukawa.rst b/doc/src/pair_yukawa.rst similarity index 100% rename from doc/rst/pair_yukawa.rst rename to doc/src/pair_yukawa.rst diff --git a/doc/rst/pair_yukawa_colloid.rst b/doc/src/pair_yukawa_colloid.rst similarity index 100% rename from doc/rst/pair_yukawa_colloid.rst rename to doc/src/pair_yukawa_colloid.rst diff --git a/doc/rst/pair_zbl.rst b/doc/src/pair_zbl.rst similarity index 100% rename from doc/rst/pair_zbl.rst rename to doc/src/pair_zbl.rst diff --git a/doc/rst/pair_zero.rst b/doc/src/pair_zero.rst similarity index 100% rename from doc/rst/pair_zero.rst rename to doc/src/pair_zero.rst diff --git a/doc/src/pairs.rst b/doc/src/pairs.rst new file mode 100644 index 0000000000000000000000000000000000000000..4fdf2b2c692a7b7fc568edc76c8d0a1161205684 --- /dev/null +++ b/doc/src/pairs.rst @@ -0,0 +1,9 @@ +Pair Styles +########### + + +.. toctree:: + :maxdepth: 1 + :glob: + + pair_* diff --git a/doc/src/pairs.txt b/doc/src/pairs.txt deleted file mode 100644 index 1f8f130e48d429feca355647902e16d28ec27437..0000000000000000000000000000000000000000 --- a/doc/src/pairs.txt +++ /dev/null @@ -1,131 +0,0 @@ -Pair Styles :h1 - - diff --git a/doc/rst/partition.rst b/doc/src/partition.rst similarity index 100% rename from doc/rst/partition.rst rename to doc/src/partition.rst diff --git a/doc/rst/prd.rst b/doc/src/prd.rst similarity index 100% rename from doc/rst/prd.rst rename to doc/src/prd.rst diff --git a/doc/rst/print.rst b/doc/src/print.rst similarity index 100% rename from doc/rst/print.rst rename to doc/src/print.rst diff --git a/doc/rst/processors.rst b/doc/src/processors.rst similarity index 100% rename from doc/rst/processors.rst rename to doc/src/processors.rst diff --git a/doc/rst/python.rst b/doc/src/python.rst similarity index 100% rename from doc/rst/python.rst rename to doc/src/python.rst diff --git a/doc/rst/quit.rst b/doc/src/quit.rst similarity index 100% rename from doc/rst/quit.rst rename to doc/src/quit.rst diff --git a/doc/rst/read_data.rst b/doc/src/read_data.rst similarity index 100% rename from doc/rst/read_data.rst rename to doc/src/read_data.rst diff --git a/doc/rst/read_dump.rst b/doc/src/read_dump.rst similarity index 100% rename from doc/rst/read_dump.rst rename to doc/src/read_dump.rst diff --git a/doc/rst/read_restart.rst b/doc/src/read_restart.rst similarity index 100% rename from doc/rst/read_restart.rst rename to doc/src/read_restart.rst diff --git a/doc/rst/region.rst b/doc/src/region.rst similarity index 100% rename from doc/rst/region.rst rename to doc/src/region.rst diff --git a/doc/rst/replicate.rst b/doc/src/replicate.rst similarity index 100% rename from doc/rst/replicate.rst rename to doc/src/replicate.rst diff --git a/doc/rst/rerun.rst b/doc/src/rerun.rst similarity index 100% rename from doc/rst/rerun.rst rename to doc/src/rerun.rst diff --git a/doc/rst/reset_ids.rst b/doc/src/reset_ids.rst similarity index 100% rename from doc/rst/reset_ids.rst rename to doc/src/reset_ids.rst diff --git a/doc/rst/reset_timestep.rst b/doc/src/reset_timestep.rst similarity index 100% rename from doc/rst/reset_timestep.rst rename to doc/src/reset_timestep.rst diff --git a/doc/rst/restart.rst b/doc/src/restart.rst similarity index 100% rename from doc/rst/restart.rst rename to doc/src/restart.rst diff --git a/doc/rst/run.rst b/doc/src/run.rst similarity index 100% rename from doc/rst/run.rst rename to doc/src/run.rst diff --git a/doc/rst/run_style.rst b/doc/src/run_style.rst similarity index 100% rename from doc/rst/run_style.rst rename to doc/src/run_style.rst diff --git a/doc/rst/server.rst b/doc/src/server.rst similarity index 100% rename from doc/rst/server.rst rename to doc/src/server.rst diff --git a/doc/rst/server_mc.rst b/doc/src/server_mc.rst similarity index 100% rename from doc/rst/server_mc.rst rename to doc/src/server_mc.rst diff --git a/doc/rst/server_md.rst b/doc/src/server_md.rst similarity index 100% rename from doc/rst/server_md.rst rename to doc/src/server_md.rst diff --git a/doc/rst/set.rst b/doc/src/set.rst similarity index 100% rename from doc/rst/set.rst rename to doc/src/set.rst diff --git a/doc/rst/shell.rst b/doc/src/shell.rst similarity index 100% rename from doc/rst/shell.rst rename to doc/src/shell.rst diff --git a/doc/rst/special_bonds.rst b/doc/src/special_bonds.rst similarity index 100% rename from doc/rst/special_bonds.rst rename to doc/src/special_bonds.rst diff --git a/doc/rst/suffix.rst b/doc/src/suffix.rst similarity index 100% rename from doc/rst/suffix.rst rename to doc/src/suffix.rst diff --git a/doc/rst/tad.rst b/doc/src/tad.rst similarity index 100% rename from doc/rst/tad.rst rename to doc/src/tad.rst diff --git a/doc/rst/temper.rst b/doc/src/temper.rst similarity index 100% rename from doc/rst/temper.rst rename to doc/src/temper.rst diff --git a/doc/rst/temper_grem.rst b/doc/src/temper_grem.rst similarity index 100% rename from doc/rst/temper_grem.rst rename to doc/src/temper_grem.rst diff --git a/doc/rst/temper_npt.rst b/doc/src/temper_npt.rst similarity index 100% rename from doc/rst/temper_npt.rst rename to doc/src/temper_npt.rst diff --git a/doc/rst/thermo.rst b/doc/src/thermo.rst similarity index 100% rename from doc/rst/thermo.rst rename to doc/src/thermo.rst diff --git a/doc/rst/thermo_modify.rst b/doc/src/thermo_modify.rst similarity index 100% rename from doc/rst/thermo_modify.rst rename to doc/src/thermo_modify.rst diff --git a/doc/rst/thermo_style.rst b/doc/src/thermo_style.rst similarity index 100% rename from doc/rst/thermo_style.rst rename to doc/src/thermo_style.rst diff --git a/doc/rst/third_order.rst b/doc/src/third_order.rst similarity index 100% rename from doc/rst/third_order.rst rename to doc/src/third_order.rst diff --git a/doc/rst/timer.rst b/doc/src/timer.rst similarity index 100% rename from doc/rst/timer.rst rename to doc/src/timer.rst diff --git a/doc/rst/timestep.rst b/doc/src/timestep.rst similarity index 100% rename from doc/rst/timestep.rst rename to doc/src/timestep.rst diff --git a/doc/rst/uncompute.rst b/doc/src/uncompute.rst similarity index 100% rename from doc/rst/uncompute.rst rename to doc/src/uncompute.rst diff --git a/doc/rst/undump.rst b/doc/src/undump.rst similarity index 100% rename from doc/rst/undump.rst rename to doc/src/undump.rst diff --git a/doc/rst/unfix.rst b/doc/src/unfix.rst similarity index 100% rename from doc/rst/unfix.rst rename to doc/src/unfix.rst diff --git a/doc/rst/units.rst b/doc/src/units.rst similarity index 100% rename from doc/rst/units.rst rename to doc/src/units.rst diff --git a/doc/rst/variable.rst b/doc/src/variable.rst similarity index 100% rename from doc/rst/variable.rst rename to doc/src/variable.rst diff --git a/doc/rst/velocity.rst b/doc/src/velocity.rst similarity index 100% rename from doc/rst/velocity.rst rename to doc/src/velocity.rst diff --git a/doc/rst/write_coeff.rst b/doc/src/write_coeff.rst similarity index 100% rename from doc/rst/write_coeff.rst rename to doc/src/write_coeff.rst diff --git a/doc/rst/write_data.rst b/doc/src/write_data.rst similarity index 100% rename from doc/rst/write_data.rst rename to doc/src/write_data.rst diff --git a/doc/rst/write_dump.rst b/doc/src/write_dump.rst similarity index 100% rename from doc/rst/write_dump.rst rename to doc/src/write_dump.rst diff --git a/doc/rst/write_restart.rst b/doc/src/write_restart.rst similarity index 100% rename from doc/rst/write_restart.rst rename to doc/src/write_restart.rst diff --git a/doc/src/Build.txt b/doc/txt/Build.txt similarity index 100% rename from doc/src/Build.txt rename to doc/txt/Build.txt diff --git a/doc/src/Build_basics.txt b/doc/txt/Build_basics.txt similarity index 100% rename from doc/src/Build_basics.txt rename to doc/txt/Build_basics.txt diff --git a/doc/src/Build_cmake.txt b/doc/txt/Build_cmake.txt similarity index 100% rename from doc/src/Build_cmake.txt rename to doc/txt/Build_cmake.txt diff --git a/doc/src/Build_development.txt b/doc/txt/Build_development.txt similarity index 100% rename from doc/src/Build_development.txt rename to doc/txt/Build_development.txt diff --git a/doc/src/Build_extras.txt b/doc/txt/Build_extras.txt similarity index 99% rename from doc/src/Build_extras.txt rename to doc/txt/Build_extras.txt index b315e244c59724f4ba4ebbed6742261b952723aa..114aeda7af7774d7a9700f017355792d2cb1de0f 100644 --- a/doc/src/Build_extras.txt +++ b/doc/txt/Build_extras.txt @@ -1034,11 +1034,11 @@ lib/quip/README file for details on how to do this. [CMake build]: --D QUIP_LIBRARIES=path # path to libquip.a (only needed if a custom location) :pre +-D QUIP_LIBRARY=path # path to libquip.a (only needed if a custom location) :pre CMake will not download and build the QUIP library. But once you have done that, a CMake build of LAMMPS with "-D PKG_USER-QUIP=yes" should -work. Set QUIP_LIBRARIES if CMake cannot find the QUIP library. +work. Set QUIP_LIBRARY if CMake cannot find the QUIP library. [Traditional make]: diff --git a/doc/src/Build_link.txt b/doc/txt/Build_link.txt similarity index 100% rename from doc/src/Build_link.txt rename to doc/txt/Build_link.txt diff --git a/doc/src/Build_make.txt b/doc/txt/Build_make.txt similarity index 100% rename from doc/src/Build_make.txt rename to doc/txt/Build_make.txt diff --git a/doc/src/Build_package.txt b/doc/txt/Build_package.txt similarity index 100% rename from doc/src/Build_package.txt rename to doc/txt/Build_package.txt diff --git a/doc/src/Build_settings.txt b/doc/txt/Build_settings.txt similarity index 100% rename from doc/src/Build_settings.txt rename to doc/txt/Build_settings.txt diff --git a/doc/src/Build_windows.txt b/doc/txt/Build_windows.txt similarity index 100% rename from doc/src/Build_windows.txt rename to doc/txt/Build_windows.txt diff --git a/doc/src/Commands.txt b/doc/txt/Commands.txt similarity index 100% rename from doc/src/Commands.txt rename to doc/txt/Commands.txt diff --git a/doc/src/Commands_all.txt b/doc/txt/Commands_all.txt similarity index 100% rename from doc/src/Commands_all.txt rename to doc/txt/Commands_all.txt diff --git a/doc/src/Commands_bond.txt b/doc/txt/Commands_bond.txt similarity index 100% rename from doc/src/Commands_bond.txt rename to doc/txt/Commands_bond.txt diff --git a/doc/src/Commands_category.txt b/doc/txt/Commands_category.txt similarity index 100% rename from doc/src/Commands_category.txt rename to doc/txt/Commands_category.txt diff --git a/doc/src/Commands_compute.txt b/doc/txt/Commands_compute.txt similarity index 100% rename from doc/src/Commands_compute.txt rename to doc/txt/Commands_compute.txt diff --git a/doc/src/Commands_fix.txt b/doc/txt/Commands_fix.txt similarity index 100% rename from doc/src/Commands_fix.txt rename to doc/txt/Commands_fix.txt diff --git a/doc/src/Commands_input.txt b/doc/txt/Commands_input.txt similarity index 100% rename from doc/src/Commands_input.txt rename to doc/txt/Commands_input.txt diff --git a/doc/src/Commands_kspace.txt b/doc/txt/Commands_kspace.txt similarity index 100% rename from doc/src/Commands_kspace.txt rename to doc/txt/Commands_kspace.txt diff --git a/doc/src/Commands_pair.txt b/doc/txt/Commands_pair.txt similarity index 100% rename from doc/src/Commands_pair.txt rename to doc/txt/Commands_pair.txt diff --git a/doc/src/Commands_parse.txt b/doc/txt/Commands_parse.txt similarity index 100% rename from doc/src/Commands_parse.txt rename to doc/txt/Commands_parse.txt diff --git a/doc/src/Commands_removed.txt b/doc/txt/Commands_removed.txt similarity index 100% rename from doc/src/Commands_removed.txt rename to doc/txt/Commands_removed.txt diff --git a/doc/src/Commands_structure.txt b/doc/txt/Commands_structure.txt similarity index 100% rename from doc/src/Commands_structure.txt rename to doc/txt/Commands_structure.txt diff --git a/doc/src/Developer/.gitignore b/doc/txt/Developer/.gitignore similarity index 100% rename from doc/src/Developer/.gitignore rename to doc/txt/Developer/.gitignore diff --git a/doc/src/Developer/classes.fig b/doc/txt/Developer/classes.fig similarity index 100% rename from doc/src/Developer/classes.fig rename to doc/txt/Developer/classes.fig diff --git a/doc/src/Developer/classes.pdf b/doc/txt/Developer/classes.pdf similarity index 100% rename from doc/src/Developer/classes.pdf rename to doc/txt/Developer/classes.pdf diff --git a/doc/src/Developer/developer.tex b/doc/txt/Developer/developer.tex similarity index 100% rename from doc/src/Developer/developer.tex rename to doc/txt/Developer/developer.tex diff --git a/doc/src/Errors.txt b/doc/txt/Errors.txt similarity index 100% rename from doc/src/Errors.txt rename to doc/txt/Errors.txt diff --git a/doc/src/Errors_bugs.txt b/doc/txt/Errors_bugs.txt similarity index 100% rename from doc/src/Errors_bugs.txt rename to doc/txt/Errors_bugs.txt diff --git a/doc/src/Errors_common.txt b/doc/txt/Errors_common.txt similarity index 100% rename from doc/src/Errors_common.txt rename to doc/txt/Errors_common.txt diff --git a/doc/src/Errors_messages.txt b/doc/txt/Errors_messages.txt similarity index 100% rename from doc/src/Errors_messages.txt rename to doc/txt/Errors_messages.txt diff --git a/doc/src/Errors_warnings.txt b/doc/txt/Errors_warnings.txt similarity index 100% rename from doc/src/Errors_warnings.txt rename to doc/txt/Errors_warnings.txt diff --git a/doc/src/Examples.txt b/doc/txt/Examples.txt similarity index 100% rename from doc/src/Examples.txt rename to doc/txt/Examples.txt diff --git a/doc/src/Howto.txt b/doc/txt/Howto.txt similarity index 100% rename from doc/src/Howto.txt rename to doc/txt/Howto.txt diff --git a/doc/src/Howto_2d.txt b/doc/txt/Howto_2d.txt similarity index 100% rename from doc/src/Howto_2d.txt rename to doc/txt/Howto_2d.txt diff --git a/doc/src/Howto_barostat.txt b/doc/txt/Howto_barostat.txt similarity index 100% rename from doc/src/Howto_barostat.txt rename to doc/txt/Howto_barostat.txt diff --git a/doc/src/Howto_bash.txt b/doc/txt/Howto_bash.txt similarity index 100% rename from doc/src/Howto_bash.txt rename to doc/txt/Howto_bash.txt diff --git a/doc/src/Howto_bioFF.txt b/doc/txt/Howto_bioFF.txt similarity index 100% rename from doc/src/Howto_bioFF.txt rename to doc/txt/Howto_bioFF.txt diff --git a/doc/src/Howto_body.txt b/doc/txt/Howto_body.txt similarity index 100% rename from doc/src/Howto_body.txt rename to doc/txt/Howto_body.txt diff --git a/doc/src/Howto_chunk.txt b/doc/txt/Howto_chunk.txt similarity index 100% rename from doc/src/Howto_chunk.txt rename to doc/txt/Howto_chunk.txt diff --git a/doc/src/Howto_client_server.txt b/doc/txt/Howto_client_server.txt similarity index 100% rename from doc/src/Howto_client_server.txt rename to doc/txt/Howto_client_server.txt diff --git a/doc/src/Howto_coreshell.txt b/doc/txt/Howto_coreshell.txt similarity index 100% rename from doc/src/Howto_coreshell.txt rename to doc/txt/Howto_coreshell.txt diff --git a/doc/src/Howto_couple.txt b/doc/txt/Howto_couple.txt similarity index 100% rename from doc/src/Howto_couple.txt rename to doc/txt/Howto_couple.txt diff --git a/doc/src/Howto_diffusion.txt b/doc/txt/Howto_diffusion.txt similarity index 100% rename from doc/src/Howto_diffusion.txt rename to doc/txt/Howto_diffusion.txt diff --git a/doc/src/Howto_dispersion.txt b/doc/txt/Howto_dispersion.txt similarity index 100% rename from doc/src/Howto_dispersion.txt rename to doc/txt/Howto_dispersion.txt diff --git a/doc/src/Howto_drude.txt b/doc/txt/Howto_drude.txt similarity index 100% rename from doc/src/Howto_drude.txt rename to doc/txt/Howto_drude.txt diff --git a/doc/src/Howto_drude2.txt b/doc/txt/Howto_drude2.txt similarity index 100% rename from doc/src/Howto_drude2.txt rename to doc/txt/Howto_drude2.txt diff --git a/doc/src/Howto_elastic.txt b/doc/txt/Howto_elastic.txt similarity index 100% rename from doc/src/Howto_elastic.txt rename to doc/txt/Howto_elastic.txt diff --git a/doc/src/Howto_github.txt b/doc/txt/Howto_github.txt similarity index 100% rename from doc/src/Howto_github.txt rename to doc/txt/Howto_github.txt diff --git a/doc/src/Howto_granular.txt b/doc/txt/Howto_granular.txt similarity index 100% rename from doc/src/Howto_granular.txt rename to doc/txt/Howto_granular.txt diff --git a/doc/src/Howto_kappa.txt b/doc/txt/Howto_kappa.txt similarity index 100% rename from doc/src/Howto_kappa.txt rename to doc/txt/Howto_kappa.txt diff --git a/doc/src/Howto_library.txt b/doc/txt/Howto_library.txt similarity index 100% rename from doc/src/Howto_library.txt rename to doc/txt/Howto_library.txt diff --git a/doc/src/Howto_manifold.txt b/doc/txt/Howto_manifold.txt similarity index 100% rename from doc/src/Howto_manifold.txt rename to doc/txt/Howto_manifold.txt diff --git a/doc/src/Howto_multiple.txt b/doc/txt/Howto_multiple.txt similarity index 100% rename from doc/src/Howto_multiple.txt rename to doc/txt/Howto_multiple.txt diff --git a/doc/src/Howto_nemd.txt b/doc/txt/Howto_nemd.txt similarity index 100% rename from doc/src/Howto_nemd.txt rename to doc/txt/Howto_nemd.txt diff --git a/doc/src/Howto_output.txt b/doc/txt/Howto_output.txt similarity index 100% rename from doc/src/Howto_output.txt rename to doc/txt/Howto_output.txt diff --git a/doc/src/Howto_polarizable.txt b/doc/txt/Howto_polarizable.txt similarity index 100% rename from doc/src/Howto_polarizable.txt rename to doc/txt/Howto_polarizable.txt diff --git a/doc/src/Howto_pylammps.txt b/doc/txt/Howto_pylammps.txt similarity index 100% rename from doc/src/Howto_pylammps.txt rename to doc/txt/Howto_pylammps.txt diff --git a/doc/src/Howto_replica.txt b/doc/txt/Howto_replica.txt similarity index 100% rename from doc/src/Howto_replica.txt rename to doc/txt/Howto_replica.txt diff --git a/doc/src/Howto_restart.txt b/doc/txt/Howto_restart.txt similarity index 100% rename from doc/src/Howto_restart.txt rename to doc/txt/Howto_restart.txt diff --git a/doc/src/Howto_spc.txt b/doc/txt/Howto_spc.txt similarity index 100% rename from doc/src/Howto_spc.txt rename to doc/txt/Howto_spc.txt diff --git a/doc/src/Howto_spherical.txt b/doc/txt/Howto_spherical.txt similarity index 100% rename from doc/src/Howto_spherical.txt rename to doc/txt/Howto_spherical.txt diff --git a/doc/src/Howto_spins.txt b/doc/txt/Howto_spins.txt similarity index 100% rename from doc/src/Howto_spins.txt rename to doc/txt/Howto_spins.txt diff --git a/doc/src/Howto_temperature.txt b/doc/txt/Howto_temperature.txt similarity index 100% rename from doc/src/Howto_temperature.txt rename to doc/txt/Howto_temperature.txt diff --git a/doc/src/Howto_thermostat.txt b/doc/txt/Howto_thermostat.txt similarity index 100% rename from doc/src/Howto_thermostat.txt rename to doc/txt/Howto_thermostat.txt diff --git a/doc/src/Howto_tip3p.txt b/doc/txt/Howto_tip3p.txt similarity index 100% rename from doc/src/Howto_tip3p.txt rename to doc/txt/Howto_tip3p.txt diff --git a/doc/src/Howto_tip4p.txt b/doc/txt/Howto_tip4p.txt similarity index 100% rename from doc/src/Howto_tip4p.txt rename to doc/txt/Howto_tip4p.txt diff --git a/doc/src/Howto_triclinic.txt b/doc/txt/Howto_triclinic.txt similarity index 100% rename from doc/src/Howto_triclinic.txt rename to doc/txt/Howto_triclinic.txt diff --git a/doc/src/Howto_viscosity.txt b/doc/txt/Howto_viscosity.txt similarity index 100% rename from doc/src/Howto_viscosity.txt rename to doc/txt/Howto_viscosity.txt diff --git a/doc/src/Howto_viz.txt b/doc/txt/Howto_viz.txt similarity index 100% rename from doc/src/Howto_viz.txt rename to doc/txt/Howto_viz.txt diff --git a/doc/src/Howto_walls.txt b/doc/txt/Howto_walls.txt similarity index 100% rename from doc/src/Howto_walls.txt rename to doc/txt/Howto_walls.txt diff --git a/doc/src/Install.txt b/doc/txt/Install.txt similarity index 100% rename from doc/src/Install.txt rename to doc/txt/Install.txt diff --git a/doc/src/Install_git.txt b/doc/txt/Install_git.txt similarity index 100% rename from doc/src/Install_git.txt rename to doc/txt/Install_git.txt diff --git a/doc/src/Install_linux.txt b/doc/txt/Install_linux.txt similarity index 100% rename from doc/src/Install_linux.txt rename to doc/txt/Install_linux.txt diff --git a/doc/src/Install_mac.txt b/doc/txt/Install_mac.txt similarity index 100% rename from doc/src/Install_mac.txt rename to doc/txt/Install_mac.txt diff --git a/doc/src/Install_patch.txt b/doc/txt/Install_patch.txt similarity index 100% rename from doc/src/Install_patch.txt rename to doc/txt/Install_patch.txt diff --git a/doc/src/Install_svn.txt b/doc/txt/Install_svn.txt similarity index 100% rename from doc/src/Install_svn.txt rename to doc/txt/Install_svn.txt diff --git a/doc/src/Install_tarball.txt b/doc/txt/Install_tarball.txt similarity index 100% rename from doc/src/Install_tarball.txt rename to doc/txt/Install_tarball.txt diff --git a/doc/src/Install_windows.txt b/doc/txt/Install_windows.txt similarity index 100% rename from doc/src/Install_windows.txt rename to doc/txt/Install_windows.txt diff --git a/doc/src/Intro.txt b/doc/txt/Intro.txt similarity index 100% rename from doc/src/Intro.txt rename to doc/txt/Intro.txt diff --git a/doc/src/Intro_authors.txt b/doc/txt/Intro_authors.txt similarity index 100% rename from doc/src/Intro_authors.txt rename to doc/txt/Intro_authors.txt diff --git a/doc/src/Intro_features.txt b/doc/txt/Intro_features.txt similarity index 100% rename from doc/src/Intro_features.txt rename to doc/txt/Intro_features.txt diff --git a/doc/src/Intro_nonfeatures.txt b/doc/txt/Intro_nonfeatures.txt similarity index 100% rename from doc/src/Intro_nonfeatures.txt rename to doc/txt/Intro_nonfeatures.txt diff --git a/doc/src/Intro_opensource.txt b/doc/txt/Intro_opensource.txt similarity index 100% rename from doc/src/Intro_opensource.txt rename to doc/txt/Intro_opensource.txt diff --git a/doc/src/Intro_overview.txt b/doc/txt/Intro_overview.txt similarity index 100% rename from doc/src/Intro_overview.txt rename to doc/txt/Intro_overview.txt diff --git a/doc/src/Intro_website.txt b/doc/txt/Intro_website.txt similarity index 100% rename from doc/src/Intro_website.txt rename to doc/txt/Intro_website.txt diff --git a/doc/src/Manual_build.txt b/doc/txt/Manual_build.txt similarity index 100% rename from doc/src/Manual_build.txt rename to doc/txt/Manual_build.txt diff --git a/doc/src/Manual_version.txt b/doc/txt/Manual_version.txt similarity index 100% rename from doc/src/Manual_version.txt rename to doc/txt/Manual_version.txt diff --git a/doc/src/Modify.txt b/doc/txt/Modify.txt similarity index 100% rename from doc/src/Modify.txt rename to doc/txt/Modify.txt diff --git a/doc/src/Modify_atom.txt b/doc/txt/Modify_atom.txt similarity index 100% rename from doc/src/Modify_atom.txt rename to doc/txt/Modify_atom.txt diff --git a/doc/src/Modify_body.txt b/doc/txt/Modify_body.txt similarity index 100% rename from doc/src/Modify_body.txt rename to doc/txt/Modify_body.txt diff --git a/doc/src/Modify_bond.txt b/doc/txt/Modify_bond.txt similarity index 100% rename from doc/src/Modify_bond.txt rename to doc/txt/Modify_bond.txt diff --git a/doc/src/Modify_command.txt b/doc/txt/Modify_command.txt similarity index 100% rename from doc/src/Modify_command.txt rename to doc/txt/Modify_command.txt diff --git a/doc/src/Modify_compute.txt b/doc/txt/Modify_compute.txt similarity index 100% rename from doc/src/Modify_compute.txt rename to doc/txt/Modify_compute.txt diff --git a/doc/src/Modify_contribute.txt b/doc/txt/Modify_contribute.txt similarity index 100% rename from doc/src/Modify_contribute.txt rename to doc/txt/Modify_contribute.txt diff --git a/doc/src/Modify_dump.txt b/doc/txt/Modify_dump.txt similarity index 100% rename from doc/src/Modify_dump.txt rename to doc/txt/Modify_dump.txt diff --git a/doc/src/Modify_fix.txt b/doc/txt/Modify_fix.txt similarity index 100% rename from doc/src/Modify_fix.txt rename to doc/txt/Modify_fix.txt diff --git a/doc/src/Modify_kspace.txt b/doc/txt/Modify_kspace.txt similarity index 100% rename from doc/src/Modify_kspace.txt rename to doc/txt/Modify_kspace.txt diff --git a/doc/src/Modify_min.txt b/doc/txt/Modify_min.txt similarity index 100% rename from doc/src/Modify_min.txt rename to doc/txt/Modify_min.txt diff --git a/doc/src/Modify_overview.txt b/doc/txt/Modify_overview.txt similarity index 100% rename from doc/src/Modify_overview.txt rename to doc/txt/Modify_overview.txt diff --git a/doc/src/Modify_pair.txt b/doc/txt/Modify_pair.txt similarity index 100% rename from doc/src/Modify_pair.txt rename to doc/txt/Modify_pair.txt diff --git a/doc/src/Modify_region.txt b/doc/txt/Modify_region.txt similarity index 100% rename from doc/src/Modify_region.txt rename to doc/txt/Modify_region.txt diff --git a/doc/src/Modify_thermo.txt b/doc/txt/Modify_thermo.txt similarity index 100% rename from doc/src/Modify_thermo.txt rename to doc/txt/Modify_thermo.txt diff --git a/doc/src/Modify_variable.txt b/doc/txt/Modify_variable.txt similarity index 100% rename from doc/src/Modify_variable.txt rename to doc/txt/Modify_variable.txt diff --git a/doc/src/Packages.txt b/doc/txt/Packages.txt similarity index 100% rename from doc/src/Packages.txt rename to doc/txt/Packages.txt diff --git a/doc/src/Packages_details.txt b/doc/txt/Packages_details.txt similarity index 100% rename from doc/src/Packages_details.txt rename to doc/txt/Packages_details.txt diff --git a/doc/src/Packages_standard.txt b/doc/txt/Packages_standard.txt similarity index 100% rename from doc/src/Packages_standard.txt rename to doc/txt/Packages_standard.txt diff --git a/doc/src/Packages_user.txt b/doc/txt/Packages_user.txt similarity index 100% rename from doc/src/Packages_user.txt rename to doc/txt/Packages_user.txt diff --git a/doc/src/Python_call.txt b/doc/txt/Python_call.txt similarity index 100% rename from doc/src/Python_call.txt rename to doc/txt/Python_call.txt diff --git a/doc/src/Python_examples.txt b/doc/txt/Python_examples.txt similarity index 100% rename from doc/src/Python_examples.txt rename to doc/txt/Python_examples.txt diff --git a/doc/src/Python_head.txt b/doc/txt/Python_head.txt similarity index 100% rename from doc/src/Python_head.txt rename to doc/txt/Python_head.txt diff --git a/doc/src/Python_install.txt b/doc/txt/Python_install.txt similarity index 100% rename from doc/src/Python_install.txt rename to doc/txt/Python_install.txt diff --git a/doc/src/Python_library.txt b/doc/txt/Python_library.txt similarity index 100% rename from doc/src/Python_library.txt rename to doc/txt/Python_library.txt diff --git a/doc/src/Python_mpi.txt b/doc/txt/Python_mpi.txt similarity index 100% rename from doc/src/Python_mpi.txt rename to doc/txt/Python_mpi.txt diff --git a/doc/src/Python_overview.txt b/doc/txt/Python_overview.txt similarity index 100% rename from doc/src/Python_overview.txt rename to doc/txt/Python_overview.txt diff --git a/doc/src/Python_pylammps.txt b/doc/txt/Python_pylammps.txt similarity index 100% rename from doc/src/Python_pylammps.txt rename to doc/txt/Python_pylammps.txt diff --git a/doc/src/Python_run.txt b/doc/txt/Python_run.txt similarity index 100% rename from doc/src/Python_run.txt rename to doc/txt/Python_run.txt diff --git a/doc/src/Python_shlib.txt b/doc/txt/Python_shlib.txt similarity index 100% rename from doc/src/Python_shlib.txt rename to doc/txt/Python_shlib.txt diff --git a/doc/src/Python_test.txt b/doc/txt/Python_test.txt similarity index 100% rename from doc/src/Python_test.txt rename to doc/txt/Python_test.txt diff --git a/doc/src/Run_basics.txt b/doc/txt/Run_basics.txt similarity index 100% rename from doc/src/Run_basics.txt rename to doc/txt/Run_basics.txt diff --git a/doc/src/Run_head.txt b/doc/txt/Run_head.txt similarity index 100% rename from doc/src/Run_head.txt rename to doc/txt/Run_head.txt diff --git a/doc/src/Run_options.txt b/doc/txt/Run_options.txt similarity index 100% rename from doc/src/Run_options.txt rename to doc/txt/Run_options.txt diff --git a/doc/src/Run_output.txt b/doc/txt/Run_output.txt similarity index 100% rename from doc/src/Run_output.txt rename to doc/txt/Run_output.txt diff --git a/doc/src/Run_windows.txt b/doc/txt/Run_windows.txt similarity index 100% rename from doc/src/Run_windows.txt rename to doc/txt/Run_windows.txt diff --git a/doc/src/Speed.txt b/doc/txt/Speed.txt similarity index 100% rename from doc/src/Speed.txt rename to doc/txt/Speed.txt diff --git a/doc/src/Speed_bench.txt b/doc/txt/Speed_bench.txt similarity index 100% rename from doc/src/Speed_bench.txt rename to doc/txt/Speed_bench.txt diff --git a/doc/src/Speed_compare.txt b/doc/txt/Speed_compare.txt similarity index 100% rename from doc/src/Speed_compare.txt rename to doc/txt/Speed_compare.txt diff --git a/doc/src/Speed_gpu.txt b/doc/txt/Speed_gpu.txt similarity index 100% rename from doc/src/Speed_gpu.txt rename to doc/txt/Speed_gpu.txt diff --git a/doc/src/Speed_intel.txt b/doc/txt/Speed_intel.txt similarity index 100% rename from doc/src/Speed_intel.txt rename to doc/txt/Speed_intel.txt diff --git a/doc/src/Speed_kokkos.txt b/doc/txt/Speed_kokkos.txt similarity index 100% rename from doc/src/Speed_kokkos.txt rename to doc/txt/Speed_kokkos.txt diff --git a/doc/src/Speed_measure.txt b/doc/txt/Speed_measure.txt similarity index 100% rename from doc/src/Speed_measure.txt rename to doc/txt/Speed_measure.txt diff --git a/doc/src/Speed_omp.txt b/doc/txt/Speed_omp.txt similarity index 100% rename from doc/src/Speed_omp.txt rename to doc/txt/Speed_omp.txt diff --git a/doc/src/Speed_opt.txt b/doc/txt/Speed_opt.txt similarity index 100% rename from doc/src/Speed_opt.txt rename to doc/txt/Speed_opt.txt diff --git a/doc/src/Speed_packages.txt b/doc/txt/Speed_packages.txt similarity index 100% rename from doc/src/Speed_packages.txt rename to doc/txt/Speed_packages.txt diff --git a/doc/src/Speed_tips.txt b/doc/txt/Speed_tips.txt similarity index 100% rename from doc/src/Speed_tips.txt rename to doc/txt/Speed_tips.txt diff --git a/doc/src/Tools.txt b/doc/txt/Tools.txt similarity index 100% rename from doc/src/Tools.txt rename to doc/txt/Tools.txt diff --git a/doc/src/angle_charmm.txt b/doc/txt/angle_charmm.txt similarity index 100% rename from doc/src/angle_charmm.txt rename to doc/txt/angle_charmm.txt diff --git a/doc/src/angle_class2.txt b/doc/txt/angle_class2.txt similarity index 100% rename from doc/src/angle_class2.txt rename to doc/txt/angle_class2.txt diff --git a/doc/src/angle_coeff.txt b/doc/txt/angle_coeff.txt similarity index 100% rename from doc/src/angle_coeff.txt rename to doc/txt/angle_coeff.txt diff --git a/doc/src/angle_cosine.txt b/doc/txt/angle_cosine.txt similarity index 100% rename from doc/src/angle_cosine.txt rename to doc/txt/angle_cosine.txt diff --git a/doc/src/angle_cosine_buck6d.txt b/doc/txt/angle_cosine_buck6d.txt similarity index 100% rename from doc/src/angle_cosine_buck6d.txt rename to doc/txt/angle_cosine_buck6d.txt diff --git a/doc/src/angle_cosine_delta.txt b/doc/txt/angle_cosine_delta.txt similarity index 100% rename from doc/src/angle_cosine_delta.txt rename to doc/txt/angle_cosine_delta.txt diff --git a/doc/src/angle_cosine_periodic.txt b/doc/txt/angle_cosine_periodic.txt similarity index 100% rename from doc/src/angle_cosine_periodic.txt rename to doc/txt/angle_cosine_periodic.txt diff --git a/doc/src/angle_cosine_shift.txt b/doc/txt/angle_cosine_shift.txt similarity index 100% rename from doc/src/angle_cosine_shift.txt rename to doc/txt/angle_cosine_shift.txt diff --git a/doc/src/angle_cosine_shift_exp.txt b/doc/txt/angle_cosine_shift_exp.txt similarity index 100% rename from doc/src/angle_cosine_shift_exp.txt rename to doc/txt/angle_cosine_shift_exp.txt diff --git a/doc/src/angle_cosine_squared.txt b/doc/txt/angle_cosine_squared.txt similarity index 100% rename from doc/src/angle_cosine_squared.txt rename to doc/txt/angle_cosine_squared.txt diff --git a/doc/src/angle_cross.txt b/doc/txt/angle_cross.txt similarity index 100% rename from doc/src/angle_cross.txt rename to doc/txt/angle_cross.txt diff --git a/doc/src/angle_dipole.txt b/doc/txt/angle_dipole.txt similarity index 100% rename from doc/src/angle_dipole.txt rename to doc/txt/angle_dipole.txt diff --git a/doc/src/angle_fourier.txt b/doc/txt/angle_fourier.txt similarity index 100% rename from doc/src/angle_fourier.txt rename to doc/txt/angle_fourier.txt diff --git a/doc/src/angle_fourier_simple.txt b/doc/txt/angle_fourier_simple.txt similarity index 100% rename from doc/src/angle_fourier_simple.txt rename to doc/txt/angle_fourier_simple.txt diff --git a/doc/src/angle_harmonic.txt b/doc/txt/angle_harmonic.txt similarity index 100% rename from doc/src/angle_harmonic.txt rename to doc/txt/angle_harmonic.txt diff --git a/doc/src/angle_hybrid.txt b/doc/txt/angle_hybrid.txt similarity index 100% rename from doc/src/angle_hybrid.txt rename to doc/txt/angle_hybrid.txt diff --git a/doc/src/angle_mm3.txt b/doc/txt/angle_mm3.txt similarity index 100% rename from doc/src/angle_mm3.txt rename to doc/txt/angle_mm3.txt diff --git a/doc/src/angle_none.txt b/doc/txt/angle_none.txt similarity index 100% rename from doc/src/angle_none.txt rename to doc/txt/angle_none.txt diff --git a/doc/src/angle_quartic.txt b/doc/txt/angle_quartic.txt similarity index 100% rename from doc/src/angle_quartic.txt rename to doc/txt/angle_quartic.txt diff --git a/doc/src/angle_sdk.txt b/doc/txt/angle_sdk.txt similarity index 100% rename from doc/src/angle_sdk.txt rename to doc/txt/angle_sdk.txt diff --git a/doc/src/angle_style.txt b/doc/txt/angle_style.txt similarity index 100% rename from doc/src/angle_style.txt rename to doc/txt/angle_style.txt diff --git a/doc/src/angle_table.txt b/doc/txt/angle_table.txt similarity index 100% rename from doc/src/angle_table.txt rename to doc/txt/angle_table.txt diff --git a/doc/src/angle_zero.txt b/doc/txt/angle_zero.txt similarity index 100% rename from doc/src/angle_zero.txt rename to doc/txt/angle_zero.txt diff --git a/doc/src/atom_modify.txt b/doc/txt/atom_modify.txt similarity index 100% rename from doc/src/atom_modify.txt rename to doc/txt/atom_modify.txt diff --git a/doc/src/atom_style.txt b/doc/txt/atom_style.txt similarity index 100% rename from doc/src/atom_style.txt rename to doc/txt/atom_style.txt diff --git a/doc/src/balance.txt b/doc/txt/balance.txt similarity index 100% rename from doc/src/balance.txt rename to doc/txt/balance.txt diff --git a/doc/src/bond_class2.txt b/doc/txt/bond_class2.txt similarity index 100% rename from doc/src/bond_class2.txt rename to doc/txt/bond_class2.txt diff --git a/doc/src/bond_coeff.txt b/doc/txt/bond_coeff.txt similarity index 100% rename from doc/src/bond_coeff.txt rename to doc/txt/bond_coeff.txt diff --git a/doc/src/bond_fene.txt b/doc/txt/bond_fene.txt similarity index 100% rename from doc/src/bond_fene.txt rename to doc/txt/bond_fene.txt diff --git a/doc/src/bond_fene_expand.txt b/doc/txt/bond_fene_expand.txt similarity index 100% rename from doc/src/bond_fene_expand.txt rename to doc/txt/bond_fene_expand.txt diff --git a/doc/src/bond_gromos.txt b/doc/txt/bond_gromos.txt similarity index 100% rename from doc/src/bond_gromos.txt rename to doc/txt/bond_gromos.txt diff --git a/doc/src/bond_harmonic.txt b/doc/txt/bond_harmonic.txt similarity index 100% rename from doc/src/bond_harmonic.txt rename to doc/txt/bond_harmonic.txt diff --git a/doc/src/bond_harmonic_shift.txt b/doc/txt/bond_harmonic_shift.txt similarity index 100% rename from doc/src/bond_harmonic_shift.txt rename to doc/txt/bond_harmonic_shift.txt diff --git a/doc/src/bond_harmonic_shift_cut.txt b/doc/txt/bond_harmonic_shift_cut.txt similarity index 100% rename from doc/src/bond_harmonic_shift_cut.txt rename to doc/txt/bond_harmonic_shift_cut.txt diff --git a/doc/src/bond_hybrid.txt b/doc/txt/bond_hybrid.txt similarity index 100% rename from doc/src/bond_hybrid.txt rename to doc/txt/bond_hybrid.txt diff --git a/doc/src/bond_mm3.txt b/doc/txt/bond_mm3.txt similarity index 100% rename from doc/src/bond_mm3.txt rename to doc/txt/bond_mm3.txt diff --git a/doc/src/bond_morse.txt b/doc/txt/bond_morse.txt similarity index 100% rename from doc/src/bond_morse.txt rename to doc/txt/bond_morse.txt diff --git a/doc/src/bond_none.txt b/doc/txt/bond_none.txt similarity index 100% rename from doc/src/bond_none.txt rename to doc/txt/bond_none.txt diff --git a/doc/src/bond_nonlinear.txt b/doc/txt/bond_nonlinear.txt similarity index 100% rename from doc/src/bond_nonlinear.txt rename to doc/txt/bond_nonlinear.txt diff --git a/doc/src/bond_oxdna.txt b/doc/txt/bond_oxdna.txt similarity index 100% rename from doc/src/bond_oxdna.txt rename to doc/txt/bond_oxdna.txt diff --git a/doc/src/bond_quartic.txt b/doc/txt/bond_quartic.txt similarity index 100% rename from doc/src/bond_quartic.txt rename to doc/txt/bond_quartic.txt diff --git a/doc/src/bond_style.txt b/doc/txt/bond_style.txt similarity index 100% rename from doc/src/bond_style.txt rename to doc/txt/bond_style.txt diff --git a/doc/src/bond_table.txt b/doc/txt/bond_table.txt similarity index 100% rename from doc/src/bond_table.txt rename to doc/txt/bond_table.txt diff --git a/doc/src/bond_write.txt b/doc/txt/bond_write.txt similarity index 100% rename from doc/src/bond_write.txt rename to doc/txt/bond_write.txt diff --git a/doc/src/bond_zero.txt b/doc/txt/bond_zero.txt similarity index 100% rename from doc/src/bond_zero.txt rename to doc/txt/bond_zero.txt diff --git a/doc/src/boundary.txt b/doc/txt/boundary.txt similarity index 100% rename from doc/src/boundary.txt rename to doc/txt/boundary.txt diff --git a/doc/src/box.txt b/doc/txt/box.txt similarity index 100% rename from doc/src/box.txt rename to doc/txt/box.txt diff --git a/doc/src/change_box.txt b/doc/txt/change_box.txt similarity index 100% rename from doc/src/change_box.txt rename to doc/txt/change_box.txt diff --git a/doc/src/clear.txt b/doc/txt/clear.txt similarity index 100% rename from doc/src/clear.txt rename to doc/txt/clear.txt diff --git a/doc/src/comm_modify.txt b/doc/txt/comm_modify.txt similarity index 100% rename from doc/src/comm_modify.txt rename to doc/txt/comm_modify.txt diff --git a/doc/src/comm_style.txt b/doc/txt/comm_style.txt similarity index 100% rename from doc/src/comm_style.txt rename to doc/txt/comm_style.txt diff --git a/doc/src/commands_list.txt b/doc/txt/commands_list.txt similarity index 100% rename from doc/src/commands_list.txt rename to doc/txt/commands_list.txt diff --git a/doc/src/compute.txt b/doc/txt/compute.txt similarity index 100% rename from doc/src/compute.txt rename to doc/txt/compute.txt diff --git a/doc/src/compute_ackland_atom.txt b/doc/txt/compute_ackland_atom.txt similarity index 100% rename from doc/src/compute_ackland_atom.txt rename to doc/txt/compute_ackland_atom.txt diff --git a/doc/src/compute_adf.txt b/doc/txt/compute_adf.txt similarity index 100% rename from doc/src/compute_adf.txt rename to doc/txt/compute_adf.txt diff --git a/doc/src/compute_angle.txt b/doc/txt/compute_angle.txt similarity index 100% rename from doc/src/compute_angle.txt rename to doc/txt/compute_angle.txt diff --git a/doc/src/compute_angle_local.txt b/doc/txt/compute_angle_local.txt similarity index 100% rename from doc/src/compute_angle_local.txt rename to doc/txt/compute_angle_local.txt diff --git a/doc/src/compute_angmom_chunk.txt b/doc/txt/compute_angmom_chunk.txt similarity index 100% rename from doc/src/compute_angmom_chunk.txt rename to doc/txt/compute_angmom_chunk.txt diff --git a/doc/src/compute_basal_atom.txt b/doc/txt/compute_basal_atom.txt similarity index 100% rename from doc/src/compute_basal_atom.txt rename to doc/txt/compute_basal_atom.txt diff --git a/doc/src/compute_body_local.txt b/doc/txt/compute_body_local.txt similarity index 100% rename from doc/src/compute_body_local.txt rename to doc/txt/compute_body_local.txt diff --git a/doc/src/compute_bond.txt b/doc/txt/compute_bond.txt similarity index 100% rename from doc/src/compute_bond.txt rename to doc/txt/compute_bond.txt diff --git a/doc/src/compute_bond_local.txt b/doc/txt/compute_bond_local.txt similarity index 100% rename from doc/src/compute_bond_local.txt rename to doc/txt/compute_bond_local.txt diff --git a/doc/src/compute_centro_atom.txt b/doc/txt/compute_centro_atom.txt similarity index 100% rename from doc/src/compute_centro_atom.txt rename to doc/txt/compute_centro_atom.txt diff --git a/doc/src/compute_chunk_atom.txt b/doc/txt/compute_chunk_atom.txt similarity index 100% rename from doc/src/compute_chunk_atom.txt rename to doc/txt/compute_chunk_atom.txt diff --git a/doc/src/compute_chunk_spread_atom.txt b/doc/txt/compute_chunk_spread_atom.txt similarity index 100% rename from doc/src/compute_chunk_spread_atom.txt rename to doc/txt/compute_chunk_spread_atom.txt diff --git a/doc/src/compute_cluster_atom.txt b/doc/txt/compute_cluster_atom.txt similarity index 100% rename from doc/src/compute_cluster_atom.txt rename to doc/txt/compute_cluster_atom.txt diff --git a/doc/src/compute_cna_atom.txt b/doc/txt/compute_cna_atom.txt similarity index 100% rename from doc/src/compute_cna_atom.txt rename to doc/txt/compute_cna_atom.txt diff --git a/doc/src/compute_cnp_atom.txt b/doc/txt/compute_cnp_atom.txt similarity index 100% rename from doc/src/compute_cnp_atom.txt rename to doc/txt/compute_cnp_atom.txt diff --git a/doc/src/compute_com.txt b/doc/txt/compute_com.txt similarity index 100% rename from doc/src/compute_com.txt rename to doc/txt/compute_com.txt diff --git a/doc/src/compute_com_chunk.txt b/doc/txt/compute_com_chunk.txt similarity index 100% rename from doc/src/compute_com_chunk.txt rename to doc/txt/compute_com_chunk.txt diff --git a/doc/src/compute_contact_atom.txt b/doc/txt/compute_contact_atom.txt similarity index 100% rename from doc/src/compute_contact_atom.txt rename to doc/txt/compute_contact_atom.txt diff --git a/doc/src/compute_coord_atom.txt b/doc/txt/compute_coord_atom.txt similarity index 100% rename from doc/src/compute_coord_atom.txt rename to doc/txt/compute_coord_atom.txt diff --git a/doc/src/compute_damage_atom.txt b/doc/txt/compute_damage_atom.txt similarity index 100% rename from doc/src/compute_damage_atom.txt rename to doc/txt/compute_damage_atom.txt diff --git a/doc/src/compute_dihedral.txt b/doc/txt/compute_dihedral.txt similarity index 100% rename from doc/src/compute_dihedral.txt rename to doc/txt/compute_dihedral.txt diff --git a/doc/src/compute_dihedral_local.txt b/doc/txt/compute_dihedral_local.txt similarity index 100% rename from doc/src/compute_dihedral_local.txt rename to doc/txt/compute_dihedral_local.txt diff --git a/doc/src/compute_dilatation_atom.txt b/doc/txt/compute_dilatation_atom.txt similarity index 100% rename from doc/src/compute_dilatation_atom.txt rename to doc/txt/compute_dilatation_atom.txt diff --git a/doc/src/compute_dipole_chunk.txt b/doc/txt/compute_dipole_chunk.txt similarity index 100% rename from doc/src/compute_dipole_chunk.txt rename to doc/txt/compute_dipole_chunk.txt diff --git a/doc/src/compute_displace_atom.txt b/doc/txt/compute_displace_atom.txt similarity index 100% rename from doc/src/compute_displace_atom.txt rename to doc/txt/compute_displace_atom.txt diff --git a/doc/src/compute_dpd.txt b/doc/txt/compute_dpd.txt similarity index 100% rename from doc/src/compute_dpd.txt rename to doc/txt/compute_dpd.txt diff --git a/doc/src/compute_dpd_atom.txt b/doc/txt/compute_dpd_atom.txt similarity index 100% rename from doc/src/compute_dpd_atom.txt rename to doc/txt/compute_dpd_atom.txt diff --git a/doc/src/compute_edpd_temp_atom.txt b/doc/txt/compute_edpd_temp_atom.txt similarity index 100% rename from doc/src/compute_edpd_temp_atom.txt rename to doc/txt/compute_edpd_temp_atom.txt diff --git a/doc/src/compute_entropy_atom.txt b/doc/txt/compute_entropy_atom.txt similarity index 100% rename from doc/src/compute_entropy_atom.txt rename to doc/txt/compute_entropy_atom.txt diff --git a/doc/src/compute_erotate_asphere.txt b/doc/txt/compute_erotate_asphere.txt similarity index 100% rename from doc/src/compute_erotate_asphere.txt rename to doc/txt/compute_erotate_asphere.txt diff --git a/doc/src/compute_erotate_rigid.txt b/doc/txt/compute_erotate_rigid.txt similarity index 100% rename from doc/src/compute_erotate_rigid.txt rename to doc/txt/compute_erotate_rigid.txt diff --git a/doc/src/compute_erotate_sphere.txt b/doc/txt/compute_erotate_sphere.txt similarity index 100% rename from doc/src/compute_erotate_sphere.txt rename to doc/txt/compute_erotate_sphere.txt diff --git a/doc/src/compute_erotate_sphere_atom.txt b/doc/txt/compute_erotate_sphere_atom.txt similarity index 100% rename from doc/src/compute_erotate_sphere_atom.txt rename to doc/txt/compute_erotate_sphere_atom.txt diff --git a/doc/src/compute_event_displace.txt b/doc/txt/compute_event_displace.txt similarity index 100% rename from doc/src/compute_event_displace.txt rename to doc/txt/compute_event_displace.txt diff --git a/doc/src/compute_fep.txt b/doc/txt/compute_fep.txt similarity index 100% rename from doc/src/compute_fep.txt rename to doc/txt/compute_fep.txt diff --git a/doc/src/compute_global_atom.txt b/doc/txt/compute_global_atom.txt similarity index 100% rename from doc/src/compute_global_atom.txt rename to doc/txt/compute_global_atom.txt diff --git a/doc/src/compute_group_group.txt b/doc/txt/compute_group_group.txt similarity index 100% rename from doc/src/compute_group_group.txt rename to doc/txt/compute_group_group.txt diff --git a/doc/src/compute_gyration.txt b/doc/txt/compute_gyration.txt similarity index 100% rename from doc/src/compute_gyration.txt rename to doc/txt/compute_gyration.txt diff --git a/doc/src/compute_gyration_chunk.txt b/doc/txt/compute_gyration_chunk.txt similarity index 100% rename from doc/src/compute_gyration_chunk.txt rename to doc/txt/compute_gyration_chunk.txt diff --git a/doc/src/compute_gyration_shape.txt b/doc/txt/compute_gyration_shape.txt similarity index 100% rename from doc/src/compute_gyration_shape.txt rename to doc/txt/compute_gyration_shape.txt diff --git a/doc/src/compute_heat_flux.txt b/doc/txt/compute_heat_flux.txt similarity index 100% rename from doc/src/compute_heat_flux.txt rename to doc/txt/compute_heat_flux.txt diff --git a/doc/src/compute_hexorder_atom.txt b/doc/txt/compute_hexorder_atom.txt similarity index 100% rename from doc/src/compute_hexorder_atom.txt rename to doc/txt/compute_hexorder_atom.txt diff --git a/doc/src/compute_hma.txt b/doc/txt/compute_hma.txt similarity index 100% rename from doc/src/compute_hma.txt rename to doc/txt/compute_hma.txt diff --git a/doc/src/compute_improper.txt b/doc/txt/compute_improper.txt similarity index 100% rename from doc/src/compute_improper.txt rename to doc/txt/compute_improper.txt diff --git a/doc/src/compute_improper_local.txt b/doc/txt/compute_improper_local.txt similarity index 100% rename from doc/src/compute_improper_local.txt rename to doc/txt/compute_improper_local.txt diff --git a/doc/src/compute_inertia_chunk.txt b/doc/txt/compute_inertia_chunk.txt similarity index 100% rename from doc/src/compute_inertia_chunk.txt rename to doc/txt/compute_inertia_chunk.txt diff --git a/doc/src/compute_ke.txt b/doc/txt/compute_ke.txt similarity index 100% rename from doc/src/compute_ke.txt rename to doc/txt/compute_ke.txt diff --git a/doc/src/compute_ke_atom.txt b/doc/txt/compute_ke_atom.txt similarity index 100% rename from doc/src/compute_ke_atom.txt rename to doc/txt/compute_ke_atom.txt diff --git a/doc/src/compute_ke_atom_eff.txt b/doc/txt/compute_ke_atom_eff.txt similarity index 100% rename from doc/src/compute_ke_atom_eff.txt rename to doc/txt/compute_ke_atom_eff.txt diff --git a/doc/src/compute_ke_eff.txt b/doc/txt/compute_ke_eff.txt similarity index 100% rename from doc/src/compute_ke_eff.txt rename to doc/txt/compute_ke_eff.txt diff --git a/doc/src/compute_ke_rigid.txt b/doc/txt/compute_ke_rigid.txt similarity index 100% rename from doc/src/compute_ke_rigid.txt rename to doc/txt/compute_ke_rigid.txt diff --git a/doc/src/compute_meso_e_atom.txt b/doc/txt/compute_meso_e_atom.txt similarity index 100% rename from doc/src/compute_meso_e_atom.txt rename to doc/txt/compute_meso_e_atom.txt diff --git a/doc/src/compute_meso_rho_atom.txt b/doc/txt/compute_meso_rho_atom.txt similarity index 100% rename from doc/src/compute_meso_rho_atom.txt rename to doc/txt/compute_meso_rho_atom.txt diff --git a/doc/src/compute_meso_t_atom.txt b/doc/txt/compute_meso_t_atom.txt similarity index 100% rename from doc/src/compute_meso_t_atom.txt rename to doc/txt/compute_meso_t_atom.txt diff --git a/doc/src/compute_modify.txt b/doc/txt/compute_modify.txt similarity index 100% rename from doc/src/compute_modify.txt rename to doc/txt/compute_modify.txt diff --git a/doc/src/compute_momentum.txt b/doc/txt/compute_momentum.txt similarity index 100% rename from doc/src/compute_momentum.txt rename to doc/txt/compute_momentum.txt diff --git a/doc/src/compute_msd.txt b/doc/txt/compute_msd.txt similarity index 100% rename from doc/src/compute_msd.txt rename to doc/txt/compute_msd.txt diff --git a/doc/src/compute_msd_chunk.txt b/doc/txt/compute_msd_chunk.txt similarity index 100% rename from doc/src/compute_msd_chunk.txt rename to doc/txt/compute_msd_chunk.txt diff --git a/doc/src/compute_msd_nongauss.txt b/doc/txt/compute_msd_nongauss.txt similarity index 100% rename from doc/src/compute_msd_nongauss.txt rename to doc/txt/compute_msd_nongauss.txt diff --git a/doc/src/compute_omega_chunk.txt b/doc/txt/compute_omega_chunk.txt similarity index 100% rename from doc/src/compute_omega_chunk.txt rename to doc/txt/compute_omega_chunk.txt diff --git a/doc/src/compute_orientorder_atom.txt b/doc/txt/compute_orientorder_atom.txt similarity index 100% rename from doc/src/compute_orientorder_atom.txt rename to doc/txt/compute_orientorder_atom.txt diff --git a/doc/src/compute_pair.txt b/doc/txt/compute_pair.txt similarity index 100% rename from doc/src/compute_pair.txt rename to doc/txt/compute_pair.txt diff --git a/doc/src/compute_pair_local.txt b/doc/txt/compute_pair_local.txt similarity index 100% rename from doc/src/compute_pair_local.txt rename to doc/txt/compute_pair_local.txt diff --git a/doc/src/compute_pe.txt b/doc/txt/compute_pe.txt similarity index 100% rename from doc/src/compute_pe.txt rename to doc/txt/compute_pe.txt diff --git a/doc/src/compute_pe_atom.txt b/doc/txt/compute_pe_atom.txt similarity index 100% rename from doc/src/compute_pe_atom.txt rename to doc/txt/compute_pe_atom.txt diff --git a/doc/src/compute_plasticity_atom.txt b/doc/txt/compute_plasticity_atom.txt similarity index 100% rename from doc/src/compute_plasticity_atom.txt rename to doc/txt/compute_plasticity_atom.txt diff --git a/doc/src/compute_pressure.txt b/doc/txt/compute_pressure.txt similarity index 100% rename from doc/src/compute_pressure.txt rename to doc/txt/compute_pressure.txt diff --git a/doc/src/compute_pressure_cylinder.txt b/doc/txt/compute_pressure_cylinder.txt similarity index 100% rename from doc/src/compute_pressure_cylinder.txt rename to doc/txt/compute_pressure_cylinder.txt diff --git a/doc/src/compute_pressure_uef.txt b/doc/txt/compute_pressure_uef.txt similarity index 100% rename from doc/src/compute_pressure_uef.txt rename to doc/txt/compute_pressure_uef.txt diff --git a/doc/src/compute_property_atom.txt b/doc/txt/compute_property_atom.txt similarity index 100% rename from doc/src/compute_property_atom.txt rename to doc/txt/compute_property_atom.txt diff --git a/doc/src/compute_property_chunk.txt b/doc/txt/compute_property_chunk.txt similarity index 100% rename from doc/src/compute_property_chunk.txt rename to doc/txt/compute_property_chunk.txt diff --git a/doc/src/compute_property_local.txt b/doc/txt/compute_property_local.txt similarity index 100% rename from doc/src/compute_property_local.txt rename to doc/txt/compute_property_local.txt diff --git a/doc/src/compute_ptm_atom.txt b/doc/txt/compute_ptm_atom.txt similarity index 100% rename from doc/src/compute_ptm_atom.txt rename to doc/txt/compute_ptm_atom.txt diff --git a/doc/src/compute_rdf.txt b/doc/txt/compute_rdf.txt similarity index 100% rename from doc/src/compute_rdf.txt rename to doc/txt/compute_rdf.txt diff --git a/doc/src/compute_reduce.txt b/doc/txt/compute_reduce.txt similarity index 100% rename from doc/src/compute_reduce.txt rename to doc/txt/compute_reduce.txt diff --git a/doc/src/compute_reduce_chunk.txt b/doc/txt/compute_reduce_chunk.txt similarity index 100% rename from doc/src/compute_reduce_chunk.txt rename to doc/txt/compute_reduce_chunk.txt diff --git a/doc/src/compute_rigid_local.txt b/doc/txt/compute_rigid_local.txt similarity index 100% rename from doc/src/compute_rigid_local.txt rename to doc/txt/compute_rigid_local.txt diff --git a/doc/src/compute_saed.txt b/doc/txt/compute_saed.txt similarity index 100% rename from doc/src/compute_saed.txt rename to doc/txt/compute_saed.txt diff --git a/doc/src/compute_slice.txt b/doc/txt/compute_slice.txt similarity index 100% rename from doc/src/compute_slice.txt rename to doc/txt/compute_slice.txt diff --git a/doc/src/compute_smd_contact_radius.txt b/doc/txt/compute_smd_contact_radius.txt similarity index 100% rename from doc/src/compute_smd_contact_radius.txt rename to doc/txt/compute_smd_contact_radius.txt diff --git a/doc/src/compute_smd_damage.txt b/doc/txt/compute_smd_damage.txt similarity index 100% rename from doc/src/compute_smd_damage.txt rename to doc/txt/compute_smd_damage.txt diff --git a/doc/src/compute_smd_hourglass_error.txt b/doc/txt/compute_smd_hourglass_error.txt similarity index 100% rename from doc/src/compute_smd_hourglass_error.txt rename to doc/txt/compute_smd_hourglass_error.txt diff --git a/doc/src/compute_smd_internal_energy.txt b/doc/txt/compute_smd_internal_energy.txt similarity index 100% rename from doc/src/compute_smd_internal_energy.txt rename to doc/txt/compute_smd_internal_energy.txt diff --git a/doc/src/compute_smd_plastic_strain.txt b/doc/txt/compute_smd_plastic_strain.txt similarity index 100% rename from doc/src/compute_smd_plastic_strain.txt rename to doc/txt/compute_smd_plastic_strain.txt diff --git a/doc/src/compute_smd_plastic_strain_rate.txt b/doc/txt/compute_smd_plastic_strain_rate.txt similarity index 100% rename from doc/src/compute_smd_plastic_strain_rate.txt rename to doc/txt/compute_smd_plastic_strain_rate.txt diff --git a/doc/src/compute_smd_rho.txt b/doc/txt/compute_smd_rho.txt similarity index 100% rename from doc/src/compute_smd_rho.txt rename to doc/txt/compute_smd_rho.txt diff --git a/doc/src/compute_smd_tlsph_defgrad.txt b/doc/txt/compute_smd_tlsph_defgrad.txt similarity index 100% rename from doc/src/compute_smd_tlsph_defgrad.txt rename to doc/txt/compute_smd_tlsph_defgrad.txt diff --git a/doc/src/compute_smd_tlsph_dt.txt b/doc/txt/compute_smd_tlsph_dt.txt similarity index 100% rename from doc/src/compute_smd_tlsph_dt.txt rename to doc/txt/compute_smd_tlsph_dt.txt diff --git a/doc/src/compute_smd_tlsph_num_neighs.txt b/doc/txt/compute_smd_tlsph_num_neighs.txt similarity index 100% rename from doc/src/compute_smd_tlsph_num_neighs.txt rename to doc/txt/compute_smd_tlsph_num_neighs.txt diff --git a/doc/src/compute_smd_tlsph_shape.txt b/doc/txt/compute_smd_tlsph_shape.txt similarity index 100% rename from doc/src/compute_smd_tlsph_shape.txt rename to doc/txt/compute_smd_tlsph_shape.txt diff --git a/doc/src/compute_smd_tlsph_strain.txt b/doc/txt/compute_smd_tlsph_strain.txt similarity index 100% rename from doc/src/compute_smd_tlsph_strain.txt rename to doc/txt/compute_smd_tlsph_strain.txt diff --git a/doc/src/compute_smd_tlsph_strain_rate.txt b/doc/txt/compute_smd_tlsph_strain_rate.txt similarity index 100% rename from doc/src/compute_smd_tlsph_strain_rate.txt rename to doc/txt/compute_smd_tlsph_strain_rate.txt diff --git a/doc/src/compute_smd_tlsph_stress.txt b/doc/txt/compute_smd_tlsph_stress.txt similarity index 100% rename from doc/src/compute_smd_tlsph_stress.txt rename to doc/txt/compute_smd_tlsph_stress.txt diff --git a/doc/src/compute_smd_triangle_vertices.txt b/doc/txt/compute_smd_triangle_vertices.txt similarity index 100% rename from doc/src/compute_smd_triangle_vertices.txt rename to doc/txt/compute_smd_triangle_vertices.txt diff --git a/doc/src/compute_smd_ulsph_num_neighs.txt b/doc/txt/compute_smd_ulsph_num_neighs.txt similarity index 100% rename from doc/src/compute_smd_ulsph_num_neighs.txt rename to doc/txt/compute_smd_ulsph_num_neighs.txt diff --git a/doc/src/compute_smd_ulsph_strain.txt b/doc/txt/compute_smd_ulsph_strain.txt similarity index 100% rename from doc/src/compute_smd_ulsph_strain.txt rename to doc/txt/compute_smd_ulsph_strain.txt diff --git a/doc/src/compute_smd_ulsph_strain_rate.txt b/doc/txt/compute_smd_ulsph_strain_rate.txt similarity index 100% rename from doc/src/compute_smd_ulsph_strain_rate.txt rename to doc/txt/compute_smd_ulsph_strain_rate.txt diff --git a/doc/src/compute_smd_ulsph_stress.txt b/doc/txt/compute_smd_ulsph_stress.txt similarity index 100% rename from doc/src/compute_smd_ulsph_stress.txt rename to doc/txt/compute_smd_ulsph_stress.txt diff --git a/doc/src/compute_smd_vol.txt b/doc/txt/compute_smd_vol.txt similarity index 100% rename from doc/src/compute_smd_vol.txt rename to doc/txt/compute_smd_vol.txt diff --git a/doc/src/compute_sna_atom.txt b/doc/txt/compute_sna_atom.txt similarity index 100% rename from doc/src/compute_sna_atom.txt rename to doc/txt/compute_sna_atom.txt diff --git a/doc/src/compute_spin.txt b/doc/txt/compute_spin.txt similarity index 100% rename from doc/src/compute_spin.txt rename to doc/txt/compute_spin.txt diff --git a/doc/src/compute_stress_atom.txt b/doc/txt/compute_stress_atom.txt similarity index 100% rename from doc/src/compute_stress_atom.txt rename to doc/txt/compute_stress_atom.txt diff --git a/doc/src/compute_stress_mop.txt b/doc/txt/compute_stress_mop.txt similarity index 100% rename from doc/src/compute_stress_mop.txt rename to doc/txt/compute_stress_mop.txt diff --git a/doc/src/compute_tally.txt b/doc/txt/compute_tally.txt similarity index 100% rename from doc/src/compute_tally.txt rename to doc/txt/compute_tally.txt diff --git a/doc/src/compute_tdpd_cc_atom.txt b/doc/txt/compute_tdpd_cc_atom.txt similarity index 100% rename from doc/src/compute_tdpd_cc_atom.txt rename to doc/txt/compute_tdpd_cc_atom.txt diff --git a/doc/src/compute_temp.txt b/doc/txt/compute_temp.txt similarity index 100% rename from doc/src/compute_temp.txt rename to doc/txt/compute_temp.txt diff --git a/doc/src/compute_temp_asphere.txt b/doc/txt/compute_temp_asphere.txt similarity index 100% rename from doc/src/compute_temp_asphere.txt rename to doc/txt/compute_temp_asphere.txt diff --git a/doc/src/compute_temp_body.txt b/doc/txt/compute_temp_body.txt similarity index 100% rename from doc/src/compute_temp_body.txt rename to doc/txt/compute_temp_body.txt diff --git a/doc/src/compute_temp_chunk.txt b/doc/txt/compute_temp_chunk.txt similarity index 100% rename from doc/src/compute_temp_chunk.txt rename to doc/txt/compute_temp_chunk.txt diff --git a/doc/src/compute_temp_com.txt b/doc/txt/compute_temp_com.txt similarity index 100% rename from doc/src/compute_temp_com.txt rename to doc/txt/compute_temp_com.txt diff --git a/doc/src/compute_temp_cs.txt b/doc/txt/compute_temp_cs.txt similarity index 100% rename from doc/src/compute_temp_cs.txt rename to doc/txt/compute_temp_cs.txt diff --git a/doc/src/compute_temp_deform.txt b/doc/txt/compute_temp_deform.txt similarity index 100% rename from doc/src/compute_temp_deform.txt rename to doc/txt/compute_temp_deform.txt diff --git a/doc/src/compute_temp_deform_eff.txt b/doc/txt/compute_temp_deform_eff.txt similarity index 100% rename from doc/src/compute_temp_deform_eff.txt rename to doc/txt/compute_temp_deform_eff.txt diff --git a/doc/src/compute_temp_drude.txt b/doc/txt/compute_temp_drude.txt similarity index 100% rename from doc/src/compute_temp_drude.txt rename to doc/txt/compute_temp_drude.txt diff --git a/doc/src/compute_temp_eff.txt b/doc/txt/compute_temp_eff.txt similarity index 100% rename from doc/src/compute_temp_eff.txt rename to doc/txt/compute_temp_eff.txt diff --git a/doc/src/compute_temp_partial.txt b/doc/txt/compute_temp_partial.txt similarity index 100% rename from doc/src/compute_temp_partial.txt rename to doc/txt/compute_temp_partial.txt diff --git a/doc/src/compute_temp_profile.txt b/doc/txt/compute_temp_profile.txt similarity index 100% rename from doc/src/compute_temp_profile.txt rename to doc/txt/compute_temp_profile.txt diff --git a/doc/src/compute_temp_ramp.txt b/doc/txt/compute_temp_ramp.txt similarity index 100% rename from doc/src/compute_temp_ramp.txt rename to doc/txt/compute_temp_ramp.txt diff --git a/doc/src/compute_temp_region.txt b/doc/txt/compute_temp_region.txt similarity index 100% rename from doc/src/compute_temp_region.txt rename to doc/txt/compute_temp_region.txt diff --git a/doc/src/compute_temp_region_eff.txt b/doc/txt/compute_temp_region_eff.txt similarity index 100% rename from doc/src/compute_temp_region_eff.txt rename to doc/txt/compute_temp_region_eff.txt diff --git a/doc/src/compute_temp_rotate.txt b/doc/txt/compute_temp_rotate.txt similarity index 100% rename from doc/src/compute_temp_rotate.txt rename to doc/txt/compute_temp_rotate.txt diff --git a/doc/src/compute_temp_sphere.txt b/doc/txt/compute_temp_sphere.txt similarity index 100% rename from doc/src/compute_temp_sphere.txt rename to doc/txt/compute_temp_sphere.txt diff --git a/doc/src/compute_temp_uef.txt b/doc/txt/compute_temp_uef.txt similarity index 100% rename from doc/src/compute_temp_uef.txt rename to doc/txt/compute_temp_uef.txt diff --git a/doc/src/compute_ti.txt b/doc/txt/compute_ti.txt similarity index 100% rename from doc/src/compute_ti.txt rename to doc/txt/compute_ti.txt diff --git a/doc/src/compute_torque_chunk.txt b/doc/txt/compute_torque_chunk.txt similarity index 100% rename from doc/src/compute_torque_chunk.txt rename to doc/txt/compute_torque_chunk.txt diff --git a/doc/src/compute_vacf.txt b/doc/txt/compute_vacf.txt similarity index 100% rename from doc/src/compute_vacf.txt rename to doc/txt/compute_vacf.txt diff --git a/doc/src/compute_vcm_chunk.txt b/doc/txt/compute_vcm_chunk.txt similarity index 100% rename from doc/src/compute_vcm_chunk.txt rename to doc/txt/compute_vcm_chunk.txt diff --git a/doc/src/compute_voronoi_atom.txt b/doc/txt/compute_voronoi_atom.txt similarity index 100% rename from doc/src/compute_voronoi_atom.txt rename to doc/txt/compute_voronoi_atom.txt diff --git a/doc/src/compute_xrd.txt b/doc/txt/compute_xrd.txt similarity index 100% rename from doc/src/compute_xrd.txt rename to doc/txt/compute_xrd.txt diff --git a/doc/src/computes.txt b/doc/txt/computes.txt similarity index 100% rename from doc/src/computes.txt rename to doc/txt/computes.txt diff --git a/doc/src/create_atoms.txt b/doc/txt/create_atoms.txt similarity index 100% rename from doc/src/create_atoms.txt rename to doc/txt/create_atoms.txt diff --git a/doc/src/create_bonds.txt b/doc/txt/create_bonds.txt similarity index 100% rename from doc/src/create_bonds.txt rename to doc/txt/create_bonds.txt diff --git a/doc/src/create_box.txt b/doc/txt/create_box.txt similarity index 100% rename from doc/src/create_box.txt rename to doc/txt/create_box.txt diff --git a/doc/src/delete_atoms.txt b/doc/txt/delete_atoms.txt similarity index 100% rename from doc/src/delete_atoms.txt rename to doc/txt/delete_atoms.txt diff --git a/doc/src/delete_bonds.txt b/doc/txt/delete_bonds.txt similarity index 100% rename from doc/src/delete_bonds.txt rename to doc/txt/delete_bonds.txt diff --git a/doc/src/dielectric.txt b/doc/txt/dielectric.txt similarity index 100% rename from doc/src/dielectric.txt rename to doc/txt/dielectric.txt diff --git a/doc/src/dihedral_charmm.txt b/doc/txt/dihedral_charmm.txt similarity index 100% rename from doc/src/dihedral_charmm.txt rename to doc/txt/dihedral_charmm.txt diff --git a/doc/src/dihedral_class2.txt b/doc/txt/dihedral_class2.txt similarity index 100% rename from doc/src/dihedral_class2.txt rename to doc/txt/dihedral_class2.txt diff --git a/doc/src/dihedral_coeff.txt b/doc/txt/dihedral_coeff.txt similarity index 100% rename from doc/src/dihedral_coeff.txt rename to doc/txt/dihedral_coeff.txt diff --git a/doc/src/dihedral_cosine_shift_exp.txt b/doc/txt/dihedral_cosine_shift_exp.txt similarity index 100% rename from doc/src/dihedral_cosine_shift_exp.txt rename to doc/txt/dihedral_cosine_shift_exp.txt diff --git a/doc/src/dihedral_fourier.txt b/doc/txt/dihedral_fourier.txt similarity index 100% rename from doc/src/dihedral_fourier.txt rename to doc/txt/dihedral_fourier.txt diff --git a/doc/src/dihedral_harmonic.txt b/doc/txt/dihedral_harmonic.txt similarity index 100% rename from doc/src/dihedral_harmonic.txt rename to doc/txt/dihedral_harmonic.txt diff --git a/doc/src/dihedral_helix.txt b/doc/txt/dihedral_helix.txt similarity index 100% rename from doc/src/dihedral_helix.txt rename to doc/txt/dihedral_helix.txt diff --git a/doc/src/dihedral_hybrid.txt b/doc/txt/dihedral_hybrid.txt similarity index 100% rename from doc/src/dihedral_hybrid.txt rename to doc/txt/dihedral_hybrid.txt diff --git a/doc/src/dihedral_multi_harmonic.txt b/doc/txt/dihedral_multi_harmonic.txt similarity index 100% rename from doc/src/dihedral_multi_harmonic.txt rename to doc/txt/dihedral_multi_harmonic.txt diff --git a/doc/src/dihedral_nharmonic.txt b/doc/txt/dihedral_nharmonic.txt similarity index 100% rename from doc/src/dihedral_nharmonic.txt rename to doc/txt/dihedral_nharmonic.txt diff --git a/doc/src/dihedral_none.txt b/doc/txt/dihedral_none.txt similarity index 100% rename from doc/src/dihedral_none.txt rename to doc/txt/dihedral_none.txt diff --git a/doc/src/dihedral_opls.txt b/doc/txt/dihedral_opls.txt similarity index 100% rename from doc/src/dihedral_opls.txt rename to doc/txt/dihedral_opls.txt diff --git a/doc/src/dihedral_quadratic.txt b/doc/txt/dihedral_quadratic.txt similarity index 100% rename from doc/src/dihedral_quadratic.txt rename to doc/txt/dihedral_quadratic.txt diff --git a/doc/src/dihedral_spherical.txt b/doc/txt/dihedral_spherical.txt similarity index 100% rename from doc/src/dihedral_spherical.txt rename to doc/txt/dihedral_spherical.txt diff --git a/doc/src/dihedral_style.txt b/doc/txt/dihedral_style.txt similarity index 100% rename from doc/src/dihedral_style.txt rename to doc/txt/dihedral_style.txt diff --git a/doc/src/dihedral_table.txt b/doc/txt/dihedral_table.txt similarity index 100% rename from doc/src/dihedral_table.txt rename to doc/txt/dihedral_table.txt diff --git a/doc/src/dihedral_table_cut.txt b/doc/txt/dihedral_table_cut.txt similarity index 100% rename from doc/src/dihedral_table_cut.txt rename to doc/txt/dihedral_table_cut.txt diff --git a/doc/src/dihedral_zero.txt b/doc/txt/dihedral_zero.txt similarity index 100% rename from doc/src/dihedral_zero.txt rename to doc/txt/dihedral_zero.txt diff --git a/doc/src/dimension.txt b/doc/txt/dimension.txt similarity index 100% rename from doc/src/dimension.txt rename to doc/txt/dimension.txt diff --git a/doc/src/displace_atoms.txt b/doc/txt/displace_atoms.txt similarity index 100% rename from doc/src/displace_atoms.txt rename to doc/txt/displace_atoms.txt diff --git a/doc/src/dump.txt b/doc/txt/dump.txt similarity index 100% rename from doc/src/dump.txt rename to doc/txt/dump.txt diff --git a/doc/src/dump_adios.txt b/doc/txt/dump_adios.txt similarity index 100% rename from doc/src/dump_adios.txt rename to doc/txt/dump_adios.txt diff --git a/doc/src/dump_cfg_uef.txt b/doc/txt/dump_cfg_uef.txt similarity index 100% rename from doc/src/dump_cfg_uef.txt rename to doc/txt/dump_cfg_uef.txt diff --git a/doc/src/dump_h5md.txt b/doc/txt/dump_h5md.txt similarity index 100% rename from doc/src/dump_h5md.txt rename to doc/txt/dump_h5md.txt diff --git a/doc/src/dump_image.txt b/doc/txt/dump_image.txt similarity index 100% rename from doc/src/dump_image.txt rename to doc/txt/dump_image.txt diff --git a/doc/src/dump_modify.txt b/doc/txt/dump_modify.txt similarity index 100% rename from doc/src/dump_modify.txt rename to doc/txt/dump_modify.txt diff --git a/doc/src/dump_molfile.txt b/doc/txt/dump_molfile.txt similarity index 100% rename from doc/src/dump_molfile.txt rename to doc/txt/dump_molfile.txt diff --git a/doc/src/dump_netcdf.txt b/doc/txt/dump_netcdf.txt similarity index 100% rename from doc/src/dump_netcdf.txt rename to doc/txt/dump_netcdf.txt diff --git a/doc/src/dump_vtk.txt b/doc/txt/dump_vtk.txt similarity index 100% rename from doc/src/dump_vtk.txt rename to doc/txt/dump_vtk.txt diff --git a/doc/src/dynamical_matrix.txt b/doc/txt/dynamical_matrix.txt similarity index 100% rename from doc/src/dynamical_matrix.txt rename to doc/txt/dynamical_matrix.txt diff --git a/doc/src/echo.txt b/doc/txt/echo.txt similarity index 100% rename from doc/src/echo.txt rename to doc/txt/echo.txt diff --git a/doc/src/fix.txt b/doc/txt/fix.txt similarity index 100% rename from doc/src/fix.txt rename to doc/txt/fix.txt diff --git a/doc/src/fix_adapt.txt b/doc/txt/fix_adapt.txt similarity index 100% rename from doc/src/fix_adapt.txt rename to doc/txt/fix_adapt.txt diff --git a/doc/src/fix_adapt_fep.txt b/doc/txt/fix_adapt_fep.txt similarity index 100% rename from doc/src/fix_adapt_fep.txt rename to doc/txt/fix_adapt_fep.txt diff --git a/doc/src/fix_addforce.txt b/doc/txt/fix_addforce.txt similarity index 100% rename from doc/src/fix_addforce.txt rename to doc/txt/fix_addforce.txt diff --git a/doc/src/fix_addtorque.txt b/doc/txt/fix_addtorque.txt similarity index 100% rename from doc/src/fix_addtorque.txt rename to doc/txt/fix_addtorque.txt diff --git a/doc/src/fix_append_atoms.txt b/doc/txt/fix_append_atoms.txt similarity index 100% rename from doc/src/fix_append_atoms.txt rename to doc/txt/fix_append_atoms.txt diff --git a/doc/src/fix_atc.txt b/doc/txt/fix_atc.txt similarity index 100% rename from doc/src/fix_atc.txt rename to doc/txt/fix_atc.txt diff --git a/doc/src/fix_atom_swap.txt b/doc/txt/fix_atom_swap.txt similarity index 100% rename from doc/src/fix_atom_swap.txt rename to doc/txt/fix_atom_swap.txt diff --git a/doc/src/fix_ave_atom.txt b/doc/txt/fix_ave_atom.txt similarity index 100% rename from doc/src/fix_ave_atom.txt rename to doc/txt/fix_ave_atom.txt diff --git a/doc/src/fix_ave_chunk.txt b/doc/txt/fix_ave_chunk.txt similarity index 100% rename from doc/src/fix_ave_chunk.txt rename to doc/txt/fix_ave_chunk.txt diff --git a/doc/src/fix_ave_correlate.txt b/doc/txt/fix_ave_correlate.txt similarity index 100% rename from doc/src/fix_ave_correlate.txt rename to doc/txt/fix_ave_correlate.txt diff --git a/doc/src/fix_ave_correlate_long.txt b/doc/txt/fix_ave_correlate_long.txt similarity index 100% rename from doc/src/fix_ave_correlate_long.txt rename to doc/txt/fix_ave_correlate_long.txt diff --git a/doc/src/fix_ave_histo.txt b/doc/txt/fix_ave_histo.txt similarity index 100% rename from doc/src/fix_ave_histo.txt rename to doc/txt/fix_ave_histo.txt diff --git a/doc/src/fix_ave_time.txt b/doc/txt/fix_ave_time.txt similarity index 100% rename from doc/src/fix_ave_time.txt rename to doc/txt/fix_ave_time.txt diff --git a/doc/src/fix_aveforce.txt b/doc/txt/fix_aveforce.txt similarity index 100% rename from doc/src/fix_aveforce.txt rename to doc/txt/fix_aveforce.txt diff --git a/doc/src/fix_balance.txt b/doc/txt/fix_balance.txt similarity index 100% rename from doc/src/fix_balance.txt rename to doc/txt/fix_balance.txt diff --git a/doc/src/fix_bocs.txt b/doc/txt/fix_bocs.txt similarity index 100% rename from doc/src/fix_bocs.txt rename to doc/txt/fix_bocs.txt diff --git a/doc/src/fix_bond_break.txt b/doc/txt/fix_bond_break.txt similarity index 100% rename from doc/src/fix_bond_break.txt rename to doc/txt/fix_bond_break.txt diff --git a/doc/src/fix_bond_create.txt b/doc/txt/fix_bond_create.txt similarity index 100% rename from doc/src/fix_bond_create.txt rename to doc/txt/fix_bond_create.txt diff --git a/doc/src/fix_bond_react.txt b/doc/txt/fix_bond_react.txt similarity index 100% rename from doc/src/fix_bond_react.txt rename to doc/txt/fix_bond_react.txt diff --git a/doc/src/fix_bond_swap.txt b/doc/txt/fix_bond_swap.txt similarity index 100% rename from doc/src/fix_bond_swap.txt rename to doc/txt/fix_bond_swap.txt diff --git a/doc/src/fix_box_relax.txt b/doc/txt/fix_box_relax.txt similarity index 100% rename from doc/src/fix_box_relax.txt rename to doc/txt/fix_box_relax.txt diff --git a/doc/src/fix_client_md.txt b/doc/txt/fix_client_md.txt similarity index 100% rename from doc/src/fix_client_md.txt rename to doc/txt/fix_client_md.txt diff --git a/doc/src/fix_cmap.txt b/doc/txt/fix_cmap.txt similarity index 100% rename from doc/src/fix_cmap.txt rename to doc/txt/fix_cmap.txt diff --git a/doc/src/fix_colvars.txt b/doc/txt/fix_colvars.txt similarity index 100% rename from doc/src/fix_colvars.txt rename to doc/txt/fix_colvars.txt diff --git a/doc/src/fix_controller.txt b/doc/txt/fix_controller.txt similarity index 100% rename from doc/src/fix_controller.txt rename to doc/txt/fix_controller.txt diff --git a/doc/src/fix_deform.txt b/doc/txt/fix_deform.txt similarity index 100% rename from doc/src/fix_deform.txt rename to doc/txt/fix_deform.txt diff --git a/doc/src/fix_deposit.txt b/doc/txt/fix_deposit.txt similarity index 100% rename from doc/src/fix_deposit.txt rename to doc/txt/fix_deposit.txt diff --git a/doc/src/fix_dpd_energy.txt b/doc/txt/fix_dpd_energy.txt similarity index 100% rename from doc/src/fix_dpd_energy.txt rename to doc/txt/fix_dpd_energy.txt diff --git a/doc/src/fix_dpd_source.txt b/doc/txt/fix_dpd_source.txt similarity index 100% rename from doc/src/fix_dpd_source.txt rename to doc/txt/fix_dpd_source.txt diff --git a/doc/src/fix_drag.txt b/doc/txt/fix_drag.txt similarity index 100% rename from doc/src/fix_drag.txt rename to doc/txt/fix_drag.txt diff --git a/doc/src/fix_drude.txt b/doc/txt/fix_drude.txt similarity index 100% rename from doc/src/fix_drude.txt rename to doc/txt/fix_drude.txt diff --git a/doc/src/fix_drude_transform.txt b/doc/txt/fix_drude_transform.txt similarity index 100% rename from doc/src/fix_drude_transform.txt rename to doc/txt/fix_drude_transform.txt diff --git a/doc/src/fix_dt_reset.txt b/doc/txt/fix_dt_reset.txt similarity index 100% rename from doc/src/fix_dt_reset.txt rename to doc/txt/fix_dt_reset.txt diff --git a/doc/src/fix_efield.txt b/doc/txt/fix_efield.txt similarity index 100% rename from doc/src/fix_efield.txt rename to doc/txt/fix_efield.txt diff --git a/doc/src/fix_ehex.txt b/doc/txt/fix_ehex.txt similarity index 100% rename from doc/src/fix_ehex.txt rename to doc/txt/fix_ehex.txt diff --git a/doc/src/fix_electron_stopping.txt b/doc/txt/fix_electron_stopping.txt similarity index 100% rename from doc/src/fix_electron_stopping.txt rename to doc/txt/fix_electron_stopping.txt diff --git a/doc/src/fix_enforce2d.txt b/doc/txt/fix_enforce2d.txt similarity index 100% rename from doc/src/fix_enforce2d.txt rename to doc/txt/fix_enforce2d.txt diff --git a/doc/src/fix_eos_cv.txt b/doc/txt/fix_eos_cv.txt similarity index 100% rename from doc/src/fix_eos_cv.txt rename to doc/txt/fix_eos_cv.txt diff --git a/doc/src/fix_eos_table.txt b/doc/txt/fix_eos_table.txt similarity index 100% rename from doc/src/fix_eos_table.txt rename to doc/txt/fix_eos_table.txt diff --git a/doc/src/fix_eos_table_rx.txt b/doc/txt/fix_eos_table_rx.txt similarity index 100% rename from doc/src/fix_eos_table_rx.txt rename to doc/txt/fix_eos_table_rx.txt diff --git a/doc/src/fix_evaporate.txt b/doc/txt/fix_evaporate.txt similarity index 100% rename from doc/src/fix_evaporate.txt rename to doc/txt/fix_evaporate.txt diff --git a/doc/src/fix_external.txt b/doc/txt/fix_external.txt similarity index 100% rename from doc/src/fix_external.txt rename to doc/txt/fix_external.txt diff --git a/doc/src/fix_ffl.txt b/doc/txt/fix_ffl.txt similarity index 100% rename from doc/src/fix_ffl.txt rename to doc/txt/fix_ffl.txt diff --git a/doc/src/fix_filter_corotate.txt b/doc/txt/fix_filter_corotate.txt similarity index 100% rename from doc/src/fix_filter_corotate.txt rename to doc/txt/fix_filter_corotate.txt diff --git a/doc/src/fix_flow_gauss.txt b/doc/txt/fix_flow_gauss.txt similarity index 100% rename from doc/src/fix_flow_gauss.txt rename to doc/txt/fix_flow_gauss.txt diff --git a/doc/src/fix_freeze.txt b/doc/txt/fix_freeze.txt similarity index 100% rename from doc/src/fix_freeze.txt rename to doc/txt/fix_freeze.txt diff --git a/doc/src/fix_gcmc.txt b/doc/txt/fix_gcmc.txt similarity index 100% rename from doc/src/fix_gcmc.txt rename to doc/txt/fix_gcmc.txt diff --git a/doc/src/fix_gld.txt b/doc/txt/fix_gld.txt similarity index 100% rename from doc/src/fix_gld.txt rename to doc/txt/fix_gld.txt diff --git a/doc/src/fix_gle.txt b/doc/txt/fix_gle.txt similarity index 100% rename from doc/src/fix_gle.txt rename to doc/txt/fix_gle.txt diff --git a/doc/src/fix_gravity.txt b/doc/txt/fix_gravity.txt similarity index 100% rename from doc/src/fix_gravity.txt rename to doc/txt/fix_gravity.txt diff --git a/doc/src/fix_grem.txt b/doc/txt/fix_grem.txt similarity index 100% rename from doc/src/fix_grem.txt rename to doc/txt/fix_grem.txt diff --git a/doc/src/fix_halt.txt b/doc/txt/fix_halt.txt similarity index 100% rename from doc/src/fix_halt.txt rename to doc/txt/fix_halt.txt diff --git a/doc/src/fix_heat.txt b/doc/txt/fix_heat.txt similarity index 100% rename from doc/src/fix_heat.txt rename to doc/txt/fix_heat.txt diff --git a/doc/src/fix_hyper_global.txt b/doc/txt/fix_hyper_global.txt similarity index 100% rename from doc/src/fix_hyper_global.txt rename to doc/txt/fix_hyper_global.txt diff --git a/doc/src/fix_hyper_local.txt b/doc/txt/fix_hyper_local.txt similarity index 100% rename from doc/src/fix_hyper_local.txt rename to doc/txt/fix_hyper_local.txt diff --git a/doc/src/fix_imd.txt b/doc/txt/fix_imd.txt similarity index 100% rename from doc/src/fix_imd.txt rename to doc/txt/fix_imd.txt diff --git a/doc/src/fix_indent.txt b/doc/txt/fix_indent.txt similarity index 100% rename from doc/src/fix_indent.txt rename to doc/txt/fix_indent.txt diff --git a/doc/src/fix_ipi.txt b/doc/txt/fix_ipi.txt similarity index 100% rename from doc/src/fix_ipi.txt rename to doc/txt/fix_ipi.txt diff --git a/doc/src/fix_langevin.txt b/doc/txt/fix_langevin.txt similarity index 100% rename from doc/src/fix_langevin.txt rename to doc/txt/fix_langevin.txt diff --git a/doc/src/fix_langevin_drude.txt b/doc/txt/fix_langevin_drude.txt similarity index 100% rename from doc/src/fix_langevin_drude.txt rename to doc/txt/fix_langevin_drude.txt diff --git a/doc/src/fix_langevin_eff.txt b/doc/txt/fix_langevin_eff.txt similarity index 100% rename from doc/src/fix_langevin_eff.txt rename to doc/txt/fix_langevin_eff.txt diff --git a/doc/src/fix_langevin_spin.txt b/doc/txt/fix_langevin_spin.txt similarity index 100% rename from doc/src/fix_langevin_spin.txt rename to doc/txt/fix_langevin_spin.txt diff --git a/doc/src/fix_latte.txt b/doc/txt/fix_latte.txt similarity index 100% rename from doc/src/fix_latte.txt rename to doc/txt/fix_latte.txt diff --git a/doc/src/fix_lb_fluid.txt b/doc/txt/fix_lb_fluid.txt similarity index 100% rename from doc/src/fix_lb_fluid.txt rename to doc/txt/fix_lb_fluid.txt diff --git a/doc/src/fix_lb_momentum.txt b/doc/txt/fix_lb_momentum.txt similarity index 100% rename from doc/src/fix_lb_momentum.txt rename to doc/txt/fix_lb_momentum.txt diff --git a/doc/src/fix_lb_pc.txt b/doc/txt/fix_lb_pc.txt similarity index 100% rename from doc/src/fix_lb_pc.txt rename to doc/txt/fix_lb_pc.txt diff --git a/doc/src/fix_lb_rigid_pc_sphere.txt b/doc/txt/fix_lb_rigid_pc_sphere.txt similarity index 100% rename from doc/src/fix_lb_rigid_pc_sphere.txt rename to doc/txt/fix_lb_rigid_pc_sphere.txt diff --git a/doc/src/fix_lb_viscous.txt b/doc/txt/fix_lb_viscous.txt similarity index 100% rename from doc/src/fix_lb_viscous.txt rename to doc/txt/fix_lb_viscous.txt diff --git a/doc/src/fix_lineforce.txt b/doc/txt/fix_lineforce.txt similarity index 100% rename from doc/src/fix_lineforce.txt rename to doc/txt/fix_lineforce.txt diff --git a/doc/src/fix_manifoldforce.txt b/doc/txt/fix_manifoldforce.txt similarity index 100% rename from doc/src/fix_manifoldforce.txt rename to doc/txt/fix_manifoldforce.txt diff --git a/doc/src/fix_meso.txt b/doc/txt/fix_meso.txt similarity index 100% rename from doc/src/fix_meso.txt rename to doc/txt/fix_meso.txt diff --git a/doc/src/fix_meso_move.txt b/doc/txt/fix_meso_move.txt similarity index 100% rename from doc/src/fix_meso_move.txt rename to doc/txt/fix_meso_move.txt diff --git a/doc/src/fix_meso_stationary.txt b/doc/txt/fix_meso_stationary.txt similarity index 100% rename from doc/src/fix_meso_stationary.txt rename to doc/txt/fix_meso_stationary.txt diff --git a/doc/src/fix_modify.txt b/doc/txt/fix_modify.txt similarity index 100% rename from doc/src/fix_modify.txt rename to doc/txt/fix_modify.txt diff --git a/doc/src/fix_momentum.txt b/doc/txt/fix_momentum.txt similarity index 100% rename from doc/src/fix_momentum.txt rename to doc/txt/fix_momentum.txt diff --git a/doc/src/fix_move.txt b/doc/txt/fix_move.txt similarity index 100% rename from doc/src/fix_move.txt rename to doc/txt/fix_move.txt diff --git a/doc/src/fix_mscg.txt b/doc/txt/fix_mscg.txt similarity index 100% rename from doc/src/fix_mscg.txt rename to doc/txt/fix_mscg.txt diff --git a/doc/src/fix_msst.txt b/doc/txt/fix_msst.txt similarity index 100% rename from doc/src/fix_msst.txt rename to doc/txt/fix_msst.txt diff --git a/doc/src/fix_mvv_dpd.txt b/doc/txt/fix_mvv_dpd.txt similarity index 100% rename from doc/src/fix_mvv_dpd.txt rename to doc/txt/fix_mvv_dpd.txt diff --git a/doc/src/fix_neb.txt b/doc/txt/fix_neb.txt similarity index 100% rename from doc/src/fix_neb.txt rename to doc/txt/fix_neb.txt diff --git a/doc/src/fix_neb_spin.txt b/doc/txt/fix_neb_spin.txt similarity index 100% rename from doc/src/fix_neb_spin.txt rename to doc/txt/fix_neb_spin.txt diff --git a/doc/src/fix_nh.txt b/doc/txt/fix_nh.txt similarity index 100% rename from doc/src/fix_nh.txt rename to doc/txt/fix_nh.txt diff --git a/doc/src/fix_nh_eff.txt b/doc/txt/fix_nh_eff.txt similarity index 100% rename from doc/src/fix_nh_eff.txt rename to doc/txt/fix_nh_eff.txt diff --git a/doc/src/fix_nh_uef.txt b/doc/txt/fix_nh_uef.txt similarity index 100% rename from doc/src/fix_nh_uef.txt rename to doc/txt/fix_nh_uef.txt diff --git a/doc/src/fix_nph_asphere.txt b/doc/txt/fix_nph_asphere.txt similarity index 100% rename from doc/src/fix_nph_asphere.txt rename to doc/txt/fix_nph_asphere.txt diff --git a/doc/src/fix_nph_body.txt b/doc/txt/fix_nph_body.txt similarity index 100% rename from doc/src/fix_nph_body.txt rename to doc/txt/fix_nph_body.txt diff --git a/doc/src/fix_nph_sphere.txt b/doc/txt/fix_nph_sphere.txt similarity index 100% rename from doc/src/fix_nph_sphere.txt rename to doc/txt/fix_nph_sphere.txt diff --git a/doc/src/fix_nphug.txt b/doc/txt/fix_nphug.txt similarity index 100% rename from doc/src/fix_nphug.txt rename to doc/txt/fix_nphug.txt diff --git a/doc/src/fix_npt_asphere.txt b/doc/txt/fix_npt_asphere.txt similarity index 100% rename from doc/src/fix_npt_asphere.txt rename to doc/txt/fix_npt_asphere.txt diff --git a/doc/src/fix_npt_body.txt b/doc/txt/fix_npt_body.txt similarity index 100% rename from doc/src/fix_npt_body.txt rename to doc/txt/fix_npt_body.txt diff --git a/doc/src/fix_npt_sphere.txt b/doc/txt/fix_npt_sphere.txt similarity index 100% rename from doc/src/fix_npt_sphere.txt rename to doc/txt/fix_npt_sphere.txt diff --git a/doc/src/fix_nve.txt b/doc/txt/fix_nve.txt similarity index 100% rename from doc/src/fix_nve.txt rename to doc/txt/fix_nve.txt diff --git a/doc/src/fix_nve_asphere.txt b/doc/txt/fix_nve_asphere.txt similarity index 100% rename from doc/src/fix_nve_asphere.txt rename to doc/txt/fix_nve_asphere.txt diff --git a/doc/src/fix_nve_asphere_noforce.txt b/doc/txt/fix_nve_asphere_noforce.txt similarity index 100% rename from doc/src/fix_nve_asphere_noforce.txt rename to doc/txt/fix_nve_asphere_noforce.txt diff --git a/doc/src/fix_nve_awpmd.txt b/doc/txt/fix_nve_awpmd.txt similarity index 100% rename from doc/src/fix_nve_awpmd.txt rename to doc/txt/fix_nve_awpmd.txt diff --git a/doc/src/fix_nve_body.txt b/doc/txt/fix_nve_body.txt similarity index 100% rename from doc/src/fix_nve_body.txt rename to doc/txt/fix_nve_body.txt diff --git a/doc/src/fix_nve_dot.txt b/doc/txt/fix_nve_dot.txt similarity index 100% rename from doc/src/fix_nve_dot.txt rename to doc/txt/fix_nve_dot.txt diff --git a/doc/src/fix_nve_dotc_langevin.txt b/doc/txt/fix_nve_dotc_langevin.txt similarity index 100% rename from doc/src/fix_nve_dotc_langevin.txt rename to doc/txt/fix_nve_dotc_langevin.txt diff --git a/doc/src/fix_nve_eff.txt b/doc/txt/fix_nve_eff.txt similarity index 100% rename from doc/src/fix_nve_eff.txt rename to doc/txt/fix_nve_eff.txt diff --git a/doc/src/fix_nve_limit.txt b/doc/txt/fix_nve_limit.txt similarity index 100% rename from doc/src/fix_nve_limit.txt rename to doc/txt/fix_nve_limit.txt diff --git a/doc/src/fix_nve_line.txt b/doc/txt/fix_nve_line.txt similarity index 100% rename from doc/src/fix_nve_line.txt rename to doc/txt/fix_nve_line.txt diff --git a/doc/src/fix_nve_manifold_rattle.txt b/doc/txt/fix_nve_manifold_rattle.txt similarity index 100% rename from doc/src/fix_nve_manifold_rattle.txt rename to doc/txt/fix_nve_manifold_rattle.txt diff --git a/doc/src/fix_nve_noforce.txt b/doc/txt/fix_nve_noforce.txt similarity index 100% rename from doc/src/fix_nve_noforce.txt rename to doc/txt/fix_nve_noforce.txt diff --git a/doc/src/fix_nve_sphere.txt b/doc/txt/fix_nve_sphere.txt similarity index 100% rename from doc/src/fix_nve_sphere.txt rename to doc/txt/fix_nve_sphere.txt diff --git a/doc/src/fix_nve_spin.txt b/doc/txt/fix_nve_spin.txt similarity index 100% rename from doc/src/fix_nve_spin.txt rename to doc/txt/fix_nve_spin.txt diff --git a/doc/src/fix_nve_tri.txt b/doc/txt/fix_nve_tri.txt similarity index 100% rename from doc/src/fix_nve_tri.txt rename to doc/txt/fix_nve_tri.txt diff --git a/doc/src/fix_nvk.txt b/doc/txt/fix_nvk.txt similarity index 100% rename from doc/src/fix_nvk.txt rename to doc/txt/fix_nvk.txt diff --git a/doc/src/fix_nvt_asphere.txt b/doc/txt/fix_nvt_asphere.txt similarity index 100% rename from doc/src/fix_nvt_asphere.txt rename to doc/txt/fix_nvt_asphere.txt diff --git a/doc/src/fix_nvt_body.txt b/doc/txt/fix_nvt_body.txt similarity index 100% rename from doc/src/fix_nvt_body.txt rename to doc/txt/fix_nvt_body.txt diff --git a/doc/src/fix_nvt_manifold_rattle.txt b/doc/txt/fix_nvt_manifold_rattle.txt similarity index 100% rename from doc/src/fix_nvt_manifold_rattle.txt rename to doc/txt/fix_nvt_manifold_rattle.txt diff --git a/doc/src/fix_nvt_sllod.txt b/doc/txt/fix_nvt_sllod.txt similarity index 100% rename from doc/src/fix_nvt_sllod.txt rename to doc/txt/fix_nvt_sllod.txt diff --git a/doc/src/fix_nvt_sllod_eff.txt b/doc/txt/fix_nvt_sllod_eff.txt similarity index 100% rename from doc/src/fix_nvt_sllod_eff.txt rename to doc/txt/fix_nvt_sllod_eff.txt diff --git a/doc/src/fix_nvt_sphere.txt b/doc/txt/fix_nvt_sphere.txt similarity index 100% rename from doc/src/fix_nvt_sphere.txt rename to doc/txt/fix_nvt_sphere.txt diff --git a/doc/src/fix_oneway.txt b/doc/txt/fix_oneway.txt similarity index 100% rename from doc/src/fix_oneway.txt rename to doc/txt/fix_oneway.txt diff --git a/doc/src/fix_orient.txt b/doc/txt/fix_orient.txt similarity index 100% rename from doc/src/fix_orient.txt rename to doc/txt/fix_orient.txt diff --git a/doc/src/fix_phonon.txt b/doc/txt/fix_phonon.txt similarity index 100% rename from doc/src/fix_phonon.txt rename to doc/txt/fix_phonon.txt diff --git a/doc/src/fix_pimd.txt b/doc/txt/fix_pimd.txt similarity index 100% rename from doc/src/fix_pimd.txt rename to doc/txt/fix_pimd.txt diff --git a/doc/src/fix_planeforce.txt b/doc/txt/fix_planeforce.txt similarity index 100% rename from doc/src/fix_planeforce.txt rename to doc/txt/fix_planeforce.txt diff --git a/doc/src/fix_plumed.txt b/doc/txt/fix_plumed.txt similarity index 100% rename from doc/src/fix_plumed.txt rename to doc/txt/fix_plumed.txt diff --git a/doc/src/fix_poems.txt b/doc/txt/fix_poems.txt similarity index 100% rename from doc/src/fix_poems.txt rename to doc/txt/fix_poems.txt diff --git a/doc/src/fix_pour.txt b/doc/txt/fix_pour.txt similarity index 100% rename from doc/src/fix_pour.txt rename to doc/txt/fix_pour.txt diff --git a/doc/src/fix_precession_spin.txt b/doc/txt/fix_precession_spin.txt similarity index 100% rename from doc/src/fix_precession_spin.txt rename to doc/txt/fix_precession_spin.txt diff --git a/doc/src/fix_press_berendsen.txt b/doc/txt/fix_press_berendsen.txt similarity index 100% rename from doc/src/fix_press_berendsen.txt rename to doc/txt/fix_press_berendsen.txt diff --git a/doc/src/fix_print.txt b/doc/txt/fix_print.txt similarity index 100% rename from doc/src/fix_print.txt rename to doc/txt/fix_print.txt diff --git a/doc/src/fix_property_atom.txt b/doc/txt/fix_property_atom.txt similarity index 100% rename from doc/src/fix_property_atom.txt rename to doc/txt/fix_property_atom.txt diff --git a/doc/src/fix_python_invoke.txt b/doc/txt/fix_python_invoke.txt similarity index 100% rename from doc/src/fix_python_invoke.txt rename to doc/txt/fix_python_invoke.txt diff --git a/doc/src/fix_python_move.txt b/doc/txt/fix_python_move.txt similarity index 100% rename from doc/src/fix_python_move.txt rename to doc/txt/fix_python_move.txt diff --git a/doc/src/fix_qbmsst.txt b/doc/txt/fix_qbmsst.txt similarity index 100% rename from doc/src/fix_qbmsst.txt rename to doc/txt/fix_qbmsst.txt diff --git a/doc/src/fix_qeq.txt b/doc/txt/fix_qeq.txt similarity index 100% rename from doc/src/fix_qeq.txt rename to doc/txt/fix_qeq.txt diff --git a/doc/src/fix_qeq_comb.txt b/doc/txt/fix_qeq_comb.txt similarity index 100% rename from doc/src/fix_qeq_comb.txt rename to doc/txt/fix_qeq_comb.txt diff --git a/doc/src/fix_qeq_reax.txt b/doc/txt/fix_qeq_reax.txt similarity index 100% rename from doc/src/fix_qeq_reax.txt rename to doc/txt/fix_qeq_reax.txt diff --git a/doc/src/fix_qmmm.txt b/doc/txt/fix_qmmm.txt similarity index 100% rename from doc/src/fix_qmmm.txt rename to doc/txt/fix_qmmm.txt diff --git a/doc/src/fix_qtb.txt b/doc/txt/fix_qtb.txt similarity index 100% rename from doc/src/fix_qtb.txt rename to doc/txt/fix_qtb.txt diff --git a/doc/src/fix_reaxc_bonds.txt b/doc/txt/fix_reaxc_bonds.txt similarity index 100% rename from doc/src/fix_reaxc_bonds.txt rename to doc/txt/fix_reaxc_bonds.txt diff --git a/doc/src/fix_reaxc_species.txt b/doc/txt/fix_reaxc_species.txt similarity index 100% rename from doc/src/fix_reaxc_species.txt rename to doc/txt/fix_reaxc_species.txt diff --git a/doc/src/fix_recenter.txt b/doc/txt/fix_recenter.txt similarity index 100% rename from doc/src/fix_recenter.txt rename to doc/txt/fix_recenter.txt diff --git a/doc/src/fix_restrain.txt b/doc/txt/fix_restrain.txt similarity index 100% rename from doc/src/fix_restrain.txt rename to doc/txt/fix_restrain.txt diff --git a/doc/src/fix_rhok.txt b/doc/txt/fix_rhok.txt similarity index 100% rename from doc/src/fix_rhok.txt rename to doc/txt/fix_rhok.txt diff --git a/doc/src/fix_rigid.txt b/doc/txt/fix_rigid.txt similarity index 100% rename from doc/src/fix_rigid.txt rename to doc/txt/fix_rigid.txt diff --git a/doc/src/fix_rigid_meso.txt b/doc/txt/fix_rigid_meso.txt similarity index 100% rename from doc/src/fix_rigid_meso.txt rename to doc/txt/fix_rigid_meso.txt diff --git a/doc/src/fix_rx.txt b/doc/txt/fix_rx.txt similarity index 100% rename from doc/src/fix_rx.txt rename to doc/txt/fix_rx.txt diff --git a/doc/src/fix_saed_vtk.txt b/doc/txt/fix_saed_vtk.txt similarity index 100% rename from doc/src/fix_saed_vtk.txt rename to doc/txt/fix_saed_vtk.txt diff --git a/doc/src/fix_setforce.txt b/doc/txt/fix_setforce.txt similarity index 100% rename from doc/src/fix_setforce.txt rename to doc/txt/fix_setforce.txt diff --git a/doc/src/fix_shake.txt b/doc/txt/fix_shake.txt similarity index 100% rename from doc/src/fix_shake.txt rename to doc/txt/fix_shake.txt diff --git a/doc/src/fix_shardlow.txt b/doc/txt/fix_shardlow.txt similarity index 100% rename from doc/src/fix_shardlow.txt rename to doc/txt/fix_shardlow.txt diff --git a/doc/src/fix_smd.txt b/doc/txt/fix_smd.txt similarity index 100% rename from doc/src/fix_smd.txt rename to doc/txt/fix_smd.txt diff --git a/doc/src/fix_smd_adjust_dt.txt b/doc/txt/fix_smd_adjust_dt.txt similarity index 100% rename from doc/src/fix_smd_adjust_dt.txt rename to doc/txt/fix_smd_adjust_dt.txt diff --git a/doc/src/fix_smd_integrate_tlsph.txt b/doc/txt/fix_smd_integrate_tlsph.txt similarity index 100% rename from doc/src/fix_smd_integrate_tlsph.txt rename to doc/txt/fix_smd_integrate_tlsph.txt diff --git a/doc/src/fix_smd_integrate_ulsph.txt b/doc/txt/fix_smd_integrate_ulsph.txt similarity index 100% rename from doc/src/fix_smd_integrate_ulsph.txt rename to doc/txt/fix_smd_integrate_ulsph.txt diff --git a/doc/src/fix_smd_move_triangulated_surface.txt b/doc/txt/fix_smd_move_triangulated_surface.txt similarity index 100% rename from doc/src/fix_smd_move_triangulated_surface.txt rename to doc/txt/fix_smd_move_triangulated_surface.txt diff --git a/doc/src/fix_smd_setvel.txt b/doc/txt/fix_smd_setvel.txt similarity index 100% rename from doc/src/fix_smd_setvel.txt rename to doc/txt/fix_smd_setvel.txt diff --git a/doc/src/fix_smd_wall_surface.txt b/doc/txt/fix_smd_wall_surface.txt similarity index 100% rename from doc/src/fix_smd_wall_surface.txt rename to doc/txt/fix_smd_wall_surface.txt diff --git a/doc/src/fix_spring.txt b/doc/txt/fix_spring.txt similarity index 100% rename from doc/src/fix_spring.txt rename to doc/txt/fix_spring.txt diff --git a/doc/src/fix_spring_chunk.txt b/doc/txt/fix_spring_chunk.txt similarity index 100% rename from doc/src/fix_spring_chunk.txt rename to doc/txt/fix_spring_chunk.txt diff --git a/doc/src/fix_spring_rg.txt b/doc/txt/fix_spring_rg.txt similarity index 100% rename from doc/src/fix_spring_rg.txt rename to doc/txt/fix_spring_rg.txt diff --git a/doc/src/fix_spring_self.txt b/doc/txt/fix_spring_self.txt similarity index 100% rename from doc/src/fix_spring_self.txt rename to doc/txt/fix_spring_self.txt diff --git a/doc/src/fix_srd.txt b/doc/txt/fix_srd.txt similarity index 100% rename from doc/src/fix_srd.txt rename to doc/txt/fix_srd.txt diff --git a/doc/src/fix_store_force.txt b/doc/txt/fix_store_force.txt similarity index 100% rename from doc/src/fix_store_force.txt rename to doc/txt/fix_store_force.txt diff --git a/doc/src/fix_store_state.txt b/doc/txt/fix_store_state.txt similarity index 100% rename from doc/src/fix_store_state.txt rename to doc/txt/fix_store_state.txt diff --git a/doc/src/fix_temp_berendsen.txt b/doc/txt/fix_temp_berendsen.txt similarity index 100% rename from doc/src/fix_temp_berendsen.txt rename to doc/txt/fix_temp_berendsen.txt diff --git a/doc/src/fix_temp_csvr.txt b/doc/txt/fix_temp_csvr.txt similarity index 100% rename from doc/src/fix_temp_csvr.txt rename to doc/txt/fix_temp_csvr.txt diff --git a/doc/src/fix_temp_rescale.txt b/doc/txt/fix_temp_rescale.txt similarity index 100% rename from doc/src/fix_temp_rescale.txt rename to doc/txt/fix_temp_rescale.txt diff --git a/doc/src/fix_temp_rescale_eff.txt b/doc/txt/fix_temp_rescale_eff.txt similarity index 100% rename from doc/src/fix_temp_rescale_eff.txt rename to doc/txt/fix_temp_rescale_eff.txt diff --git a/doc/src/fix_tfmc.txt b/doc/txt/fix_tfmc.txt similarity index 100% rename from doc/src/fix_tfmc.txt rename to doc/txt/fix_tfmc.txt diff --git a/doc/src/fix_thermal_conductivity.txt b/doc/txt/fix_thermal_conductivity.txt similarity index 100% rename from doc/src/fix_thermal_conductivity.txt rename to doc/txt/fix_thermal_conductivity.txt diff --git a/doc/src/fix_ti_spring.txt b/doc/txt/fix_ti_spring.txt similarity index 100% rename from doc/src/fix_ti_spring.txt rename to doc/txt/fix_ti_spring.txt diff --git a/doc/src/fix_tmd.txt b/doc/txt/fix_tmd.txt similarity index 100% rename from doc/src/fix_tmd.txt rename to doc/txt/fix_tmd.txt diff --git a/doc/src/fix_ttm.txt b/doc/txt/fix_ttm.txt similarity index 100% rename from doc/src/fix_ttm.txt rename to doc/txt/fix_ttm.txt diff --git a/doc/src/fix_tune_kspace.txt b/doc/txt/fix_tune_kspace.txt similarity index 100% rename from doc/src/fix_tune_kspace.txt rename to doc/txt/fix_tune_kspace.txt diff --git a/doc/src/fix_vector.txt b/doc/txt/fix_vector.txt similarity index 100% rename from doc/src/fix_vector.txt rename to doc/txt/fix_vector.txt diff --git a/doc/src/fix_viscosity.txt b/doc/txt/fix_viscosity.txt similarity index 100% rename from doc/src/fix_viscosity.txt rename to doc/txt/fix_viscosity.txt diff --git a/doc/src/fix_viscous.txt b/doc/txt/fix_viscous.txt similarity index 100% rename from doc/src/fix_viscous.txt rename to doc/txt/fix_viscous.txt diff --git a/doc/src/fix_wall.txt b/doc/txt/fix_wall.txt similarity index 100% rename from doc/src/fix_wall.txt rename to doc/txt/fix_wall.txt diff --git a/doc/src/fix_wall_body_polygon.txt b/doc/txt/fix_wall_body_polygon.txt similarity index 100% rename from doc/src/fix_wall_body_polygon.txt rename to doc/txt/fix_wall_body_polygon.txt diff --git a/doc/src/fix_wall_body_polyhedron.txt b/doc/txt/fix_wall_body_polyhedron.txt similarity index 100% rename from doc/src/fix_wall_body_polyhedron.txt rename to doc/txt/fix_wall_body_polyhedron.txt diff --git a/doc/src/fix_wall_ees.txt b/doc/txt/fix_wall_ees.txt similarity index 100% rename from doc/src/fix_wall_ees.txt rename to doc/txt/fix_wall_ees.txt diff --git a/doc/src/fix_wall_gran.txt b/doc/txt/fix_wall_gran.txt similarity index 100% rename from doc/src/fix_wall_gran.txt rename to doc/txt/fix_wall_gran.txt diff --git a/doc/src/fix_wall_gran_region.txt b/doc/txt/fix_wall_gran_region.txt similarity index 100% rename from doc/src/fix_wall_gran_region.txt rename to doc/txt/fix_wall_gran_region.txt diff --git a/doc/src/fix_wall_piston.txt b/doc/txt/fix_wall_piston.txt similarity index 100% rename from doc/src/fix_wall_piston.txt rename to doc/txt/fix_wall_piston.txt diff --git a/doc/src/fix_wall_reflect.txt b/doc/txt/fix_wall_reflect.txt similarity index 100% rename from doc/src/fix_wall_reflect.txt rename to doc/txt/fix_wall_reflect.txt diff --git a/doc/src/fix_wall_region.txt b/doc/txt/fix_wall_region.txt similarity index 100% rename from doc/src/fix_wall_region.txt rename to doc/txt/fix_wall_region.txt diff --git a/doc/src/fix_wall_srd.txt b/doc/txt/fix_wall_srd.txt similarity index 100% rename from doc/src/fix_wall_srd.txt rename to doc/txt/fix_wall_srd.txt diff --git a/doc/src/group.txt b/doc/txt/group.txt similarity index 100% rename from doc/src/group.txt rename to doc/txt/group.txt diff --git a/doc/src/group2ndx.txt b/doc/txt/group2ndx.txt similarity index 100% rename from doc/src/group2ndx.txt rename to doc/txt/group2ndx.txt diff --git a/doc/src/hyper.txt b/doc/txt/hyper.txt similarity index 100% rename from doc/src/hyper.txt rename to doc/txt/hyper.txt diff --git a/doc/src/if.txt b/doc/txt/if.txt similarity index 100% rename from doc/src/if.txt rename to doc/txt/if.txt diff --git a/doc/src/improper_class2.txt b/doc/txt/improper_class2.txt similarity index 100% rename from doc/src/improper_class2.txt rename to doc/txt/improper_class2.txt diff --git a/doc/src/improper_coeff.txt b/doc/txt/improper_coeff.txt similarity index 100% rename from doc/src/improper_coeff.txt rename to doc/txt/improper_coeff.txt diff --git a/doc/src/improper_cossq.txt b/doc/txt/improper_cossq.txt similarity index 100% rename from doc/src/improper_cossq.txt rename to doc/txt/improper_cossq.txt diff --git a/doc/src/improper_cvff.txt b/doc/txt/improper_cvff.txt similarity index 100% rename from doc/src/improper_cvff.txt rename to doc/txt/improper_cvff.txt diff --git a/doc/src/improper_distance.txt b/doc/txt/improper_distance.txt similarity index 100% rename from doc/src/improper_distance.txt rename to doc/txt/improper_distance.txt diff --git a/doc/src/improper_distharm.txt b/doc/txt/improper_distharm.txt similarity index 100% rename from doc/src/improper_distharm.txt rename to doc/txt/improper_distharm.txt diff --git a/doc/src/improper_fourier.txt b/doc/txt/improper_fourier.txt similarity index 100% rename from doc/src/improper_fourier.txt rename to doc/txt/improper_fourier.txt diff --git a/doc/src/improper_harmonic.txt b/doc/txt/improper_harmonic.txt similarity index 100% rename from doc/src/improper_harmonic.txt rename to doc/txt/improper_harmonic.txt diff --git a/doc/src/improper_hybrid.txt b/doc/txt/improper_hybrid.txt similarity index 100% rename from doc/src/improper_hybrid.txt rename to doc/txt/improper_hybrid.txt diff --git a/doc/src/improper_inversion_harmonic.txt b/doc/txt/improper_inversion_harmonic.txt similarity index 100% rename from doc/src/improper_inversion_harmonic.txt rename to doc/txt/improper_inversion_harmonic.txt diff --git a/doc/src/improper_none.txt b/doc/txt/improper_none.txt similarity index 100% rename from doc/src/improper_none.txt rename to doc/txt/improper_none.txt diff --git a/doc/src/improper_ring.txt b/doc/txt/improper_ring.txt similarity index 100% rename from doc/src/improper_ring.txt rename to doc/txt/improper_ring.txt diff --git a/doc/src/improper_sqdistharm.txt b/doc/txt/improper_sqdistharm.txt similarity index 100% rename from doc/src/improper_sqdistharm.txt rename to doc/txt/improper_sqdistharm.txt diff --git a/doc/src/improper_style.txt b/doc/txt/improper_style.txt similarity index 100% rename from doc/src/improper_style.txt rename to doc/txt/improper_style.txt diff --git a/doc/src/improper_umbrella.txt b/doc/txt/improper_umbrella.txt similarity index 100% rename from doc/src/improper_umbrella.txt rename to doc/txt/improper_umbrella.txt diff --git a/doc/src/improper_zero.txt b/doc/txt/improper_zero.txt similarity index 100% rename from doc/src/improper_zero.txt rename to doc/txt/improper_zero.txt diff --git a/doc/src/impropers.txt b/doc/txt/impropers.txt similarity index 100% rename from doc/src/impropers.txt rename to doc/txt/impropers.txt diff --git a/doc/src/include.txt b/doc/txt/include.txt similarity index 100% rename from doc/src/include.txt rename to doc/txt/include.txt diff --git a/doc/src/info.txt b/doc/txt/info.txt similarity index 100% rename from doc/src/info.txt rename to doc/txt/info.txt diff --git a/doc/src/jump.txt b/doc/txt/jump.txt similarity index 100% rename from doc/src/jump.txt rename to doc/txt/jump.txt diff --git a/doc/src/kim_commands.txt b/doc/txt/kim_commands.txt similarity index 65% rename from doc/src/kim_commands.txt rename to doc/txt/kim_commands.txt index 47beb776a18705925a1e7efebe34d99de2d838cf..e50950eae7c680fe3e114d60641ab801e6bb7c08 100644 --- a/doc/src/kim_commands.txt +++ b/doc/txt/kim_commands.txt @@ -9,21 +9,37 @@ kim_init command :h3 kim_interactions command :h3 kim_query command :h3 +kim_param command :h3 [Syntax:] kim_init model user_units unitarg kim_interactions typeargs -kim_query variable formatarg query_function queryargs :pre +kim_query variable formatarg query_function queryargs +kim_param get param_name index_range variables formatarg +kim_param set param_name index_range values +:pre -model = name of the KIM interatomic model (the KIM ID for models archived in OpenKIM) -user_units = the LAMMPS "units"_units.html style assumed in the LAMMPS input script -unitarg = {unit_conversion_mode} (optional) -typeargs = atom type to species mapping (one entry per atom type) or {fixed_types} for models with a preset fixed mapping -variable = name of a (string style) variable where the result of the query is stored -formatarg = {split} (optional) -query_function = name of the OpenKIM web API query function to be used -queryargs = a series of {keyword=value} pairs that represent the web query; supported keywords depend on the query function :ul +:link(formatarg_options) +model = name of the KIM interatomic model (the KIM ID for models archived in OpenKIM) :ulb,l +user_units = the LAMMPS "units"_units.html style assumed in the LAMMPS input script :l +unitarg = {unit_conversion_mode} (optional) :l +typeargs = atom type to species mapping (one entry per atom type) or {fixed_types} for models with a preset fixed mapping :l +variable(s) = single name or list of names of (string style) LAMMPS variable(s) where a query result or parameter get result is stored. Variables that do not exist will be created by the command. :l +formatarg = {list, split, or explicit} (optional): :l +{list} = returns a single string with a list of space separated values + (e.g. "1.0 2.0 3.0"), which is placed in a LAMMPS variable as + defined by the {variable} argument. \[default for {kim_query}\] +{split} = returns the values separately in new variables with names based + on the prefix specified in {variable} and a number appended to + indicate which element in the list of values is in the variable. +{explicit} = returns the values separately in one more more variable names + provided as arguments that preceed {formatarg}. \[default for {kim_param}\] :pre +query_function = name of the OpenKIM web API query function to be used :l +queryargs = a series of {keyword=value} pairs that represent the web query; supported keywords depend on the query function :l +param_name = name of a KIM portable model parameter :l +index_range = KIM portable model parameter index range (an integer for a single element, or pair of integers separated by a colon for a range of elements) :l +values = new value(s) to replace the current value(s) of a KIM portable model parameter :l,ule [Examples:] @@ -33,9 +49,12 @@ kim_interactions Si kim_init Sim_LAMMPS_ReaxFF_StrachanVanDuinChakraborty_2003_CHNO__SM_107643900657_000 real kim_init Sim_LAMMPS_ReaxFF_StrachanVanDuinChakraborty_2003_CHNO__SM_107643900657_000 metal unit_conversion_mode kim_interactions C H O -Sim_LAMMPS_IFF_PCFF_HeinzMishraLinEmami_2015Ver1v5_FccmetalsMineralsSolvents Polymers__SM_039297821658_000 real +kim_init Sim_LAMMPS_IFF_PCFF_HeinzMishraLinEmami_2015Ver1v5_FccmetalsMineralsSolventsPolymers__SM_039297821658_000 real kim_interactions fixed_types -kim_query a0 get_lattice_constant_cubic crystal=\["fcc"\] species=\["Al"\] units=\["angstrom"\] :pre +kim_query a0 get_lattice_constant_cubic crystal=\["fcc"\] species=\["Al"\] units=\["angstrom"\] +kim_param get gamma 1 varGamma +kim_param set gamma 1 3.0 +:pre [Description:] @@ -75,6 +94,7 @@ Types of IMs in OpenKIM :h4 There are two types of IMs archived in OpenKIM: +:link(PM_type) The first type is called a {KIM Portable Model} (PM). A KIM PM is an independent computer implementation of an IM written in one of the languages supported by KIM (C, C++, Fortran) that conforms to the KIM Application Programming Interface ("KIM API"_https://openkim.org/kim-api/) Portable Model Interface (PMI) standard. A KIM PM will work seamlessly with any simulation code that supports the KIM API/PMI standard (including LAMMPS; see "complete list of supported codes"_https://openkim.org/projects-using-kim/). The second type is called a {KIM Simulator Model} (SM). A KIM SM is an IM that is implemented natively within a simulation code ({simulator}) that supports the KIM API Simulator Model Interface (SMI); in this case LAMMPS. A separate SM package is archived in OpenKIM for each parameterization of the IM, which includes all of the necessary parameter files, LAMMPS commands, and metadata (supported species, units, etc.) needed to run the IM in LAMMPS. :ol @@ -106,7 +126,7 @@ The URL for the Model Page is constructed from the https://openkim.org/id/extended_KIM_ID :pre -For example for the Stillinger-Weber potential +For example, for the Stillinger--Weber potential listed above the Model Page is located at: "https://openkim.org/id/SW_StillingerWeber_1985_Si__MO_405512056662_005"_https://openkim.org/id/SW_StillingerWeber_1985_Si__MO_405512056662_005 @@ -196,7 +216,8 @@ print "Cohesive Energy = $\{EcJ\} eV" The above script will end with an error in the {kim_init} line if the IM is changed to another potential for Al that does not work with {metal} -units. To address this {kim_init} offers the {unit_conversion_mode}. +units. To address this {kim_init} offers the {unit_conversion_mode} +as shown below. If unit conversion mode {is} active, then {kim_init} calls the LAMMPS "units"_units.html command to set the units to the IM's required or preferred units. Conversion factors between the IM's units and the {user_units} @@ -250,7 +271,7 @@ will work correctly for any IM for Al (KIM PM or SM) selected by the {kim_init} command. Care must be taken to apply unit conversion to dimensional variables read in -from a file. For example if a configuration of atoms is read in from a +from a file. For example, if a configuration of atoms is read in from a dump file using the "read_dump"_read_dump.html command, the following can be done to convert the box and all atomic positions to the correct units: @@ -349,14 +370,34 @@ not appear in the input script. Using OpenKIM Web Queries in LAMMPS ({kim_query}) :h5 The {kim_query} command performs a web query to retrieve the predictions -of the IM set by {kim_init} for material properties archived in -"OpenKIM"_https://openkim.org. The {kim_query} command must be preceded -by a {kim_init} command. The result of the query is stored in a -"string style variable"_variable.html, the name of which is given as the first -argument of the {kim_query command}. (For the case of multiple -return values, the optional {split} keyword can be used after the -variable name to separate the results into multiple variables; see -the "example"_#split_example below.) +of an IM set by {kim_init} for material properties archived in +"OpenKIM"_https://openkim.org. + +NOTE: The {kim_query} command must be preceded by a {kim_init} command. + +The syntax for the {kim_query} command is as follows: + +kim_query variable formatarg query_function queryargs +:pre + +The result of the query is stored in one or more +"string style variables"_variable.html as determined by the +optional {formatarg} argument "documented above"_#formatarg_options. +For the "list" setting of {formatarg} (or if {formatarg} is not +specified), the result is returned as a space-separated list of +values in {variable}. +The {formatarg} keyword "split" separates the result values into +individual variables of the form {prefix_I}, where {prefix} is set to the +{kim_query} {variable} argument and {I} ranges from 1 to the number of +returned values. The number and order of the returned values is determined +by the type of query performed. (Note that the "explicit" setting of +{formatarg} is not supported by {kim_query}.) + +NOTE: {kim_query} only supports queries that return a single result or +an array of values. More complex queries that return a JSON structure +are not currently supported. An attempt to use {kim_query} in such +cases will generate an error. + The second required argument {query_function} is the name of the query function to be called (e.g. {get_lattice_constant_cubic}). All following "arguments"_Commands_parse.html are parameters handed over to @@ -380,7 +421,7 @@ be provided to select the method of choice. See the "query documentation"_https://openkim.org/doc/repository/kim-query to see which methods are available for a given {query function}. -{kim_query} Usage Examples and Further Clarifications: :h6 +{kim_query} Usage Examples and Further Clarifications :h5 The data obtained by {kim_query} commands can be used as part of the setup or analysis phases of LAMMPS simulations. Some examples are given below. @@ -406,7 +447,6 @@ Note that in {unit_conversion_mode} the results obtained from a For example, in the above script, the lattice command would need to be changed to: "lattice fcc $\{a0\}*$\{_u_distance\}". -:link(split_example) [Define an equilibrium hcp crystal] kim_init EAM_Dynamo_Mendelev_2007_Zr__MO_848899341753_000 metal @@ -421,12 +461,11 @@ lattice custom $\{a0\} a1 0.5 -0.866025 0 a2 0.5 0.866025 0 a3 0 0 $\{c In this case the {kim_query} returns two arguments (since the hexagonal close packed (hcp) structure has two independent lattice constants). -The default behavior of {kim_query} returns the result as a string -with the values separated by commas. The optional keyword {split} -separates the result values into individual variables of the form -{prefix_I}, where {prefix} is set to the the {kim_query} {variable} argument -and {I} ranges from 1 to the number of returned values. The number and order of -the returned values is determined by the type of query performed. +The {formatarg} keyword "split" places the two values into +the variables {latconst_1} and {latconst_2}. (These variables are +created if they do not already exist.) For convenience the variables +{a0} and {c0} are created in order to make the remainder of the +input script more readable. [Define a crystal at finite temperature accounting for thermal expansion] @@ -477,6 +516,225 @@ In order to give credit to Test developers, the number of times results from these programs are queried is tracked. No other information about the nature of the query or its source is recorded. +Accessing KIM Model Parameters from LAMMPS ({kim_param}) :h5 + +All IMs are functional forms containing a set of +parameters. The values of these parameters are typically +selected to best reproduce a training set of quantum mechanical +calculations or available experimental data. For example, a +Lennard-Jones potential intended to model argon might have the values of +its two parameters, epsilon and sigma, fit to the +dimer dissociation energy or thermodynamic properties at a critical point +of the phase diagram. + +Normally a user employing an IM should not modify its parameters since, +as noted above, these are selected to reproduce material properties. +However, there are cases where accessing and modifying IM parameters +is desired, such as for assessing uncertainty, fitting an IM, +or working with an ensemble of IMs. As explained "above"_#IM_types, +IMs archived in OpenKIM are either Portable Models (PMs) or +Simulator Models (SMs). KIM PMs are complete independent implementations +of an IM, whereas KIM SMs are wrappers to an IM implemented within LAMMPS. +Two different mechanisms are provided for accessing IM parameters in these +two cases: + +For a KIM PM, the {kim_param} command can be used to {get} and {set} the values of the PM's parameters as explained below. +For a KIM SM, the user should consult the documentation page for the specific IM and follow instructions there for how to modify its parameters (if possible). :ul + +The {kim_param get} and {kim_param set} commands provide an interface +to access and change the parameters of a KIM PM that "publishes" its +parameters and makes them publicly available (see the +"KIM API documentation"_https://kim-api.readthedocs.io/en/devel/features.html +for details). + +NOTE: The {kim_param get/set} commands must be preceded by {kim_init}. +The {kim_param set} command must additionally be preceded by a +{kim_interactions} command (or alternatively by a {pair_style kim} +and {pair_coeff} commands). The {kim_param set} command may be used wherever a {pair_coeff} command may occur. + +The syntax for the {kim_param} command is as follows: + +kim_param get param_name index_range variable formatarg +kim_param set param_name index_range values +:pre + +Here, {param_name} is the name of a KIM PM parameter (which is published +by the PM and available for access). The specific string used to identify +a parameter is defined by the PM. For example, for the +"Stillinger--Weber (SW) potential in OpenKIM"_https://openkim.org/id/SW_StillingerWeber_1985_Si__MO_405512056662_005, +the parameter names are {A, B, p, q, sigma, gamma, cutoff, lambda, costheta0}. + +NOTE: The list of all the parameters that a PM exposes for access/mutation are +automatically written to the lammps log file when {kim_init} is called. + +Each published parameter of a KIM PM takes the form of an array of +numerical values. The array can contain one element for a single-valued +parameter, or a set of values. For example, the +"multispecies SW potential for the Zn-Cd-Hg-S-Se-Te system"_https://openkim.org/id/SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 +has the same parameter names as the +"single-species SW potential"_https://openkim.org/id/SW_StillingerWeber_1985_Si__MO_405512056662_005, +but each parameter array contains 21 entries that correspond to the parameter +values used for each pairwise combination of the model's six supported species +(this model does not have parameters specific to individual ternary +combinations of its supported species). + +The {index_range} argument may either be an integer referring to +a specific element within the array associated with the parameter +specified by {param_name}, or a pair of integers separated by a colon +that refer to a slice of this array. In both cases, one-based indexing is +used to refer to the entries of the array. + +The result of a {get} operation for a specific {index_range} is stored in +one or more "LAMMPS string style variables"_variable.html as determined +by the optional {formatarg} argument "documented above."_#formatarg_options +If not specified, the default for {formatarg} is "explicit" for the +{kim_param} command. + +For the case where the result is an array with multiple values +(i.e. {index_range} contains a range), the optional "split" or "explicit" +{formatarg} keywords can be used to separate the results into multiple +variables; see the examples below. +Multiple parameters can be retrieved with a single call to {kim_param get} +by repeating the argument list following {get}. + +For a {set} operation, the {values} argument contains the new value(s) +for the element(s) of the parameter specified by {index_range}. For the case +where multiple values are being set, {values} contains a set of values +separated by spaces. Multiple parameters can be set with a single call to +{kim_param set} by repeating the argument list following {set}. + +{kim_param} Usage Examples and Further Clarifications :h5 + +Examples of getting and setting KIM PM parameters with further +clarifications are provided below. + +[Getting a scalar parameter] + +kim_init SW_StillingerWeber_1985_Si__MO_405512056662_005 metal +... +kim_param get A 1 VARA +:pre + +In this case, the value of the SW {A} parameter is retrieved and placed +in the LAMMPS variable {VARA}. The variable {VARA} can be used +in the remainder of the input script in the same manner as any other +LAMMPS variable. + +[Getting multiple scalar parameters with a single call] + +kim_init SW_StillingerWeber_1985_Si__MO_405512056662_005 metal +... +kim_param get A 1 VARA B 1 VARB +:pre + +This retrieves the {A} and {B} parameters of the SW potential and stores +them in the LAMMPS variables {VARA} and {VARB}. + +[Getting a range of values from a parameter] + +There are several options when getting a range of values from a parameter +determined by the {formatarg} argument. + +kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal +... +kim_param get lambda 7:9 LAM_TeTe LAM_TeZn LAM_TeSe +:pre + +In this case, {formatarg} is not specified and therefore the default +"explicit" mode is used. (The behavior would be the same if the word +{explicit} were added after {LAM_TeSe}.) Elements 7, 8 and 9 of parameter +lambda retrieved by the {get} operation are placed in the LAMMPS variables +{LAM_TeTe}, {LAM_TeZn} and {LAM_TeSe}, respectively. + +NOTE: In the above example, elements 7--9 of the lambda parameter correspond +to Te-Te, Te-Zm and Te-Se interactions. This can be determined by visiting +the "model page for the specified potential"_https://openkim.org/id/SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 +and looking at its parameter file linked to at the bottom of the page +(file with .param ending) and consulting the README documentation +provided with the driver for the PM being used. A link to the driver +is provided at the top of the model page. + +kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal +... +kim_param get lambda 15:17 LAMS list +variable LAM_VALUE index $\{LAMS\} +label loop_on_lambda +... +... do something with current value of lambda +... +next LAM_VALUE +jump SELF loop_on_lambda +:pre + +In this case, the "list" mode of {formatarg} is used. +The result of the {get} operation is stored in the LAMMPS variable +{LAMS} as a string containing the three retrieved values separated +by spaces, e.g "1.0 2.0 3.0". This can be used in LAMMPS with an +{index} variable to access the values one at a time within a loop +as shown in the example. At each iteration of the loop {LAM_VALUE} +contains the current value of lambda. + +kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal +... +kim_param get lambda 15:17 LAM split +:pre + +In this case, the "split" mode of {formatarg} is used. +The three values retrieved by the {get} operation are stored in +the three LAMMPS variables {LAM_15}, {LAM_16} and {LAM_17}. +The provided name "LAM" is used as prefix and the location in +the lambda array is appended to create the variable names. + +[Setting a scalar parameter] + +kim_init SW_StillingerWeber_1985_Si__MO_405512056662_005 metal +... +kim_interactions Si +kim_param set gamma 1 2.6 +:pre + +Here, the SW potential's gamma parameter is set to 2.6. Note that the {get} +and {set} commands work together, so that a {get} following a {set} +operation will return the new value that was set. For example: + +... +kim_interactions Si +kim_param get gamma 1 ORIG_GAMMA +kim_param set gamma 1 2.6 +kim_param get gamma 1 NEW_GAMMA +... +print "original gamma = $\{ORIG_GAMMA\}, new gamma = $\{NEW_GAMMA\}" +:pre + +Here, {ORIG_GAMMA} will contain the original gamma value for the SW +potential, while {NEW_GAMMA} will contain the value 2.6. + +[Setting multiple scalar parameters with a single call] + +kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal +... +kim_interactions Cd Te +variable VARG equal 2.6 +variable VARS equal 2.0951 +kim_param set gamma 1 $\{VARG\} sigma 3 $\{VARS\} +:pre + +In this case, the first element of the {gamma} parameter and +third element of the {sigma} parameter are set to 2.6 and 2.0951, +respectively. This example also shows how LAMMPS variables can +be used when setting parameters. + +[Setting a range of values of a parameter] + +kim_init SW_ZhouWardMartin_2013_CdTeZnSeHgS__MO_503261197030_002 metal +... +kim_interactions Cd Te Zn Se Hg S +kim_param set sigma 2:6 2.35214 2.23869 2.04516 2.43269 1.80415 +:pre + +In this case, elements 2 through 6 of the parameter {sigma} +are set to the values 2.35214, 2.23869, 2.04516, 2.43269 and 1.80415 in +order. Citation of OpenKIM IMs :h4 diff --git a/doc/src/kspace_modify.txt b/doc/txt/kspace_modify.txt similarity index 100% rename from doc/src/kspace_modify.txt rename to doc/txt/kspace_modify.txt diff --git a/doc/src/kspace_style.txt b/doc/txt/kspace_style.txt similarity index 100% rename from doc/src/kspace_style.txt rename to doc/txt/kspace_style.txt diff --git a/doc/src/label.txt b/doc/txt/label.txt similarity index 100% rename from doc/src/label.txt rename to doc/txt/label.txt diff --git a/doc/src/lammps.book b/doc/txt/lammps.book similarity index 100% rename from doc/src/lammps.book rename to doc/txt/lammps.book diff --git a/doc/src/lammps_commands.txt b/doc/txt/lammps_commands.txt similarity index 100% rename from doc/src/lammps_commands.txt rename to doc/txt/lammps_commands.txt diff --git a/doc/src/lammps_commands_angle.txt b/doc/txt/lammps_commands_angle.txt similarity index 100% rename from doc/src/lammps_commands_angle.txt rename to doc/txt/lammps_commands_angle.txt diff --git a/doc/src/lammps_commands_atc.txt b/doc/txt/lammps_commands_atc.txt similarity index 100% rename from doc/src/lammps_commands_atc.txt rename to doc/txt/lammps_commands_atc.txt diff --git a/doc/src/lammps_commands_bond.txt b/doc/txt/lammps_commands_bond.txt similarity index 100% rename from doc/src/lammps_commands_bond.txt rename to doc/txt/lammps_commands_bond.txt diff --git a/doc/src/lammps_commands_compute.txt b/doc/txt/lammps_commands_compute.txt similarity index 100% rename from doc/src/lammps_commands_compute.txt rename to doc/txt/lammps_commands_compute.txt diff --git a/doc/src/lammps_commands_dihedral.txt b/doc/txt/lammps_commands_dihedral.txt similarity index 100% rename from doc/src/lammps_commands_dihedral.txt rename to doc/txt/lammps_commands_dihedral.txt diff --git a/doc/src/lammps_commands_fix.txt b/doc/txt/lammps_commands_fix.txt similarity index 100% rename from doc/src/lammps_commands_fix.txt rename to doc/txt/lammps_commands_fix.txt diff --git a/doc/src/lammps_commands_improper.txt b/doc/txt/lammps_commands_improper.txt similarity index 100% rename from doc/src/lammps_commands_improper.txt rename to doc/txt/lammps_commands_improper.txt diff --git a/doc/src/lammps_commands_kspace.txt b/doc/txt/lammps_commands_kspace.txt similarity index 100% rename from doc/src/lammps_commands_kspace.txt rename to doc/txt/lammps_commands_kspace.txt diff --git a/doc/src/lammps_commands_pair.txt b/doc/txt/lammps_commands_pair.txt similarity index 100% rename from doc/src/lammps_commands_pair.txt rename to doc/txt/lammps_commands_pair.txt diff --git a/doc/src/lattice.txt b/doc/txt/lattice.txt similarity index 100% rename from doc/src/lattice.txt rename to doc/txt/lattice.txt diff --git a/doc/src/log.txt b/doc/txt/log.txt similarity index 100% rename from doc/src/log.txt rename to doc/txt/log.txt diff --git a/doc/src/mass.txt b/doc/txt/mass.txt similarity index 100% rename from doc/src/mass.txt rename to doc/txt/mass.txt diff --git a/doc/src/message.txt b/doc/txt/message.txt similarity index 100% rename from doc/src/message.txt rename to doc/txt/message.txt diff --git a/doc/src/min_modify.txt b/doc/txt/min_modify.txt similarity index 100% rename from doc/src/min_modify.txt rename to doc/txt/min_modify.txt diff --git a/doc/src/min_spin.txt b/doc/txt/min_spin.txt similarity index 100% rename from doc/src/min_spin.txt rename to doc/txt/min_spin.txt diff --git a/doc/src/min_style.txt b/doc/txt/min_style.txt similarity index 100% rename from doc/src/min_style.txt rename to doc/txt/min_style.txt diff --git a/doc/src/minimize.txt b/doc/txt/minimize.txt similarity index 100% rename from doc/src/minimize.txt rename to doc/txt/minimize.txt diff --git a/doc/src/molecule.txt b/doc/txt/molecule.txt similarity index 100% rename from doc/src/molecule.txt rename to doc/txt/molecule.txt diff --git a/doc/src/neb.txt b/doc/txt/neb.txt similarity index 100% rename from doc/src/neb.txt rename to doc/txt/neb.txt diff --git a/doc/src/neb_spin.txt b/doc/txt/neb_spin.txt similarity index 100% rename from doc/src/neb_spin.txt rename to doc/txt/neb_spin.txt diff --git a/doc/src/neigh_modify.txt b/doc/txt/neigh_modify.txt similarity index 100% rename from doc/src/neigh_modify.txt rename to doc/txt/neigh_modify.txt diff --git a/doc/src/neighbor.txt b/doc/txt/neighbor.txt similarity index 100% rename from doc/src/neighbor.txt rename to doc/txt/neighbor.txt diff --git a/doc/src/newton.txt b/doc/txt/newton.txt similarity index 100% rename from doc/src/newton.txt rename to doc/txt/newton.txt diff --git a/doc/src/next.txt b/doc/txt/next.txt similarity index 100% rename from doc/src/next.txt rename to doc/txt/next.txt diff --git a/doc/src/package.txt b/doc/txt/package.txt similarity index 100% rename from doc/src/package.txt rename to doc/txt/package.txt diff --git a/doc/src/pair_adp.txt b/doc/txt/pair_adp.txt similarity index 100% rename from doc/src/pair_adp.txt rename to doc/txt/pair_adp.txt diff --git a/doc/src/pair_agni.txt b/doc/txt/pair_agni.txt similarity index 100% rename from doc/src/pair_agni.txt rename to doc/txt/pair_agni.txt diff --git a/doc/src/pair_airebo.txt b/doc/txt/pair_airebo.txt similarity index 100% rename from doc/src/pair_airebo.txt rename to doc/txt/pair_airebo.txt diff --git a/doc/src/pair_atm.txt b/doc/txt/pair_atm.txt similarity index 100% rename from doc/src/pair_atm.txt rename to doc/txt/pair_atm.txt diff --git a/doc/src/pair_awpmd.txt b/doc/txt/pair_awpmd.txt similarity index 100% rename from doc/src/pair_awpmd.txt rename to doc/txt/pair_awpmd.txt diff --git a/doc/src/pair_beck.txt b/doc/txt/pair_beck.txt similarity index 100% rename from doc/src/pair_beck.txt rename to doc/txt/pair_beck.txt diff --git a/doc/src/pair_body_nparticle.txt b/doc/txt/pair_body_nparticle.txt similarity index 100% rename from doc/src/pair_body_nparticle.txt rename to doc/txt/pair_body_nparticle.txt diff --git a/doc/src/pair_body_rounded_polygon.txt b/doc/txt/pair_body_rounded_polygon.txt similarity index 100% rename from doc/src/pair_body_rounded_polygon.txt rename to doc/txt/pair_body_rounded_polygon.txt diff --git a/doc/src/pair_body_rounded_polyhedron.txt b/doc/txt/pair_body_rounded_polyhedron.txt similarity index 100% rename from doc/src/pair_body_rounded_polyhedron.txt rename to doc/txt/pair_body_rounded_polyhedron.txt diff --git a/doc/src/pair_bop.txt b/doc/txt/pair_bop.txt similarity index 100% rename from doc/src/pair_bop.txt rename to doc/txt/pair_bop.txt diff --git a/doc/src/pair_born.txt b/doc/txt/pair_born.txt similarity index 100% rename from doc/src/pair_born.txt rename to doc/txt/pair_born.txt diff --git a/doc/src/pair_brownian.txt b/doc/txt/pair_brownian.txt similarity index 100% rename from doc/src/pair_brownian.txt rename to doc/txt/pair_brownian.txt diff --git a/doc/src/pair_buck.txt b/doc/txt/pair_buck.txt similarity index 100% rename from doc/src/pair_buck.txt rename to doc/txt/pair_buck.txt diff --git a/doc/src/pair_buck6d_coul_gauss.txt b/doc/txt/pair_buck6d_coul_gauss.txt similarity index 100% rename from doc/src/pair_buck6d_coul_gauss.txt rename to doc/txt/pair_buck6d_coul_gauss.txt diff --git a/doc/src/pair_buck_long.txt b/doc/txt/pair_buck_long.txt similarity index 100% rename from doc/src/pair_buck_long.txt rename to doc/txt/pair_buck_long.txt diff --git a/doc/src/pair_charmm.txt b/doc/txt/pair_charmm.txt similarity index 100% rename from doc/src/pair_charmm.txt rename to doc/txt/pair_charmm.txt diff --git a/doc/src/pair_class2.txt b/doc/txt/pair_class2.txt similarity index 100% rename from doc/src/pair_class2.txt rename to doc/txt/pair_class2.txt diff --git a/doc/src/pair_coeff.txt b/doc/txt/pair_coeff.txt similarity index 100% rename from doc/src/pair_coeff.txt rename to doc/txt/pair_coeff.txt diff --git a/doc/src/pair_colloid.txt b/doc/txt/pair_colloid.txt similarity index 100% rename from doc/src/pair_colloid.txt rename to doc/txt/pair_colloid.txt diff --git a/doc/src/pair_comb.txt b/doc/txt/pair_comb.txt similarity index 100% rename from doc/src/pair_comb.txt rename to doc/txt/pair_comb.txt diff --git a/doc/src/pair_cosine_squared.txt b/doc/txt/pair_cosine_squared.txt similarity index 100% rename from doc/src/pair_cosine_squared.txt rename to doc/txt/pair_cosine_squared.txt diff --git a/doc/src/pair_coul.txt b/doc/txt/pair_coul.txt similarity index 100% rename from doc/src/pair_coul.txt rename to doc/txt/pair_coul.txt diff --git a/doc/src/pair_coul_diel.txt b/doc/txt/pair_coul_diel.txt similarity index 100% rename from doc/src/pair_coul_diel.txt rename to doc/txt/pair_coul_diel.txt diff --git a/doc/src/pair_coul_shield.txt b/doc/txt/pair_coul_shield.txt similarity index 100% rename from doc/src/pair_coul_shield.txt rename to doc/txt/pair_coul_shield.txt diff --git a/doc/src/pair_cs.txt b/doc/txt/pair_cs.txt similarity index 100% rename from doc/src/pair_cs.txt rename to doc/txt/pair_cs.txt diff --git a/doc/src/pair_dipole.txt b/doc/txt/pair_dipole.txt similarity index 100% rename from doc/src/pair_dipole.txt rename to doc/txt/pair_dipole.txt diff --git a/doc/src/pair_dpd.txt b/doc/txt/pair_dpd.txt similarity index 100% rename from doc/src/pair_dpd.txt rename to doc/txt/pair_dpd.txt diff --git a/doc/src/pair_dpd_fdt.txt b/doc/txt/pair_dpd_fdt.txt similarity index 100% rename from doc/src/pair_dpd_fdt.txt rename to doc/txt/pair_dpd_fdt.txt diff --git a/doc/src/pair_drip.txt b/doc/txt/pair_drip.txt similarity index 100% rename from doc/src/pair_drip.txt rename to doc/txt/pair_drip.txt diff --git a/doc/src/pair_dsmc.txt b/doc/txt/pair_dsmc.txt similarity index 100% rename from doc/src/pair_dsmc.txt rename to doc/txt/pair_dsmc.txt diff --git a/doc/src/pair_e3b.txt b/doc/txt/pair_e3b.txt similarity index 100% rename from doc/src/pair_e3b.txt rename to doc/txt/pair_e3b.txt diff --git a/doc/src/pair_eam.txt b/doc/txt/pair_eam.txt similarity index 100% rename from doc/src/pair_eam.txt rename to doc/txt/pair_eam.txt diff --git a/doc/src/pair_edip.txt b/doc/txt/pair_edip.txt similarity index 100% rename from doc/src/pair_edip.txt rename to doc/txt/pair_edip.txt diff --git a/doc/src/pair_eff.txt b/doc/txt/pair_eff.txt similarity index 100% rename from doc/src/pair_eff.txt rename to doc/txt/pair_eff.txt diff --git a/doc/src/pair_eim.txt b/doc/txt/pair_eim.txt similarity index 100% rename from doc/src/pair_eim.txt rename to doc/txt/pair_eim.txt diff --git a/doc/src/pair_exp6_rx.txt b/doc/txt/pair_exp6_rx.txt similarity index 100% rename from doc/src/pair_exp6_rx.txt rename to doc/txt/pair_exp6_rx.txt diff --git a/doc/src/pair_extep.txt b/doc/txt/pair_extep.txt similarity index 100% rename from doc/src/pair_extep.txt rename to doc/txt/pair_extep.txt diff --git a/doc/src/pair_fep_soft.txt b/doc/txt/pair_fep_soft.txt similarity index 100% rename from doc/src/pair_fep_soft.txt rename to doc/txt/pair_fep_soft.txt diff --git a/doc/src/pair_gauss.txt b/doc/txt/pair_gauss.txt similarity index 100% rename from doc/src/pair_gauss.txt rename to doc/txt/pair_gauss.txt diff --git a/doc/src/pair_gayberne.txt b/doc/txt/pair_gayberne.txt similarity index 100% rename from doc/src/pair_gayberne.txt rename to doc/txt/pair_gayberne.txt diff --git a/doc/src/pair_gran.txt b/doc/txt/pair_gran.txt similarity index 100% rename from doc/src/pair_gran.txt rename to doc/txt/pair_gran.txt diff --git a/doc/src/pair_granular.txt b/doc/txt/pair_granular.txt similarity index 100% rename from doc/src/pair_granular.txt rename to doc/txt/pair_granular.txt diff --git a/doc/src/pair_gromacs.txt b/doc/txt/pair_gromacs.txt similarity index 100% rename from doc/src/pair_gromacs.txt rename to doc/txt/pair_gromacs.txt diff --git a/doc/src/pair_gw.txt b/doc/txt/pair_gw.txt similarity index 100% rename from doc/src/pair_gw.txt rename to doc/txt/pair_gw.txt diff --git a/doc/src/pair_hbond_dreiding.txt b/doc/txt/pair_hbond_dreiding.txt similarity index 100% rename from doc/src/pair_hbond_dreiding.txt rename to doc/txt/pair_hbond_dreiding.txt diff --git a/doc/src/pair_hybrid.txt b/doc/txt/pair_hybrid.txt similarity index 100% rename from doc/src/pair_hybrid.txt rename to doc/txt/pair_hybrid.txt diff --git a/doc/src/pair_ilp_graphene_hbn.txt b/doc/txt/pair_ilp_graphene_hbn.txt similarity index 100% rename from doc/src/pair_ilp_graphene_hbn.txt rename to doc/txt/pair_ilp_graphene_hbn.txt diff --git a/doc/src/pair_kim.txt b/doc/txt/pair_kim.txt similarity index 100% rename from doc/src/pair_kim.txt rename to doc/txt/pair_kim.txt diff --git a/doc/src/pair_kolmogorov_crespi_full.txt b/doc/txt/pair_kolmogorov_crespi_full.txt similarity index 100% rename from doc/src/pair_kolmogorov_crespi_full.txt rename to doc/txt/pair_kolmogorov_crespi_full.txt diff --git a/doc/src/pair_kolmogorov_crespi_z.txt b/doc/txt/pair_kolmogorov_crespi_z.txt similarity index 100% rename from doc/src/pair_kolmogorov_crespi_z.txt rename to doc/txt/pair_kolmogorov_crespi_z.txt diff --git a/doc/src/pair_lcbop.txt b/doc/txt/pair_lcbop.txt similarity index 100% rename from doc/src/pair_lcbop.txt rename to doc/txt/pair_lcbop.txt diff --git a/doc/src/pair_lebedeva_z.txt b/doc/txt/pair_lebedeva_z.txt similarity index 100% rename from doc/src/pair_lebedeva_z.txt rename to doc/txt/pair_lebedeva_z.txt diff --git a/doc/src/pair_line_lj.txt b/doc/txt/pair_line_lj.txt similarity index 100% rename from doc/src/pair_line_lj.txt rename to doc/txt/pair_line_lj.txt diff --git a/doc/src/pair_list.txt b/doc/txt/pair_list.txt similarity index 100% rename from doc/src/pair_list.txt rename to doc/txt/pair_list.txt diff --git a/doc/src/pair_lj.txt b/doc/txt/pair_lj.txt similarity index 100% rename from doc/src/pair_lj.txt rename to doc/txt/pair_lj.txt diff --git a/doc/src/pair_lj96.txt b/doc/txt/pair_lj96.txt similarity index 100% rename from doc/src/pair_lj96.txt rename to doc/txt/pair_lj96.txt diff --git a/doc/src/pair_lj_cubic.txt b/doc/txt/pair_lj_cubic.txt similarity index 100% rename from doc/src/pair_lj_cubic.txt rename to doc/txt/pair_lj_cubic.txt diff --git a/doc/src/pair_lj_expand.txt b/doc/txt/pair_lj_expand.txt similarity index 100% rename from doc/src/pair_lj_expand.txt rename to doc/txt/pair_lj_expand.txt diff --git a/doc/src/pair_lj_long.txt b/doc/txt/pair_lj_long.txt similarity index 100% rename from doc/src/pair_lj_long.txt rename to doc/txt/pair_lj_long.txt diff --git a/doc/src/pair_lj_smooth.txt b/doc/txt/pair_lj_smooth.txt similarity index 100% rename from doc/src/pair_lj_smooth.txt rename to doc/txt/pair_lj_smooth.txt diff --git a/doc/src/pair_lj_smooth_linear.txt b/doc/txt/pair_lj_smooth_linear.txt similarity index 100% rename from doc/src/pair_lj_smooth_linear.txt rename to doc/txt/pair_lj_smooth_linear.txt diff --git a/doc/src/pair_lj_switch3_coulgauss.txt b/doc/txt/pair_lj_switch3_coulgauss.txt similarity index 100% rename from doc/src/pair_lj_switch3_coulgauss.txt rename to doc/txt/pair_lj_switch3_coulgauss.txt diff --git a/doc/src/pair_local_density.txt b/doc/txt/pair_local_density.txt similarity index 100% rename from doc/src/pair_local_density.txt rename to doc/txt/pair_local_density.txt diff --git a/doc/src/pair_lubricate.txt b/doc/txt/pair_lubricate.txt similarity index 100% rename from doc/src/pair_lubricate.txt rename to doc/txt/pair_lubricate.txt diff --git a/doc/src/pair_lubricateU.txt b/doc/txt/pair_lubricateU.txt similarity index 100% rename from doc/src/pair_lubricateU.txt rename to doc/txt/pair_lubricateU.txt diff --git a/doc/src/pair_mdf.txt b/doc/txt/pair_mdf.txt similarity index 100% rename from doc/src/pair_mdf.txt rename to doc/txt/pair_mdf.txt diff --git a/doc/src/pair_meam_spline.txt b/doc/txt/pair_meam_spline.txt similarity index 100% rename from doc/src/pair_meam_spline.txt rename to doc/txt/pair_meam_spline.txt diff --git a/doc/src/pair_meam_sw_spline.txt b/doc/txt/pair_meam_sw_spline.txt similarity index 100% rename from doc/src/pair_meam_sw_spline.txt rename to doc/txt/pair_meam_sw_spline.txt diff --git a/doc/src/pair_meamc.txt b/doc/txt/pair_meamc.txt similarity index 100% rename from doc/src/pair_meamc.txt rename to doc/txt/pair_meamc.txt diff --git a/doc/src/pair_meso.txt b/doc/txt/pair_meso.txt similarity index 100% rename from doc/src/pair_meso.txt rename to doc/txt/pair_meso.txt diff --git a/doc/src/pair_mgpt.txt b/doc/txt/pair_mgpt.txt similarity index 100% rename from doc/src/pair_mgpt.txt rename to doc/txt/pair_mgpt.txt diff --git a/doc/src/pair_mie.txt b/doc/txt/pair_mie.txt similarity index 100% rename from doc/src/pair_mie.txt rename to doc/txt/pair_mie.txt diff --git a/doc/src/pair_mm3_switch3_coulgauss.txt b/doc/txt/pair_mm3_switch3_coulgauss.txt similarity index 100% rename from doc/src/pair_mm3_switch3_coulgauss.txt rename to doc/txt/pair_mm3_switch3_coulgauss.txt diff --git a/doc/src/pair_modify.txt b/doc/txt/pair_modify.txt similarity index 100% rename from doc/src/pair_modify.txt rename to doc/txt/pair_modify.txt diff --git a/doc/src/pair_momb.txt b/doc/txt/pair_momb.txt similarity index 100% rename from doc/src/pair_momb.txt rename to doc/txt/pair_momb.txt diff --git a/doc/src/pair_morse.txt b/doc/txt/pair_morse.txt similarity index 100% rename from doc/src/pair_morse.txt rename to doc/txt/pair_morse.txt diff --git a/doc/src/pair_multi_lucy.txt b/doc/txt/pair_multi_lucy.txt similarity index 100% rename from doc/src/pair_multi_lucy.txt rename to doc/txt/pair_multi_lucy.txt diff --git a/doc/src/pair_multi_lucy_rx.txt b/doc/txt/pair_multi_lucy_rx.txt similarity index 100% rename from doc/src/pair_multi_lucy_rx.txt rename to doc/txt/pair_multi_lucy_rx.txt diff --git a/doc/src/pair_nb3b_harmonic.txt b/doc/txt/pair_nb3b_harmonic.txt similarity index 100% rename from doc/src/pair_nb3b_harmonic.txt rename to doc/txt/pair_nb3b_harmonic.txt diff --git a/doc/src/pair_nm.txt b/doc/txt/pair_nm.txt similarity index 100% rename from doc/src/pair_nm.txt rename to doc/txt/pair_nm.txt diff --git a/doc/src/pair_none.txt b/doc/txt/pair_none.txt similarity index 100% rename from doc/src/pair_none.txt rename to doc/txt/pair_none.txt diff --git a/doc/src/pair_oxdna.txt b/doc/txt/pair_oxdna.txt similarity index 100% rename from doc/src/pair_oxdna.txt rename to doc/txt/pair_oxdna.txt diff --git a/doc/src/pair_oxdna2.txt b/doc/txt/pair_oxdna2.txt similarity index 100% rename from doc/src/pair_oxdna2.txt rename to doc/txt/pair_oxdna2.txt diff --git a/doc/src/pair_peri.txt b/doc/txt/pair_peri.txt similarity index 100% rename from doc/src/pair_peri.txt rename to doc/txt/pair_peri.txt diff --git a/doc/src/pair_polymorphic.txt b/doc/txt/pair_polymorphic.txt similarity index 100% rename from doc/src/pair_polymorphic.txt rename to doc/txt/pair_polymorphic.txt diff --git a/doc/src/pair_python.txt b/doc/txt/pair_python.txt similarity index 100% rename from doc/src/pair_python.txt rename to doc/txt/pair_python.txt diff --git a/doc/src/pair_quip.txt b/doc/txt/pair_quip.txt similarity index 100% rename from doc/src/pair_quip.txt rename to doc/txt/pair_quip.txt diff --git a/doc/src/pair_reaxc.txt b/doc/txt/pair_reaxc.txt similarity index 100% rename from doc/src/pair_reaxc.txt rename to doc/txt/pair_reaxc.txt diff --git a/doc/src/pair_resquared.txt b/doc/txt/pair_resquared.txt similarity index 100% rename from doc/src/pair_resquared.txt rename to doc/txt/pair_resquared.txt diff --git a/doc/src/pair_sdk.txt b/doc/txt/pair_sdk.txt similarity index 100% rename from doc/src/pair_sdk.txt rename to doc/txt/pair_sdk.txt diff --git a/doc/src/pair_sdpd_taitwater_isothermal.txt b/doc/txt/pair_sdpd_taitwater_isothermal.txt similarity index 100% rename from doc/src/pair_sdpd_taitwater_isothermal.txt rename to doc/txt/pair_sdpd_taitwater_isothermal.txt diff --git a/doc/src/pair_smd_hertz.txt b/doc/txt/pair_smd_hertz.txt similarity index 100% rename from doc/src/pair_smd_hertz.txt rename to doc/txt/pair_smd_hertz.txt diff --git a/doc/src/pair_smd_tlsph.txt b/doc/txt/pair_smd_tlsph.txt similarity index 100% rename from doc/src/pair_smd_tlsph.txt rename to doc/txt/pair_smd_tlsph.txt diff --git a/doc/src/pair_smd_triangulated_surface.txt b/doc/txt/pair_smd_triangulated_surface.txt similarity index 100% rename from doc/src/pair_smd_triangulated_surface.txt rename to doc/txt/pair_smd_triangulated_surface.txt diff --git a/doc/src/pair_smd_ulsph.txt b/doc/txt/pair_smd_ulsph.txt similarity index 100% rename from doc/src/pair_smd_ulsph.txt rename to doc/txt/pair_smd_ulsph.txt diff --git a/doc/src/pair_smtbq.txt b/doc/txt/pair_smtbq.txt similarity index 100% rename from doc/src/pair_smtbq.txt rename to doc/txt/pair_smtbq.txt diff --git a/doc/src/pair_snap.txt b/doc/txt/pair_snap.txt similarity index 100% rename from doc/src/pair_snap.txt rename to doc/txt/pair_snap.txt diff --git a/doc/src/pair_soft.txt b/doc/txt/pair_soft.txt similarity index 100% rename from doc/src/pair_soft.txt rename to doc/txt/pair_soft.txt diff --git a/doc/src/pair_sph_heatconduction.txt b/doc/txt/pair_sph_heatconduction.txt similarity index 100% rename from doc/src/pair_sph_heatconduction.txt rename to doc/txt/pair_sph_heatconduction.txt diff --git a/doc/src/pair_sph_idealgas.txt b/doc/txt/pair_sph_idealgas.txt similarity index 100% rename from doc/src/pair_sph_idealgas.txt rename to doc/txt/pair_sph_idealgas.txt diff --git a/doc/src/pair_sph_lj.txt b/doc/txt/pair_sph_lj.txt similarity index 100% rename from doc/src/pair_sph_lj.txt rename to doc/txt/pair_sph_lj.txt diff --git a/doc/src/pair_sph_rhosum.txt b/doc/txt/pair_sph_rhosum.txt similarity index 100% rename from doc/src/pair_sph_rhosum.txt rename to doc/txt/pair_sph_rhosum.txt diff --git a/doc/src/pair_sph_taitwater.txt b/doc/txt/pair_sph_taitwater.txt similarity index 100% rename from doc/src/pair_sph_taitwater.txt rename to doc/txt/pair_sph_taitwater.txt diff --git a/doc/src/pair_sph_taitwater_morris.txt b/doc/txt/pair_sph_taitwater_morris.txt similarity index 100% rename from doc/src/pair_sph_taitwater_morris.txt rename to doc/txt/pair_sph_taitwater_morris.txt diff --git a/doc/src/pair_spin_dipole.txt b/doc/txt/pair_spin_dipole.txt similarity index 100% rename from doc/src/pair_spin_dipole.txt rename to doc/txt/pair_spin_dipole.txt diff --git a/doc/src/pair_spin_dmi.txt b/doc/txt/pair_spin_dmi.txt similarity index 100% rename from doc/src/pair_spin_dmi.txt rename to doc/txt/pair_spin_dmi.txt diff --git a/doc/src/pair_spin_exchange.txt b/doc/txt/pair_spin_exchange.txt similarity index 100% rename from doc/src/pair_spin_exchange.txt rename to doc/txt/pair_spin_exchange.txt diff --git a/doc/src/pair_spin_magelec.txt b/doc/txt/pair_spin_magelec.txt similarity index 100% rename from doc/src/pair_spin_magelec.txt rename to doc/txt/pair_spin_magelec.txt diff --git a/doc/src/pair_spin_neel.txt b/doc/txt/pair_spin_neel.txt similarity index 100% rename from doc/src/pair_spin_neel.txt rename to doc/txt/pair_spin_neel.txt diff --git a/doc/src/pair_srp.txt b/doc/txt/pair_srp.txt similarity index 100% rename from doc/src/pair_srp.txt rename to doc/txt/pair_srp.txt diff --git a/doc/src/pair_style.txt b/doc/txt/pair_style.txt similarity index 100% rename from doc/src/pair_style.txt rename to doc/txt/pair_style.txt diff --git a/doc/src/pair_sw.txt b/doc/txt/pair_sw.txt similarity index 100% rename from doc/src/pair_sw.txt rename to doc/txt/pair_sw.txt diff --git a/doc/src/pair_table.txt b/doc/txt/pair_table.txt similarity index 100% rename from doc/src/pair_table.txt rename to doc/txt/pair_table.txt diff --git a/doc/src/pair_table_rx.txt b/doc/txt/pair_table_rx.txt similarity index 100% rename from doc/src/pair_table_rx.txt rename to doc/txt/pair_table_rx.txt diff --git a/doc/src/pair_tersoff.txt b/doc/txt/pair_tersoff.txt similarity index 100% rename from doc/src/pair_tersoff.txt rename to doc/txt/pair_tersoff.txt diff --git a/doc/src/pair_tersoff_mod.txt b/doc/txt/pair_tersoff_mod.txt similarity index 100% rename from doc/src/pair_tersoff_mod.txt rename to doc/txt/pair_tersoff_mod.txt diff --git a/doc/src/pair_tersoff_zbl.txt b/doc/txt/pair_tersoff_zbl.txt similarity index 100% rename from doc/src/pair_tersoff_zbl.txt rename to doc/txt/pair_tersoff_zbl.txt diff --git a/doc/src/pair_thole.txt b/doc/txt/pair_thole.txt similarity index 100% rename from doc/src/pair_thole.txt rename to doc/txt/pair_thole.txt diff --git a/doc/src/pair_tri_lj.txt b/doc/txt/pair_tri_lj.txt similarity index 100% rename from doc/src/pair_tri_lj.txt rename to doc/txt/pair_tri_lj.txt diff --git a/doc/src/pair_ufm.txt b/doc/txt/pair_ufm.txt similarity index 100% rename from doc/src/pair_ufm.txt rename to doc/txt/pair_ufm.txt diff --git a/doc/src/pair_vashishta.txt b/doc/txt/pair_vashishta.txt similarity index 100% rename from doc/src/pair_vashishta.txt rename to doc/txt/pair_vashishta.txt diff --git a/doc/src/pair_write.txt b/doc/txt/pair_write.txt similarity index 100% rename from doc/src/pair_write.txt rename to doc/txt/pair_write.txt diff --git a/doc/src/pair_yukawa.txt b/doc/txt/pair_yukawa.txt similarity index 100% rename from doc/src/pair_yukawa.txt rename to doc/txt/pair_yukawa.txt diff --git a/doc/src/pair_yukawa_colloid.txt b/doc/txt/pair_yukawa_colloid.txt similarity index 100% rename from doc/src/pair_yukawa_colloid.txt rename to doc/txt/pair_yukawa_colloid.txt diff --git a/doc/src/pair_zbl.txt b/doc/txt/pair_zbl.txt similarity index 100% rename from doc/src/pair_zbl.txt rename to doc/txt/pair_zbl.txt diff --git a/doc/src/pair_zero.txt b/doc/txt/pair_zero.txt similarity index 100% rename from doc/src/pair_zero.txt rename to doc/txt/pair_zero.txt diff --git a/doc/src/partition.txt b/doc/txt/partition.txt similarity index 100% rename from doc/src/partition.txt rename to doc/txt/partition.txt diff --git a/doc/src/prd.txt b/doc/txt/prd.txt similarity index 100% rename from doc/src/prd.txt rename to doc/txt/prd.txt diff --git a/doc/src/print.txt b/doc/txt/print.txt similarity index 100% rename from doc/src/print.txt rename to doc/txt/print.txt diff --git a/doc/src/processors.txt b/doc/txt/processors.txt similarity index 100% rename from doc/src/processors.txt rename to doc/txt/processors.txt diff --git a/doc/src/python.txt b/doc/txt/python.txt similarity index 100% rename from doc/src/python.txt rename to doc/txt/python.txt diff --git a/doc/src/quit.txt b/doc/txt/quit.txt similarity index 100% rename from doc/src/quit.txt rename to doc/txt/quit.txt diff --git a/doc/src/read_data.txt b/doc/txt/read_data.txt similarity index 100% rename from doc/src/read_data.txt rename to doc/txt/read_data.txt diff --git a/doc/src/read_dump.txt b/doc/txt/read_dump.txt similarity index 100% rename from doc/src/read_dump.txt rename to doc/txt/read_dump.txt diff --git a/doc/src/read_restart.txt b/doc/txt/read_restart.txt similarity index 100% rename from doc/src/read_restart.txt rename to doc/txt/read_restart.txt diff --git a/doc/src/region.txt b/doc/txt/region.txt similarity index 100% rename from doc/src/region.txt rename to doc/txt/region.txt diff --git a/doc/src/replicate.txt b/doc/txt/replicate.txt similarity index 100% rename from doc/src/replicate.txt rename to doc/txt/replicate.txt diff --git a/doc/src/rerun.txt b/doc/txt/rerun.txt similarity index 100% rename from doc/src/rerun.txt rename to doc/txt/rerun.txt diff --git a/doc/src/reset_ids.txt b/doc/txt/reset_ids.txt similarity index 100% rename from doc/src/reset_ids.txt rename to doc/txt/reset_ids.txt diff --git a/doc/src/reset_timestep.txt b/doc/txt/reset_timestep.txt similarity index 100% rename from doc/src/reset_timestep.txt rename to doc/txt/reset_timestep.txt diff --git a/doc/src/restart.txt b/doc/txt/restart.txt similarity index 100% rename from doc/src/restart.txt rename to doc/txt/restart.txt diff --git a/doc/src/run.txt b/doc/txt/run.txt similarity index 100% rename from doc/src/run.txt rename to doc/txt/run.txt diff --git a/doc/src/run_style.txt b/doc/txt/run_style.txt similarity index 100% rename from doc/src/run_style.txt rename to doc/txt/run_style.txt diff --git a/doc/src/server.txt b/doc/txt/server.txt similarity index 100% rename from doc/src/server.txt rename to doc/txt/server.txt diff --git a/doc/src/server_mc.txt b/doc/txt/server_mc.txt similarity index 100% rename from doc/src/server_mc.txt rename to doc/txt/server_mc.txt diff --git a/doc/src/server_md.txt b/doc/txt/server_md.txt similarity index 100% rename from doc/src/server_md.txt rename to doc/txt/server_md.txt diff --git a/doc/src/set.txt b/doc/txt/set.txt similarity index 100% rename from doc/src/set.txt rename to doc/txt/set.txt diff --git a/doc/src/shell.txt b/doc/txt/shell.txt similarity index 100% rename from doc/src/shell.txt rename to doc/txt/shell.txt diff --git a/doc/src/special_bonds.txt b/doc/txt/special_bonds.txt similarity index 100% rename from doc/src/special_bonds.txt rename to doc/txt/special_bonds.txt diff --git a/doc/src/suffix.txt b/doc/txt/suffix.txt similarity index 100% rename from doc/src/suffix.txt rename to doc/txt/suffix.txt diff --git a/doc/src/tad.txt b/doc/txt/tad.txt similarity index 100% rename from doc/src/tad.txt rename to doc/txt/tad.txt diff --git a/doc/src/temper.txt b/doc/txt/temper.txt similarity index 100% rename from doc/src/temper.txt rename to doc/txt/temper.txt diff --git a/doc/src/temper_grem.txt b/doc/txt/temper_grem.txt similarity index 100% rename from doc/src/temper_grem.txt rename to doc/txt/temper_grem.txt diff --git a/doc/src/temper_npt.txt b/doc/txt/temper_npt.txt similarity index 100% rename from doc/src/temper_npt.txt rename to doc/txt/temper_npt.txt diff --git a/doc/src/thermo.txt b/doc/txt/thermo.txt similarity index 100% rename from doc/src/thermo.txt rename to doc/txt/thermo.txt diff --git a/doc/src/thermo_modify.txt b/doc/txt/thermo_modify.txt similarity index 100% rename from doc/src/thermo_modify.txt rename to doc/txt/thermo_modify.txt diff --git a/doc/src/thermo_style.txt b/doc/txt/thermo_style.txt similarity index 100% rename from doc/src/thermo_style.txt rename to doc/txt/thermo_style.txt diff --git a/doc/src/third_order.txt b/doc/txt/third_order.txt similarity index 100% rename from doc/src/third_order.txt rename to doc/txt/third_order.txt diff --git a/doc/src/timer.txt b/doc/txt/timer.txt similarity index 100% rename from doc/src/timer.txt rename to doc/txt/timer.txt diff --git a/doc/src/timestep.txt b/doc/txt/timestep.txt similarity index 100% rename from doc/src/timestep.txt rename to doc/txt/timestep.txt diff --git a/doc/src/uncompute.txt b/doc/txt/uncompute.txt similarity index 100% rename from doc/src/uncompute.txt rename to doc/txt/uncompute.txt diff --git a/doc/src/undump.txt b/doc/txt/undump.txt similarity index 100% rename from doc/src/undump.txt rename to doc/txt/undump.txt diff --git a/doc/src/unfix.txt b/doc/txt/unfix.txt similarity index 100% rename from doc/src/unfix.txt rename to doc/txt/unfix.txt diff --git a/doc/src/units.txt b/doc/txt/units.txt similarity index 100% rename from doc/src/units.txt rename to doc/txt/units.txt diff --git a/doc/src/variable.txt b/doc/txt/variable.txt similarity index 100% rename from doc/src/variable.txt rename to doc/txt/variable.txt diff --git a/doc/src/velocity.txt b/doc/txt/velocity.txt similarity index 100% rename from doc/src/velocity.txt rename to doc/txt/velocity.txt diff --git a/doc/src/write_coeff.txt b/doc/txt/write_coeff.txt similarity index 100% rename from doc/src/write_coeff.txt rename to doc/txt/write_coeff.txt diff --git a/doc/src/write_data.txt b/doc/txt/write_data.txt similarity index 100% rename from doc/src/write_data.txt rename to doc/txt/write_data.txt diff --git a/doc/src/write_dump.txt b/doc/txt/write_dump.txt similarity index 100% rename from doc/src/write_dump.txt rename to doc/txt/write_dump.txt diff --git a/doc/src/write_restart.txt b/doc/txt/write_restart.txt similarity index 100% rename from doc/src/write_restart.txt rename to doc/txt/write_restart.txt diff --git a/doc/utils/converters/lammpsdoc/eqImg2mathjaxInline.py b/doc/utils/converters/lammpsdoc/eqImg2mathjaxInline.py new file mode 100644 index 0000000000000000000000000000000000000000..353eed8b6e197f7519bbbe8f90d405d87708f766 --- /dev/null +++ b/doc/utils/converters/lammpsdoc/eqImg2mathjaxInline.py @@ -0,0 +1,255 @@ +#! /usr/bin/env python3 +# LAMMPS Documentation Utilities +# +# Scan for duplicate anchor labels in documentation files +# +# Copyright (C) 2019 E. Anne Gunn +# Based largely on doc_anchor_check.py by Richard Berger +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +import argparse +import os +import re +import shutil +import sys + + +# We only want to replace image lines where image is +# pulled from Eqs subfolder +image_pattern = re.compile(r'.*image:: Eqs/(.*)\.jpg') +tex_eq_pattern = re.compile(r'\$\$') +latex_begin_eq_pattern = re.compile(r'\\begin{equation}') +latex_end_eq_pattern = re.compile(r'\\end{equation}') +latex_begin_eqArray_pattern = re.compile(r'\\begin{eqnarray\*}') +latex_end_eqArray_pattern = re.compile(r'\\end{eqnarray\*}') + +imageMarker = ">>>image was here" +image_marker_pattern = re.compile(r'>>>image was here') +align_pattern = re.compile(r'.*:align: center') + +modifiedRstFolder = "src/modifiedRst/" +safeRstFolder = "src/safeRst/" +# Since this is a proof of concept implementation, +# skip any rst files that are known to cause problems +skipFileList = ["pair_tersoff_zbl.rst"] + +runReport = { +} + + +def checkForEquationStart(texLine): + eqType = None + texMatch = tex_eq_pattern.match(texLine) + if texMatch: + eqType = "texMatch" + else: + eqMatch = latex_begin_eq_pattern.match(texLine) + if eqMatch: + eqType = "eqMatch" + else: + eqArrayMatch = latex_begin_eqArray_pattern.match(texLine) + if eqArrayMatch: + eqType = "eqArrayMatch" + return eqType + + +def checkForEquationEnd(texLine, eqType): + endPattern = tex_eq_pattern + if eqType == "texMatch": + endPattern = tex_eq_pattern + elif eqType == "eqMatch": + endPattern = latex_end_eq_pattern + elif eqType == "eqArrayMatch": + endPattern = latex_end_eqArray_pattern + else: + print("***error: unexpected eqType %s, will look for tex delimiter" % eqType) + + endMatch = endPattern.match(texLine) + endFound = endMatch is not None + if endFound: + print("found pattern end, line: %s" % texLine) + return endFound + + +def startMathjax(): + mathjaxLines = [] + mathjaxLines.append(".. math::\n\n") + return mathjaxLines + + +def endMathjax(mathjaxLines): + mathjaxLines.append("\n") + mathjaxLines.append("%s\n" % imageMarker) + return mathjaxLines + + +def processFile(filename): + print("in processFile for filename: %s" % filename) + imageCount = 0 + + modifiedFileLines = [] + doWriteModifiedFile = False + with open(filename, 'rt') as f: + for line_number, line in enumerate(f): + m = image_pattern.match(line) + if m: + fileroot = m.group(1) + print("fileroot: {0}".format(fileroot)) + imageCount += 1 + texFilename = "src/Eqs/{0}.tex".format(fileroot) + print("will try to open %s" % texFilename) + eqType = None + eqLines = [] + try: + with open(texFilename, 'rt', encoding='utf-8') as t: + print("%s file opened ok" % texFilename) + eqLines = startMathjax() + try: + for dummy, texLine in enumerate(t): + #print(texLine) + if eqType == None: + eqType = checkForEquationStart(texLine) + if eqType != None: + print("equation type: {0}".format(eqType)) + else: + endFound = checkForEquationEnd(texLine, eqType) + if endFound != True: + eqLines.append(texLine) + else: + eqType = None + eqLines = endMathjax(eqLines) + print("Equation lines will be:") + print("-----------------------------") + print(*eqLines, sep="\n") + print("-----------------------------") + except UnicodeDecodeError: + print("UnicodeDecodeError reading file file %s, image markup will be left in place" % texFilename) + break + except EnvironmentError: + error = "could not open source tex file {0}, line: {1}".format(texFilename, line) + print(error) + print("image markup will be left in place") + if filename not in runReport: + runReport[filename] = [] + runReport[filename].append(error) + # put the image line we could not replace back into the output + eqLines.append(line) + if len(eqLines) > 0: + modifiedFileLines.extend(eqLines) + doWriteModifiedFile = True + eqLines = [] + else: + # not an equation line, so simply queue it up for output as is + modifiedFileLines.append(line) + if doWriteModifiedFile: + # We're going to write out a modified file, so first copy the original rst + # file into the original file folder. + nameParts = filename.split("/") + filenamePos = len(nameParts) - 1 + safeFilePath = "{0}{1}".format(safeRstFolder, nameParts[filenamePos]) + shutil.copyfile(filename, safeFilePath) + + print("modifiedFileLines has %d lines before align center cleanup" % len(modifiedFileLines)) + # First, go through the file and pull out the lines where there is + # now an image file marker followed by an align center directive + deleteLines = [] + for lineNumber, line in enumerate(modifiedFileLines): + m = image_marker_pattern.match(line) + if m: + print("found image marker in line %d" % lineNumber) + n = align_pattern.match(modifiedFileLines[lineNumber+1]) + if n: + print("found align center") + deleteLines.append(lineNumber) + deleteLines.append(lineNumber+1) + #When deleting, always work from the back of the list to the front + for lineNumber in reversed(deleteLines): + print(lineNumber) + del modifiedFileLines[lineNumber] + print("modifiedFileLines has %d lines after align center cleanup" % len(modifiedFileLines)) + # Now we can actually write out the new contents + try: + modFilePath = "{0}{1}".format(modifiedRstFolder, nameParts[filenamePos]) + modRst = open(modFilePath, "w") + for rstLine in modifiedFileLines: + modRst.write(rstLine) + modRst.close() + except OSError: + print('Error: Creating directory. ' + modifiedRstFolder) + return imageCount + + +def main(): + fileCount = 0 + totalImageCount = 0 + + parser = argparse.ArgumentParser(description='replace image markup in rst files with inline mathjax markup from .txt source of images') + parser.add_argument('files', metavar='file', nargs='+', help='one or more files to scan') + parsed_args = parser.parse_args() + print(parsed_args) + + if not os.path.exists(safeRstFolder): + os.makedirs(safeRstFolder) + if not os.path.exists(modifiedRstFolder): + os.makedirs(modifiedRstFolder) + + # Because we may decide to add files to the skip list between runs, + # if we have more than one file to process, + # files from both original and modified folders + # zombie modifications + if len(parsed_args.files) > 1: + for outputFile in os.listdir(modifiedRstFolder): + filePath = os.path.join(modifiedRstFolder, outputFile) + try: + if os.path.isfile(filePath): + os.unlink(filePath) + except Exception as e: + print(e) + sys.exit(1) + for safeFile in os.listdir(safeRstFolder): + filePath = os.path.join(safeRstFolder, safeFile) + try: + if os.path.isfile(filePath): + os.unlink(filePath) + except Exception as e: + print(e) + sys.exit(1) + + for filename in parsed_args.files: + print("filename: %s" % filename) + doSkip = False + for skipName in skipFileList: + if filename.find(skipName) != -1: + print("skipping file: %s" % filename) + doSkip = True + runReport[filename] = ["skipped based on skipFileList"] + break + if not doSkip: + fileCount += 1 + ic = processFile(filename) + totalImageCount += ic + + print("============================================") + print("Processed %d rst files." % fileCount) + print("Found %d image lines." % totalImageCount) + + for fileKey in runReport: + print("--------------------------------------------") + print("run report for %s:" % fileKey) + print(*runReport[fileKey], sep="\n") + + print("============================================") + +if __name__ == "__main__": + main() diff --git a/doc/utils/converters/lammpsdoc/rst_anchor_check.py b/doc/utils/converters/lammpsdoc/rst_anchor_check.py new file mode 100644 index 0000000000000000000000000000000000000000..9c097e7d0e596187da3449843b46fb6bb0efbec5 --- /dev/null +++ b/doc/utils/converters/lammpsdoc/rst_anchor_check.py @@ -0,0 +1,64 @@ +#! /usr/bin/env python3 +# LAMMPS Documentation Utilities +# +# Scan for duplicate anchor labels in documentation files +# +# Copyright (C) 2017 Richard Berger +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . +import re +import sys +import argparse + +def main(): + parser = argparse.ArgumentParser(description='scan for duplicate anchor labels in documentation files') + parser.add_argument('files', metavar='file', nargs='+', help='one or more files to scan') + parsed_args = parser.parse_args() + + anchor_pattern = re.compile(r'^\.\. _(.*):$') + anchors = {} + + for filename in parsed_args.files: + #print("filename: %s" % filename) + with open(filename, 'rt') as f: + for line_number, line in enumerate(f): + m = anchor_pattern.match(line) + if m: + label = m.group(1) + #print("found label: %s" % label) + if label in anchors: + anchors[label].append((filename, line_number+1)) + else: + anchors[label] = [(filename, line_number+1)] + + print("found %d anchor labels" % len(anchors)) + + count = 0 + + for label in sorted(anchors.keys()): + if len(anchors[label]) > 1: + print(label) + count += 1 + for filename, line_number in anchors[label]: + print(" - %s:%d" % (filename, line_number)) + + + if count > 0: + print("Found %d anchor label errors." % count) + sys.exit(1) + else: + print("No anchor label errors.") + +if __name__ == "__main__": + main() diff --git a/doc/utils/converters/setup.py b/doc/utils/converters/setup.py index f4656a7f697cc6e0dd7235ac873b2201a0d299d2..d85669bcc1097c41d1fc5084d2f80d2e689249e8 100644 --- a/doc/utils/converters/setup.py +++ b/doc/utils/converters/setup.py @@ -13,6 +13,6 @@ setup(name='LAMMPS Documentation Utilities', entry_points = { "console_scripts": ['txt2html = lammpsdoc.txt2html:main', 'txt2rst = lammpsdoc.txt2rst:main', - 'doc_anchor_check = lammpsdoc.doc_anchor_check:main '] + 'rst_anchor_check = lammpsdoc.rst_anchor_check:main '] }, ) diff --git a/doc/utils/sphinx-config/false_positives.txt b/doc/utils/sphinx-config/false_positives.txt index 4028750fb55210c7b4d11cc36a92954703bdb1c0..c9396984f697c89bf3c78db7a94c915491f0b9e1 100644 --- a/doc/utils/sphinx-config/false_positives.txt +++ b/doc/utils/sphinx-config/false_positives.txt @@ -3157,3 +3157,4 @@ zx zy Zybin zz +Zm diff --git a/src/BODY/body_rounded_polygon.cpp b/src/BODY/body_rounded_polygon.cpp index d60372781a3a0e70061873f60654e43f3f77e2b7..d855c5aea76b0439b04a1accfd7ff76ff041b415 100644 --- a/src/BODY/body_rounded_polygon.cpp +++ b/src/BODY/body_rounded_polygon.cpp @@ -116,7 +116,7 @@ double BodyRoundedPolygon::enclosing_radius(struct AtomVecBody::Bonus *bonus) { int nvertices = bonus->ivalue[0]; if (nvertices == 1 || nvertices == 2) - return *(bonus->dvalue+3*nsub(bonus)+2); + return *(bonus->dvalue+3*nsub(bonus)+2); return *(bonus->dvalue + 3*nsub(bonus) + 2*nsub(bonus)); } @@ -126,7 +126,7 @@ double BodyRoundedPolygon::rounded_radius(struct AtomVecBody::Bonus *bonus) { int nvertices = bonus->ivalue[0]; if (nvertices == 1 || nvertices == 2) - return *(bonus->dvalue+3*nsub(bonus)+2+1); + return *(bonus->dvalue+3*nsub(bonus)+2+1); return *(bonus->dvalue + 3*nsub(bonus) + 2*nsub(bonus)+1); } @@ -156,7 +156,7 @@ int BodyRoundedPolygon::unpack_border_body(AtomVecBody::Bonus *bonus, ------------------------------------------------------------------------- */ void BodyRoundedPolygon::data_body(int ibonus, int ninteger, int ndouble, - int *ifile, double *dfile) + int *ifile, double *dfile) { AtomVecBody::Bonus *bonus = &avec->bonus[ibonus]; @@ -327,7 +327,7 @@ void BodyRoundedPolygon::data_body(int ibonus, int ninteger, int ndouble, ------------------------------------------------------------------------- */ double BodyRoundedPolygon::radius_body(int /*ninteger*/, int ndouble, - int *ifile, double *dfile) + int *ifile, double *dfile) { int nsub = ifile[0]; if (nsub < 1) diff --git a/src/BODY/body_rounded_polyhedron.cpp b/src/BODY/body_rounded_polyhedron.cpp index 49ec6f1d78dc0171ab7f88b64ab5af305e75455f..a82404ab15433e67e9892db00832cfdf1c85e1ac 100644 --- a/src/BODY/body_rounded_polyhedron.cpp +++ b/src/BODY/body_rounded_polyhedron.cpp @@ -134,7 +134,7 @@ double BodyRoundedPolyhedron::enclosing_radius(struct AtomVecBody::Bonus *bonus) { int nvertices = bonus->ivalue[0]; if (nvertices == 1 || nvertices == 2) - return *(bonus->dvalue+3*nsub(bonus)+2); + return *(bonus->dvalue+3*nsub(bonus)+2); return *(bonus->dvalue+3*nsub(bonus) + 2*nedges(bonus) + MAX_FACE_SIZE*nfaces(bonus)); } @@ -385,7 +385,7 @@ void BodyRoundedPolyhedron::data_body(int ibonus, int ninteger, int ndouble, ------------------------------------------------------------------------- */ double BodyRoundedPolyhedron::radius_body(int /*ninteger*/, int ndouble, - int *ifile, double *dfile) + int *ifile, double *dfile) { int nsub = ifile[0]; int ned = ifile[1]; diff --git a/src/CLASS2/pair_lj_class2.cpp b/src/CLASS2/pair_lj_class2.cpp index 641ca67226161e9670330539affc7ef5889fdfab..c9301738646cafe13c8cad08a463846fe957dc25 100644 --- a/src/CLASS2/pair_lj_class2.cpp +++ b/src/CLASS2/pair_lj_class2.cpp @@ -188,8 +188,8 @@ void PairLJClass2::compute_inner() if (rsq < cut_out_off_sq) { r2inv = 1.0/rsq; - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; r6inv = r3inv*r3inv; jtype = type[j]; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); @@ -268,8 +268,8 @@ void PairLJClass2::compute_middle() if (rsq < cut_out_off_sq && rsq > cut_in_off_sq) { r2inv = 1.0/rsq; - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; r6inv = r3inv*r3inv; jtype = type[j]; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); @@ -352,8 +352,8 @@ void PairLJClass2::compute_outer(int eflag, int vflag) if (rsq < cutsq[itype][jtype]) { if (rsq > cut_in_off_sq) { r2inv = 1.0/rsq; - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; r6inv = r3inv*r3inv; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); fpair = factor_lj*forcelj*r2inv; @@ -374,8 +374,8 @@ void PairLJClass2::compute_outer(int eflag, int vflag) if (eflag) { r2inv = 1.0/rsq; - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; r6inv = r3inv*r3inv; evdwl = r6inv*(lj3[itype][jtype]*r3inv-lj4[itype][jtype]) - offset[itype][jtype]; @@ -385,8 +385,8 @@ void PairLJClass2::compute_outer(int eflag, int vflag) if (vflag) { if (rsq <= cut_in_off_sq) { r2inv = 1.0/rsq; - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; r6inv = r3inv*r3inv; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); fpair = factor_lj*forcelj*r2inv; diff --git a/src/CLASS2/pair_lj_class2_coul_long.cpp b/src/CLASS2/pair_lj_class2_coul_long.cpp index 5487878f2713f3866c3b752b9f4520263cab0359..1544232e4917afac7751a1c0e154f707a06dbb55 100644 --- a/src/CLASS2/pair_lj_class2_coul_long.cpp +++ b/src/CLASS2/pair_lj_class2_coul_long.cpp @@ -262,8 +262,8 @@ void PairLJClass2CoulLong::compute_inner() jtype = type[j]; if (rsq < cut_ljsq[itype][jtype]) { - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; r6inv = r3inv*r3inv; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); } else forcelj = 0.0; @@ -354,8 +354,8 @@ void PairLJClass2CoulLong::compute_middle() jtype = type[j]; if (rsq < cut_ljsq[itype][jtype]) { - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; r6inv = r3inv*r3inv; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); } else forcelj = 0.0; @@ -487,9 +487,9 @@ void PairLJClass2CoulLong::compute_outer(int eflag, int vflag) } else forcecoul = 0.0; if (rsq < cut_ljsq[itype][jtype] && rsq > cut_in_off_sq) { - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; - r6inv = r3inv*r3inv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; + r6inv = r3inv*r3inv; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); if (rsq < cut_in_on_sq) { rsw = (sqrt(rsq) - cut_in_off)/cut_in_diff; @@ -525,9 +525,9 @@ void PairLJClass2CoulLong::compute_outer(int eflag, int vflag) } else ecoul = 0.0; if (rsq < cut_ljsq[itype][jtype]) { - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; - r6inv = r3inv*r3inv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; + r6inv = r3inv*r3inv; evdwl = r6inv*(lj3[itype][jtype]*r3inv-lj4[itype][jtype]) - offset[itype][jtype]; evdwl *= factor_lj; @@ -552,13 +552,13 @@ void PairLJClass2CoulLong::compute_outer(int eflag, int vflag) if (rsq <= cut_in_off_sq) { rinv = sqrt(r2inv); - r3inv = r2inv*rinv; - r6inv = r3inv*r3inv; + r3inv = r2inv*rinv; + r6inv = r3inv*r3inv; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); } else if (rsq <= cut_in_on_sq) { - rinv = sqrt(r2inv); - r3inv = r2inv*rinv; - r6inv = r3inv*r3inv; + rinv = sqrt(r2inv); + r3inv = r2inv*rinv; + r6inv = r3inv*r3inv; forcelj = r6inv * (lj1[itype][jtype]*r3inv - lj2[itype][jtype]); } fpair = (forcecoul + factor_lj*forcelj) * r2inv; @@ -664,33 +664,33 @@ void PairLJClass2CoulLong::init_style() if (!atom->q_flag) error->all(FLERR, "Pair style lj/class2/coul/long requires atom attribute q"); - + // request regular or rRESPA neighbor list - + int irequest; int respa = 0; - + if (update->whichflag == 1 && strstr(update->integrate_style,"respa")) { if (((Respa *) update->integrate)->level_inner >= 0) respa = 1; - if (((Respa *) update->integrate)->level_middle >= 0) respa = 2; + if (((Respa *) update->integrate)->level_middle >= 0) respa = 2; } - + irequest = neighbor->request(this,instance_me); - + if (respa >= 1) { neighbor->requests[irequest]->respaouter = 1; - neighbor->requests[irequest]->respainner = 1; + neighbor->requests[irequest]->respainner = 1; } if (respa == 2) neighbor->requests[irequest]->respamiddle = 1; cut_coulsq = cut_coul * cut_coul; - + // set rRESPA cutoffs - + if (strstr(update->integrate_style,"respa") && ((Respa *) update->integrate)->level_inner >= 0) cut_respa = ((Respa *) update->integrate)->cutoff; - else cut_respa = NULL; + else cut_respa = NULL; // insure use of KSpace long-range solver, set g_ewald @@ -739,9 +739,9 @@ double PairLJClass2CoulLong::init_one(int i, int j) lj3[j][i] = lj3[i][j]; lj4[j][i] = lj4[i][j]; offset[j][i] = offset[i][j]; - + // check interior rRESPA cutoff - + if (cut_respa && MIN(cut_lj[i][j],cut_coul) < cut_respa[3]) error->all(FLERR,"Pair cutoff < Respa interior cutoff"); diff --git a/src/CLASS2/pair_lj_class2_coul_long.h b/src/CLASS2/pair_lj_class2_coul_long.h index 50d70925413b31469eb22516abd2498caa8913d8..7b683822957c6900836c26f05846315b85607776 100644 --- a/src/CLASS2/pair_lj_class2_coul_long.h +++ b/src/CLASS2/pair_lj_class2_coul_long.h @@ -40,7 +40,7 @@ class PairLJClass2CoulLong : public Pair { void write_data(FILE *); void write_data_all(FILE *); double single(int, int, int, int, double, double, double, double &); - + void compute_inner(); void compute_middle(); void compute_outer(int, int); diff --git a/src/KIM/kim_init.cpp b/src/KIM/kim_init.cpp index a4272caa012592526b902b110f76185cb7d867a7..1d3830c275e87e79c5db4d7e0635ad659e130fed 100644 --- a/src/KIM/kim_init.cpp +++ b/src/KIM/kim_init.cpp @@ -13,8 +13,9 @@ /* ---------------------------------------------------------------------- Contributing authors: Axel Kohlmeyer (Temple U), - Ryan S. Elliott (UMN) - Ellad B. Tadmor (UMN) + Ryan S. Elliott (UMN), + Ellad B. Tadmor (UMN), + Yaser Afshar (UMN) ------------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- @@ -77,6 +78,14 @@ extern "C" { #include "KIM_SimulatorHeaders.h" } +#ifdef SNUM +#undef SNUM +#endif + +#define SNUM(x) \ + static_cast(std::ostringstream() \ + << std::dec << x).str() + using namespace LAMMPS_NS; /* ---------------------------------------------------------------------- */ @@ -98,11 +107,13 @@ void KimInit::command(int narg, char **arg) } else unit_conversion_mode = false; char *model_units; - determine_model_type_and_units(model_name, user_units, &model_units); + KIM_Model *pkim = NULL; + + determine_model_type_and_units(model_name, user_units, &model_units, pkim); write_log_cite(model_name); - do_init(model_name, user_units, model_units); + do_init(model_name, user_units, model_units, pkim); } @@ -156,7 +167,8 @@ void get_kim_unit_names( } // namespace void KimInit::determine_model_type_and_units(char * model_name, char * user_units, - char ** model_units) + char ** model_units, + KIM_Model *&pkim) { KIM_LengthUnit lengthUnit; KIM_EnergyUnit energyUnit; @@ -183,7 +195,6 @@ void KimInit::determine_model_type_and_units(char * model_name, { get_kim_unit_names(user_units, lengthUnit, energyUnit, chargeUnit, temperatureUnit, timeUnit, error); - KIM_Model * kim_MO; int kim_error = KIM_Model_Create(KIM_NUMBERING_zeroBased, lengthUnit, energyUnit, @@ -192,19 +203,19 @@ void KimInit::determine_model_type_and_units(char * model_name, timeUnit, model_name, &units_accepted, - &kim_MO); + &pkim); if (kim_error) error->all(FLERR,"Unable to load KIM Simulator Model."); model_type = MO; - KIM_Model_Destroy(&kim_MO); if (units_accepted) { *model_units = new char[strlen(user_units)+1]; strcpy(*model_units,user_units); return; } else if (unit_conversion_mode) { + KIM_Model_Destroy(&pkim); int const num_systems = 5; char const * const systems[num_systems] = {"metal", "real", "si", "cgs", "electron"}; @@ -219,15 +230,17 @@ void KimInit::determine_model_type_and_units(char * model_name, timeUnit, model_name, &units_accepted, - &kim_MO); - KIM_Model_Destroy(&kim_MO); + &pkim); if (units_accepted) { *model_units = new char[strlen(systems[i])+1]; strcpy(*model_units,systems[i]); return; } - } error->all(FLERR,"KIM Model does not support any lammps unit system"); + KIM_Model_Destroy(&pkim); + } + error->all(FLERR,"KIM Model does not support any lammps unit system"); } else { + KIM_Model_Destroy(&pkim); error->all(FLERR,"KIM Model does not support the requested unit system"); } } @@ -270,7 +283,7 @@ void KimInit::determine_model_type_and_units(char * model_name, /* ---------------------------------------------------------------------- */ -void KimInit::do_init(char *model_name, char *user_units, char *model_units) +void KimInit::do_init(char *model_name, char *user_units, char *model_units, KIM_Model *&pkim) { // create storage proxy fix. delete existing fix, if needed. @@ -358,6 +371,68 @@ void KimInit::do_init(char *model_name, char *user_units, char *model_units) // reset template map. KIM_SimulatorModel_OpenAndInitializeTemplateMap(simulatorModel); } + else if (model_type == MO) + { + int numberOfParameters; + KIM_Model_GetNumberOfParameters(pkim, &numberOfParameters); + + std::string mesg = "\nThis model has "; + if (numberOfParameters) + { + KIM_DataType kim_DataType; + int extent; + char const *str_name = NULL; + char const *str_desc = NULL; + + mesg += SNUM(numberOfParameters); + mesg += " mutable parameters. \n"; + + int max_len(0); + for (int i = 0; i < numberOfParameters; ++i) + { + KIM_Model_GetParameterMetadata(pkim, i, &kim_DataType, + &extent, &str_name, &str_desc); + max_len = MAX(max_len, strlen(str_name)); + } + ++max_len; + mesg += "No. | Parameter name "; + for (int i = 18; i < max_len; ++i) + mesg += " "; + mesg += "| data type | extent\n"; + for (int i = 0; i < 8 + MAX(18, max_len); ++i) + mesg += "-"; + mesg += "-----------------------\n"; + for (int i = 0; i < numberOfParameters; ++i) + { + KIM_Model_GetParameterMetadata(pkim, i, &kim_DataType, + &extent, &str_name, &str_desc); + mesg += SNUM(i+1); + for (int j = SNUM(i+1).size(); j < 8; ++j) + mesg += " "; + mesg += "| "; + mesg += str_name; + for (int j = strlen(str_name) + 1; j < MAX(18, strlen(str_name) + 1); ++j) + mesg += " "; + mesg += "| \""; + mesg += KIM_DataType_ToString(kim_DataType); + if (KIM_DataType_Equal(kim_DataType, KIM_DATA_TYPE_Integer)) + mesg += "\" | "; + else + mesg += "\" | "; + mesg += SNUM(extent); + mesg += "\n"; + } + } + else + mesg += "No mutable parameters. \n"; + + KIM_Model_Destroy(&pkim); + + if (comm->me == 0) + { + input->write_echo(mesg.c_str()); + } + } // End output to log file kim_init_log_delimiter("end"); @@ -366,7 +441,7 @@ void KimInit::do_init(char *model_name, char *user_units, char *model_units) /* ---------------------------------------------------------------------- */ -void KimInit::kim_init_log_delimiter(std::string const begin_end) const +void KimInit::kim_init_log_delimiter(std::string const &begin_end) const { if (comm->me == 0) { std::string mesg; @@ -506,3 +581,5 @@ void KimInit::write_log_cite(char * model_name) KIM_Collections_Destroy(&coll); } + +#undef SNUM diff --git a/src/KIM/kim_init.h b/src/KIM/kim_init.h index 2b5dc520c78d679fb5526ea1c125a7c960144de0..62c404212bd1690aa034d664fe9f67336b5c6786 100644 --- a/src/KIM/kim_init.h +++ b/src/KIM/kim_init.h @@ -13,8 +13,9 @@ /* ---------------------------------------------------------------------- Contributing authors: Axel Kohlmeyer (Temple U), - Ryan S. Elliott (UMN) - Ellad B. Tadmor (UMN) + Ryan S. Elliott (UMN), + Ellad B. Tadmor (UMN), + Yaser Afshar (UMN) ------------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- @@ -67,6 +68,9 @@ CommandStyle(kim_init,KimInit) #include "pointers.h" #include +// Forward declaration. +class KIM_Model; + namespace LAMMPS_NS { class KimInit : protected Pointers { @@ -78,11 +82,11 @@ class KimInit : protected Pointers { model_type_enum model_type; bool unit_conversion_mode; - void determine_model_type_and_units(char *, char *, char **); + void determine_model_type_and_units(char *, char *, char **, KIM_Model *&); void write_log_cite(char *); - void do_init(char *, char *, char *); + void do_init(char *, char *, char *, KIM_Model *&); void do_variables(char*, char*); - void kim_init_log_delimiter(std::string const begin_end) const; + void kim_init_log_delimiter(std::string const &begin_end) const; }; } diff --git a/src/KIM/kim_param.cpp b/src/KIM/kim_param.cpp new file mode 100644 index 0000000000000000000000000000000000000000..f5a154f2d99a9da1d3cf6e8919b650ed2ec5db09 --- /dev/null +++ b/src/KIM/kim_param.cpp @@ -0,0 +1,569 @@ +/* ---------------------------------------------------------------------- + LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator + http://lammps.sandia.gov, Sandia National Laboratories + Steve Plimpton, sjplimp@sandia.gov + + Copyright (2003) Sandia Corporation. Under the terms of Contract + DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains + certain rights in this software. This software is distributed under + the GNU General Public License. + + See the README file in the top-level LAMMPS directory. +------------------------------------------------------------------------- */ + +/* ---------------------------------------------------------------------- + Contributing authors: Yaser Afshar (UMN), + Ryan S. Elliott (UMN), + Ellad B. Tadmor (UMN) +------------------------------------------------------------------------- */ + +/* ---------------------------------------------------------------------- + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + more details. + + You should have received a copy of the GNU General Public License along with + this program; if not, see . + + Linking LAMMPS statically or dynamically with other modules is making a + combined work based on LAMMPS. Thus, the terms and conditions of the GNU + General Public License cover the whole combination. + + In addition, as a special exception, the copyright holders of LAMMPS give + you permission to combine LAMMPS with free software programs or libraries + that are released under the GNU LGPL and with code included in the standard + release of the "kim-api" under the CDDL (or modified versions of such code, + with unchanged license). You may copy and distribute such a system following + the terms of the GNU GPL for LAMMPS and the licenses of the other code + concerned, provided that you include the source code of that other code + when and as the GNU GPL requires distribution of source code. + + Note that people who make modified versions of LAMMPS are not obligated to + grant this special exception for their modified versions; it is their choice + whether to do so. The GNU General Public License gives permission to release + a modified version without this exception; this exception also makes it + possible to release a modified version which carries forward this exception. +------------------------------------------------------------------------- */ + +/* ---------------------------------------------------------------------- + Designed for use with the kim-api-2.1.0 (and newer) package +------------------------------------------------------------------------- */ + +#include "kim_param.h" +#include +#include +#include +#include +#include "comm.h" +#include "error.h" +#include "input.h" +#include "modify.h" +#include "variable.h" +#include "force.h" +#include "fix_store_kim.h" +#include "pair_kim.h" + +extern "C" +{ +#include "KIM_SimulatorHeaders.h" +} + +#ifdef SNUM +#undef SNUM +#endif + +#define SNUM(x) \ + static_cast(std::ostringstream() \ + << std::dec << x).str() + +using namespace LAMMPS_NS; + +/* ---------------------------------------------------------------------- */ + +namespace +{ +void get_kim_unit_names( + char const *const system, + KIM_LengthUnit &lengthUnit, + KIM_EnergyUnit &energyUnit, + KIM_ChargeUnit &chargeUnit, + KIM_TemperatureUnit &temperatureUnit, + KIM_TimeUnit &timeUnit, + Error *error) +{ + if ((strcmp(system, "real") == 0)) { + lengthUnit = KIM_LENGTH_UNIT_A; + energyUnit = KIM_ENERGY_UNIT_kcal_mol; + chargeUnit = KIM_CHARGE_UNIT_e; + temperatureUnit = KIM_TEMPERATURE_UNIT_K; + timeUnit = KIM_TIME_UNIT_fs; + } else if ((strcmp(system, "metal") == 0)) { + lengthUnit = KIM_LENGTH_UNIT_A; + energyUnit = KIM_ENERGY_UNIT_eV; + chargeUnit = KIM_CHARGE_UNIT_e; + temperatureUnit = KIM_TEMPERATURE_UNIT_K; + timeUnit = KIM_TIME_UNIT_ps; + } else if ((strcmp(system, "si") == 0)) { + lengthUnit = KIM_LENGTH_UNIT_m; + energyUnit = KIM_ENERGY_UNIT_J; + chargeUnit = KIM_CHARGE_UNIT_C; + temperatureUnit = KIM_TEMPERATURE_UNIT_K; + timeUnit = KIM_TIME_UNIT_s; + } else if ((strcmp(system, "cgs") == 0)) { + lengthUnit = KIM_LENGTH_UNIT_cm; + energyUnit = KIM_ENERGY_UNIT_erg; + chargeUnit = KIM_CHARGE_UNIT_statC; + temperatureUnit = KIM_TEMPERATURE_UNIT_K; + timeUnit = KIM_TIME_UNIT_s; + } else if ((strcmp(system, "electron") == 0)) { + lengthUnit = KIM_LENGTH_UNIT_Bohr; + energyUnit = KIM_ENERGY_UNIT_Hartree; + chargeUnit = KIM_CHARGE_UNIT_e; + temperatureUnit = KIM_TEMPERATURE_UNIT_K; + timeUnit = KIM_TIME_UNIT_fs; + } else if ((strcmp(system, "lj") == 0)) { + error->all(FLERR, "LAMMPS unit_style lj not supported by KIM models"); + } else + error->all(FLERR, "Unknown unit_style"); +} +} // namespace + +/* ---------------------------------------------------------------------- */ + +KimParam::KimParam(LAMMPS *lmp) : Pointers(lmp) {} + +KimParam::~KimParam() {} + +void KimParam::command(int narg, char **arg) +{ + // kim_param is a command for + // getting/setting the value of a %KIM PM parameter + // + // kim_param get param_name index_range variables formatarg + // kim_param set param_name index_range values + + // kim_param get paramname 1 varname + // kim_param get paramname index_range varname_1, ..., varname_N + // kim_param get paramname index_range varname_base split + // kim_param get paramname index_range varname_base list + // kim_param set paramname index_range values + + if (narg < 4) + error->all(FLERR, "Illegal kim_param command"); + + kim_param_get = (strcmp(arg[0], "get") == 0); + kim_param_set = (strcmp(arg[0], "set") == 0); + + if (!kim_param_get && !kim_param_set) { + std::string msg("Incorrect arguments in kim_param command.\n"); + msg += "'kim_param get/set' is mandatory."; + error->all(FLERR, msg.c_str()); + } + + // Check if we called a kim_init command + // by finding fix STORE/KIM + // retrieve model name and model units. + + char *model_name; + char *model_units; + + bool isPortableModel(false); + + int const ifix = modify->find_fix("KIM_MODEL_STORE"); + if (ifix >= 0) { + FixStoreKIM *fix_store = reinterpret_cast(modify->fix[ifix]); + + KIM_SimulatorModel *simulatorModel = + reinterpret_cast( + fix_store->getptr("simulator_model")); + + isPortableModel = simulatorModel ? false : true; + if (!isPortableModel) + error->all(FLERR, "kim_param can only be used with a KIM Portable Model"); + + model_name = (char *)fix_store->getptr("model_name"); + model_units = (char *)fix_store->getptr("model_units"); + } + else + error->all(FLERR, "Must use 'kim_init' before 'kim_param'"); + + kim_param_log_delimiter("begin"); + + KIM_Model *pkim = NULL; + + std::string atom_type_list; + + int kim_error; + + bool isPairStyleAssigned = force->pair ? true : false; + if (isPairStyleAssigned) { + Pair *pair = force->pair_match("kim", 1, 0); + if (pair) { + PairKIM *pairKIM = reinterpret_cast(pair); + + pkim = pairKIM->get_KIM_Model(); + if (!pkim) + error->all(FLERR, "Unable to get the KIM Portable Model."); + + if (kim_param_set) { + atom_type_list = pairKIM->get_atom_type_list(); + if (atom_type_list.empty()) + error->all(FLERR, "The requested atom type list is empty."); + } + } else + error->all(FLERR, "Pair style is defined," + " but there is no match for kim style in lammps."); + } else { + if (kim_param_set) { + std::string msg("Wrong kim_param set command.\n"); + msg += "To set the new parameter values, pair style must be assigned.\n"; + msg += "Must use 'kim_interactions' or"; + msg += "'pair_style kim ' before 'kim_param set'"; + error->all(FLERR, msg.c_str()); + } else { + KIM_LengthUnit lengthUnit; + KIM_EnergyUnit energyUnit; + KIM_ChargeUnit chargeUnit; + KIM_TemperatureUnit temperatureUnit; + KIM_TimeUnit timeUnit; + + get_kim_unit_names(model_units, lengthUnit, energyUnit, + chargeUnit, temperatureUnit, timeUnit, + error); + + int units_accepted; + + kim_error = KIM_Model_Create(KIM_NUMBERING_zeroBased, + lengthUnit, + energyUnit, + chargeUnit, + temperatureUnit, + timeUnit, + model_name, + &units_accepted, + &pkim); + if (kim_error) + error->all(FLERR, "Unable to create KIM Portable Model."); + } + } + + // Get the number of mutable parameters in the kim model + int numberOfParameters(0); + + KIM_Model_GetNumberOfParameters(pkim, &numberOfParameters); + if (numberOfParameters) { + // Get the parameters + if (kim_param_get) { + // Parameter name + char *paramname = NULL; + // Variable name + char *varname = NULL; + + // Loop over all the arguments + for (int i = 1; i < narg;) { + // Parameter name + if (i < narg) + paramname = arg[i++]; + else + break; + + // Find the requested parameter within the model parameters + int param_index; + KIM_DataType kim_DataType; + int extent; + char const *str_name = NULL; + char const *str_desc = NULL; + + for (param_index = 0; param_index < numberOfParameters; ++param_index) { + kim_error = KIM_Model_GetParameterMetadata(pkim, param_index, + &kim_DataType, &extent, + &str_name, &str_desc); + if (kim_error) + error->all(FLERR, "KIM GetParameterMetadata returned error."); + + if (strcmp(paramname, str_name) == 0) + break; + } + + if (param_index >= numberOfParameters) { + std::string msg("Wrong argument in kim_param get command.\n"); + msg += "This Model does not have the requested '"; + msg += paramname; + msg += "' parameter."; + error->all(FLERR, msg.c_str()); + } + + // Get the index_range for the requested parameter + int nlbound(0); + int nubound(0); + + if (i < narg) { + std::string argtostr(arg[i++]); + + // Check to see if the indices range contains + // only integer numbers and/or range : + if (argtostr.find_first_not_of("0123456789:") != std::string::npos) { + std::string msg("Illegal index_range.\n"); + msg += "Expected integer parameter(s) instead of '"; + msg += argtostr; + msg += "' in index_range."; + error->all(FLERR, msg.c_str()); + } + + std::string::size_type npos = argtostr.find(':'); + if (npos != std::string::npos) { + argtostr[npos] = ' '; + std::stringstream str(argtostr); + str >> nlbound >> nubound; + if (nubound < 1 || nubound > extent || + nlbound < 1 || nlbound > nubound) { + std::string msg("Illegal index_range '"); + msg += SNUM(nlbound) + "-" + SNUM(nubound); + msg += "' for '"; + msg += paramname; + msg += "' parameter with extent of '"; + msg += SNUM(extent); + msg += "' ."; + error->all(FLERR, msg.c_str()); + } + } else { + std::stringstream str(argtostr); + str >> nlbound; + if (nlbound < 1 || nlbound > extent) { + std::string msg("Illegal index '"); + msg += SNUM(nlbound) + "' for parameter '"; + msg += paramname; + msg += "' with the extent of '"; + msg += SNUM(extent); + msg += "' ."; + error->all(FLERR, msg.c_str()); + } + nubound = nlbound; + } + } else { + std::string msg("Wrong number of arguments in "); + msg += "kim_param get command.\n"; + msg += "Index range after parameter name is mandatory."; + error->all(FLERR, msg.c_str()); + } + + int const nvars = nubound - nlbound + 1; + char **varsname = NULL; + + if (i < narg) { + // Get the variable/variable_base name + varname = arg[i++]; + } else { + std::string msg("Wrong number of arguments in "); + msg += "kim_param get command.\n"; + msg += "The LAMMPS variable name is mandatory."; + error->all(FLERR, msg.c_str()); + } + + // indicator flag for list request + bool list_requested(false); + + if (nvars > 1) { + if (i < narg) { + if (strcmp(arg[i], "split") == 0) { + varsname = new char *[nvars]; + for (int j = 0, k = nlbound; j < nvars; ++j, ++k) { + std::stringstream str; + str << varname << "_" << k; + varsname[j] = const_cast(str.str().c_str()); + } + } else if (strcmp(arg[i], "list") == 0) { + list_requested = true; + varsname = new char *[1]; + varsname[0] = varname; + // Default explicit (optional) formatarg + } else if (i - 1 + nvars < narg) { + varsname = new char *[nvars]; + --i; + for (int j = 0; j < nvars; ++j, ++i) + varsname[j] = arg[i]; + if (i < narg) { + if (strcmp(arg[i], "explicit") == 0) + ++i; + } + } else { + std::string msg("Wrong number of arguments in "); + msg += "kim_param get command.\n"; + msg += "The LAMMPS '"; + msg += SNUM(nvars); + msg += "' variable names or '"; + msg += varname; + msg += " split' is mandatory."; + error->all(FLERR, msg.c_str()); + } + } else { + std::string msg("Wrong number of arguments in "); + msg += "kim_param get command.\n"; + msg += "The LAMMPS '"; + msg += SNUM(nvars); + msg += "' variable names or '"; + msg += varname; + msg += " split/list' is mandatory."; + error->all(FLERR, msg.c_str()); + } + } else { + varsname = new char *[1]; + if (i < narg) + { + if (strcmp(arg[i], "split") == 0) + { + std::stringstream str; + str << varname << "_" << nlbound; + varsname[0] = const_cast(str.str().c_str()); + ++i; + } else { + if ((strcmp(arg[i], "list") == 0) || + (strcmp(arg[i], "explicit") == 0)) + ++i; + varsname[0] = varname; + } + } else { + varsname[0] = varname; + } + } + + char **varcmd = new char *[3]; + varcmd[1] = const_cast("string"); + + if (KIM_DataType_Equal(kim_DataType, KIM_DATA_TYPE_Double)) { + if (list_requested) { + std::stringstream str; + double V; + { + kim_error = KIM_Model_GetParameterDouble(pkim, param_index, + nlbound - 1, &V); + if (kim_error) + error->all(FLERR, "KIM GetParameterDouble returned error."); + str << V; + } + for (int j = 1; j < nvars; ++j) { + kim_error = KIM_Model_GetParameterDouble(pkim, param_index, + nlbound - 1 + j, &V); + if (kim_error) + error->all(FLERR, "KIM GetParameterDouble returned error."); + str << " " << V; + } + varcmd[0] = varsname[0]; + varcmd[2] = const_cast(str.str().c_str()); + input->variable->set(3, varcmd); + echo_var_assign(varcmd[0], varcmd[2]); + } else { + for (int j = 0; j < nvars; ++j) { + varcmd[0] = varsname[j]; + double V; + kim_error = KIM_Model_GetParameterDouble(pkim, param_index, + nlbound - 1 + j, &V); + if (kim_error) + error->all(FLERR, "KIM GetParameterDouble returned error."); + std::stringstream str; + str << V; + varcmd[2] = const_cast(str.str().c_str()); + input->variable->set(3, varcmd); + echo_var_assign(varcmd[0], varcmd[2]); + } + } + } else if (KIM_DataType_Equal(kim_DataType, KIM_DATA_TYPE_Integer)) { + if (list_requested) { + std::stringstream str; + int V; + { + kim_error = KIM_Model_GetParameterInteger(pkim, param_index, + nlbound - 1, &V); + if (kim_error) + error->all(FLERR, "KIM GetParameterInteger returned error."); + str << V; + } + for (int j = 1; j < nvars; ++j) { + kim_error = KIM_Model_GetParameterInteger(pkim, param_index, + nlbound - 1 + j, &V); + if (kim_error) + error->all(FLERR, "KIM GetParameterInteger returned error."); + str << " " << V; + } + varcmd[0] = varsname[0]; + varcmd[2] = const_cast(str.str().c_str()); + input->variable->set(3, varcmd); + echo_var_assign(varcmd[0], varcmd[2]); + } else { + for (int j = 0; j < nvars; ++j) { + varcmd[0] = varsname[j]; + int V; + kim_error = KIM_Model_GetParameterInteger(pkim, param_index, + nlbound - 1 + j, &V); + if (kim_error) + error->all(FLERR, "KIM GetParameterInteger returned error."); + std::stringstream str; + str << V; + varcmd[2] = const_cast(str.str().c_str()); + input->variable->set(3, varcmd); + echo_var_assign(varcmd[0], varcmd[2]); + } + } + } else + error->all(FLERR, "Wrong parameter type."); + + delete[] varcmd; + delete[] varsname; + } // End of loop over all the arguments + // Set the parameters + } else { + std::string set_cmd("pair_coeff * * "); + set_cmd += atom_type_list; + for (int i = 1; i < narg; ++i) { + set_cmd += " "; + set_cmd += arg[i]; + } + input->one(set_cmd.c_str()); + } + } else + error->all(FLERR, "This model has No mutable parameters."); + + if (!isPairStyleAssigned) + KIM_Model_Destroy(&pkim); + + kim_param_log_delimiter("end"); +} + +/* ---------------------------------------------------------------------- */ + +void KimParam::kim_param_log_delimiter(std::string const &begin_end) const +{ + if (comm->me == 0) { + std::string msg; + if (begin_end == "begin") { + msg = "#=== BEGIN kim-param "; + msg += kim_param_get ? "get " : "set "; + msg += "=====================================\n"; + } else if (begin_end == "end") { + msg = "#=== END kim-param "; + msg += kim_param_get ? "get " : "set "; + msg += "=======================================\n\n"; + } + input->write_echo(msg.c_str()); + } +} + +/* ---------------------------------------------------------------------- */ + +void KimParam::echo_var_assign(std::string const &name, + std::string const &value) const +{ + if (comm->me == 0) { + std::string msg; + msg += "variable " + name + " string " + value + "\n"; + input->write_echo(msg.c_str()); + } +} + +#undef SNUM diff --git a/src/KIM/kim_param.h b/src/KIM/kim_param.h new file mode 100644 index 0000000000000000000000000000000000000000..5a9298628db0a36646dfd3c309b37ec32dc747fb --- /dev/null +++ b/src/KIM/kim_param.h @@ -0,0 +1,100 @@ +/* -*- c++ -*- ---------------------------------------------------------- + LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator + http://lammps.sandia.gov, Sandia National Laboratories + Steve Plimpton, sjplimp@sandia.gov + + Copyright (2003) Sandia Corporation. Under the terms of Contract + DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains + certain rights in this software. This software is distributed under + the GNU General Public License. + + See the README file in the top-level LAMMPS directory. +------------------------------------------------------------------------- */ + +/* ---------------------------------------------------------------------- + Contributing authors: Yaser Afshar (UMN), + Ryan S. Elliott (UMN), + Ellad B. Tadmor (UMN) +------------------------------------------------------------------------- */ + +/* ---------------------------------------------------------------------- + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by the Free + Software Foundation; either version 2 of the License, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + more details. + + You should have received a copy of the GNU General Public License along with + this program; if not, see . + + Linking LAMMPS statically or dynamically with other modules is making a + combined work based on LAMMPS. Thus, the terms and conditions of the GNU + General Public License cover the whole combination. + + In addition, as a special exception, the copyright holders of LAMMPS give + you permission to combine LAMMPS with free software programs or libraries + that are released under the GNU LGPL and with code included in the standard + release of the "kim-api" under the CDDL (or modified versions of such code, + with unchanged license). You may copy and distribute such a system following + the terms of the GNU GPL for LAMMPS and the licenses of the other code + concerned, provided that you include the source code of that other code + when and as the GNU GPL requires distribution of source code. + + Note that people who make modified versions of LAMMPS are not obligated to + grant this special exception for their modified versions; it is their choice + whether to do so. The GNU General Public License gives permission to release + a modified version without this exception; this exception also makes it + possible to release a modified version which carries forward this exception. +------------------------------------------------------------------------- */ + +/* ---------------------------------------------------------------------- + Designed for use with the kim-api-2.1.0 (and newer) package +------------------------------------------------------------------------- */ + +#ifdef COMMAND_CLASS + +CommandStyle(kim_param, KimParam) + +#else + +#ifndef LMP_KIM_PARAM_H +#define LMP_KIM_PARAM_H + +#include "pointers.h" +#include + +namespace LAMMPS_NS +{ + +class KimParam : protected Pointers +{ +public: + KimParam(class LAMMPS *lmp); + + ~KimParam(); + + void command(int, char **); + +private: + void kim_param_log_delimiter(std::string const &begin_end) const; + + void echo_var_assign(std::string const &name, std::string const &value) + const; + +private: + bool kim_param_get; + bool kim_param_set; +}; + +} // namespace LAMMPS_NS + +#endif // LMP_KIM_PARAM_H +#endif // COMMAND_CLASS + +/* ERROR/WARNING messages: + +*/ diff --git a/src/KIM/kim_query.cpp b/src/KIM/kim_query.cpp index 8ceefeceafde2e2a449ac703b590270e758c7a46..38ae57c25acd6308a3b0a85baeaea176c3f3e571 100644 --- a/src/KIM/kim_query.cpp +++ b/src/KIM/kim_query.cpp @@ -13,7 +13,8 @@ /* ---------------------------------------------------------------------- Contributing authors: Axel Kohlmeyer (Temple U), - Ryan S. Elliott (UMN) + Ryan S. Elliott (UMN), + Yaser Afshar (UMN) ------------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- @@ -105,15 +106,25 @@ void KimQuery::command(int narg, char **arg) model_name = (char *)fix_store->getptr("model_name"); } else error->all(FLERR,"Must use 'kim_init' before 'kim_query'"); - varname = arg[0]; bool split = false; if (0 == strcmp("split",arg[1])) { if (narg == 2) error->all(FLERR,"Illegal kim_query command"); + if (0 == strcmp("list",arg[2])) + error->all(FLERR,"Illegal kim_query command"); split = true; arg++; narg--; } + + // The “list” is the default setting + // the result is returned as a space-separated list of values in variable + if (0 == strcmp("list",arg[1])) { + if (narg == 2) error->all(FLERR,"Illegal kim_query command"); + if (split) error->all(FLERR,"Illegal kim_query command"); + arg++; + narg--; + } function = arg[1]; for (int i = 2; i < narg; ++i) { @@ -143,12 +154,13 @@ void KimQuery::command(int narg, char **arg) kim_query_log_delimiter("begin"); char **varcmd = new char*[3]; + varcmd[1] = (char *) "string"; + + std::stringstream ss(value); + std::string token; + if (split) { int counter = 1; - std::stringstream ss(value); - std::string token; - varcmd[1] = (char *) "string"; - while(std::getline(ss, token, ',')) { token.erase(0,token.find_first_not_of(" \n\r\t")); // ltrim token.erase(token.find_last_not_of(" \n\r\t") + 1); // rtrim @@ -161,11 +173,17 @@ void KimQuery::command(int narg, char **arg) } } else { varcmd[0] = varname; - varcmd[1] = (char *) "string"; - varcmd[2] = value; + std::string value_string; + while(std::getline(ss, token, ',')) { + token.erase(0,token.find_first_not_of(" \n\r\t")); // ltrim + token.erase(token.find_last_not_of(" \n\r\t") + 1); // rtrim + if (value_string.size() && token.size()) + value_string += " "; + value_string += token; + } + varcmd[2] = const_cast(value_string.c_str());; input->variable->set(3,varcmd); - - echo_var_assign(varname, value); + echo_var_assign(varname, value_string); } kim_query_log_delimiter("end"); diff --git a/src/KIM/pair_kim.cpp b/src/KIM/pair_kim.cpp index 43b444418a1af150ccaeebeaea2dd4e4ea50cdea..e54c76397f1c786380b9477eb0ca3f3414ffb3cf 100644 --- a/src/KIM/pair_kim.cpp +++ b/src/KIM/pair_kim.cpp @@ -14,6 +14,7 @@ /* ---------------------------------------------------------------------- Contributing authors: Ryan S. Elliott (UMinn) Axel Kohlmeyer (Temple U) + Yaser Afshar (UMN) ------------------------------------------------------------------------- */ /* ---------------------------------------------------------------------- @@ -57,6 +58,7 @@ #include #include #include +#include #include "atom.h" #include "comm.h" #include "force.h" @@ -66,6 +68,7 @@ #include "update.h" #include "memory.h" #include "domain.h" +#include "utils.h" #include "error.h" using namespace LAMMPS_NS; @@ -330,6 +333,14 @@ void PairKIM::settings(int narg, char **arg) set coeffs for one or more type pairs ------------------------------------------------------------------------- */ +#ifdef SNUM +#undef SNUM +#endif + +#define SNUM(x) \ + static_cast(std::ostringstream() \ + << std::dec << x).str() + void PairKIM::coeff(int narg, char **arg) { // This is called when "pair_coeff ..." is read from input @@ -339,7 +350,7 @@ void PairKIM::coeff(int narg, char **arg) if (!allocated) allocate(); - if (narg != 2 + atom->ntypes) + if (narg < 2 + atom->ntypes) error->all(FLERR,"Incorrect args for pair coefficients"); // insure I,J args are * * @@ -368,10 +379,10 @@ void PairKIM::coeff(int narg, char **arg) // Assume all species arguments are valid // errors will be detected by below - std::string atom_type_sym_list; + atom_type_list.clear(); lmps_num_unique_elements = 0; - for (i = 2; i < narg; i++) { - atom_type_sym_list += std::string(" ") + arg[i]; + for (i = 2; i < 2 + atom->ntypes; i++) { + atom_type_list += std::string(" ") + arg[i]; for (j = 0; j < lmps_num_unique_elements; j++) if (strcmp(arg[i],lmps_unique_elements[j]) == 0) break; lmps_map_species_to_unique[i-1] = j; @@ -421,8 +432,147 @@ void PairKIM::coeff(int narg, char **arg) error->all(FLERR, msg.c_str()); } } + // Set the new values for PM parameters + if (narg > 2 + atom->ntypes) { + // Get the number of mutable parameters in the kim model + int numberOfParameters(0); + KIM_Model_GetNumberOfParameters(pkim, &numberOfParameters); + + if (!numberOfParameters) { + std::string msg("Incorrect args for pair coefficients \n"); + msg += "This model has No mutable parameters."; + error->all(FLERR, msg.c_str()); + } + + int kimerror; + + // Parameter name + char *paramname = NULL; + + for (int i = 2 + atom->ntypes; i < narg;) { + // Parameter name + if (i < narg) + paramname = arg[i++]; + else + break; + + // Find the requested parameter within the model parameters + int param_index; + KIM_DataType kim_DataType; + int extent; + char const *str_name = NULL; + char const *str_desc = NULL; + + for (param_index = 0; param_index < numberOfParameters; ++param_index) { + kimerror = KIM_Model_GetParameterMetadata(pkim, param_index, + &kim_DataType, &extent, &str_name, &str_desc); + if (kimerror) + error->all(FLERR,"KIM GetParameterMetadata returned error"); + + if (strcmp(paramname, str_name) == 0) break; + } + + if (param_index >= numberOfParameters) { + std::string msg("Wrong argument for pair coefficients.\n"); + msg += "This Model does not have the requested '"; + msg += paramname; + msg += "' parameter."; + error->all(FLERR, msg.c_str()); + } + + // Get the index_range for the requested parameter + int nlbound(0); + int nubound(0); + + if (i < narg) { + std::string argtostr(arg[i++]); + + // Check to see if the indices range contains only integer numbers & : + if (argtostr.find_first_not_of("0123456789:") != std::string::npos) { + std::string msg("Illegal index_range.\n"); + msg += "Expected integer parameter(s) instead of '"; + msg += argtostr; + msg += "' in index_range."; + error->all(FLERR, msg.c_str()); + } + + std::string::size_type npos = argtostr.find(':'); + if (npos != std::string::npos) { + argtostr[npos] = ' '; + std::stringstream str(argtostr); + str >> nlbound >> nubound; + if (nubound < 1 || nubound > extent || + nlbound < 1 || nlbound > nubound) { + std::string msg("Illegal index_range '"); + msg += SNUM(nlbound) + "-" + SNUM(nubound); + msg += "' for '"; + msg += paramname; + msg += "' parameter with extent of '"; + msg += SNUM(extent); + msg += "' ."; + error->all(FLERR, msg.c_str()); + } + } else { + std::stringstream str(argtostr); + str >> nlbound; + if (nlbound < 1 || nlbound > extent) { + std::string msg("Illegal index '"); + msg += SNUM(nlbound) + "' for '"; + msg += paramname; + msg += "' parameter with extent of '"; + msg += SNUM(extent); + msg += "' ."; + error->all(FLERR, msg.c_str()); + } + nubound = nlbound; + } + } else { + std::string msg = + "Wrong number of arguments for pair coefficients.\n"; + msg += "Index range after parameter name is mandatory."; + error->all(FLERR, msg.c_str()); + } + + // Parameter values + if (i + nubound - nlbound < narg) { + if (KIM_DataType_Equal(kim_DataType, KIM_DATA_TYPE_Double)) { + for (int j = 0; j < nubound - nlbound + 1; ++j) { + double const V = utils::numeric(FLERR, arg[i++], true, lmp); + kimerror = KIM_Model_SetParameterDouble(pkim, param_index, + nlbound - 1 + j, V); + if (kimerror) + error->all(FLERR, "KIM SetParameterDouble returned error."); + } + } else if (KIM_DataType_Equal(kim_DataType, KIM_DATA_TYPE_Integer)) { + for (int j = 0; j < nubound - nlbound + 1; ++j) { + int const V = utils::inumeric(FLERR, arg[i++], true, lmp); + kimerror = KIM_Model_SetParameterInteger(pkim, param_index, + nlbound - 1 + j, V); + if (kimerror) + error->all(FLERR, "KIM SetParameterInteger returned error."); + } + } else + error->all(FLERR, "Wrong parameter type to update"); + } else { + std::string msg = + "Wrong number of variable values for pair coefficients.\n"; + msg += "'"; + msg += SNUM(nubound - nlbound + 1); + msg += "' values are requested for '"; + msg += paramname; + msg += "' parameter."; + error->all(FLERR, msg.c_str()); + } + } + + kimerror = KIM_Model_ClearThenRefresh(pkim); + if (kimerror) + error->all(FLERR, "KIM KIM_Model_ClearThenRefresh returned error"); + } } +#undef SNUM + /* ---------------------------------------------------------------------- init specific to this pair style ------------------------------------------------------------------------- */ @@ -747,6 +897,7 @@ void PairKIM::kim_init() KIM_LANGUAGE_NAME_cpp, reinterpret_cast(get_neigh), reinterpret_cast(this)); + if (kimerror) error->all(FLERR,"Unable to set KIM call back pointer"); } @@ -778,6 +929,7 @@ void PairKIM::set_argument_pointers() reinterpret_cast(NULL)); } } + // Set KIM pointer appropriately for particalEnergy if (KIM_SupportStatus_Equal(kim_model_support_for_particleEnergy, KIM_SUPPORT_STATUS_required) @@ -1009,3 +1161,7 @@ void PairKIM::set_kim_model_has_flags() error->all(FLERR,"KIM Model requires unsupported compute callback"); } } + +KIM_Model *PairKIM::get_KIM_Model() { return pkim; } + +std::string PairKIM::get_atom_type_list() { return atom_type_list; } diff --git a/src/KIM/pair_kim.h b/src/KIM/pair_kim.h index aa33b9b27185e27e1025a55f0cdbd02f39c9f6d5..1f2c8c8599f57f6808ce610664b332952ab52562 100644 --- a/src/KIM/pair_kim.h +++ b/src/KIM/pair_kim.h @@ -65,6 +65,7 @@ PairStyle(kim,PairKIM) // includes from KIM & LAMMPS class KIM_API_model; #include "pair.h" +#include extern "C" { #include "KIM_SimulatorHeaders.h" @@ -88,6 +89,11 @@ class PairKIM : public Pair { virtual void unpack_reverse_comm(int, int*, double*); virtual double memory_usage(); + // Get the KIM_Model object + KIM_Model *get_KIM_Model(); + + // Get the atom type list + std::string get_atom_type_list(); protected: // (nearly) all bool flags are not initialized in constructor, but set // explicitly in the indicated function. All other data members are @@ -98,6 +104,9 @@ class PairKIM : public Pair { // values set in settings() char* kim_modelname; + // list of args that map atom species to KIM elements + std::string atom_type_list; + // values set in coeff() // values set in allocate(), called by coeff() diff --git a/src/KOKKOS/atom_vec_sphere_kokkos.cpp b/src/KOKKOS/atom_vec_sphere_kokkos.cpp index 7e217df2a622e2df9e892c86ca2a47388d004550..67aaa32c219b422795ff4c8131743f770c619847 100644 --- a/src/KOKKOS/atom_vec_sphere_kokkos.cpp +++ b/src/KOKKOS/atom_vec_sphere_kokkos.cpp @@ -247,13 +247,13 @@ struct AtomVecSphereKokkos_PackComm { _buf(i,2) = _x(j,2); } else { if (TRICLINIC == 0) { - _buf(i,0) = _x(j,0) + _pbc[0]*_xprd; - _buf(i,1) = _x(j,1) + _pbc[1]*_yprd; - _buf(i,2) = _x(j,2) + _pbc[2]*_zprd; + _buf(i,0) = _x(j,0) + _pbc[0]*_xprd; + _buf(i,1) = _x(j,1) + _pbc[1]*_yprd; + _buf(i,2) = _x(j,2) + _pbc[2]*_zprd; } else { - _buf(i,0) = _x(j,0) + _pbc[0]*_xprd + _pbc[5]*_xy + _pbc[4]*_xz; - _buf(i,1) = _x(j,1) + _pbc[1]*_yprd + _pbc[3]*_yz; - _buf(i,2) = _x(j,2) + _pbc[2]*_zprd; + _buf(i,0) = _x(j,0) + _pbc[0]*_xprd + _pbc[5]*_xy + _pbc[4]*_xz; + _buf(i,1) = _x(j,1) + _pbc[1]*_yprd + _pbc[3]*_yz; + _buf(i,2) = _x(j,2) + _pbc[2]*_zprd; } } _buf(i,3) = _radius(j); @@ -419,13 +419,13 @@ struct AtomVecSphereKokkos_PackCommVel { _buf(i,2) = _x(j,2); } else { if (TRICLINIC == 0) { - _buf(i,0) = _x(j,0) + _pbc[0]*_xprd; - _buf(i,1) = _x(j,1) + _pbc[1]*_yprd; - _buf(i,2) = _x(j,2) + _pbc[2]*_zprd; + _buf(i,0) = _x(j,0) + _pbc[0]*_xprd; + _buf(i,1) = _x(j,1) + _pbc[1]*_yprd; + _buf(i,2) = _x(j,2) + _pbc[2]*_zprd; } else { - _buf(i,0) = _x(j,0) + _pbc[0]*_xprd + _pbc[5]*_xy + _pbc[4]*_xz; - _buf(i,1) = _x(j,1) + _pbc[1]*_yprd + _pbc[3]*_yz; - _buf(i,2) = _x(j,2) + _pbc[2]*_zprd; + _buf(i,0) = _x(j,0) + _pbc[0]*_xprd + _pbc[5]*_xy + _pbc[4]*_xz; + _buf(i,1) = _x(j,1) + _pbc[1]*_yprd + _pbc[3]*_yz; + _buf(i,2) = _x(j,2) + _pbc[2]*_zprd; } } if (DEFORM_VREMAP == 0) { @@ -772,13 +772,13 @@ struct AtomVecSphereKokkos_PackCommSelf { _xw(i+_nfirst,2) = _x(j,2); } else { if (TRICLINIC == 0) { - _xw(i+_nfirst,0) = _x(j,0) + _pbc[0]*_xprd; - _xw(i+_nfirst,1) = _x(j,1) + _pbc[1]*_yprd; - _xw(i+_nfirst,2) = _x(j,2) + _pbc[2]*_zprd; + _xw(i+_nfirst,0) = _x(j,0) + _pbc[0]*_xprd; + _xw(i+_nfirst,1) = _x(j,1) + _pbc[1]*_yprd; + _xw(i+_nfirst,2) = _x(j,2) + _pbc[2]*_zprd; } else { - _xw(i+_nfirst,0) = _x(j,0) + _pbc[0]*_xprd + _pbc[5]*_xy + _pbc[4]*_xz; - _xw(i+_nfirst,1) = _x(j,1) + _pbc[1]*_yprd + _pbc[3]*_yz; - _xw(i+_nfirst,2) = _x(j,2) + _pbc[2]*_zprd; + _xw(i+_nfirst,0) = _x(j,0) + _pbc[0]*_xprd + _pbc[5]*_xy + _pbc[4]*_xz; + _xw(i+_nfirst,1) = _x(j,1) + _pbc[1]*_yprd + _pbc[3]*_yz; + _xw(i+_nfirst,2) = _x(j,2) + _pbc[2]*_zprd; } } _radius(i+_nfirst) = _radius(j); @@ -799,39 +799,39 @@ int AtomVecSphereKokkos::pack_comm_self( atomKK->modified(Host,X_MASK|RADIUS_MASK|RMASS_MASK); if(pbc_flag) { if(domain->triclinic) { - struct AtomVecSphereKokkos_PackCommSelf f( + struct AtomVecSphereKokkos_PackCommSelf f( atomKK->k_x, - atomKK->k_radius,atomKK->k_rmass, - nfirst,list,iswap, - domain->xprd,domain->yprd,domain->zprd, - domain->xy,domain->xz,domain->yz,pbc); - Kokkos::parallel_for(n,f); + atomKK->k_radius,atomKK->k_rmass, + nfirst,list,iswap, + domain->xprd,domain->yprd,domain->zprd, + domain->xy,domain->xz,domain->yz,pbc); + Kokkos::parallel_for(n,f); } else { - struct AtomVecSphereKokkos_PackCommSelf f( + struct AtomVecSphereKokkos_PackCommSelf f( atomKK->k_x, - atomKK->k_radius,atomKK->k_rmass, - nfirst,list,iswap, - domain->xprd,domain->yprd,domain->zprd, - domain->xy,domain->xz,domain->yz,pbc); - Kokkos::parallel_for(n,f); + atomKK->k_radius,atomKK->k_rmass, + nfirst,list,iswap, + domain->xprd,domain->yprd,domain->zprd, + domain->xy,domain->xz,domain->yz,pbc); + Kokkos::parallel_for(n,f); } } else { if(domain->triclinic) { - struct AtomVecSphereKokkos_PackCommSelf f( + struct AtomVecSphereKokkos_PackCommSelf f( atomKK->k_x, - atomKK->k_radius,atomKK->k_rmass, - nfirst,list,iswap, - domain->xprd,domain->yprd,domain->zprd, - domain->xy,domain->xz,domain->yz,pbc); - Kokkos::parallel_for(n,f); + atomKK->k_radius,atomKK->k_rmass, + nfirst,list,iswap, + domain->xprd,domain->yprd,domain->zprd, + domain->xy,domain->xz,domain->yz,pbc); + Kokkos::parallel_for(n,f); } else { - struct AtomVecSphereKokkos_PackCommSelf f( + struct AtomVecSphereKokkos_PackCommSelf f( atomKK->k_x, - atomKK->k_radius,atomKK->k_rmass, - nfirst,list,iswap, - domain->xprd,domain->yprd,domain->zprd, - domain->xy,domain->xz,domain->yz,pbc); - Kokkos::parallel_for(n,f); + atomKK->k_radius,atomKK->k_rmass, + nfirst,list,iswap, + domain->xprd,domain->yprd,domain->zprd, + domain->xy,domain->xz,domain->yz,pbc); + Kokkos::parallel_for(n,f); } } } else { @@ -839,39 +839,39 @@ int AtomVecSphereKokkos::pack_comm_self( atomKK->modified(Device,X_MASK|RADIUS_MASK|RMASS_MASK); if(pbc_flag) { if(domain->triclinic) { - struct AtomVecSphereKokkos_PackCommSelf f( + struct AtomVecSphereKokkos_PackCommSelf f( atomKK->k_x, - atomKK->k_radius,atomKK->k_rmass, - nfirst,list,iswap, - domain->xprd,domain->yprd,domain->zprd, - domain->xy,domain->xz,domain->yz,pbc); - Kokkos::parallel_for(n,f); + atomKK->k_radius,atomKK->k_rmass, + nfirst,list,iswap, + domain->xprd,domain->yprd,domain->zprd, + domain->xy,domain->xz,domain->yz,pbc); + Kokkos::parallel_for(n,f); } else { - struct AtomVecSphereKokkos_PackCommSelf f( + struct AtomVecSphereKokkos_PackCommSelf f( atomKK->k_x, - atomKK->k_radius,atomKK->k_rmass, - nfirst,list,iswap, - domain->xprd,domain->yprd,domain->zprd, - domain->xy,domain->xz,domain->yz,pbc); - Kokkos::parallel_for(n,f); + atomKK->k_radius,atomKK->k_rmass, + nfirst,list,iswap, + domain->xprd,domain->yprd,domain->zprd, + domain->xy,domain->xz,domain->yz,pbc); + Kokkos::parallel_for(n,f); } } else { if(domain->triclinic) { - struct AtomVecSphereKokkos_PackCommSelf f( + struct AtomVecSphereKokkos_PackCommSelf f( atomKK->k_x, - atomKK->k_radius,atomKK->k_rmass, - nfirst,list,iswap, - domain->xprd,domain->yprd,domain->zprd, - domain->xy,domain->xz,domain->yz,pbc); - Kokkos::parallel_for(n,f); + atomKK->k_radius,atomKK->k_rmass, + nfirst,list,iswap, + domain->xprd,domain->yprd,domain->zprd, + domain->xy,domain->xz,domain->yz,pbc); + Kokkos::parallel_for(n,f); } else { - struct AtomVecSphereKokkos_PackCommSelf f( + struct AtomVecSphereKokkos_PackCommSelf f( atomKK->k_x, - atomKK->k_radius,atomKK->k_rmass, - nfirst,list,iswap, - domain->xprd,domain->yprd,domain->zprd, - domain->xy,domain->xz,domain->yz,pbc); - Kokkos::parallel_for(n,f); + atomKK->k_radius,atomKK->k_rmass, + nfirst,list,iswap, + domain->xprd,domain->yprd,domain->zprd, + domain->xy,domain->xz,domain->yz,pbc); + Kokkos::parallel_for(n,f); } } } @@ -1037,7 +1037,7 @@ void AtomVecSphereKokkos::unpack_comm_vel_kokkos( /* ---------------------------------------------------------------------- */ int AtomVecSphereKokkos::pack_comm(int n, int *list, double *buf, - int pbc_flag, int *pbc) + int pbc_flag, int *pbc) { int i,j,m; double dx,dy,dz; @@ -1109,7 +1109,7 @@ int AtomVecSphereKokkos::pack_comm(int n, int *list, double *buf, /* ---------------------------------------------------------------------- */ int AtomVecSphereKokkos::pack_comm_vel(int n, int *list, double *buf, - int pbc_flag, int *pbc) + int pbc_flag, int *pbc) { int i,j,m; double dx,dy,dz,dvx,dvy,dvz; @@ -1926,7 +1926,7 @@ struct AtomVecSphereKokkos_UnpackBorder { /* ---------------------------------------------------------------------- */ void AtomVecSphereKokkos::unpack_border_kokkos(const int &n, const int &first, - const DAT::tdual_xfloat_2d &buf,ExecutionSpace space) { + const DAT::tdual_xfloat_2d &buf,ExecutionSpace space) { while (first+n >= nmax) grow(0); if(space==Host) { struct AtomVecSphereKokkos_UnpackBorder f(buf.view(), @@ -1943,7 +1943,7 @@ void AtomVecSphereKokkos::unpack_border_kokkos(const int &n, const int &first, } atomKK->modified(space,X_MASK|TAG_MASK|TYPE_MASK|MASK_MASK| - RADIUS_MASK|RMASS_MASK); + RADIUS_MASK|RMASS_MASK); } /* ---------------------------------------------------------------------- */ @@ -2053,7 +2053,7 @@ void AtomVecSphereKokkos::unpack_border_vel_kokkos( } atomKK->modified(space,X_MASK|TAG_MASK|TYPE_MASK|MASK_MASK| - RADIUS_MASK|RMASS_MASK|V_MASK|OMEGA_MASK); + RADIUS_MASK|RMASS_MASK|V_MASK|OMEGA_MASK); } /* ---------------------------------------------------------------------- */ @@ -2496,7 +2496,7 @@ int AtomVecSphereKokkos::unpack_restart(double *buf) atomKK->modified(Host,X_MASK | TAG_MASK | TYPE_MASK | MASK_MASK | IMAGE_MASK | V_MASK | - RADIUS_MASK | RMASS_MASK | OMEGA_MASK); + RADIUS_MASK | RMASS_MASK | OMEGA_MASK); atom->nlocal++; return m; diff --git a/src/KOKKOS/comm_kokkos.cpp b/src/KOKKOS/comm_kokkos.cpp index d0bd978ae7fe000bc7ffdba2ecb9cd57039b7246..774d7040cceffc18c174921e47e315e5aa9a7019 100644 --- a/src/KOKKOS/comm_kokkos.cpp +++ b/src/KOKKOS/comm_kokkos.cpp @@ -210,7 +210,7 @@ void CommKokkos::forward_comm_device(int dummy) MPI_Send(k_buf_send.view().data(), n,MPI_DOUBLE,sendproc[iswap],0,world); } - + if (size_forward_recv[iswap]) { MPI_Wait(&request,MPI_STATUS_IGNORE); atomKK->modified(ExecutionSpaceFromDevice:: diff --git a/src/KOKKOS/domain_kokkos.cpp b/src/KOKKOS/domain_kokkos.cpp index 4cf3e6ab524d5676ca40e526c588bd925dbade88..cb4eaddfec76b3f9aba501cc6db362024f8ce086 100644 --- a/src/KOKKOS/domain_kokkos.cpp +++ b/src/KOKKOS/domain_kokkos.cpp @@ -340,11 +340,11 @@ struct DomainPBCFunctor { void DomainKokkos::pbc() { - + if (lmp->kokkos->exchange_comm_classic) { - + // reduce GPU data movement - + atomKK->sync(Host,X_MASK|V_MASK|MASK_MASK|IMAGE_MASK); Domain::pbc(); atomKK->modified(Host,X_MASK|V_MASK|MASK_MASK|IMAGE_MASK); diff --git a/src/KOKKOS/fix_enforce2d_kokkos.cpp b/src/KOKKOS/fix_enforce2d_kokkos.cpp index bf2a882539fec55f14ab56e75d871647b1244a38..205451d96fbe513db2cb3f2070eb81ec028e5b56 100644 --- a/src/KOKKOS/fix_enforce2d_kokkos.cpp +++ b/src/KOKKOS/fix_enforce2d_kokkos.cpp @@ -34,10 +34,10 @@ FixEnforce2DKokkos::FixEnforce2DKokkos(LAMMPS *lmp, int narg, char * execution_space = ExecutionSpaceFromDevice::space; datamask_read = V_MASK | F_MASK | OMEGA_MASK | MASK_MASK - | TORQUE_MASK | ANGMOM_MASK; + | TORQUE_MASK | ANGMOM_MASK; datamask_modify = V_MASK | F_MASK | OMEGA_MASK - | TORQUE_MASK | ANGMOM_MASK; + | TORQUE_MASK | ANGMOM_MASK; } diff --git a/src/KOKKOS/fix_neigh_history_kokkos.cpp b/src/KOKKOS/fix_neigh_history_kokkos.cpp index 8cfe7111dd7c76aea95f07443ecf0555cdc48240..7906d37cc3ebf963d51f3697d186a5e981c936d3 100644 --- a/src/KOKKOS/fix_neigh_history_kokkos.cpp +++ b/src/KOKKOS/fix_neigh_history_kokkos.cpp @@ -122,21 +122,21 @@ void FixNeighHistoryKokkos::pre_exchange_item(const int &ii) const j &= NEIGHMASK; int m = Kokkos::atomic_fetch_add(&d_npartner[i],1); if (m < maxpartner) { - d_partner(i,m) = tag[j]; - for (int k = 0; k < dnum; k++) - d_valuepartner(i,dnum*m+k) = d_firstvalue(i,dnum*jj+k); + d_partner(i,m) = tag[j]; + for (int k = 0; k < dnum; k++) + d_valuepartner(i,dnum*m+k) = d_firstvalue(i,dnum*jj+k); } else { - d_resize() = 1; + d_resize() = 1; } if (j < nlocal_neigh) { - m = Kokkos::atomic_fetch_add(&d_npartner[j],1); - if (m < maxpartner) { - d_partner(j,m) = tag[i]; - for (int k = 0; k < dnum; k++) - d_valuepartner(j,dnum*m+k) = d_firstvalue(i,dnum*jj+k); - } else { - d_resize() = 1; - } + m = Kokkos::atomic_fetch_add(&d_npartner[j],1); + if (m < maxpartner) { + d_partner(j,m) = tag[i]; + for (int k = 0; k < dnum; k++) + d_valuepartner(j,dnum*m+k) = d_firstvalue(i,dnum*jj+k); + } else { + d_resize() = 1; + } } } } @@ -205,22 +205,22 @@ void FixNeighHistoryKokkos::post_neighbor_item(const int &ii) const if (rflag) { int jtag = tag(j); for (m = 0; m < np; m++) - if (d_partner(i, m) == jtag) break; + if (d_partner(i, m) == jtag) break; if (m < np) { - d_firstflag(i,jj) = 1; - for (int k = 0; k < dnum; k++) { - d_firstvalue(i, dnum*jj+k) = d_valuepartner(i, dnum*m+k); - } + d_firstflag(i,jj) = 1; + for (int k = 0; k < dnum; k++) { + d_firstvalue(i, dnum*jj+k) = d_valuepartner(i, dnum*m+k); + } } else { - d_firstflag(i,jj) = 0; - for (int k = 0; k < dnum; k++) { - d_firstvalue(i, dnum*jj+k) = 0; - } + d_firstflag(i,jj) = 0; + for (int k = 0; k < dnum; k++) { + d_firstvalue(i, dnum*jj+k) = 0; + } } } else { d_firstflag(i,jj) = 0; for (int k = 0; k < dnum; k++) { - d_firstvalue(i, dnum*jj+k) = 0; + d_firstvalue(i, dnum*jj+k) = 0; } } } diff --git a/src/KOKKOS/kokkos.cpp b/src/KOKKOS/kokkos.cpp index 18dff991b2d7424cf1ec56b054e9768d4166192d..720dd3b3b2e210dd68e98156726108603bb39f8a 100644 --- a/src/KOKKOS/kokkos.cpp +++ b/src/KOKKOS/kokkos.cpp @@ -187,7 +187,7 @@ KokkosLMP::KokkosLMP(LAMMPS *lmp, int narg, char **arg) : Pointers(lmp) binsize = 0.0; #ifdef KOKKOS_ENABLE_CUDA - cuda_aware_flag = 1; + cuda_aware_flag = 1; #else cuda_aware_flag = 0; #endif diff --git a/src/KOKKOS/npair_kokkos.cpp b/src/KOKKOS/npair_kokkos.cpp index 4daf4b84c55bdb5a13b4c7f11b3545476cbc1f99..dc0efbc193bf18f36bb65890b4b46fd8ab485961 100644 --- a/src/KOKKOS/npair_kokkos.cpp +++ b/src/KOKKOS/npair_kokkos.cpp @@ -101,7 +101,7 @@ void NPairKokkos::copy_stencil_info() // copy stencil to device as it may have changed int maxstencil = ns->get_maxstencil(); - + if (maxstencil > k_stencil.extent(0)) k_stencil = DAT::tdual_int_1d("neighlist:stencil",maxstencil); for (int k = 0; k < maxstencil; k++) @@ -224,49 +224,49 @@ void NPairKokkos::build(NeighList *list_) Kokkos::parallel_for(nall, f); } else { if (newton_pair) { - if (SIZE) { - NPairKokkosBuildFunctorSize f(data,atoms_per_bin * 5 * sizeof(X_FLOAT) * factor); + if (SIZE) { + NPairKokkosBuildFunctorSize f(data,atoms_per_bin * 5 * sizeof(X_FLOAT) * factor); #ifdef KOKKOS_ENABLE_CUDA - if (ExecutionSpaceFromDevice::space == Device) - Kokkos::parallel_for(config, f); - else - Kokkos::parallel_for(nall, f); + if (ExecutionSpaceFromDevice::space == Device) + Kokkos::parallel_for(config, f); + else + Kokkos::parallel_for(nall, f); #else - Kokkos::parallel_for(nall, f); + Kokkos::parallel_for(nall, f); #endif - } else { - NPairKokkosBuildFunctor f(data,atoms_per_bin * 5 * sizeof(X_FLOAT) * factor); + } else { + NPairKokkosBuildFunctor f(data,atoms_per_bin * 5 * sizeof(X_FLOAT) * factor); #ifdef KOKKOS_ENABLE_CUDA - if (ExecutionSpaceFromDevice::space == Device) - Kokkos::parallel_for(config, f); - else - Kokkos::parallel_for(nall, f); + if (ExecutionSpaceFromDevice::space == Device) + Kokkos::parallel_for(config, f); + else + Kokkos::parallel_for(nall, f); #else - Kokkos::parallel_for(nall, f); + Kokkos::parallel_for(nall, f); #endif - } + } } else { - if (SIZE) { - NPairKokkosBuildFunctorSize f(data,atoms_per_bin * 5 * sizeof(X_FLOAT) * factor); + if (SIZE) { + NPairKokkosBuildFunctorSize f(data,atoms_per_bin * 5 * sizeof(X_FLOAT) * factor); #ifdef KOKKOS_ENABLE_CUDA - if (ExecutionSpaceFromDevice::space == Device) - Kokkos::parallel_for(config, f); - else - Kokkos::parallel_for(nall, f); + if (ExecutionSpaceFromDevice::space == Device) + Kokkos::parallel_for(config, f); + else + Kokkos::parallel_for(nall, f); #else - Kokkos::parallel_for(nall, f); + Kokkos::parallel_for(nall, f); #endif - } else { - NPairKokkosBuildFunctor f(data,atoms_per_bin * 5 * sizeof(X_FLOAT) * factor); + } else { + NPairKokkosBuildFunctor f(data,atoms_per_bin * 5 * sizeof(X_FLOAT) * factor); #ifdef KOKKOS_ENABLE_CUDA - if (ExecutionSpaceFromDevice::space == Device) - Kokkos::parallel_for(config, f); - else - Kokkos::parallel_for(nall, f); + if (ExecutionSpaceFromDevice::space == Device) + Kokkos::parallel_for(config, f); + else + Kokkos::parallel_for(nall, f); #else - Kokkos::parallel_for(nall, f); + Kokkos::parallel_for(nall, f); #endif - } + } } } Kokkos::deep_copy(h_scalars, d_scalars); @@ -871,8 +871,8 @@ void NeighborKokkosExecute:: if(rsq <= cutsq) { if(n:: if(HalfNeigh && !Newton && (j < i)) continue; if(!HalfNeigh && j==i) continue; if(Tri) { - if (x(j,2) < ztmp) continue; - if (x(j,2) == ztmp) { - if (x(j,1) < ytmp) continue; - if (x(j,1) == ytmp) { - if (x(j,0) < xtmp) continue; - if (x(j,0) == xtmp && j <= i) continue; - } - } + if (x(j,2) < ztmp) continue; + if (x(j,2) == ztmp) { + if (x(j,1) < ytmp) continue; + if (x(j,1) == ytmp) { + if (x(j,0) < xtmp) continue; + if (x(j,0) == xtmp && j <= i) continue; + } + } } if(exclude && exclusion(i,j,itype,jtype)) continue; @@ -911,11 +911,11 @@ void NeighborKokkosExecute:: const X_FLOAT cutsq = (radsum + skin) * (radsum + skin); if(rsq <= cutsq) { - if(n::build_ItemSizeCuda(typename Kokkos::Team if(i >= 0 && i < nlocal) { #pragma unroll 4 for(int m = 0; m < bincount_current; m++) { - int j = other_id[m]; - const int jtype = other_x[m + 3 * atoms_per_bin]; + int j = other_id[m]; + const int jtype = other_x[m + 3 * atoms_per_bin]; - //for same bin as atom i skip j if i==j and skip atoms "below and to the left" if using halfneighborlists - if((j == i) || - (HalfNeigh && !Newton && (j < i)) || - (HalfNeigh && Newton && + //for same bin as atom i skip j if i==j and skip atoms "below and to the left" if using halfneighborlists + if((j == i) || + (HalfNeigh && !Newton && (j < i)) || + (HalfNeigh && Newton && ((j < i) || - ((j >= nlocal) && ((x(j, 2) < ztmp) || (x(j, 2) == ztmp && x(j, 1) < ytmp) || - (x(j, 2) == ztmp && x(j, 1) == ytmp && x(j, 0) < xtmp))))) - ) continue; + ((j >= nlocal) && ((x(j, 2) < ztmp) || (x(j, 2) == ztmp && x(j, 1) < ytmp) || + (x(j, 2) == ztmp && x(j, 1) == ytmp && x(j, 0) < xtmp))))) + ) continue; if(Tri) { if (x(j,2) < ztmp) continue; if (x(j,2) == ztmp) { @@ -1011,21 +1011,21 @@ void NeighborKokkosExecute::build_ItemSizeCuda(typename Kokkos::Team } } } - if(exclude && exclusion(i,j,itype,jtype)) continue; - const X_FLOAT delx = xtmp - other_x[m]; - const X_FLOAT dely = ytmp - other_x[m + atoms_per_bin]; - const X_FLOAT delz = ztmp - other_x[m + 2 * atoms_per_bin]; - const X_FLOAT rsq = delx * delx + dely * dely + delz * delz; - const X_FLOAT radsum = radi + other_x[m + 4 * atoms_per_bin]; - const X_FLOAT cutsq = (radsum + skin) * (radsum + skin); - - if(rsq <= cutsq) { - if(n::build_ItemSizeCuda(typename Kokkos::Team int j = MY_II < bincount_current ? c_bins(jbin, MY_II) : -1; if(j >= 0) { - other_x[MY_II] = x(j, 0); - other_x[MY_II + atoms_per_bin] = x(j, 1); - other_x[MY_II + 2 * atoms_per_bin] = x(j, 2); - other_x[MY_II + 3 * atoms_per_bin] = type(j); - other_x[MY_II + 4 * atoms_per_bin] = radius(j); + other_x[MY_II] = x(j, 0); + other_x[MY_II + atoms_per_bin] = x(j, 1); + other_x[MY_II + 2 * atoms_per_bin] = x(j, 2); + other_x[MY_II + 3 * atoms_per_bin] = type(j); + other_x[MY_II + 4 * atoms_per_bin] = radius(j); } other_id[MY_II] = j; @@ -1054,40 +1054,40 @@ void NeighborKokkosExecute::build_ItemSizeCuda(typename Kokkos::Team if(i >= 0 && i < nlocal) { #pragma unroll 8 - for(int m = 0; m < bincount_current; m++) { - const int j = other_id[m]; - const int jtype = other_x[m + 3 * atoms_per_bin]; - - if(HalfNeigh && (j < i)) continue; - if(HalfNeigh && !Newton && (j < i)) continue; - if(!HalfNeigh && j==i) continue; - if(Tri) { - if (x(j,2) < ztmp) continue; - if (x(j,2) == ztmp) { - if (x(j,1) < ytmp) continue; - if (x(j,1) == ytmp) { - if (x(j,0) < xtmp) continue; - if (x(j,0) == xtmp && j <= i) continue; - } - } - } - if(exclude && exclusion(i,j,itype,jtype)) continue; - - const X_FLOAT delx = xtmp - other_x[m]; - const X_FLOAT dely = ytmp - other_x[m + atoms_per_bin]; - const X_FLOAT delz = ztmp - other_x[m + 2 * atoms_per_bin]; - const X_FLOAT rsq = delx * delx + dely * dely + delz * delz; - const X_FLOAT radsum = radi + other_x[m + 4 * atoms_per_bin]; - const X_FLOAT cutsq = (radsum + skin) * (radsum + skin); - - if(rsq <= cutsq) { - if(n::compute(int eflag_in, int vflag_in) if (lmp->kokkos->neighflag == HALF) { if (force->newton_pair) { if (vflag_atom) { - if (shearupdate) { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } else { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } + if (shearupdate) { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } else { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } } else if (vflag_global) { - if (shearupdate) { - Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); - } else { - Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); - } + if (shearupdate) { + Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); + } else { + Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); + } } else { - if (shearupdate) { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } else { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } + if (shearupdate) { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } else { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } } } else { if (vflag_atom) { - if (shearupdate) { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } else { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } + if (shearupdate) { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } else { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } } else if (vflag_global) { - if (shearupdate) { - Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); - } else { - Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); - } + if (shearupdate) { + Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); + } else { + Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); + } } else { - if (shearupdate) { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } else { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } + if (shearupdate) { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } else { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } } } } else { // HALFTHREAD if (force->newton_pair) { if (vflag_atom) { - if (shearupdate) { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } else { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } + if (shearupdate) { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } else { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } } else if (vflag_global) { - if (shearupdate) { - Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); - } else { - Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); - } + if (shearupdate) { + Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); + } else { + Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); + } } else { - if (shearupdate) { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } else { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } + if (shearupdate) { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } else { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } } } else { if (vflag_atom) { - if (shearupdate) { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } else { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } + if (shearupdate) { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } else { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } } else if (vflag_global) { - if (shearupdate) { - Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); - } else { - Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); - } + if (shearupdate) { + Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); + } else { + Kokkos::parallel_reduce(Kokkos::RangePolicy>(0,inum),*this, ev); + } } else { - if (shearupdate) { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } else { - Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); - } + if (shearupdate) { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } else { + Kokkos::parallel_for(Kokkos::RangePolicy>(0,inum),*this); + } } } } @@ -408,7 +408,7 @@ void PairGranHookeHistoryKokkos::operator()(TagPairGranHookeHistoryC shear3 += vtr3*dt; } X_FLOAT shrmag = sqrt(shear1*shear1 + shear2*shear2 + - shear3*shear3); + shear3*shear3); // rotate shear displacements @@ -433,15 +433,15 @@ void PairGranHookeHistoryKokkos::operator()(TagPairGranHookeHistoryC if (fs > fn) { if (shrmag != 0.0) { - shear1 = (fn/fs) * (shear1 + meff*gammat*vtr1/kt) - - meff*gammat*vtr1/kt; - shear2 = (fn/fs) * (shear2 + meff*gammat*vtr2/kt) - - meff*gammat*vtr2/kt; - shear3 = (fn/fs) * (shear3 + meff*gammat*vtr3/kt) - - meff*gammat*vtr3/kt; - fs1 *= fn/fs; - fs2 *= fn/fs; - fs3 *= fn/fs; + shear1 = (fn/fs) * (shear1 + meff*gammat*vtr1/kt) - + meff*gammat*vtr1/kt; + shear2 = (fn/fs) * (shear2 + meff*gammat*vtr2/kt) - + meff*gammat*vtr2/kt; + shear3 = (fn/fs) * (shear3 + meff*gammat*vtr3/kt) - + meff*gammat*vtr3/kt; + fs1 *= fn/fs; + fs2 *= fn/fs; + fs3 *= fn/fs; } else fs1 = fs2 = fs3 = 0.0; } @@ -503,8 +503,8 @@ template template KOKKOS_INLINE_FUNCTION void PairGranHookeHistoryKokkos::ev_tally_xyz(EV_FLOAT &ev, int i, int j, - F_FLOAT fx, F_FLOAT fy, F_FLOAT fz, - X_FLOAT delx, X_FLOAT dely, X_FLOAT delz) const + F_FLOAT fx, F_FLOAT fy, F_FLOAT fz, + X_FLOAT delx, X_FLOAT dely, X_FLOAT delz) const { F_FLOAT v[6]; @@ -546,8 +546,8 @@ template template KOKKOS_INLINE_FUNCTION void PairGranHookeHistoryKokkos::ev_tally_xyz_atom(EV_FLOAT &ev, int i, int j, - F_FLOAT fx, F_FLOAT fy, F_FLOAT fz, - X_FLOAT delx, X_FLOAT dely, X_FLOAT delz) const + F_FLOAT fx, F_FLOAT fy, F_FLOAT fz, + X_FLOAT delx, X_FLOAT dely, X_FLOAT delz) const { Kokkos::View::value> > v_vatom = k_vatom.view(); diff --git a/src/KOKKOS/pair_kokkos.h b/src/KOKKOS/pair_kokkos.h index 9ca5d9578d41983d614dc641a02582af06e2b745..52a05b3991985820e92281505e66c75d76b5f43e 100644 --- a/src/KOKKOS/pair_kokkos.h +++ b/src/KOKKOS/pair_kokkos.h @@ -293,7 +293,7 @@ struct PairComputeFunctor { const F_FLOAT rsq = delx*delx + dely*dely + delz*delz; if(rsq < (STACKPARAMS?c.m_cutsq[itype][jtype]:c.d_cutsq(itype,jtype))) { - + const F_FLOAT fpair = factor_lj*c.template compute_fpair(rsq,i,j,itype,jtype); ftmp.x += delx*fpair; @@ -412,7 +412,7 @@ struct PairComputeFunctor { const F_FLOAT rsq = delx*delx + dely*dely + delz*delz; if(rsq < (STACKPARAMS?c.m_cutsq[itype][jtype]:c.d_cutsq(itype,jtype))) { - + const F_FLOAT fpair = factor_lj*c.template compute_fpair(rsq,i,j,itype,jtype); fev_tmp.f[0] += delx*fpair; diff --git a/src/KOKKOS/pair_snap_kokkos_impl.h b/src/KOKKOS/pair_snap_kokkos_impl.h index 02c8554fa567f2dc47aebe72a1e3b1849a020204..ef01ec5ea39c09d4aead166e8c7108800cd7b578 100644 --- a/src/KOKKOS/pair_snap_kokkos_impl.h +++ b/src/KOKKOS/pair_snap_kokkos_impl.h @@ -584,7 +584,7 @@ void PairSNAPKokkos::operator() (TagPairSNAPComputeDeidrj,const type const int jj = team.league_rank() / ((inum+team.team_size()-1)/team.team_size()); const int ninside = d_ninside(ii); if (jj >= ninside) return; - + my_sna.compute_deidrj(team,ii,jj); } @@ -619,9 +619,9 @@ void PairSNAPKokkos::operator() (TagPairSNAPComputeForce(ev,i,j, @@ -630,7 +630,7 @@ void PairSNAPKokkos::operator() (TagPairSNAPComputeForce::operator() (TagPairSNAPComputeForce::build_indexlist() for(int j1 = 0; j1 <= twojmax; j1++) for(int j2 = 0; j2 <= j1; j2++) for(int j = j1 - j2; j <= MIN(twojmax, j1 + j2); j += 2) { - h_idxcg_block(j1,j2,j) = idxcg_count; + h_idxcg_block(j1,j2,j) = idxcg_count; for (int m1 = 0; m1 <= j1; m1++) for (int m2 = 0; m2 <= j2; m2++) idxcg_count++; @@ -98,9 +98,9 @@ void SNAKokkos::build_indexlist() auto h_idxu_block = Kokkos::create_mirror_view(idxu_block); int idxu_count = 0; - + for(int j = 0; j <= twojmax; j++) { - h_idxu_block[j] = idxu_count; + h_idxu_block[j] = idxu_count; for(int mb = 0; mb <= j; mb++) for(int ma = 0; ma <= j; ma++) idxu_count++; @@ -110,16 +110,16 @@ void SNAKokkos::build_indexlist() // index list for beta and B - int idxb_count = 0; + int idxb_count = 0; for(int j1 = 0; j1 <= twojmax; j1++) for(int j2 = 0; j2 <= j1; j2++) for(int j = j1 - j2; j <= MIN(twojmax, j1 + j2); j += 2) if (j >= j1) idxb_count++; - + idxb_max = idxb_count; idxb = Kokkos::View("SNAKokkos::idxb",idxb_max); auto h_idxb = Kokkos::create_mirror_view(idxb); - + idxb_count = 0; for(int j1 = 0; j1 <= twojmax; j1++) for(int j2 = 0; j2 <= j1; j2++) @@ -142,7 +142,7 @@ void SNAKokkos::build_indexlist() for(int j2 = 0; j2 <= j1; j2++) for(int j = j1 - j2; j <= MIN(twojmax, j1 + j2); j += 2) { if (j >= j1) { - h_idxb_block(j1,j2,j) = idxb_count; + h_idxb_block(j1,j2,j) = idxb_count; idxb_count++; } } @@ -158,19 +158,19 @@ void SNAKokkos::build_indexlist() for (int mb = 0; 2*mb <= j; mb++) for (int ma = 0; ma <= j; ma++) idxz_count++; - + idxz_max = idxz_count; idxz = Kokkos::View("SNAKokkos::idxz",idxz_max); auto h_idxz = Kokkos::create_mirror_view(idxz); idxz_block = Kokkos::View("SNAKokkos::idxz_block", jdim,jdim,jdim); auto h_idxz_block = Kokkos::create_mirror_view(idxz_block); - + idxz_count = 0; for(int j1 = 0; j1 <= twojmax; j1++) for(int j2 = 0; j2 <= j1; j2++) for(int j = j1 - j2; j <= MIN(twojmax, j1 + j2); j += 2) { - h_idxz_block(j1,j2,j) = idxz_count; + h_idxz_block(j1,j2,j) = idxz_count; // find right beta(ii,jjb) entry // multiply and divide by j+1 factors @@ -226,7 +226,7 @@ void SNAKokkos::grow_rij(int newnatom, int newnmax) blist = t_sna_2d("sna:blist",natom,idxb_max); ulisttot = t_sna_2c("sna:ulisttot",natom,idxu_max); - if (!Kokkos::Impl::is_same::value) + if (!Kokkos::Impl::is_same::value) ulisttot_lr = t_sna_2c_lr("sna:ulisttot_lr",natom,idxu_max); zlist = t_sna_2c("sna:zlist",natom,idxz_max); @@ -306,7 +306,7 @@ void SNAKokkos::compute_zi(const int& iter) const double* cgblock = cglist.data() + idxcg_block(j1,j2,j); - zlist(iatom,jjz).re = 0.0; + zlist(iatom,jjz).re = 0.0; zlist(iatom,jjz).im = 0.0; int jju1 = idxu_block[j1] + (j1+1)*mb1min; @@ -419,7 +419,7 @@ void SNAKokkos::compute_yi(int iter, if (j1 == j) { if (j2 == j) betaj = 3*beta(iatom,jjb); else betaj = 2*beta(iatom,jjb); - } else betaj = beta(iatom,jjb); + } else betaj = beta(iatom,jjb); } else if (j >= j2) { const int jjb = idxb_block(j,j2,j1); if (j2 == j) betaj = 2*beta(iatom,jjb)*(j1+1)/(j+1.0); @@ -1176,7 +1176,7 @@ void SNAKokkos::init_clebsch_gordan() factorial((j + cc2) / 2) * factorial((j - cc2) / 2) * (j + 1)); - + h_cglist[idxcg_count] = sum * dcg * sfaccg; idxcg_count++; } @@ -1278,7 +1278,7 @@ double SNAKokkos::memory_usage() if (!Kokkos::Impl::is_same::value) bytes += natom * idxu_max * sizeof(double) * 2; // ulisttot_lr bytes += natom * idxu_max * 3 * sizeof(double) * 2; // dulist - + bytes += natom * idxz_max * sizeof(double) * 2; // zlist bytes += natom * idxb_max * sizeof(double); // blist bytes += natom * idxu_max * sizeof(double) * 2; // ylist diff --git a/src/KOKKOS/verlet_kokkos.cpp b/src/KOKKOS/verlet_kokkos.cpp index 23952b71d8ccaa44babe39b111a7f1d12b6333d0..3367e97c6da61adaf122fd837d45207ffc8e8012 100644 --- a/src/KOKKOS/verlet_kokkos.cpp +++ b/src/KOKKOS/verlet_kokkos.cpp @@ -614,8 +614,8 @@ void VerletKokkos::force_clear() atomKK->modified(Device,F_MASK); if (torqueflag) { - Kokkos::parallel_for(range, Zero::t_f_array>(atomKK->k_torque.view())); - atomKK->modified(Device,TORQUE_MASK); + Kokkos::parallel_for(range, Zero::t_f_array>(atomKK->k_torque.view())); + atomKK->modified(Device,TORQUE_MASK); } } } diff --git a/src/KSPACE/ewald_dipole.cpp b/src/KSPACE/ewald_dipole.cpp index a003ce91fd585213aabeccc5d37a9f3a4c34e97e..1939742bfc68b8fb8870ae4ed80ce0dbe029a897 100644 --- a/src/KSPACE/ewald_dipole.cpp +++ b/src/KSPACE/ewald_dipole.cpp @@ -167,7 +167,7 @@ void EwaldDipole::init() NewtonSolve(g_ewald,cutoff,natoms,xprd*yprd*zprd,mu2); if (g_ewald_new > 0.0) g_ewald = g_ewald_new; else error->warning(FLERR,"Ewald/disp Newton solver failed, " - "using old method to estimate g_ewald"); + "using old method to estimate g_ewald"); } // setup EwaldDipole coefficients so can print stats @@ -246,7 +246,7 @@ void EwaldDipole::setup() double err; kxmax = 1; kymax = 1; - kzmax = 1; + kzmax = 1; // set kmax in 3 directions to respect accuracy @@ -462,7 +462,7 @@ void EwaldDipole::compute(int eflag, int vflag) vc[k][4] += vcik[4] = -(partial_peratom * mu[i][0] * eg[k][2]); vc[k][5] += vcik[5] = -(partial_peratom * mu[i][1] * eg[k][2]); - // taking re-part of struct_fact x exp(i*k*ri) + // taking re-part of struct_fact x exp(i*k*ri) // (for per-atom energy and virial calc.) if (evflag_atom) { @@ -653,12 +653,12 @@ void EwaldDipole::eik_dot_r() muz = mu[i][2]; // dir 1: (0,l,m) - mudotk = (muy*l*unitk[1] + muz*m*unitk[2]); + mudotk = (muy*l*unitk[1] + muz*m*unitk[2]); cstr1 += mudotk*(cs[l][1][i]*cs[m][2][i] - sn[l][1][i]*sn[m][2][i]); sstr1 += mudotk*(sn[l][1][i]*cs[m][2][i] + cs[l][1][i]*sn[m][2][i]); // dir 2: (0,l,-m) - mudotk = (muy*l*unitk[1] - muz*m*unitk[2]); + mudotk = (muy*l*unitk[1] - muz*m*unitk[2]); cstr2 += mudotk*(cs[l][1][i]*cs[m][2][i]+sn[l][1][i]*sn[m][2][i]); sstr2 += mudotk*(sn[l][1][i]*cs[m][2][i]-cs[l][1][i]*sn[m][2][i]); } @@ -685,12 +685,12 @@ void EwaldDipole::eik_dot_r() muz = mu[i][2]; // dir 1: (k,0,m) - mudotk = (mux*k*unitk[0] + muz*m*unitk[2]); + mudotk = (mux*k*unitk[0] + muz*m*unitk[2]); cstr1 += mudotk*(cs[k][0][i]*cs[m][2][i]-sn[k][0][i]*sn[m][2][i]); sstr1 += mudotk*(sn[k][0][i]*cs[m][2][i]+cs[k][0][i]*sn[m][2][i]); // dir 2: (k,0,-m) - mudotk = (mux*k*unitk[0] - muz*m*unitk[2]); + mudotk = (mux*k*unitk[0] - muz*m*unitk[2]); cstr2 += mudotk*(cs[k][0][i]*cs[m][2][i]+sn[k][0][i]*sn[m][2][i]); sstr2 += mudotk*(sn[k][0][i]*cs[m][2][i]-cs[k][0][i]*sn[m][2][i]); } @@ -724,28 +724,28 @@ void EwaldDipole::eik_dot_r() muz = mu[i][2]; // dir 1: (k,l,m) - mudotk = (mux*k*unitk[0] + muy*l*unitk[1] + muz*m*unitk[2]); + mudotk = (mux*k*unitk[0] + muy*l*unitk[1] + muz*m*unitk[2]); clpm = cs[l][1][i]*cs[m][2][i] - sn[l][1][i]*sn[m][2][i]; slpm = sn[l][1][i]*cs[m][2][i] + cs[l][1][i]*sn[m][2][i]; cstr1 += mudotk*(cs[k][0][i]*clpm - sn[k][0][i]*slpm); sstr1 += mudotk*(sn[k][0][i]*clpm + cs[k][0][i]*slpm); // dir 2: (k,-l,m) - mudotk = (mux*k*unitk[0] - muy*l*unitk[1] + muz*m*unitk[2]); + mudotk = (mux*k*unitk[0] - muy*l*unitk[1] + muz*m*unitk[2]); clpm = cs[l][1][i]*cs[m][2][i] + sn[l][1][i]*sn[m][2][i]; slpm = -sn[l][1][i]*cs[m][2][i] + cs[l][1][i]*sn[m][2][i]; cstr2 += mudotk*(cs[k][0][i]*clpm - sn[k][0][i]*slpm); sstr2 += mudotk*(sn[k][0][i]*clpm + cs[k][0][i]*slpm); // dir 3: (k,l,-m) - mudotk = (mux*k*unitk[0] + muy*l*unitk[1] - muz*m*unitk[2]); + mudotk = (mux*k*unitk[0] + muy*l*unitk[1] - muz*m*unitk[2]); clpm = cs[l][1][i]*cs[m][2][i] + sn[l][1][i]*sn[m][2][i]; slpm = sn[l][1][i]*cs[m][2][i] - cs[l][1][i]*sn[m][2][i]; cstr3 += mudotk*(cs[k][0][i]*clpm - sn[k][0][i]*slpm); sstr3 += mudotk*(sn[k][0][i]*clpm + cs[k][0][i]*slpm); // dir 4: (k,-l,-m) - mudotk = (mux*k*unitk[0] - muy*l*unitk[1] - muz*m*unitk[2]); + mudotk = (mux*k*unitk[0] - muy*l*unitk[1] - muz*m*unitk[2]); clpm = cs[l][1][i]*cs[m][2][i] - sn[l][1][i]*sn[m][2][i]; slpm = -sn[l][1][i]*cs[m][2][i] - cs[l][1][i]*sn[m][2][i]; cstr4 += mudotk*(cs[k][0][i]*clpm - sn[k][0][i]*slpm); diff --git a/src/KSPACE/ewald_dipole_spin.cpp b/src/KSPACE/ewald_dipole_spin.cpp index 531f4cdec5f39a72e0eb1f8d192f0b589e90d1fe..82832f6e4cb1d1da7174c13ba2bb147deecceb12 100644 --- a/src/KSPACE/ewald_dipole_spin.cpp +++ b/src/KSPACE/ewald_dipole_spin.cpp @@ -36,7 +36,7 @@ using namespace MathConst; /* ---------------------------------------------------------------------- */ -EwaldDipoleSpin::EwaldDipoleSpin(LAMMPS *lmp) : +EwaldDipoleSpin::EwaldDipoleSpin(LAMMPS *lmp) : EwaldDipole(lmp) { dipoleflag = 0; @@ -157,7 +157,7 @@ void EwaldDipoleSpin::init() NewtonSolve(g_ewald,cutoff,natoms,xprd*yprd*zprd,mu2); if (g_ewald_new > 0.0) g_ewald = g_ewald_new; else error->warning(FLERR,"Ewald/disp Newton solver failed, " - "using old method to estimate g_ewald"); + "using old method to estimate g_ewald"); } // setup EwaldDipoleSpin coefficients so can print stats @@ -236,7 +236,7 @@ void EwaldDipoleSpin::setup() double err; kxmax = 1; kymax = 1; - kzmax = 1; + kzmax = 1; // set kmax in 3 directions to respect accuracy @@ -440,7 +440,7 @@ void EwaldDipoleSpin::compute(int eflag, int vflag) vc[k][4] += vcik[4] = -(partial_peratom * spx * eg[k][2]); vc[k][5] += vcik[5] = -(partial_peratom * spy * eg[k][2]); - // taking re-part of struct_fact x exp(i*k*ri) + // taking re-part of struct_fact x exp(i*k*ri) // (for per-atom energy and virial calc.) if (evflag_atom) { @@ -639,12 +639,12 @@ void EwaldDipoleSpin::eik_dot_r() spz = sp[i][2]*sp[i][3]; // dir 1: (0,l,m) - mudotk = (spy*l*unitk[1] + spz*m*unitk[2]); + mudotk = (spy*l*unitk[1] + spz*m*unitk[2]); cstr1 += mudotk*(cs[l][1][i]*cs[m][2][i] - sn[l][1][i]*sn[m][2][i]); sstr1 += mudotk*(sn[l][1][i]*cs[m][2][i] + cs[l][1][i]*sn[m][2][i]); // dir 2: (0,l,-m) - mudotk = (spy*l*unitk[1] - spz*m*unitk[2]); + mudotk = (spy*l*unitk[1] - spz*m*unitk[2]); cstr2 += mudotk*(cs[l][1][i]*cs[m][2][i]+sn[l][1][i]*sn[m][2][i]); sstr2 += mudotk*(sn[l][1][i]*cs[m][2][i]-cs[l][1][i]*sn[m][2][i]); } @@ -671,12 +671,12 @@ void EwaldDipoleSpin::eik_dot_r() spz = sp[i][2]*sp[i][3]; // dir 1: (k,0,m) - mudotk = (spx*k*unitk[0] + spz*m*unitk[2]); + mudotk = (spx*k*unitk[0] + spz*m*unitk[2]); cstr1 += mudotk*(cs[k][0][i]*cs[m][2][i]-sn[k][0][i]*sn[m][2][i]); sstr1 += mudotk*(sn[k][0][i]*cs[m][2][i]+cs[k][0][i]*sn[m][2][i]); // dir 2: (k,0,-m) - mudotk = (spx*k*unitk[0] - spz*m*unitk[2]); + mudotk = (spx*k*unitk[0] - spz*m*unitk[2]); cstr2 += mudotk*(cs[k][0][i]*cs[m][2][i]+sn[k][0][i]*sn[m][2][i]); sstr2 += mudotk*(sn[k][0][i]*cs[m][2][i]-cs[k][0][i]*sn[m][2][i]); } @@ -710,28 +710,28 @@ void EwaldDipoleSpin::eik_dot_r() spz = sp[i][2]*sp[i][3]; // dir 1: (k,l,m) - mudotk = (spx*k*unitk[0] + spy*l*unitk[1] + spz*m*unitk[2]); + mudotk = (spx*k*unitk[0] + spy*l*unitk[1] + spz*m*unitk[2]); clpm = cs[l][1][i]*cs[m][2][i] - sn[l][1][i]*sn[m][2][i]; slpm = sn[l][1][i]*cs[m][2][i] + cs[l][1][i]*sn[m][2][i]; cstr1 += mudotk*(cs[k][0][i]*clpm - sn[k][0][i]*slpm); sstr1 += mudotk*(sn[k][0][i]*clpm + cs[k][0][i]*slpm); // dir 2: (k,-l,m) - mudotk = (spx*k*unitk[0] - spy*l*unitk[1] + spz*m*unitk[2]); + mudotk = (spx*k*unitk[0] - spy*l*unitk[1] + spz*m*unitk[2]); clpm = cs[l][1][i]*cs[m][2][i] + sn[l][1][i]*sn[m][2][i]; slpm = -sn[l][1][i]*cs[m][2][i] + cs[l][1][i]*sn[m][2][i]; cstr2 += mudotk*(cs[k][0][i]*clpm - sn[k][0][i]*slpm); sstr2 += mudotk*(sn[k][0][i]*clpm + cs[k][0][i]*slpm); // dir 3: (k,l,-m) - mudotk = (spx*k*unitk[0] + spy*l*unitk[1] - spz*m*unitk[2]); + mudotk = (spx*k*unitk[0] + spy*l*unitk[1] - spz*m*unitk[2]); clpm = cs[l][1][i]*cs[m][2][i] + sn[l][1][i]*sn[m][2][i]; slpm = sn[l][1][i]*cs[m][2][i] - cs[l][1][i]*sn[m][2][i]; cstr3 += mudotk*(cs[k][0][i]*clpm - sn[k][0][i]*slpm); sstr3 += mudotk*(sn[k][0][i]*clpm + cs[k][0][i]*slpm); // dir 4: (k,-l,-m) - mudotk = (spx*k*unitk[0] - spy*l*unitk[1] - spz*m*unitk[2]); + mudotk = (spx*k*unitk[0] - spy*l*unitk[1] - spz*m*unitk[2]); clpm = cs[l][1][i]*cs[m][2][i] - sn[l][1][i]*sn[m][2][i]; slpm = -sn[l][1][i]*cs[m][2][i] - cs[l][1][i]*sn[m][2][i]; cstr4 += mudotk*(cs[k][0][i]*clpm - sn[k][0][i]*slpm); @@ -768,7 +768,7 @@ void EwaldDipoleSpin::slabcorr() double spz; int nlocal = atom->nlocal; - for (int i = 0; i < nlocal; i++) { + for (int i = 0; i < nlocal; i++) { spz = sp[i][2]*sp[i][3]; spin += spz; } diff --git a/src/KSPACE/ewald_dipole_spin.h b/src/KSPACE/ewald_dipole_spin.h index 20852c08c1720d28f7bff6526fdd1d6bd220f2f9..32c7ddb5f16fed0d07cd08f24b08ff14c7083f0f 100644 --- a/src/KSPACE/ewald_dipole_spin.h +++ b/src/KSPACE/ewald_dipole_spin.h @@ -33,13 +33,13 @@ class EwaldDipoleSpin : public EwaldDipole { void compute(int, int); protected: - double hbar; // reduced Planck's constant - double mub; // Bohr's magneton + double hbar; // reduced Planck's constant + double mub; // Bohr's magneton double mu_0; // vacuum permeability double mub2mu0; // prefactor for mech force double mub2mu0hbinv; // prefactor for mag force - void spsum_musq(); + void spsum_musq(); virtual void eik_dot_r(); void slabcorr(); diff --git a/src/KSPACE/ewald_disp.cpp b/src/KSPACE/ewald_disp.cpp index a24ee4203c8e62c8fe5d43b6a6b61b09774e7382..a7f0698c0c0041374f0c06167e42fe58897ade2d 100644 --- a/src/KSPACE/ewald_disp.cpp +++ b/src/KSPACE/ewald_disp.cpp @@ -131,7 +131,7 @@ void EwaldDisp::init() else if (ewald_mix==Pair::ARITHMETIC) { k = 2; break; } error->all(FLERR, "Unsupported mixing rule in kspace_style ewald/disp"); - break; + break; default: error->all(FLERR,"Unsupported order in kspace_style ewald/disp"); } diff --git a/src/KSPACE/pppm_dipole.cpp b/src/KSPACE/pppm_dipole.cpp index 5d69ca27b6112d28a39d8420910fe8d3263a7585..40d0c1ac73679e1a6196f0b211ba99cfd16c4d8a 100644 --- a/src/KSPACE/pppm_dipole.cpp +++ b/src/KSPACE/pppm_dipole.cpp @@ -58,19 +58,19 @@ enum{FORWARD_MU,FORWARD_MU_PERATOM}; /* ---------------------------------------------------------------------- */ PPPMDipole::PPPMDipole(LAMMPS *lmp) : PPPM(lmp), - densityx_brick_dipole(NULL), densityy_brick_dipole(NULL), + densityx_brick_dipole(NULL), densityy_brick_dipole(NULL), densityz_brick_dipole(NULL), vdxx_brick_dipole(NULL), vdyy_brick_dipole(NULL), vdzz_brick_dipole(NULL), vdxy_brick_dipole(NULL), vdxz_brick_dipole(NULL), vdyz_brick_dipole(NULL), ux_brick_dipole(NULL), uy_brick_dipole(NULL), uz_brick_dipole(NULL), v0x_brick_dipole(NULL), v1x_brick_dipole(NULL), - v2x_brick_dipole(NULL), v3x_brick_dipole(NULL), v4x_brick_dipole(NULL), - v5x_brick_dipole(NULL), v0y_brick_dipole(NULL), v1y_brick_dipole(NULL), - v2y_brick_dipole(NULL), v3y_brick_dipole(NULL), v4y_brick_dipole(NULL), - v5y_brick_dipole(NULL), v0z_brick_dipole(NULL), v1z_brick_dipole(NULL), - v2z_brick_dipole(NULL), v3z_brick_dipole(NULL), v4z_brick_dipole(NULL), - v5z_brick_dipole(NULL), work3(NULL), work4(NULL), - densityx_fft_dipole(NULL), densityy_fft_dipole(NULL), + v2x_brick_dipole(NULL), v3x_brick_dipole(NULL), v4x_brick_dipole(NULL), + v5x_brick_dipole(NULL), v0y_brick_dipole(NULL), v1y_brick_dipole(NULL), + v2y_brick_dipole(NULL), v3y_brick_dipole(NULL), v4y_brick_dipole(NULL), + v5y_brick_dipole(NULL), v0z_brick_dipole(NULL), v1z_brick_dipole(NULL), + v2z_brick_dipole(NULL), v3z_brick_dipole(NULL), v4z_brick_dipole(NULL), + v5z_brick_dipole(NULL), work3(NULL), work4(NULL), + densityx_fft_dipole(NULL), densityy_fft_dipole(NULL), densityz_fft_dipole(NULL) { dipoleflag = 1; diff --git a/src/KSPACE/pppm_dipole.h b/src/KSPACE/pppm_dipole.h index d06919644b308c404fb814cf13d10b2bb7e33f78..a767f8b4c2a06965565f1874b6a6ef0cfe797fb3 100644 --- a/src/KSPACE/pppm_dipole.h +++ b/src/KSPACE/pppm_dipole.h @@ -38,7 +38,7 @@ class PPPMDipole : public PPPM { protected: void set_grid_global(); - double newton_raphson_f(); + double newton_raphson_f(); void allocate(); void allocate_peratom(); diff --git a/src/KSPACE/pppm_dipole_spin.cpp b/src/KSPACE/pppm_dipole_spin.cpp index 38757ced217cacff9d884a14196d9593e477e689..7f7745eb3ec30f34964a2a7ed237da3fbb8781d8 100644 --- a/src/KSPACE/pppm_dipole_spin.cpp +++ b/src/KSPACE/pppm_dipole_spin.cpp @@ -52,7 +52,7 @@ enum{FORWARD_MU,FORWARD_MU_PERATOM}; /* ---------------------------------------------------------------------- */ -PPPMDipoleSpin::PPPMDipoleSpin(LAMMPS *lmp) : +PPPMDipoleSpin::PPPMDipoleSpin(LAMMPS *lmp) : PPPMDipole(lmp) { dipoleflag = 0; @@ -147,7 +147,7 @@ void PPPMDipoleSpin::init() // kspace TIP4P not yet supported // qdist = offset only for TIP4P fictitious charge - qdist = 0.0; + qdist = 0.0; if (tip4pflag) error->all(FLERR,"Cannot yet use TIP4P with PPPMDipoleSpin"); @@ -668,7 +668,7 @@ void PPPMDipoleSpin::slabcorr() double spz; int nlocal = atom->nlocal; - for (int i = 0; i < nlocal; i++) { + for (int i = 0; i < nlocal; i++) { spz = sp[i][2]*sp[i][3]; spin += spz; } @@ -729,7 +729,7 @@ void PPPMDipoleSpin::spsum_spsq() spsqsum_local += spx*spx + spy*spy + spz*spz; } - // store results into pppm_dipole quantities + // store results into pppm_dipole quantities MPI_Allreduce(&spsum_local,&musum,1,MPI_DOUBLE,MPI_SUM,world); MPI_Allreduce(&spsqsum_local,&musqsum,1,MPI_DOUBLE,MPI_SUM,world); diff --git a/src/KSPACE/pppm_dipole_spin.h b/src/KSPACE/pppm_dipole_spin.h index 2b4a989d5cf5d3c846d7b0c977865016ac5cb336..fe88fc75ce7edb5da700d19e0708f962b0d5b21d 100644 --- a/src/KSPACE/pppm_dipole_spin.h +++ b/src/KSPACE/pppm_dipole_spin.h @@ -32,8 +32,8 @@ class PPPMDipoleSpin : public PPPMDipole { void compute(int, int); protected: - double hbar; // reduced Planck's constant - double mub; // Bohr's magneton + double hbar; // reduced Planck's constant + double mub; // Bohr's magneton double mu_0; // vacuum permeability double mub2mu0; // prefactor for mech force double mub2mu0hbinv; // prefactor for mag force diff --git a/src/KSPACE/pppm_disp.cpp b/src/KSPACE/pppm_disp.cpp index abc33b90fa6448dae1c74a48af655c156725a18c..0d0d4c7eb2061048502a49150be7533fb606ca05 100644 --- a/src/KSPACE/pppm_disp.cpp +++ b/src/KSPACE/pppm_disp.cpp @@ -320,8 +320,8 @@ void PPPMDisp::init() mixflag == 1) && mixflag!= 2) { k = 1; break; } else if (ewald_mix==Pair::ARITHMETIC && mixflag!=2) { k = 2; break; } else if (mixflag == 2) { k = 3; break; } - else error->all(FLERR,"Unsupported mixing rule in kspace_style pppm/disp"); - break; + else error->all(FLERR,"Unsupported mixing rule in kspace_style pppm/disp"); + break; default: sprintf(str, "Unsupported order in kspace_style " "pppm/disp, pair_style %s", force->pair_style); diff --git a/src/MANYBODY/pair_airebo.cpp b/src/MANYBODY/pair_airebo.cpp index 7cdffa7ea9d6dd78fe21edd8b318d222d8b097a4..1d9dd18887770f4fd2b59e37708300638f4697ee 100644 --- a/src/MANYBODY/pair_airebo.cpp +++ b/src/MANYBODY/pair_airebo.cpp @@ -3638,9 +3638,9 @@ void PairAIREBO::read_file(char *filename) utils::sfgets(FLERR,s,MAXLINE,fp,filename,error); if (1 != sscanf(s,"%lg",&reqM_HH)) ++cerror; } - + } - + // check for errors parsing global parameters MPI_Bcast(&cerror,1,MPI_INT,0,world); @@ -3654,7 +3654,7 @@ void PairAIREBO::read_file(char *filename) cerror = numpar = 0; if (me == 0) { - + // gC spline utils::sfgets(FLERR,s,MAXLINE,fp,filename,error); @@ -3899,7 +3899,7 @@ void PairAIREBO::read_file(char *filename) fclose(fp); } - + // check for errors parsing spline data MPI_Bcast(&cerror,1,MPI_INT,0,world); diff --git a/src/RIGID/rigid_const.h b/src/RIGID/rigid_const.h index 14db517fcd68316431c9d394837535be0fbfb256..3aae988197ee74faa5fdf04bd4fa6c2006243cfd 100644 --- a/src/RIGID/rigid_const.h +++ b/src/RIGID/rigid_const.h @@ -32,7 +32,7 @@ namespace LAMMPS_NS { ANGMOM = 1<<7, TORQUE = 1<<8 }; - + static const double TOLERANCE = 1.0e-6; static const double EPSILON = 1.0e-7; static const double BIG = 1.0e20; diff --git a/src/SNAP/pair_snap.cpp b/src/SNAP/pair_snap.cpp index 133f0e414bfff9faa640837109b9b28fc3656664..6f7cf546597b1b5873e4cc786795b037c75f7ff7 100644 --- a/src/SNAP/pair_snap.cpp +++ b/src/SNAP/pair_snap.cpp @@ -108,7 +108,7 @@ void PairSNAP::compute(int eflag, int vflag) // compute dE_i/dB_i = beta_i for all i in list - if (quadraticflag || eflag) + if (quadraticflag || eflag) compute_bispectrum(); compute_beta(); @@ -165,7 +165,7 @@ void PairSNAP::compute(int eflag, int vflag) snaptr->compute_ui(ninside); // for neighbors of I within cutoff: - // compute Fij = dEi/dRj = -dEi/dRi + // compute Fij = dEi/dRj = -dEi/dRi // add to Fi, subtract from Fj snaptr->compute_yi(beta[ii]); diff --git a/src/SNAP/sna.cpp b/src/SNAP/sna.cpp index 9e8768c47752ef05ab3f949357c21a5579ea92b3..99834635b7c18dac56a74b9d95b79ffa268adcdf 100644 --- a/src/SNAP/sna.cpp +++ b/src/SNAP/sna.cpp @@ -171,7 +171,7 @@ void SNA::build_indexlist() for(int j1 = 0; j1 <= twojmax; j1++) for(int j2 = 0; j2 <= j1; j2++) for(int j = j1 - j2; j <= MIN(twojmax, j1 + j2); j += 2) { - idxcg_block[j1][j2][j] = idxcg_count; + idxcg_block[j1][j2][j] = idxcg_count; for (int m1 = 0; m1 <= j1; m1++) for (int m2 = 0; m2 <= j2; m2++) idxcg_count++; @@ -185,9 +185,9 @@ void SNA::build_indexlist() "sna:idxu_block"); int idxu_count = 0; - + for(int j = 0; j <= twojmax; j++) { - idxu_block[j] = idxu_count; + idxu_block[j] = idxu_count; for(int mb = 0; mb <= j; mb++) for(int ma = 0; ma <= j; ma++) idxu_count++; @@ -196,15 +196,15 @@ void SNA::build_indexlist() // index list for beta and B - int idxb_count = 0; + int idxb_count = 0; for(int j1 = 0; j1 <= twojmax; j1++) for(int j2 = 0; j2 <= j1; j2++) for(int j = j1 - j2; j <= MIN(twojmax, j1 + j2); j += 2) if (j >= j1) idxb_count++; - + idxb_max = idxb_count; idxb = new SNA_BINDICES[idxb_max]; - + idxb_count = 0; for(int j1 = 0; j1 <= twojmax; j1++) for(int j2 = 0; j2 <= j1; j2++) @@ -225,7 +225,7 @@ void SNA::build_indexlist() for(int j2 = 0; j2 <= j1; j2++) for(int j = j1 - j2; j <= MIN(twojmax, j1 + j2); j += 2) { if (j >= j1) { - idxb_block[j1][j2][j] = idxb_count; + idxb_block[j1][j2][j] = idxb_count; idxb_count++; } } @@ -240,18 +240,18 @@ void SNA::build_indexlist() for (int mb = 0; 2*mb <= j; mb++) for (int ma = 0; ma <= j; ma++) idxz_count++; - + idxz_max = idxz_count; idxz = new SNA_ZINDICES[idxz_max]; - + memory->create(idxz_block, jdim, jdim, jdim, "sna:idxz_block"); - + idxz_count = 0; for(int j1 = 0; j1 <= twojmax; j1++) for(int j2 = 0; j2 <= j1; j2++) for(int j = j1 - j2; j <= MIN(twojmax, j1 + j2); j += 2) { - idxz_block[j1][j2][j] = idxz_count; + idxz_block[j1][j2][j] = idxz_count; // find right beta[jjb] entry // multiply and divide by j+1 factors @@ -481,7 +481,7 @@ void SNA::compute_yi(const double* beta) if (j1 == j) { if (j2 == j) betaj = 3*beta[jjb]; else betaj = 2*beta[jjb]; - } else betaj = beta[jjb]; + } else betaj = beta[jjb]; } else if (j >= j2) { const int jjb = idxb_block[j][j2][j1]; if (j2 == j) betaj = 2*beta[jjb]*(j1+1)/(j+1.0); @@ -549,7 +549,7 @@ void SNA::compute_deidrj(double* dedr) double jjjmambyarray_i = ylist_i[jju]; for(int k = 0; k < 3; k++) - dedr[k] += + dedr[k] += (dudr_r[k] * jjjmambyarray_r + dudr_i[k] * jjjmambyarray_i)*0.5; jju++; @@ -588,24 +588,24 @@ void SNA::compute_bi() double sumzu = 0.0; for (int mb = 0; 2*mb < j; mb++) for (int ma = 0; ma <= j; ma++) { - sumzu += ulisttot_r[jju]*zlist_r[jjz] + + sumzu += ulisttot_r[jju]*zlist_r[jjz] + ulisttot_i[jju]*zlist_i[jjz]; jjz++; jju++; - } // end loop over ma, mb + } // end loop over ma, mb // For j even, handle middle column if (j%2 == 0) { int mb = j/2; for(int ma = 0; ma < mb; ma++) { - sumzu += ulisttot_r[jju]*zlist_r[jjz] + + sumzu += ulisttot_r[jju]*zlist_r[jjz] + ulisttot_i[jju]*zlist_i[jjz]; jjz++; jju++; } - sumzu += 0.5*(ulisttot_r[jju]*zlist_r[jjz] + + sumzu += 0.5*(ulisttot_r[jju]*zlist_r[jjz] + ulisttot_i[jju]*zlist_i[jjz]); } // end if jeven @@ -1485,7 +1485,7 @@ void SNA::init_clebsch_gordan() factorial((j - j2 + aa2) / 2 + z) * factorial((j - j1 - bb2) / 2 + z)); } - + cc2 = 2 * m - j; dcg = deltacg(j1, j2, j); sfaccg = sqrt(factorial((j1 + aa2) / 2) * @@ -1495,7 +1495,7 @@ void SNA::init_clebsch_gordan() factorial((j + cc2) / 2) * factorial((j - cc2) / 2) * (j + 1)); - + cglist[idxcg_count] = sum * dcg * sfaccg; idxcg_count++; } @@ -1519,7 +1519,7 @@ void SNA::print_clebsch_gordan() for (int j1 = 0; j1 <= twojmax; j1++) for (int j2 = 0; j2 <= j1; j2++) if (j1-j2 <= j && j1+j2 >= j && (j1+j2+j)%2 == 0) { - int idxcg_count = idxcg_block[j1][j2][j]; + int idxcg_count = idxcg_block[j1][j2][j]; for (int m1 = 0; m1 <= j1; m1++) { aa2 = 2*m1-j1; for (int m2 = 0; m2 <= j2; m2++) { diff --git a/src/SNAP/sna.h b/src/SNAP/sna.h index 5ea65fd84b266e86b28db83a603e5e0807be5689..16d333827728acc18d923dafe73faba17bfa235d 100644 --- a/src/SNAP/sna.h +++ b/src/SNAP/sna.h @@ -81,8 +81,8 @@ private: int idxcg_max, idxu_max, idxz_max, idxb_max; double** rootpqarray; - double* cglist; - int*** idxcg_block; + double* cglist; + int*** idxcg_block; double* ulisttot_r, * ulisttot_i; double** ulist_r_ij, ** ulist_i_ij; diff --git a/src/SPIN/atom_vec_spin.h b/src/SPIN/atom_vec_spin.h index 1f1c34df520cd0f9c7e827e2cbf3f6ba83598e7f..6ce2c9dc7d03ef09e3330ff24859cdc5dcf8a75d 100644 --- a/src/SPIN/atom_vec_spin.h +++ b/src/SPIN/atom_vec_spin.h @@ -67,13 +67,13 @@ class AtomVecSpin : public AtomVec { tagint *tag; int *type,*mask; imageint *image; - double **x,**v,**f; // lattice quantities - - // spin quantities - double **sp; // sp[i][0-2] direction of the spin i - // sp[i][3] atomic magnetic moment of the spin i - double **fm; // fm[i][0-2] direction of magnetic precession - double **fm_long; // storage of long-range spin prec. components + double **x,**v,**f; // lattice quantities + + // spin quantities + double **sp; // sp[i][0-2] direction of the spin i + // sp[i][3] atomic magnetic moment of the spin i + double **fm; // fm[i][0-2] direction of magnetic precession + double **fm_long; // storage of long-range spin prec. components }; } diff --git a/src/SPIN/fix_langevin_spin.h b/src/SPIN/fix_langevin_spin.h index 5358438396b661562bc06376698696bea318bd38..b581b70d3480f86e9741bacb28124feb8ec988eb 100644 --- a/src/SPIN/fix_langevin_spin.h +++ b/src/SPIN/fix_langevin_spin.h @@ -32,17 +32,17 @@ class FixLangevinSpin : public Fix { void init(); void setup(int); void post_force_respa(int, int, int); - void add_tdamping(double spi[3], double fmi[3]); // add transverse damping - void add_temperature(double fmi[3]); // add temperature - int tdamp_flag, ldamp_flag, temp_flag; // damping and temperature flags + void add_tdamping(double spi[3], double fmi[3]); // add transverse damping + void add_temperature(double fmi[3]); // add temperature + int tdamp_flag, ldamp_flag, temp_flag; // damping and temperature flags protected: double *spi, *fmi; - double alpha_t; // transverse mag. damping - double dts; // magnetic timestep - double temp; // spin bath temperature - double D,sigma; // bath intensity var. - double gil_factor; // gilbert's prefactor + double alpha_t; // transverse mag. damping + double dts; // magnetic timestep + double temp; // spin bath temperature + double D,sigma; // bath intensity var. + double gil_factor; // gilbert's prefactor char *id_temp; class Compute *temperature; diff --git a/src/SPIN/fix_neb_spin.h b/src/SPIN/fix_neb_spin.h index 7ac83ddce7b9fb4674be3a33f9e6328f7cc8936d..9646684a3ad648c6c63d4981d97824b9f5c3d61e 100644 --- a/src/SPIN/fix_neb_spin.h +++ b/src/SPIN/fix_neb_spin.h @@ -60,20 +60,20 @@ class FixNEBSpin : public Fix { double **spprev,**spnext,**fmnext; double **springF; double **tangent; - double **xsend,**xrecv; // coords to send/recv to/from other replica - double **fsend,**frecv; // coords to send/recv to/from other replica - double **spsend,**sprecv; // sp to send/recv to/from other replica - double **fmsend,**fmrecv; // fm to send/recv to/from other replica - tagint *tagsend,*tagrecv; // ditto for atom IDs - - // info gathered from all procs in my replica - double **xsendall,**xrecvall; // coords to send/recv to/from other replica - double **fsendall,**frecvall; // force to send/recv to/from other replica - double **spsendall,**sprecvall; // sp to send/recv to/from other replica - double **fmsendall,**fmrecvall; // fm to send/recv to/from other replica - tagint *tagsendall,*tagrecvall; // ditto for atom IDs - - int *counts,*displacements; // used for MPI_Gather + double **xsend,**xrecv; // coords to send/recv to/from other replica + double **fsend,**frecv; // coords to send/recv to/from other replica + double **spsend,**sprecv; // sp to send/recv to/from other replica + double **fmsend,**fmrecv; // fm to send/recv to/from other replica + tagint *tagsend,*tagrecv; // ditto for atom IDs + + // info gathered from all procs in my replica + double **xsendall,**xrecvall; // coords to send/recv to/from other replica + double **fsendall,**frecvall; // force to send/recv to/from other replica + double **spsendall,**sprecvall; // sp to send/recv to/from other replica + double **fmsendall,**fmrecvall; // fm to send/recv to/from other replica + tagint *tagsendall,*tagrecvall; // ditto for atom IDs + + int *counts,*displacements; // used for MPI_Gather double geodesic_distance(double *, double *); void inter_replica_comm(); diff --git a/src/SPIN/fix_nve_spin.cpp b/src/SPIN/fix_nve_spin.cpp index 9b4f1916ae010041ca9ec1c8114710b0b955b131..462a359d99d83feeb8d134265df2a58f2990d762 100644 --- a/src/SPIN/fix_nve_spin.cpp +++ b/src/SPIN/fix_nve_spin.cpp @@ -247,7 +247,7 @@ void FixNVESpin::init() locksetforcespin = (FixSetForceSpin *) modify->fix[iforce]; } } - + // setting the sector variables/lists nsectors = 0; @@ -307,7 +307,7 @@ void FixNVESpin::initial_integrate(int /*vflag*/) ComputeInteractionsSpin(i); AdvanceSingleSpin(i); i = forward_stacks[i]; - } + } } } for (int j = nsectors-1; j >= 0; j--) { // advance quarter s for nlocal @@ -318,7 +318,7 @@ void FixNVESpin::initial_integrate(int /*vflag*/) ComputeInteractionsSpin(i); AdvanceSingleSpin(i); i = backward_stacks[i]; - } + } } } } else if (sector_flag == 0) { // serial seq. update @@ -360,7 +360,7 @@ void FixNVESpin::initial_integrate(int /*vflag*/) ComputeInteractionsSpin(i); AdvanceSingleSpin(i); i = forward_stacks[i]; - } + } } } for (int j = nsectors-1; j >= 0; j--) { // advance quarter s for nlocal @@ -371,7 +371,7 @@ void FixNVESpin::initial_integrate(int /*vflag*/) ComputeInteractionsSpin(i); AdvanceSingleSpin(i); i = backward_stacks[i]; - } + } } } } else if (sector_flag == 0) { // serial seq. update diff --git a/src/SPIN/fix_nve_spin.h b/src/SPIN/fix_nve_spin.h index 5871f721be0b3a32df4bd9edf4bf411563ad3a84..5aa6b8e4e4a6e7f13a15148b4f74218df1d95b7f 100644 --- a/src/SPIN/fix_nve_spin.h +++ b/src/SPIN/fix_nve_spin.h @@ -34,30 +34,30 @@ friend class PairSpin; virtual void initial_integrate(int); virtual void final_integrate(); - void ComputeInteractionsSpin(int); // compute and advance single spin functions + void ComputeInteractionsSpin(int); // compute and advance single spin functions void AdvanceSingleSpin(int); - void sectoring(); // sectoring operation functions + void sectoring(); // sectoring operation functions int coords2sector(double *); void setup_pre_neighbor(); void pre_neighbor(); - int lattice_flag; // lattice_flag = 0 if spins only - // lattice_flag = 1 if spin-lattice calc. + int lattice_flag; // lattice_flag = 0 if spins only + // lattice_flag = 1 if spin-lattice calc. protected: - int sector_flag; // sector_flag = 0 if serial algorithm - // sector_flag = 1 if parallel algorithm + int sector_flag; // sector_flag = 0 if serial algorithm + // sector_flag = 1 if parallel algorithm - double dtv, dtf, dts; // velocity, force, and spin timesteps + double dtv, dtf, dts; // velocity, force, and spin timesteps - int nlocal_max; // max value of nlocal (for size of lists) + int nlocal_max; // max value of nlocal (for size of lists) - int pair_spin_flag; // magnetic pair flags - int long_spin_flag; // magnetic long-range flag - int precession_spin_flag; // magnetic precession flags - int maglangevin_flag; // magnetic langevin flags + int pair_spin_flag; // magnetic pair flags + int long_spin_flag; // magnetic long-range flag + int precession_spin_flag; // magnetic precession flags + int maglangevin_flag; // magnetic langevin flags int tdamp_flag, temp_flag; int setforce_spin_flag; @@ -69,9 +69,9 @@ friend class PairSpin; // pointers to magnetic pair styles - int npairs, npairspin; // # of pairs, and # of spin pairs + int npairs, npairspin; // # of pairs, and # of spin pairs class Pair *pair; - class PairSpin **spin_pairs; // vector of spin pairs + class PairSpin **spin_pairs; // vector of spin pairs // sectoring variables @@ -80,10 +80,10 @@ friend class PairSpin; // stacking variables for sectoring algorithm - int *stack_head; // index of first atom in backward_stacks - int *stack_foot; // index of first atom in forward_stacks - int *backward_stacks; // index of next atom in backward stack - int *forward_stacks; // index of next atom in forward stack + int *stack_head; // index of first atom in backward_stacks + int *stack_foot; // index of first atom in forward_stacks + int *backward_stacks; // index of next atom in backward stack + int *forward_stacks; // index of next atom in forward stack }; diff --git a/src/SPIN/fix_precession_spin.cpp b/src/SPIN/fix_precession_spin.cpp index 3296b282281035e80030759d26ea0348b53bf94e..e1f24e36c2192efd924ead39a43e7fc6fdf90cbd 100644 --- a/src/SPIN/fix_precession_spin.cpp +++ b/src/SPIN/fix_precession_spin.cpp @@ -126,7 +126,7 @@ FixPrecessionSpin::FixPrecessionSpin(LAMMPS *lmp, int narg, char **arg) : Fix(lm nay *= inorm; naz *= inorm; } - + if (cubic_flag) { inorm = 1.0/sqrt(nc1x*nc1x + nc1y*nc1y + nc1z*nc1z); nc1x *= inorm; @@ -236,7 +236,7 @@ void FixPrecessionSpin::post_force(int /* vflag */) if (varflag != CONSTANT) { modify->clearstep_compute(); modify->addstep_compute(update->ntimestep + 1); - set_magneticprecession(); // update mag. field if time-dep. + set_magneticprecession(); // update mag. field if time-dep. } int *mask = atom->mask; @@ -244,7 +244,7 @@ void FixPrecessionSpin::post_force(int /* vflag */) double **sp = atom->sp; const int nlocal = atom->nlocal; double spi[3], fmi[3], epreci; - + eflag = 0; eprec = 0.0; for (int i = 0; i < nlocal; i++) { @@ -265,9 +265,9 @@ void FixPrecessionSpin::post_force(int /* vflag */) epreci -= compute_anisotropy_energy(spi); } - if (cubic_flag) { // compute cubic anisotropy - compute_cubic(spi,fmi); - epreci -= compute_cubic_energy(spi); + if (cubic_flag) { // compute cubic anisotropy + compute_cubic(spi,fmi); + epreci -= compute_cubic_energy(spi); } eprec += epreci; @@ -317,7 +317,7 @@ double FixPrecessionSpin::compute_anisotropy_energy(double spi[3]) double energy = 0.0; double scalar = nax*spi[0] + nay*spi[1] + naz*spi[2]; energy = Ka*scalar*scalar; - return energy; + return energy; } /* ---------------------------------------------------------------------- */ @@ -391,11 +391,11 @@ void FixPrecessionSpin::compute_cubic(double spi[3], double fmi[3]) six1 = 2.0*skx*sky2*skz2; six2 = 2.0*sky*skx2*skz2; six3 = 2.0*skz*skx2*sky2; - + sixx = k2ch*(nc1x*six1 + nc2x*six2 + nc3x*six3); sixy = k2ch*(nc1y*six1 + nc2y*six2 + nc3y*six3); sixz = k2ch*(nc1z*six1 + nc2z*six2 + nc3z*six3); - + fmi[0] += fourx + sixx; fmi[1] += foury + sixy; fmi[2] += fourz + sixz; diff --git a/src/SPIN/fix_precession_spin.h b/src/SPIN/fix_precession_spin.h index 0037784a4858435f19d50fd36de7e86c5813ea3b..6ece653ca70cb62ab289f07d5b0371f4926c8dc1 100644 --- a/src/SPIN/fix_precession_spin.h +++ b/src/SPIN/fix_precession_spin.h @@ -42,7 +42,7 @@ class FixPrecessionSpin : public Fix { int zeeman_flag, aniso_flag, cubic_flag; void compute_single_precession(int, double *, double *); void compute_zeeman(int, double *); - + // uniaxial aniso calculations void compute_anisotropy(double *, double *); @@ -52,9 +52,9 @@ class FixPrecessionSpin : public Fix { void compute_cubic(double *, double *); double compute_cubic_energy(double *); - + protected: - int style; // style of the magnetic precession + int style; // style of the magnetic precession double degree2rad; double hbar; @@ -72,19 +72,19 @@ class FixPrecessionSpin : public Fix { double H_field; double nhx, nhy, nhz; - double hx, hy, hz; // temp. force variables + double hx, hy, hz; // temp. force variables // magnetic anisotropy intensity and direction - double Ka; // aniso const. in eV - double Kah; // aniso const. in rad.THz + double Ka; // aniso const. in eV + double Kah; // aniso const. in rad.THz double nax, nay, naz; - double Kax, Kay, Kaz; // temp. force variables + double Kax, Kay, Kaz; // temp. force variables // cubic anisotropy intensity - double k1c,k2c; // cubic const. in eV - double k1ch,k2ch; // cubic const. in rad.THz + double k1c,k2c; // cubic const. in eV + double k1ch,k2ch; // cubic const. in rad.THz double nc1x,nc1y,nc1z; double nc2x,nc2y,nc2z; double nc3x,nc3y,nc3z; diff --git a/src/SPIN/fix_setforce_spin.cpp b/src/SPIN/fix_setforce_spin.cpp index e36a9d260d488c6cd09ccc4e72221a6be1a14796..ec738b7522ce447c7df93fc11b4e93e76a7c358d 100644 --- a/src/SPIN/fix_setforce_spin.cpp +++ b/src/SPIN/fix_setforce_spin.cpp @@ -140,7 +140,7 @@ void FixSetForceSpin::single_setforce_spin(int i, double fmi[3]) foriginal[0] = foriginal[1] = foriginal[2] = 0.0; force_flag = 0; - + // constant force if (varflag == CONSTANT) { diff --git a/src/SPIN/fix_setforce_spin.h b/src/SPIN/fix_setforce_spin.h index a836911d8578f3f533d80591e2cc39e34d2b60c3..1c5ce54dd37d07a3922da06a9ea123419c102ce5 100644 --- a/src/SPIN/fix_setforce_spin.h +++ b/src/SPIN/fix_setforce_spin.h @@ -29,7 +29,7 @@ class FixSetForceSpin : public FixSetForce { FixSetForceSpin(class LAMMPS *, int, char **); virtual void post_force(int); void post_force_respa(int, int, int); - void single_setforce_spin(int, double *); + void single_setforce_spin(int, double *); }; } diff --git a/src/SPIN/min_spin_cg.cpp b/src/SPIN/min_spin_cg.cpp index d8238c9aee39c04a836b7c9347cbcabd2a86a383..8815ad89dbaf837870c45ceb5e966d7ed7a13b23 100644 --- a/src/SPIN/min_spin_cg.cpp +++ b/src/SPIN/min_spin_cg.cpp @@ -16,8 +16,8 @@ Julien Tranchida (SNL) Please cite the related publication: - Ivanov, A. V., Uzdin, V. M., & Jónsson, H. (2019). Fast and Robust - Algorithm for the Minimisation of the Energy of Spin Systems. arXiv + Ivanov, A. V., Uzdin, V. M., & Jónsson, H. (2019). Fast and Robust + Algorithm for the Minimisation of the Energy of Spin Systems. arXiv preprint arXiv:1904.02669. ------------------------------------------------------------------------- */ @@ -105,7 +105,7 @@ void MinSpinCG::init() error->warning(FLERR,"Line search incompatible gneb"); // set back use_line_search to 0 if more than one replica - + if (linestyle == 3 && nreplica == 1){ use_line_search = 1; } @@ -201,10 +201,10 @@ int MinSpinCG::iterate(int maxiter) if (timer->check_timeout(niter)) return TIMEOUT; - + ntimestep = ++update->ntimestep; niter++; - + // optimize timestep accross processes / replicas // need a force calculation for timestep optimization @@ -249,7 +249,7 @@ int MinSpinCG::iterate(int maxiter) // energy tolerance criterion // only check after DELAYSTEP elapsed since velocties reset to 0 // sync across replicas if running multi-replica minimization - + if (update->etol > 0.0 && ntimestep-last_negative > DELAYSTEP) { if (update->multireplica == 0) { if (fabs(ecurrent-eprevious) < @@ -347,12 +347,12 @@ void MinSpinCG::calc_search_direction() factor = 0.0; - if (local_iter == 0 || local_iter % 5 == 0){ // steepest descent direction + if (local_iter == 0 || local_iter % 5 == 0){ // steepest descent direction for (int i = 0; i < 3 * nlocal; i++) { p_s[i] = -g_cur[i] * factor; g_old[i] = g_cur[i] * factor; } - } else { // conjugate direction + } else { // conjugate direction for (int i = 0; i < 3 * nlocal; i++) { g2old += g_old[i] * g_old[i]; g2 += g_cur[i] * g_cur[i]; @@ -365,7 +365,7 @@ void MinSpinCG::calc_search_direction() MPI_Allreduce(&g2old,&g2old_global,1,MPI_DOUBLE,MPI_SUM,world); // Sum over all replicas. Good for GNEB. - + if (nreplica > 1) { g2 = g2_global * factor; g2old = g2old_global * factor; @@ -374,9 +374,9 @@ void MinSpinCG::calc_search_direction() } if (fabs(g2_global) < 1.0e-60) beta = 0.0; else beta = g2_global / g2old_global; - + // calculate conjugate direction - + for (int i = 0; i < 3 * nlocal; i++) { p_s[i] = (beta * p_s[i] - g_cur[i]) * factor; g_old[i] = g_cur[i] * factor; @@ -394,16 +394,16 @@ void MinSpinCG::advance_spins() { int nlocal = atom->nlocal; double **sp = atom->sp; - double rot_mat[9]; // exponential of matrix made of search direction + double rot_mat[9]; // exponential of matrix made of search direction double s_new[3]; // loop on all spins on proc. for (int i = 0; i < nlocal; i++) { rodrigues_rotation(p_s + 3 * i, rot_mat); - + // rotate spins - + vm3(rot_mat, sp[i], s_new); for (int j = 0; j < 3; j++) sp[i][j] = s_new[j]; } @@ -414,7 +414,7 @@ void MinSpinCG::advance_spins() (R. Murray, Z. Li, and S. Shankar Sastry, A Mathematical Introduction to Robotic Manipulation (1994), p. 28 and 30). - + upp_tr - vector x, y, z so that one calculate U = exp(A) with A= [[0, x, y], [-x, 0, z], @@ -431,7 +431,7 @@ void MinSpinCG::rodrigues_rotation(const double *upp_tr, double *out) fabs(upp_tr[2]) < 1.0e-40){ // if upp_tr is zero, return unity matrix - + for(int k = 0; k < 3; k++){ for(int m = 0; m < 3; m++){ if (m == k) out[3 * k + m] = 1.0; diff --git a/src/SPIN/min_spin_cg.h b/src/SPIN/min_spin_cg.h index 0eed7a61e6b45c70cbacb8ac6f7ac60fba861ed7..640721b8ef00aab9315f12c1053a958c1f004208 100644 --- a/src/SPIN/min_spin_cg.h +++ b/src/SPIN/min_spin_cg.h @@ -35,21 +35,21 @@ class MinSpinCG: public Min { int iterate(int); private: - int local_iter; // for neb - int nlocal_max; // max value of nlocal (for size of lists) - int use_line_search; // use line search or not. - int ireplica,nreplica; // for neb - double dt; // global timestep - double dts; // spin timestep - double discrete_factor; // factor for spin timestep evaluation - double der_e_cur; // current derivative along search dir. - double der_e_pr; // previous derivative along search dir. - double *spvec; // variables for atomic dof, as 1d vector - double *fmvec; // variables for atomic dof, as 1d vector - double *g_old; // gradient vector at previous step - double *g_cur; // current gradient vector - double *p_s; // search direction vector - double **sp_copy; // copy of the spins + int local_iter; // for neb + int nlocal_max; // max value of nlocal (for size of lists) + int use_line_search; // use line search or not. + int ireplica,nreplica; // for neb + double dt; // global timestep + double dts; // spin timestep + double discrete_factor; // factor for spin timestep evaluation + double der_e_cur; // current derivative along search dir. + double der_e_pr; // previous derivative along search dir. + double *spvec; // variables for atomic dof, as 1d vector + double *fmvec; // variables for atomic dof, as 1d vector + double *g_old; // gradient vector at previous step + double *g_cur; // current gradient vector + double *p_s; // search direction vector + double **sp_copy; // copy of the spins void advance_spins(); void calc_gradient(); diff --git a/src/SPIN/min_spin_lbfgs.cpp b/src/SPIN/min_spin_lbfgs.cpp index 2c7e658419f3e53a73dac2dfd5ca3b5d2d662f7b..7f6d7692cda650582ea63406ed3fb1781f648f53 100644 --- a/src/SPIN/min_spin_lbfgs.cpp +++ b/src/SPIN/min_spin_lbfgs.cpp @@ -16,8 +16,8 @@ Julien Tranchida (SNL) Please cite the related publication: - Ivanov, A. V., Uzdin, V. M., & Jónsson, H. (2019). Fast and Robust - Algorithm for the Minimisation of the Energy of Spin Systems. arXiv + Ivanov, A. V., Uzdin, V. M., & Jónsson, H. (2019). Fast and Robust + Algorithm for the Minimisation of the Energy of Spin Systems. arXiv preprint arXiv:1904.02669. ------------------------------------------------------------------------- */ @@ -213,10 +213,10 @@ int MinSpinLBFGS::iterate(int maxiter) if (timer->check_timeout(niter)) return TIMEOUT; - + ntimestep = ++update->ntimestep; niter++; - + // optimize timestep accross processes / replicas // need a force calculation for timestep optimization @@ -264,7 +264,7 @@ int MinSpinLBFGS::iterate(int maxiter) // energy tolerance criterion // only check after DELAYSTEP elapsed since velocties reset to 0 // sync across replicas if running multi-replica minimization - + if (update->etol > 0.0 && ntimestep-last_negative > DELAYSTEP) { if (update->multireplica == 0) { if (fabs(ecurrent-eprevious) < @@ -372,7 +372,7 @@ void MinSpinLBFGS::calc_search_direction() factor = 1.0; } - if (local_iter == 0){ // steepest descent direction + if (local_iter == 0){ // steepest descent direction //if no line search then calculate maximum rotation if (use_line_search == 0) @@ -526,9 +526,9 @@ void MinSpinLBFGS::advance_spins() for (int i = 0; i < nlocal; i++) { rodrigues_rotation(p_s + 3 * i, rot_mat); - + // rotate spins - + vm3(rot_mat, sp[i], s_new); for (int j = 0; j < 3; j++) sp[i][j] = s_new[j]; } @@ -539,7 +539,7 @@ void MinSpinLBFGS::advance_spins() (R. Murray, Z. Li, and S. Shankar Sastry, A Mathematical Introduction to Robotic Manipulation (1994), p. 28 and 30). - + upp_tr - vector x, y, z so that one calculate U = exp(A) with A= [[0, x, y], [-x, 0, z], diff --git a/src/SPIN/min_spin_lbfgs.h b/src/SPIN/min_spin_lbfgs.h index cead605b3279044e6d7c325b2aafb63c1fe84d88..8b470b5d231bd0d4176e1032db021b829b47389c 100644 --- a/src/SPIN/min_spin_lbfgs.h +++ b/src/SPIN/min_spin_lbfgs.h @@ -35,18 +35,18 @@ class MinSpinLBFGS: public Min { int iterate(int); private: - int local_iter; // for neb - int use_line_search; // use line search or not. - int nlocal_max; // max value of nlocal (for size of lists) - int ireplica,nreplica; // for neb - double der_e_cur; // current derivative along search dir. - double der_e_pr; // previous derivative along search dir. + int local_iter; // for neb + int use_line_search; // use line search or not. + int nlocal_max; // max value of nlocal (for size of lists) + int ireplica,nreplica; // for neb + double der_e_cur; // current derivative along search dir. + double der_e_pr; // previous derivative along search dir. double maxepsrot; - double *spvec; // variables for atomic dof, as 1d vector - double *fmvec; // variables for atomic dof, as 1d vector - double *g_old; // gradient vector at previous step - double *g_cur; // current gradient vector - double *p_s; // search direction vector + double *spvec; // variables for atomic dof, as 1d vector + double *fmvec; // variables for atomic dof, as 1d vector + double *g_old; // gradient vector at previous step + double *g_cur; // current gradient vector + double *p_s; // search direction vector void advance_spins(); void calc_gradient(); @@ -58,11 +58,11 @@ class MinSpinLBFGS: public Min { int adescent(double, double); double maximum_rotation(double *); - double *rho; // estimation of curvature - double **ds; // change in rotation matrix between two iterations, da - double **dy; // change in gradients between two iterations, dg - double **sp_copy; // copy of the spins - int num_mem; // number of stored steps + double *rho; // estimation of curvature + double **ds; // change in rotation matrix between two iterations, da + double **dy; // change in gradients between two iterations, dg + double **sp_copy; // copy of the spins + int num_mem; // number of stored steps bigint last_negative; }; diff --git a/src/SPIN/neb_spin.cpp b/src/SPIN/neb_spin.cpp index 559fd1cb49ccb168232d86e1a176e5bd0ce54874..075850d1afb82e0c566d641834f140b90f8aca99 100644 --- a/src/SPIN/neb_spin.cpp +++ b/src/SPIN/neb_spin.cpp @@ -179,7 +179,7 @@ void NEBSpin::run() update->whichflag = 2; update->etol = etol; - update->ftol = ttol; // update->ftol is a torque tolerance + update->ftol = ttol; // update->ftol is a torque tolerance update->multireplica = 1; lmp->init(); @@ -214,7 +214,7 @@ void NEBSpin::run() fprintf(uscreen,"Step MaxReplicaTorque MaxAtomTorque " "GradV0 GradV1 GradVc EBF EBR RDT " "RD1 PE1 RD2 PE2 ... RDN PEN " - "GradV0dottan DN0 ... GradVNdottan DNN\n"); + "GradV0dottan DN0 ... GradVNdottan DNN\n"); } else { fprintf(uscreen,"Step MaxReplicaTorque MaxAtomTorque " "GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... " @@ -224,10 +224,10 @@ void NEBSpin::run() if (ulogfile) { if (verbose) { - fprintf(ulogfile,"Step MaxReplicaTorque MaxAtomTorque " - "GradV0 GradV1 GradVc EBF EBR RDT " - "RD1 PE1 RD2 PE2 ... RDN PEN " - "GradV0dottan DN0 ... GradVNdottan DNN\n"); + fprintf(ulogfile,"Step MaxReplicaTorque MaxAtomTorque " + "GradV0 GradV1 GradVc EBF EBR RDT " + "RD1 PE1 RD2 PE2 ... RDN PEN " + "GradV0dottan DN0 ... GradVNdottan DNN\n"); } else { fprintf(ulogfile,"Step MaxReplicaTorque MaxAtomTorque " "GradV0 GradV1 GradVc EBF EBR RDT RD1 PE1 RD2 PE2 ... " @@ -301,7 +301,7 @@ void NEBSpin::run() fprintf(uscreen,"Step MaxReplicaTorque MaxAtomTorque " "GradV0 GradV1 GradVc EBF EBR RDT " "RD1 PE1 RD2 PE2 ... RDN PEN " - "GradV0dottan DN0... GradVNdottan DNN\n"); + "GradV0dottan DN0... GradVNdottan DNN\n"); } else { fprintf(uscreen,"Step MaxReplicaTorque MaxAtomTorque " "GradV0 GradV1 GradVc " @@ -311,10 +311,10 @@ void NEBSpin::run() } if (ulogfile) { if (verbose) { - fprintf(ulogfile,"Step MaxReplicaTorque MaxAtomTorque " - "GradV0 GradV1 GradVc EBF EBR RDT " - "RD1 PE1 RD2 PE2 ... RDN PEN " - "GradV0dottan DN0 ... GradVNdottan DNN\n"); + fprintf(ulogfile,"Step MaxReplicaTorque MaxAtomTorque " + "GradV0 GradV1 GradVc EBF EBR RDT " + "RD1 PE1 RD2 PE2 ... RDN PEN " + "GradV0dottan DN0 ... GradVNdottan DNN\n"); } else { fprintf(ulogfile,"Step MaxReplicaTorque MaxAtomTorque " "GradV0 GradV1 GradVc " @@ -472,8 +472,8 @@ void NEBSpin::readfile(char *file, int flag) m = atom->map(tag); if (m >= 0 && m < nlocal) { ncount++; - musp = atof(values[1]); - xx = atof(values[2]); + musp = atof(values[1]); + xx = atof(values[2]); yy = atof(values[3]); zz = atof(values[4]); spx = atof(values[5]); @@ -482,39 +482,39 @@ void NEBSpin::readfile(char *file, int flag) if (flag == 0) { - spinit[0] = sp[m][0]; - spinit[1] = sp[m][1]; - spinit[2] = sp[m][2]; - spfinal[0] = spx; - spfinal[1] = spy; - spfinal[2] = spz; - - // interpolate intermediate spin states - - sp[m][3] = musp; - if (fraction == 0.0) { - sp[m][0] = spinit[0]; - sp[m][1] = spinit[1]; - sp[m][2] = spinit[2]; - } else if (fraction == 1.0) { - sp[m][0] = spfinal[0]; - sp[m][1] = spfinal[1]; - sp[m][2] = spfinal[2]; - } else { + spinit[0] = sp[m][0]; + spinit[1] = sp[m][1]; + spinit[2] = sp[m][2]; + spfinal[0] = spx; + spfinal[1] = spy; + spfinal[2] = spz; + + // interpolate intermediate spin states + + sp[m][3] = musp; + if (fraction == 0.0) { + sp[m][0] = spinit[0]; + sp[m][1] = spinit[1]; + sp[m][2] = spinit[2]; + } else if (fraction == 1.0) { + sp[m][0] = spfinal[0]; + sp[m][1] = spfinal[1]; + sp[m][2] = spfinal[2]; + } else { temp_flag = initial_rotation(spinit,spfinal,fraction); rot_flag = MAX(temp_flag,rot_flag); - sp[m][0] = spfinal[0]; - sp[m][1] = spfinal[1]; - sp[m][2] = spfinal[2]; - } + sp[m][0] = spfinal[0]; + sp[m][1] = spfinal[1]; + sp[m][2] = spfinal[2]; + } } else { sp[m][3] = musp; - x[m][0] = xx; + x[m][0] = xx; x[m][1] = yy; x[m][2] = zz; - sp[m][0] = spx; - sp[m][1] = spy; - sp[m][2] = spz; + sp[m][0] = spx; + sp[m][1] = spy; + sp[m][2] = spz; } } @@ -602,24 +602,24 @@ int NEBSpin::initial_rotation(double *spi, double *sploc, double fraction) // Rodrigues' formula breaks, needs to define another axis k if (knormsq == 0.0) { - if (sidotsf > 0.0) { // spins aligned and in same direction + if (sidotsf > 0.0) { // spins aligned and in same direction return 0; - } else if (sidotsf < 0.0) { // spins aligned and in opposite directions + } else if (sidotsf < 0.0) { // spins aligned and in opposite directions // defining a rotation axis // first guess, k = spi x [100] // second guess, k = spi x [010] if (spiy*spiy + spiz*spiz != 0.0) { // spin not along [100] - kx = 0.0; - ky = spiz; - kz = -spiy; - knormsq = ky*ky + kz*kz; + kx = 0.0; + ky = spiz; + kz = -spiy; + knormsq = ky*ky + kz*kz; } else if (spix*spix + spiz*spiz != 0.0) { // spin not along [010] - kx = -spiz; - ky = 0.0; - kz = spix; - knormsq = kx*kx + kz*kz; + kx = -spiz; + ky = 0.0; + kz = spix; + knormsq = kx*kx + kz*kz; } else error->all(FLERR,"Incorrect initial rotation operation"); rot_flag = 1; } @@ -822,9 +822,9 @@ void NEBSpin::print_status() for (int i = 0; i < nreplica; i++) fprintf(uscreen,"%12.8g %12.8g ",rdist[i],all[i][0]); if (verbose) { - for (int i = 0; i < nreplica-1; i++) - fprintf(uscreen,"%12.8g %12.8g ",all[i][2],all[i][5]); - fprintf(uscreen,"%12.8g %12.8g ",NAN,all[nreplica-1][5]); + for (int i = 0; i < nreplica-1; i++) + fprintf(uscreen,"%12.8g %12.8g ",all[i][2],all[i][5]); + fprintf(uscreen,"%12.8g %12.8g ",NAN,all[nreplica-1][5]); } fprintf(uscreen,"\n"); } @@ -838,9 +838,9 @@ void NEBSpin::print_status() for (int i = 0; i < nreplica; i++) fprintf(ulogfile,"%12.8g %12.8g ",rdist[i],all[i][0]); if (verbose) { - for (int i = 0; i < nreplica-1; i++) - fprintf(ulogfile,"%12.8g %12.8g ",all[i][2],all[i][5]); - fprintf(ulogfile,"%12.8g %12.8g ",NAN,all[nreplica-1][5]); + for (int i = 0; i < nreplica-1; i++) + fprintf(ulogfile,"%12.8g %12.8g ",all[i][2],all[i][5]); + fprintf(ulogfile,"%12.8g %12.8g ",NAN,all[nreplica-1][5]); } fprintf(ulogfile,"\n"); fflush(ulogfile); diff --git a/src/SPIN/pair_spin.cpp b/src/SPIN/pair_spin.cpp index d956729e602651045b2e4ae7f66385c568d9e932..f167e3455c329d6c6801e1d076df6e292efaeb35 100644 --- a/src/SPIN/pair_spin.cpp +++ b/src/SPIN/pair_spin.cpp @@ -82,7 +82,7 @@ void PairSpin::init_style() bool have_fix = ((modify->find_fix_by_style("^nve/spin") != -1) || (modify->find_fix_by_style("^neb/spin") != -1)); - + if (!have_fix && (comm->me == 0)) error->warning(FLERR,"Using spin pair style without nve/spin or neb/spin"); diff --git a/src/SPIN/pair_spin.h b/src/SPIN/pair_spin.h index 0111814c72ec39ceb34768d9dde2a30832ca2e20..34f12d8d59a2ff9dd70cc45546131368cf95877c 100644 --- a/src/SPIN/pair_spin.h +++ b/src/SPIN/pair_spin.h @@ -33,8 +33,8 @@ friend class FixNVESpin; virtual void compute_single_pair(int, double *) {} protected: - double hbar; // Planck constant (eV.ps.rad-1) - int lattice_flag; // flag for mech force computation + double hbar; // Planck constant (eV.ps.rad-1) + int lattice_flag; // flag for mech force computation virtual void allocate() {} }; diff --git a/src/SPIN/pair_spin_dipole_cut.cpp b/src/SPIN/pair_spin_dipole_cut.cpp index 4ff90323f26f46b005e4e78fca0f5f4a9f7801a8..a393fe7021fc3cabb7b1e8135520f0473a0f6b96 100644 --- a/src/SPIN/pair_spin_dipole_cut.cpp +++ b/src/SPIN/pair_spin_dipole_cut.cpp @@ -46,11 +46,11 @@ PairSpinDipoleCut::PairSpinDipoleCut(LAMMPS *lmp) : PairSpin(lmp) { spinflag = 1; - hbar = force->hplanck/MY_2PI; // eV/(rad.THz) + hbar = force->hplanck/MY_2PI; // eV/(rad.THz) mub = 9.274e-4; // in A.Ang^2 mu_0 = 785.15; // in eV/Ang/A^2 mub2mu0 = mub * mub * mu_0 / (4.0*MY_PI); // in eV.Ang^3 - //mub2mu0 = mub * mub * mu_0 / (4.0*MY_PI); // in eV + //mub2mu0 = mub * mub * mu_0 / (4.0*MY_PI); // in eV mub2mu0hbinv = mub2mu0 / hbar; // in rad.THz } @@ -76,9 +76,9 @@ void PairSpinDipoleCut::settings(int narg, char **arg) PairSpin::settings(narg,arg); cut_spin_long_global = force->numeric(FLERR,arg[0]); - + // reset cutoffs that have been explicitly set - + if (allocated) { int i,j; for (i = 1; i <= atom->ntypes; i++) { @@ -99,10 +99,10 @@ void PairSpinDipoleCut::settings(int narg, char **arg) void PairSpinDipoleCut::coeff(int narg, char **arg) { if (!allocated) allocate(); - - if (narg != 3) + + if (narg != 3) error->all(FLERR,"Incorrect args in pair_style command"); - + int ilo,ihi,jlo,jhi; force->bounds(FLERR,arg[0],atom->ntypes,ilo,ihi); force->bounds(FLERR,arg[1],atom->ntypes,jlo,jhi); @@ -128,9 +128,9 @@ void PairSpinDipoleCut::coeff(int narg, char **arg) double PairSpinDipoleCut::init_one(int i, int j) { if (setflag[i][j] == 0) error->all(FLERR,"All pair coeffs are not set"); - + cut_spin_long[j][i] = cut_spin_long[i][j]; - + return cut_spin_long_global; } @@ -163,8 +163,8 @@ void *PairSpinDipoleCut::extract(const char *str, int &dim) void PairSpinDipoleCut::compute(int eflag, int vflag) { - int i,j,ii,jj,inum,jnum,itype,jtype; - int *ilist,*jlist,*numneigh,**firstneigh; + int i,j,ii,jj,inum,jnum,itype,jtype; + int *ilist,*jlist,*numneigh,**firstneigh; double rinv,r2inv,r3inv,rsq,local_cut2,evdwl,ecoul; double xi[3],rij[3],eij[3],spi[4],spj[4],fi[3],fmi[3]; @@ -172,13 +172,13 @@ void PairSpinDipoleCut::compute(int eflag, int vflag) if (eflag || vflag) ev_setup(eflag,vflag); else evflag = vflag_fdotr = 0; - int *type = atom->type; - int nlocal = atom->nlocal; + int *type = atom->type; + int nlocal = atom->nlocal; int newton_pair = force->newton_pair; double **x = atom->x; double **f = atom->f; double **fm = atom->fm; - double **sp = atom->sp; + double **sp = atom->sp; inum = list->inum; ilist = list->ilist; @@ -194,9 +194,9 @@ void PairSpinDipoleCut::compute(int eflag, int vflag) xi[1] = x[i][1]; xi[2] = x[i][2]; jlist = firstneigh[i]; - jnum = numneigh[i]; - spi[0] = sp[i][0]; - spi[1] = sp[i][1]; + jnum = numneigh[i]; + spi[0] = sp[i][0]; + spi[1] = sp[i][1]; spi[2] = sp[i][2]; spi[3] = sp[i][3]; itype = type[i]; @@ -206,15 +206,15 @@ void PairSpinDipoleCut::compute(int eflag, int vflag) j &= NEIGHMASK; jtype = type[j]; - spj[0] = sp[j][0]; - spj[1] = sp[j][1]; - spj[2] = sp[j][2]; - spj[3] = sp[j][3]; + spj[0] = sp[j][0]; + spj[1] = sp[j][1]; + spj[2] = sp[j][2]; + spj[3] = sp[j][3]; evdwl = 0.0; fi[0] = fi[1] = fi[2] = 0.0; fmi[0] = fmi[1] = fmi[2] = 0.0; - + rij[0] = x[j][0] - xi[0]; rij[1] = x[j][1] - xi[1]; rij[2] = x[j][2] - xi[2]; @@ -228,36 +228,36 @@ void PairSpinDipoleCut::compute(int eflag, int vflag) if (rsq < local_cut2) { r2inv = 1.0/rsq; - r3inv = r2inv*rinv; - - compute_dipolar(i,j,eij,fmi,spi,spj,r3inv); - if (lattice_flag) compute_dipolar_mech(i,j,eij,fi,spi,spj,r2inv); + r3inv = r2inv*rinv; + + compute_dipolar(i,j,eij,fmi,spi,spj,r3inv); + if (lattice_flag) compute_dipolar_mech(i,j,eij,fi,spi,spj,r2inv); } // force accumulation - f[i][0] += fi[0]; - f[i][1] += fi[1]; + f[i][0] += fi[0]; + f[i][1] += fi[1]; f[i][2] += fi[2]; fm[i][0] += fmi[0]; fm[i][1] += fmi[1]; fm[i][2] += fmi[2]; if (newton_pair || j < nlocal) { - f[j][0] -= fi[0]; - f[j][1] -= fi[1]; + f[j][0] -= fi[0]; + f[j][1] -= fi[1]; f[j][2] -= fi[2]; } if (eflag) { - if (rsq <= local_cut2) { - evdwl -= (spi[0]*fmi[0] + spi[1]*fmi[1] + spi[2]*fmi[2]); - evdwl *= hbar; - } + if (rsq <= local_cut2) { + evdwl -= (spi[0]*fmi[0] + spi[1]*fmi[1] + spi[2]*fmi[2]); + evdwl *= hbar; + } } else evdwl = 0.0; if (evflag) ev_tally_xyz(i,j,nlocal,newton_pair, - evdwl,ecoul,fi[0],fi[1],fi[2],rij[0],rij[1],rij[2]); + evdwl,ecoul,fi[0],fi[1],fi[2],rij[0],rij[1],rij[2]); } } @@ -269,21 +269,21 @@ void PairSpinDipoleCut::compute(int eflag, int vflag) void PairSpinDipoleCut::compute_single_pair(int ii, double fmi[3]) { - int j,jnum,itype,jtype,ntypes; - int *jlist,*numneigh,**firstneigh; + int j,jnum,itype,jtype,ntypes; + int *jlist,*numneigh,**firstneigh; double rsq,rinv,r2inv,r3inv,local_cut2; double xi[3],rij[3],eij[3],spi[4],spj[4]; int k,locflag; - int *type = atom->type; + int *type = atom->type; double **x = atom->x; - double **sp = atom->sp; + double **sp = atom->sp; numneigh = list->numneigh; firstneigh = list->firstneigh; // check if interaction applies to type of ii - + itype = type[ii]; ntypes = atom->ntypes; locflag = 0; @@ -307,28 +307,28 @@ void PairSpinDipoleCut::compute_single_pair(int ii, double fmi[3]) // if interaction applies to type ii, // locflag = 1 and compute pair interaction - + if (locflag == 1) { xi[0] = x[ii][0]; xi[1] = x[ii][1]; xi[2] = x[ii][2]; - spi[0] = sp[ii][0]; - spi[1] = sp[ii][1]; + spi[0] = sp[ii][0]; + spi[1] = sp[ii][1]; spi[2] = sp[ii][2]; spi[3] = sp[ii][3]; jlist = firstneigh[ii]; - jnum = numneigh[ii]; - + jnum = numneigh[ii]; + for (int jj = 0; jj < jnum; jj++) { j = jlist[jj]; j &= NEIGHMASK; jtype = type[j]; - spj[0] = sp[j][0]; - spj[1] = sp[j][1]; - spj[2] = sp[j][2]; - spj[3] = sp[j][3]; + spj[0] = sp[j][0]; + spj[1] = sp[j][1]; + spj[2] = sp[j][2]; + spj[3] = sp[j][3]; rij[0] = x[j][0] - xi[0]; rij[1] = x[j][1] - xi[1]; @@ -344,9 +344,9 @@ void PairSpinDipoleCut::compute_single_pair(int ii, double fmi[3]) if (rsq < local_cut2) { r2inv = 1.0/rsq; r3inv = r2inv*rinv; - + // compute dipolar interaction - + compute_dipolar(ii,j,eij,fmi,spi,spj,r3inv); } } @@ -357,7 +357,7 @@ void PairSpinDipoleCut::compute_single_pair(int ii, double fmi[3]) compute dipolar interaction between spins i and j ------------------------------------------------------------------------- */ -void PairSpinDipoleCut::compute_dipolar(int /* i */, int /* j */, double eij[3], +void PairSpinDipoleCut::compute_dipolar(int /* i */, int /* j */, double eij[3], double fmi[3], double spi[4], double spj[4], double r3inv) { double sjdotr; @@ -373,7 +373,7 @@ void PairSpinDipoleCut::compute_dipolar(int /* i */, int /* j */, double eij[3], } /* ---------------------------------------------------------------------- - compute the mechanical force due to the dipolar interaction between + compute the mechanical force due to the dipolar interaction between atom i and atom j ------------------------------------------------------------------------- */ @@ -387,7 +387,7 @@ void PairSpinDipoleCut::compute_dipolar_mech(int /* i */, int /* j */, double ei sisj = spi[0]*spj[0] + spi[1]*spj[1] + spi[2]*spj[2]; sieij = spi[0]*eij[0] + spi[1]*eij[1] + spi[2]*eij[2]; sjeij = spj[0]*eij[0] + spj[1]*eij[1] + spj[2]*eij[2]; - + bij = sisj - 5.0*sieij*sjeij; pre = 3.0*mub2mu0*gigjri4; @@ -427,7 +427,7 @@ void PairSpinDipoleCut::write_restart(FILE *fp) for (j = i; j <= atom->ntypes; j++) { fwrite(&setflag[i][j],sizeof(int),1,fp); if (setflag[i][j]) { - fwrite(&cut_spin_long[i][j],sizeof(int),1,fp); + fwrite(&cut_spin_long[i][j],sizeof(int),1,fp); } } } @@ -450,10 +450,10 @@ void PairSpinDipoleCut::read_restart(FILE *fp) if (me == 0) utils::sfread(FLERR,&setflag[i][j],sizeof(int),1,fp,NULL,error); MPI_Bcast(&setflag[i][j],1,MPI_INT,0,world); if (setflag[i][j]) { - if (me == 0) { - utils::sfread(FLERR,&cut_spin_long[i][j],sizeof(int),1,fp,NULL,error); - } - MPI_Bcast(&cut_spin_long[i][j],1,MPI_INT,0,world); + if (me == 0) { + utils::sfread(FLERR,&cut_spin_long[i][j],sizeof(int),1,fp,NULL,error); + } + MPI_Bcast(&cut_spin_long[i][j],1,MPI_INT,0,world); } } } diff --git a/src/SPIN/pair_spin_dipole_cut.h b/src/SPIN/pair_spin_dipole_cut.h index f9159a629fbc34e10969665683e922b67a03c444..3adceaf1c717b0720ef90e6cf9c34e6109df8ab4 100644 --- a/src/SPIN/pair_spin_dipole_cut.h +++ b/src/SPIN/pair_spin_dipole_cut.h @@ -34,31 +34,31 @@ class PairSpinDipoleCut : public PairSpin { void settings(int, char **); void coeff(int, char **); double init_one(int, int); - void *extract(const char *, int &); - + void *extract(const char *, int &); + void compute(int, int); void compute_single_pair(int, double *); - void compute_dipolar(int, int, double *, double *, double *, + void compute_dipolar(int, int, double *, double *, double *, double *, double); - void compute_dipolar_mech(int, int, double *, double *, double *, + void compute_dipolar_mech(int, int, double *, double *, double *, double *, double); void write_restart(FILE *); void read_restart(FILE *); void write_restart_settings(FILE *); void read_restart_settings(FILE *); - - double cut_spin_long_global; // global long cutoff distance + + double cut_spin_long_global; // global long cutoff distance protected: - double hbar; // reduced Planck's constant - double mub; // Bohr's magneton - double mu_0; // vacuum permeability - double mub2mu0; // prefactor for mech force - double mub2mu0hbinv; // prefactor for mag force + double hbar; // reduced Planck's constant + double mub; // Bohr's magneton + double mu_0; // vacuum permeability + double mub2mu0; // prefactor for mech force + double mub2mu0hbinv; // prefactor for mag force - double **cut_spin_long; // cutoff distance long + double **cut_spin_long; // cutoff distance long double g_ewald; int ewald_order; diff --git a/src/SPIN/pair_spin_dipole_long.cpp b/src/SPIN/pair_spin_dipole_long.cpp index 3805eb3291c946ebc5708447253d70288780b73d..356f73a809397485dd1a0386e3abf201b93d1a5a 100644 --- a/src/SPIN/pair_spin_dipole_long.cpp +++ b/src/SPIN/pair_spin_dipole_long.cpp @@ -81,9 +81,9 @@ void PairSpinDipoleLong::settings(int narg, char **arg) PairSpin::settings(narg,arg); cut_spin_long_global = force->numeric(FLERR,arg[0]); - + // reset cutoffs that have been explicitly set - + if (allocated) { int i,j; for (i = 1; i <= atom->ntypes; i++) { @@ -103,10 +103,10 @@ void PairSpinDipoleLong::settings(int narg, char **arg) void PairSpinDipoleLong::coeff(int narg, char **arg) { if (!allocated) allocate(); - + if (narg != 3) error->all(FLERR,"Incorrect args in pair_style command"); - + int ilo,ihi,jlo,jhi; force->bounds(FLERR,arg[0],atom->ntypes,ilo,ihi); force->bounds(FLERR,arg[1],atom->ntypes,jlo,jhi); @@ -148,9 +148,9 @@ void PairSpinDipoleLong::init_style() double PairSpinDipoleLong::init_one(int i, int j) { if (setflag[i][j] == 0) error->all(FLERR,"All pair coeffs are not set"); - + cut_spin_long[j][i] = cut_spin_long[i][j]; - + return cut_spin_long_global; } @@ -183,7 +183,7 @@ void *PairSpinDipoleLong::extract(const char *str, int &dim) void PairSpinDipoleLong::compute(int eflag, int vflag) { - int i,j,ii,jj,inum,jnum,itype,jtype; + int i,j,ii,jj,inum,jnum,itype,jtype; double r,rinv,r2inv,rsq; double grij,expm2,t,erfc; double evdwl,ecoul; @@ -193,7 +193,7 @@ void PairSpinDipoleLong::compute(int eflag, int vflag) double fi[3],fmi[3]; double local_cut2; double pre1,pre2,pre3; - int *ilist,*jlist,*numneigh,**firstneigh; + int *ilist,*jlist,*numneigh,**firstneigh; evdwl = ecoul = 0.0; if (eflag || vflag) ev_setup(eflag,vflag); @@ -202,9 +202,9 @@ void PairSpinDipoleLong::compute(int eflag, int vflag) double **x = atom->x; double **f = atom->f; double **fm = atom->fm; - double **sp = atom->sp; - int *type = atom->type; - int nlocal = atom->nlocal; + double **sp = atom->sp; + int *type = atom->type; + int nlocal = atom->nlocal; int newton_pair = force->newton_pair; inum = list->inum; @@ -225,9 +225,9 @@ void PairSpinDipoleLong::compute(int eflag, int vflag) xi[1] = x[i][1]; xi[2] = x[i][2]; jlist = firstneigh[i]; - jnum = numneigh[i]; - spi[0] = sp[i][0]; - spi[1] = sp[i][1]; + jnum = numneigh[i]; + spi[0] = sp[i][0]; + spi[1] = sp[i][1]; spi[2] = sp[i][2]; spi[3] = sp[i][3]; itype = type[i]; @@ -237,17 +237,17 @@ void PairSpinDipoleLong::compute(int eflag, int vflag) j &= NEIGHMASK; jtype = type[j]; - spj[0] = sp[j][0]; - spj[1] = sp[j][1]; - spj[2] = sp[j][2]; - spj[3] = sp[j][3]; + spj[0] = sp[j][0]; + spj[1] = sp[j][1]; + spj[2] = sp[j][2]; + spj[3] = sp[j][3]; evdwl = 0.0; fi[0] = fi[1] = fi[2] = 0.0; fmi[0] = fmi[1] = fmi[2] = 0.0; bij[0] = bij[1] = bij[2] = bij[3] = 0.0; - + rij[0] = x[j][0] - xi[0]; rij[1] = x[j][1] - xi[1]; rij[2] = x[j][2] - xi[2]; @@ -279,22 +279,22 @@ void PairSpinDipoleLong::compute(int eflag, int vflag) // force accumulation - f[i][0] += fi[0]; - f[i][1] += fi[1]; + f[i][0] += fi[0]; + f[i][1] += fi[1]; f[i][2] += fi[2]; - fm[i][0] += fmi[0]; - fm[i][1] += fmi[1]; + fm[i][0] += fmi[0]; + fm[i][1] += fmi[1]; fm[i][2] += fmi[2]; if (newton_pair || j < nlocal) { - f[j][0] -= fi[0]; - f[j][1] -= fi[1]; + f[j][0] -= fi[0]; + f[j][1] -= fi[1]; f[j][2] -= fi[2]; } if (eflag) { if (rsq <= local_cut2) { - evdwl -= spi[0]*fmi[0] + spi[1]*fmi[1] + + evdwl -= spi[0]*fmi[0] + spi[1]*fmi[1] + spi[2]*fmi[2]; evdwl *= hbar; } @@ -314,21 +314,21 @@ void PairSpinDipoleLong::compute(int eflag, int vflag) void PairSpinDipoleLong::compute_single_pair(int ii, double fmi[3]) { - int j,jj,jnum,itype,jtype,ntypes; + int j,jj,jnum,itype,jtype,ntypes; int k,locflag; - int *jlist,*numneigh,**firstneigh; + int *jlist,*numneigh,**firstneigh; double r,rinv,r2inv,rsq,grij,expm2,t,erfc; double local_cut2,pre1,pre2,pre3; double bij[4],xi[3],rij[3],eij[3],spi[4],spj[4]; - int *type = atom->type; + int *type = atom->type; double **x = atom->x; - double **sp = atom->sp; + double **sp = atom->sp; double **fm_long = atom->fm_long; numneigh = list->numneigh; firstneigh = list->firstneigh; - + // check if interaction applies to type of ii itype = type[ii]; @@ -362,16 +362,16 @@ void PairSpinDipoleLong::compute_single_pair(int ii, double fmi[3]) // computation of the exchange interaction // loop over neighbors of atom i - + xi[0] = x[ii][0]; xi[1] = x[ii][1]; xi[2] = x[ii][2]; - spi[0] = sp[ii][0]; - spi[1] = sp[ii][1]; + spi[0] = sp[ii][0]; + spi[1] = sp[ii][1]; spi[2] = sp[ii][2]; spi[3] = sp[ii][3]; jlist = firstneigh[ii]; - jnum = numneigh[ii]; + jnum = numneigh[ii]; //itype = type[i]; for (jj = 0; jj < jnum; jj++) { @@ -379,14 +379,14 @@ void PairSpinDipoleLong::compute_single_pair(int ii, double fmi[3]) j &= NEIGHMASK; jtype = type[j]; - spj[0] = sp[j][0]; - spj[1] = sp[j][1]; - spj[2] = sp[j][2]; - spj[3] = sp[j][3]; + spj[0] = sp[j][0]; + spj[1] = sp[j][1]; + spj[2] = sp[j][2]; + spj[3] = sp[j][3]; fmi[0] = fmi[1] = fmi[2] = 0.0; bij[0] = bij[1] = bij[2] = bij[3] = 0.0; - + rij[0] = x[j][0] - xi[0]; rij[1] = x[j][1] - xi[1]; rij[2] = x[j][2] - xi[2]; @@ -417,7 +417,7 @@ void PairSpinDipoleLong::compute_single_pair(int ii, double fmi[3]) } // adding the kspace components to fm - + fmi[0] += fm_long[ii][0]; fmi[1] += fm_long[ii][1]; fmi[2] += fm_long[ii][2]; @@ -428,7 +428,7 @@ void PairSpinDipoleLong::compute_single_pair(int ii, double fmi[3]) compute dipolar interaction between spins i and j ------------------------------------------------------------------------- */ -void PairSpinDipoleLong::compute_long(int /* i */, int /* j */, double eij[3], +void PairSpinDipoleLong::compute_long(int /* i */, int /* j */, double eij[3], double bij[4], double fmi[3], double spi[4], double spj[4]) { double sjeij,pre; @@ -447,7 +447,7 @@ void PairSpinDipoleLong::compute_long(int /* i */, int /* j */, double eij[3], } /* ---------------------------------------------------------------------- - compute the mechanical force due to the dipolar interaction between + compute the mechanical force due to the dipolar interaction between atom i and atom j ------------------------------------------------------------------------- */ diff --git a/src/SPIN/pair_spin_dipole_long.h b/src/SPIN/pair_spin_dipole_long.h index 1997cbbc55fd06722dcf0abb76c3b9bdbfc77062..1ec30cdb936fdddc7dc1d7a79fec1e8823df79ad 100644 --- a/src/SPIN/pair_spin_dipole_long.h +++ b/src/SPIN/pair_spin_dipole_long.h @@ -35,31 +35,31 @@ class PairSpinDipoleLong : public PairSpin { void coeff(int, char **); void init_style(); double init_one(int, int); - void *extract(const char *, int &); - + void *extract(const char *, int &); + void compute(int, int); void compute_single_pair(int, double *); - void compute_long(int, int, double *, double *, double *, + void compute_long(int, int, double *, double *, double *, double *, double *); - void compute_long_mech(int, int, double *, double *, double *, + void compute_long_mech(int, int, double *, double *, double *, double *, double *); void write_restart(FILE *); void read_restart(FILE *); void write_restart_settings(FILE *); void read_restart_settings(FILE *); - - double cut_spin_long_global; // global long cutoff distance + + double cut_spin_long_global; // global long cutoff distance protected: - double hbar; // reduced Planck's constant - double mub; // Bohr's magneton - double mu_0; // vacuum permeability - double mub2mu0; // prefactor for mech force - double mub2mu0hbinv; // prefactor for mag force + double hbar; // reduced Planck's constant + double mub; // Bohr's magneton + double mu_0; // vacuum permeability + double mub2mu0; // prefactor for mech force + double mub2mu0hbinv; // prefactor for mag force - double **cut_spin_long; // cutoff distance long + double **cut_spin_long; // cutoff distance long double g_ewald; int ewald_order; diff --git a/src/SPIN/pair_spin_dmi.h b/src/SPIN/pair_spin_dmi.h index ac2aa387b3bb309981588ab5d5dfe0400f57ef9a..01022623ec890446fcb43faf9a75cf5a556b9e00 100644 --- a/src/SPIN/pair_spin_dmi.h +++ b/src/SPIN/pair_spin_dmi.h @@ -44,13 +44,13 @@ class PairSpinDmi : public PairSpin { void write_restart_settings(FILE *); void read_restart_settings(FILE *); - double cut_spin_dmi_global; // short range pair cutoff + double cut_spin_dmi_global; // short range pair cutoff protected: - double **DM; // dmi coeff in eV - double **v_dmx, **v_dmy, **v_dmz; // dmi direction - double **vmech_dmx, **vmech_dmy, **vmech_dmz; // dmi mech direction - double **cut_spin_dmi; // cutoff distance dmi + double **DM; // dmi coeff in eV + double **v_dmx, **v_dmy, **v_dmz; // dmi direction + double **vmech_dmx, **vmech_dmy, **vmech_dmz; // dmi mech direction + double **cut_spin_dmi; // cutoff distance dmi void allocate(); }; diff --git a/src/SPIN/pair_spin_exchange.h b/src/SPIN/pair_spin_exchange.h index 5feb99210fbed0a25637670ded91ad61ca2d851d..19eafeb5ca7d6ec27e8bbdc0efcafb689f772b76 100644 --- a/src/SPIN/pair_spin_exchange.h +++ b/src/SPIN/pair_spin_exchange.h @@ -44,13 +44,13 @@ class PairSpinExchange : public PairSpin { void write_restart_settings(FILE *); void read_restart_settings(FILE *); - double cut_spin_exchange_global; // global exchange cutoff distance + double cut_spin_exchange_global; // global exchange cutoff distance protected: - double **J1_mag; // exchange coeffs in eV - double **J1_mech; // mech exchange coeffs in + double **J1_mag; // exchange coeffs in eV + double **J1_mech; // mech exchange coeffs in double **J2, **J3; // J1 in eV, J2 adim, J3 in Ang - double **cut_spin_exchange; // cutoff distance exchange + double **cut_spin_exchange; // cutoff distance exchange void allocate(); }; diff --git a/src/SPIN/pair_spin_magelec.h b/src/SPIN/pair_spin_magelec.h index b9e820b1d1379b73e46c54929e00969ba4c3aa5a..4df0078bead44a3e744c5b10b04d5b0007ae80d1 100644 --- a/src/SPIN/pair_spin_magelec.h +++ b/src/SPIN/pair_spin_magelec.h @@ -44,12 +44,12 @@ class PairSpinMagelec : public PairSpin { void write_restart_settings(FILE *); void read_restart_settings(FILE *); - double cut_spin_magelec_global; // global me cutoff + double cut_spin_magelec_global; // global me cutoff protected: - double **ME, **ME_mech; // magelec coeff in eV - double **v_mex, **v_mey, **v_mez; // magelec direction - double **cut_spin_magelec; // magelec cutoff distance + double **ME, **ME_mech; // magelec coeff in eV + double **v_mex, **v_mey, **v_mez; // magelec direction + double **cut_spin_magelec; // magelec cutoff distance void allocate(); }; diff --git a/src/SPIN/pair_spin_neel.h b/src/SPIN/pair_spin_neel.h index 796d8b53f0277c5b03193bce78bb3341b6cd670f..5261a7f7466ccf831f2872ecda958ab37bee0452 100644 --- a/src/SPIN/pair_spin_neel.h +++ b/src/SPIN/pair_spin_neel.h @@ -44,17 +44,17 @@ class PairSpinNeel : public PairSpin { void write_restart_settings(FILE *); void read_restart_settings(FILE *); - double cut_spin_neel_global; // global neel cutoff distance + double cut_spin_neel_global; // global neel cutoff distance protected: // pseudo-dipolar and pseudo-quadrupolar coeff. - double **g1, **g1_mech; // neel coeffs gij - double **g2, **g3; // g1 in eV, g2 adim, g3 in Ang - double **q1, **q1_mech; // neel coeffs qij - double **q2, **q3; // q1 in eV, q2 adim, q3 in Ang - double **cut_spin_neel; // cutoff distance exchange + double **g1, **g1_mech; // neel coeffs gij + double **g2, **g3; // g1 in eV, g2 adim, g3 in Ang + double **q1, **q1_mech; // neel coeffs qij + double **q2, **q3; // q1 in eV, q2 adim, q3 in Ang + double **cut_spin_neel; // cutoff distance exchange void allocate(); }; diff --git a/src/USER-CGDNA/pair_oxdna2_excv.cpp b/src/USER-CGDNA/pair_oxdna2_excv.cpp index d8a263676f181ee64bf1f17e744f166994d9372b..dd0f6c9d68dc91a6dc4e59f2348d622048ef641f 100644 --- a/src/USER-CGDNA/pair_oxdna2_excv.cpp +++ b/src/USER-CGDNA/pair_oxdna2_excv.cpp @@ -35,7 +35,7 @@ PairOxdna2Excv::~PairOxdna2Excv() /* ---------------------------------------------------------------------- compute vector COM-excluded volume interaction sites in oxDNA2 ------------------------------------------------------------------------- */ -void PairOxdna2Excv::compute_interaction_sites(double e1[3], double e2[3], +void PairOxdna2Excv::compute_interaction_sites(double e1[3], double e2[3], double /*e3*/[3], double rs[3], double rb[3]) { double d_cs_x=-0.34, d_cs_y=+0.3408, d_cb=+0.4; diff --git a/src/USER-CGDNA/pair_oxdna_coaxstk.cpp b/src/USER-CGDNA/pair_oxdna_coaxstk.cpp index f0777fcdbdcee473474645a3121a8c7192e9b390..750c6c022d9b95bc21d9d4366fb0084b164d8968 100644 --- a/src/USER-CGDNA/pair_oxdna_coaxstk.cpp +++ b/src/USER-CGDNA/pair_oxdna_coaxstk.cpp @@ -59,7 +59,7 @@ PairOxdnaCoaxstk::~PairOxdnaCoaxstk() memory->destroy(cut_cxst_hi); memory->destroy(cut_cxst_lc); memory->destroy(cut_cxst_hc); - memory->destroy(cutsq_cxst_hc); + memory->destroy(cutsq_cxst_hc); memory->destroy(b_cxst_lo); memory->destroy(b_cxst_hi); diff --git a/src/USER-CGDNA/pair_oxdna_excv.cpp b/src/USER-CGDNA/pair_oxdna_excv.cpp index 8506f5e3d1a640b2e426794c6e03c091654bfe08..e8e2fad0204c342ab11a298764d90b8c6ae1f269 100644 --- a/src/USER-CGDNA/pair_oxdna_excv.cpp +++ b/src/USER-CGDNA/pair_oxdna_excv.cpp @@ -86,7 +86,7 @@ PairOxdnaExcv::~PairOxdnaExcv() /* ---------------------------------------------------------------------- compute vector COM-excluded volume interaction sites in oxDNA ------------------------------------------------------------------------- */ -void PairOxdnaExcv::compute_interaction_sites(double e1[3], double /*e2*/[3], +void PairOxdnaExcv::compute_interaction_sites(double e1[3], double /*e2*/[3], double /*e3*/[3], double rs[3], double rb[3]) { double d_cs=-0.4, d_cb=+0.4; diff --git a/src/USER-CGDNA/pair_oxdna_hbond.cpp b/src/USER-CGDNA/pair_oxdna_hbond.cpp index 9e4bb1c273dc3f2b09a3cdb7bdce09474c5b463a..26042339ea5f42862ac96bde66225d8ee602c400 100644 --- a/src/USER-CGDNA/pair_oxdna_hbond.cpp +++ b/src/USER-CGDNA/pair_oxdna_hbond.cpp @@ -42,7 +42,7 @@ PairOxdnaHbond::PairOxdnaHbond(LAMMPS *lmp) : Pair(lmp) // sequence-specific base-pairing strength // A:0 C:1 G:2 T:3, 5'- [i][j] -3' - + alpha_hb[0][0] = 1.00000; alpha_hb[0][1] = 1.00000; alpha_hb[0][2] = 1.00000; diff --git a/src/USER-CGDNA/pair_oxdna_stk.cpp b/src/USER-CGDNA/pair_oxdna_stk.cpp index 9db554366b8cbba6626f785a628843d98e6d12f8..4d1c4a7101025072e4aab748da72f02d80382e59 100644 --- a/src/USER-CGDNA/pair_oxdna_stk.cpp +++ b/src/USER-CGDNA/pair_oxdna_stk.cpp @@ -43,7 +43,7 @@ PairOxdnaStk::PairOxdnaStk(LAMMPS *lmp) : Pair(lmp) // sequence-specific stacking strength // A:0 C:1 G:2 T:3, 5'- [i][j] -3' - eta_st[0][0] = 1.11960; + eta_st[0][0] = 1.11960; eta_st[0][1] = 1.00852; eta_st[0][2] = 0.96950; eta_st[0][3] = 0.99632; @@ -121,7 +121,7 @@ PairOxdnaStk::~PairOxdnaStk() tally energy and virial into global and per-atom accumulators NOTE: Although this is a pair style interaction, the algorithm below - follows the virial incrementation of the bond style. This is because + follows the virial incrementation of the bond style. This is because the bond topology is used in the main compute loop. ------------------------------------------------------------------------- */ diff --git a/src/USER-MEAMC/meam_setup_done.cpp b/src/USER-MEAMC/meam_setup_done.cpp index 7000eac6ae49a944ed47c2bfd4a7bb1d33aa254c..37bfce587325bbec7acba6848f9755dba4e6fe56 100644 --- a/src/USER-MEAMC/meam_setup_done.cpp +++ b/src/USER-MEAMC/meam_setup_done.cpp @@ -454,7 +454,7 @@ MEAM::phi_meam(double r, int a, int b) F1 = embedding(this->A_meam[a], this->Ec_meam[a][a], rhobar1, dF); F2 = embedding(this->A_meam[b], this->Ec_meam[b][b], rhobar2, dF); - + // compute Rose function, I.16 Eu = erose(r, this->re_meam[a][b], this->alpha_meam[a][b], this->Ec_meam[a][b], this->repuls_meam[a][b], diff --git a/src/USER-MISC/compute_gyration_shape.cpp b/src/USER-MISC/compute_gyration_shape.cpp index 8c660cfb9ec3e7241499611b794e823f6362f321..aef5ef91a3e080f58f7dabdf65829b7c7127d589 100644 --- a/src/USER-MISC/compute_gyration_shape.cpp +++ b/src/USER-MISC/compute_gyration_shape.cpp @@ -39,7 +39,7 @@ ComputeGyrationShape::ComputeGyrationShape(LAMMPS *lmp, int narg, char **arg) : extscalar = 0; extvector = 0; - // ID of compute gyration + // ID of compute gyration int n = strlen(arg[3]) + 1; id_gyration = new char[n]; strcpy(id_gyration,arg[3]); diff --git a/src/USER-MISC/compute_hma.cpp b/src/USER-MISC/compute_hma.cpp index f1c2e9ba3a82f891fee1547d4c26af4c03f961b2..f552126f4f90589edd52d1b38d9e2ae99806df0c 100644 --- a/src/USER-MISC/compute_hma.cpp +++ b/src/USER-MISC/compute_hma.cpp @@ -78,21 +78,21 @@ using namespace LAMMPS_NS; ComputeHMA::ComputeHMA(LAMMPS *lmp, int narg, char **arg) : Compute(lmp, narg, arg), id_temp(NULL), deltaR(NULL) { - if (narg < 4) error->all(FLERR,"Illegal compute hma command"); + if (narg < 4) error->all(FLERR,"Illegal compute hma command"); if (igroup) error->all(FLERR,"Compute hma must use group all"); - if (strcmp(arg[3],"NULL") == 0) {error->all(FLERR,"fix ID specifying the set temperature of canonical simulation is required");} + if (strcmp(arg[3],"NULL") == 0) {error->all(FLERR,"fix ID specifying the set temperature of canonical simulation is required");} else { - int n = strlen(arg[3]) + 1; - id_temp = new char[n]; - strcpy(id_temp,arg[3]); + int n = strlen(arg[3]) + 1; + id_temp = new char[n]; + strcpy(id_temp,arg[3]); } - - create_attribute = 1; - extscalar = 1; - timeflag = 1; - // (from compute displace/atom) create a new fix STORE style - // our new fix's id (id_fix)= compute-ID + COMPUTE_STORE + create_attribute = 1; + extscalar = 1; + timeflag = 1; + + // (from compute displace/atom) create a new fix STORE style + // our new fix's id (id_fix)= compute-ID + COMPUTE_STORE // our new fix's group = same as compute group int n = strlen(id) + strlen("_COMPUTE_STORE") + 1; @@ -100,30 +100,30 @@ ComputeHMA::ComputeHMA(LAMMPS *lmp, int narg, char **arg) : strcpy(id_fix,id); strcat(id_fix,"_COMPUTE_STORE"); - char **newarg = new char*[6]; + char **newarg = new char*[6]; newarg[0] = id_fix; newarg[1] = group->names[igroup]; - newarg[2] = (char *) "STORE"; + newarg[2] = (char *) "STORE"; newarg[3] = (char *) "peratom"; newarg[4] = (char *) "1"; newarg[5] = (char *) "3"; - modify->add_fix(6,newarg); - fix = (FixStore *) modify->fix[modify->nfix-1]; - - delete [] newarg; + modify->add_fix(6,newarg); + fix = (FixStore *) modify->fix[modify->nfix-1]; + + delete [] newarg; // calculate xu,yu,zu for fix store array // skip if reset from restart file - if (fix->restart_reset) fix->restart_reset = 0; + if (fix->restart_reset) fix->restart_reset = 0; else { - double **xoriginal = fix->astore; + double **xoriginal = fix->astore; double **x = atom->x; imageint *image = atom->image; int nlocal = atom->nlocal; for (int i = 0; i < nlocal; i++) - domain->unmap(x[i],image[i],xoriginal[i]); + domain->unmap(x[i],image[i],xoriginal[i]); } vector_flag = 1; @@ -175,7 +175,7 @@ ComputeHMA::ComputeHMA(LAMMPS *lmp, int narg, char **arg) : memory->create(vector, size_vector, "hma:vector"); if (computeU>-1 || computeCv>-1) { - peflag = 1; + peflag = 1; } if (computeP>-1) { pressflag = 1; @@ -209,9 +209,9 @@ void ComputeHMA::init() { } int irequest = neighbor->request(this,instance_me); - neighbor->requests[irequest]->pair = 0; - neighbor->requests[irequest]->compute = 1; - neighbor->requests[irequest]->occasional = 1; + neighbor->requests[irequest]->pair = 0; + neighbor->requests[irequest]->compute = 1; + neighbor->requests[irequest]->occasional = 1; } void ComputeHMA::init_list(int /* id */, NeighList *ptr) @@ -224,22 +224,22 @@ void ComputeHMA::setup() int dummy=0; int ifix = modify->find_fix(id_temp); if (ifix < 0) error->all(FLERR,"Could not find compute hma temperature ID"); - double * temperat = (double *) modify->fix[ifix]->extract("t_target",dummy); + double * temperat = (double *) modify->fix[ifix]->extract("t_target",dummy); if (temperat==NULL) error->all(FLERR,"Could not find compute hma temperature ID"); - finaltemp = * temperat; + finaltemp = * temperat; // set fix which stores original atom coords int ifix2 = modify->find_fix(id_fix); if (ifix2 < 0) error->all(FLERR,"Could not find hma store fix ID"); - fix = (FixStore *) modify->fix[ifix2]; + fix = (FixStore *) modify->fix[ifix2]; } /* ---------------------------------------------------------------------- */ void ComputeHMA::compute_vector() { - invoked_vector = update->ntimestep; + invoked_vector = update->ntimestep; // grow deltaR array if necessary if (comm_forward>0 && atom->nmax > nmax) { @@ -257,7 +257,7 @@ void ComputeHMA::compute_vector() int nlocal = atom->nlocal; double *h = domain->h; - double xprd = domain->xprd; + double xprd = domain->xprd; double yprd = domain->yprd; double zprd = domain->zprd; @@ -457,7 +457,7 @@ double ComputeHMA::virial_compute(int n) /* ---------------------------------------------------------------------- */ int ComputeHMA::pack_forward_comm(int n, int *list, double *buf, - int /* pbc_flag */, int * /* pbc */) + int /* pbc_flag */, int * /* pbc */) { int m = 0; for (int ii = 0; ii < n; ii++) { diff --git a/src/USER-MISC/compute_hma.h b/src/USER-MISC/compute_hma.h index 233e8bbe57a36446cf062ba83289621622d691f6..5fc1130c8bd4f19467d9a45045782f178c97c2c2 100644 --- a/src/USER-MISC/compute_hma.h +++ b/src/USER-MISC/compute_hma.h @@ -64,4 +64,4 @@ class ComputeHMA : public Compute { #endif #endif - + diff --git a/src/USER-MISC/fix_bond_react.cpp b/src/USER-MISC/fix_bond_react.cpp index bfa93e178c23a00355bb4259360bf28fec41ac42..33aab5b4ad03e766006dc036edfbc7cd7f5b2b47 100644 --- a/src/USER-MISC/fix_bond_react.cpp +++ b/src/USER-MISC/fix_bond_react.cpp @@ -259,12 +259,12 @@ FixBondReact::FixBondReact(LAMMPS *lmp, int narg, char **arg) : "probability seed must be positive"); iarg += 3; } else if (strcmp(arg[iarg],"max_rxn") == 0) { - if (iarg+2 > narg) error->all(FLERR,"Illegal fix bond/react command: " - "'max_rxn' has too few arguments"); - max_rxn[rxn] = force->inumeric(FLERR,arg[iarg+1]); - if (max_rxn[rxn] < 0) error->all(FLERR,"Illegal fix bond/react command: " - "'max_rxn' cannot be negative"); - iarg += 2; + if (iarg+2 > narg) error->all(FLERR,"Illegal fix bond/react command: " + "'max_rxn' has too few arguments"); + max_rxn[rxn] = force->inumeric(FLERR,arg[iarg+1]); + if (max_rxn[rxn] < 0) error->all(FLERR,"Illegal fix bond/react command: " + "'max_rxn' cannot be negative"); + iarg += 2; } else if (strcmp(arg[iarg],"stabilize_steps") == 0) { if (stabilization_flag == 0) error->all(FLERR,"Stabilize_steps keyword " "used without stabilization keyword"); diff --git a/src/USER-MISC/pair_cosine_squared.cpp b/src/USER-MISC/pair_cosine_squared.cpp index ffa8a6603ce6e7bbe49372bd710ab12ebddba097..7c0cb3372d496d04b9ff158a1a1ddf91fdd40a76 100644 --- a/src/USER-MISC/pair_cosine_squared.cpp +++ b/src/USER-MISC/pair_cosine_squared.cpp @@ -125,7 +125,7 @@ void PairCosineSquared::coeff(int narg, char **arg) { if (narg < 4 || narg > 6) error->all(FLERR, "Incorrect args for pair coefficients (too few or too many)"); - + if (!allocated) allocate(); @@ -459,7 +459,7 @@ double PairCosineSquared::single(int /* i */, int /* j */, int itype, int jtype, double &fforce) { double r, r2inv, r6inv, cosone, force, energy; - + r = sqrt(rsq); if (r <= sigma[itype][jtype]) { @@ -478,7 +478,7 @@ double PairCosineSquared::single(int /* i */, int /* j */, int itype, int jtype, } } else { cosone = cos(MY_PI*(r-sigma[itype][jtype]) / (2.0*w[itype][jtype])); - force = -(MY_PI*epsilon[itype][jtype] / (2.0*w[itype][jtype])) * + force = -(MY_PI*epsilon[itype][jtype] / (2.0*w[itype][jtype])) * sin(MY_PI*(r-sigma[itype][jtype]) / w[itype][jtype]) / r; energy = -epsilon[itype][jtype]*cosone*cosone; } diff --git a/src/USER-MISC/pair_extep.cpp b/src/USER-MISC/pair_extep.cpp index 8507fd49f675e5770d9887c5c2223948d518cc77..f7670d30b5c1546b3e74cd6a1c64b2cf5f4d5a55 100644 --- a/src/USER-MISC/pair_extep.cpp +++ b/src/USER-MISC/pair_extep.cpp @@ -757,7 +757,7 @@ void PairExTeP::read_file(char *file) // skip line if it is a leftover from the previous section, // which can be identified by having 3 elements (instead of 2) // as first words. - + if (isupper(words[0][0]) && isupper(words[1][0]) && isupper(words[2][0])) continue; diff --git a/src/USER-MISC/pair_ilp_graphene_hbn.cpp b/src/USER-MISC/pair_ilp_graphene_hbn.cpp index e09287ae2322b80c7f6a31893db2c562128ba641..e998abf005b046c1b03986ffe31abbdb2225912b 100644 --- a/src/USER-MISC/pair_ilp_graphene_hbn.cpp +++ b/src/USER-MISC/pair_ilp_graphene_hbn.cpp @@ -442,7 +442,7 @@ void PairILPGrapheneHBN::compute(int eflag, int vflag) if (vflag_fdotr) virial_fdotr_compute(); } -/* ---------------------------------------------------------------------- +/* ---------------------------------------------------------------------- van der Waals forces and energy ------------------------------------------------------------------------- */ @@ -523,7 +523,7 @@ void PairILPGrapheneHBN::calc_FvdW(int eflag, int /* vflag */) // derivatives fpair = -6.0*p.C6*r8inv/TSvdw + p.C6*p.d/p.seff*(TSvdw-1.0)*TSvdw2inv*r8inv*r; - fsum = fpair*Tap - Vilp*dTap/r; + fsum = fpair*Tap - Vilp*dTap/r; f[i][0] += fsum*delx; f[i][1] += fsum*dely; @@ -540,7 +540,7 @@ void PairILPGrapheneHBN::calc_FvdW(int eflag, int /* vflag */) } } -/* ---------------------------------------------------------------------- +/* ---------------------------------------------------------------------- Repulsive forces and energy ------------------------------------------------------------------------- */ @@ -634,12 +634,12 @@ void PairILPGrapheneHBN::calc_FRep(int eflag, int /* vflag */) dprodnorm1[0] = dnormdri[0][0][i]*delx + dnormdri[1][0][i]*dely + dnormdri[2][0][i]*delz; dprodnorm1[1] = dnormdri[0][1][i]*delx + dnormdri[1][1][i]*dely + dnormdri[2][1][i]*delz; dprodnorm1[2] = dnormdri[0][2][i]*delx + dnormdri[1][2][i]*dely + dnormdri[2][2][i]*delz; - fp1[0] = prodnorm1*normal[i][0]*fpair1; - fp1[1] = prodnorm1*normal[i][1]*fpair1; - fp1[2] = prodnorm1*normal[i][2]*fpair1; - fprod1[0] = prodnorm1*dprodnorm1[0]*fpair1; - fprod1[1] = prodnorm1*dprodnorm1[1]*fpair1; - fprod1[2] = prodnorm1*dprodnorm1[2]*fpair1; + fp1[0] = prodnorm1*normal[i][0]*fpair1; + fp1[1] = prodnorm1*normal[i][1]*fpair1; + fp1[2] = prodnorm1*normal[i][2]*fpair1; + fprod1[0] = prodnorm1*dprodnorm1[0]*fpair1; + fprod1[1] = prodnorm1*dprodnorm1[1]*fpair1; + fprod1[2] = prodnorm1*dprodnorm1[2]*fpair1; fkcx = (delx*fsum - fp1[0])*Tap - Vilp*dTap*delx/r; fkcy = (dely*fsum - fp1[1])*Tap - Vilp*dTap*dely/r; diff --git a/src/USER-MISC/pair_kolmogorov_crespi_full.cpp b/src/USER-MISC/pair_kolmogorov_crespi_full.cpp index 8ba3dc9db30909d300820b68928e4e883ea70613..eea0b1261c9738a80aeb5c974231e864a5009e70 100644 --- a/src/USER-MISC/pair_kolmogorov_crespi_full.cpp +++ b/src/USER-MISC/pair_kolmogorov_crespi_full.cpp @@ -444,7 +444,7 @@ void PairKolmogorovCrespiFull::compute(int eflag, int vflag) if (vflag_fdotr) virial_fdotr_compute(); } -/* ---------------------------------------------------------------------- +/* ---------------------------------------------------------------------- van der Waals forces and energy ------------------------------------------------------------------------- */ @@ -519,11 +519,11 @@ void PairKolmogorovCrespiFull::calc_FvdW(int eflag, int /* vflag */) dTap = calc_dTap(r,Rcut); } else {Tap = 1.0; dTap = 0.0;} - Vkc = -p.A*p.z06*r6inv; + Vkc = -p.A*p.z06*r6inv; // derivatives fpair = -6.0*p.A*p.z06*r8inv; - fsum = fpair*Tap - Vkc*dTap/r; + fsum = fpair*Tap - Vkc*dTap/r; f[i][0] += fsum*delx; f[i][1] += fsum*dely; @@ -540,7 +540,7 @@ void PairKolmogorovCrespiFull::calc_FvdW(int eflag, int /* vflag */) } } -/* ---------------------------------------------------------------------- +/* ---------------------------------------------------------------------- Repulsive forces and energy ------------------------------------------------------------------------- */ @@ -607,11 +607,11 @@ void PairKolmogorovCrespiFull::calc_FRep(int eflag, int /* vflag */) r = sqrt(rsq); - // turn on/off taper function - if (tap_flag) { - Tap = calc_Tap(r,sqrt(cutsq[itype][jtype])); - dTap = calc_dTap(r,sqrt(cutsq[itype][jtype])); - } else {Tap = 1.0; dTap = 0.0;} + // turn on/off taper function + if (tap_flag) { + Tap = calc_Tap(r,sqrt(cutsq[itype][jtype])); + dTap = calc_dTap(r,sqrt(cutsq[itype][jtype])); + } else {Tap = 1.0; dTap = 0.0;} // Calculate the transverse distance prodnorm1 = normal[i][0]*delx + normal[i][1]*dely + normal[i][2]*delz; @@ -626,7 +626,7 @@ void PairKolmogorovCrespiFull::calc_FRep(int eflag, int /* vflag */) sumC11 = (p.C2 + 2.0*p.C4*rho_ij)*p.delta2inv; frho_ij = exp1*sumC1; sumCff = 0.5*p.C + frho_ij; - Vkc = exp0*sumCff; + Vkc = exp0*sumCff; // derivatives fpair = p.lambda*exp0/r*sumCff; @@ -653,10 +653,10 @@ void PairKolmogorovCrespiFull::calc_FRep(int eflag, int /* vflag */) f[j][1] -= fkcy; f[j][2] -= fkcz; - // calculate the forces acted on the neighbors of atom i from atom j - KC_neighs_i = KC_firstneigh[i]; - for (kk = 0; kk < KC_numneigh[i]; kk++) { - k = KC_neighs_i[kk]; + // calculate the forces acted on the neighbors of atom i from atom j + KC_neighs_i = KC_firstneigh[i]; + for (kk = 0; kk < KC_numneigh[i]; kk++) { + k = KC_neighs_i[kk]; if (k == i) continue; // derivatives of the product of rij and ni respect to rk, k=0,1,2, where atom k is the neighbors of atom i dprodnorm1[0] = dnormal[0][0][kk][i]*delx + dnormal[1][0][kk][i]*dely + dnormal[2][0][kk][i]*delz; @@ -672,7 +672,7 @@ void PairKolmogorovCrespiFull::calc_FRep(int eflag, int /* vflag */) delkj[1] = x[k][1] - x[j][1]; delkj[2] = x[k][2] - x[j][2]; if (evflag) ev_tally_xyz(k,j,nlocal,newton_pair,0.0,0.0,fk[0],fk[1],fk[2],delkj[0],delkj[1],delkj[2]); - } + } if (eflag) { if (tap_flag) pvector[1] += evdwl = Tap*Vkc; @@ -790,7 +790,7 @@ void PairKolmogorovCrespiFull::calc_normal() memory->create(dnormal,3,3,3,nmax,"KolmogorovCrespiFull:dnormal"); } - inum = list->inum; + inum = list->inum; ilist = list->ilist; //Calculate normals for (ii = 0; ii < inum; ii++) { diff --git a/src/USER-MISC/pair_lj_expand_coul_long.cpp b/src/USER-MISC/pair_lj_expand_coul_long.cpp index 957173bf7f2e25e466cfa708cd631df4400f9b38..f52e427c18569bf3d7d79132f7935e53c95c8bbe 100644 --- a/src/USER-MISC/pair_lj_expand_coul_long.cpp +++ b/src/USER-MISC/pair_lj_expand_coul_long.cpp @@ -786,9 +786,9 @@ double PairLJExpandCoulLong::init_one(int i, int j) (1.0/3.0 + 2.0*shift1/(4.0*rc1) + shift2/(5.0*rc2))/rc3); ptail_ij = 16.0*MY_PI*all[0]*all[1]*epsilon[i][j] * sig6 * ((1.0/9.0 + 3.0*shift1/(10.0*rc1) + - 3.0*shift2/(11.0*rc2) + shift3/(12.0*rc3))*2.0*sig6/rc9 - + 3.0*shift2/(11.0*rc2) + shift3/(12.0*rc3))*2.0*sig6/rc9 - (1.0/3.0 + 3.0*shift1/(4.0*rc1) + - 3.0*shift2/(5.0*rc2) + shift3/(6.0*rc3))/rc3); + 3.0*shift2/(5.0*rc2) + shift3/(6.0*rc3))/rc3); } return cut; diff --git a/src/USER-MISC/pair_local_density.cpp b/src/USER-MISC/pair_local_density.cpp index 97aa3dcaca0ea5aba0645291a7017ac4ef342f98..8ad9793f98700c18fe58dfa6a328737e215c30cc 100644 --- a/src/USER-MISC/pair_local_density.cpp +++ b/src/USER-MISC/pair_local_density.cpp @@ -61,9 +61,9 @@ static const char cite_pair_local_density[] = PairLocalDensity::PairLocalDensity(LAMMPS *lmp) : Pair(lmp) { restartinfo = 0; - one_coeff = 1; + one_coeff = 1; single_enable = 1; - + // stuff read from tabulated file nLD = 0; nrho = 0; @@ -81,14 +81,14 @@ PairLocalDensity::PairLocalDensity(LAMMPS *lmp) : Pair(lmp) lowercutsq = NULL; frho = NULL; rho = NULL; - + // splined arrays frho_spline = NULL; - + // per-atom arrays nmax = 0; fp = NULL; - localrho = NULL; + localrho = NULL; // set comm size needed by this pair comm_forward = 1; @@ -114,10 +114,10 @@ PairLocalDensity::~PairLocalDensity() } memory->destroy(frho_spline); - - memory->destroy(rho_min); + + memory->destroy(rho_min); memory->destroy(rho_max); - memory->destroy(delta_rho); + memory->destroy(delta_rho); memory->destroy(c0); memory->destroy(c2); memory->destroy(c4); @@ -137,37 +137,37 @@ PairLocalDensity::~PairLocalDensity() void PairLocalDensity::compute(int eflag, int vflag) { - + int i,j,ii,jj,m,k,inum,jnum,itype,jtype; double xtmp,ytmp,ztmp,delx,dely,delz,rsq; double rsqinv, phi, uLD, dphi, evdwl,fpair; double p, *coeff; int *ilist,*jlist,*numneigh,**firstneigh; - phi = uLD = evdwl = fpair = rsqinv = 0.0; + phi = uLD = evdwl = fpair = rsqinv = 0.0; if (eflag || vflag) ev_setup(eflag,vflag); else evflag = vflag_fdotr = eflag_global = eflag_atom = 0; /* localrho = LD at each atom fp = derivative of embedding energy at each atom for each LD potential - uLD = embedding energy of each atom due to each LD potential*/ - + uLD = embedding energy of each atom due to each LD potential*/ + // grow LD and fp arrays if necessary // need to be atom->nmax in length - + if (atom->nmax > nmax) { memory->destroy(localrho); memory->destroy(fp); - nmax = atom->nmax; + nmax = atom->nmax; memory->create(localrho, nLD, nmax, "pairLD:localrho"); memory->create(fp, nLD, nmax, "pairLD:fp"); } - double **x = atom->x; + double **x = atom->x; double **f = atom->f; - int *type = atom->type; - int nlocal = atom->nlocal; + int *type = atom->type; + int nlocal = atom->nlocal; int newton_pair = force->newton_pair; inum = list->inum; @@ -179,13 +179,13 @@ void PairLocalDensity::compute(int eflag, int vflag) if (newton_pair) { m = nlocal + atom->nghost; - for (k = 0; k < nLD; k++) { - for (i = 0; i < m; i++) { + for (k = 0; k < nLD; k++) { + for (i = 0; i < m; i++) { localrho[k][i] = 0.0; fp[k][i] = 0.0; } - } - } + } + } else { for (k = 0; k < nLD; k++){ for (i = 0; i < nlocal; i++) { @@ -196,7 +196,7 @@ void PairLocalDensity::compute(int eflag, int vflag) } // loop over neighs of central atoms and types of LDs - + for (ii = 0; ii < inum; ii++) { i = ilist[ii]; xtmp = x[i][0]; @@ -205,19 +205,19 @@ void PairLocalDensity::compute(int eflag, int vflag) itype = type[i]; jlist = firstneigh[i]; jnum = numneigh[i]; - + for (jj = 0; jj < jnum; jj++) { j = jlist[jj]; j &= NEIGHMASK; - jtype = type[j]; + jtype = type[j]; // calculate distance-squared between i,j atom-types - + delx = xtmp - x[j][0]; dely = ytmp - x[j][1]; delz = ztmp - x[j][2]; - rsq = delx*delx + dely*dely + delz*delz; - + rsq = delx*delx + dely*dely + delz*delz; + // calculating LDs based on central and neigh filters for (k = 0; k < nLD; k++) { @@ -230,36 +230,36 @@ void PairLocalDensity::compute(int eflag, int vflag) else { phi = c0[k] + rsq * (c2[k] + rsq * (c4[k] + c6[k]*rsq)); } - localrho[k][i] += (phi * b[k][jtype]); - - /*checking for both i,j is necessary + localrho[k][i] += (phi * b[k][jtype]); + + /*checking for both i,j is necessary since a half neighbor list is processed.*/ - + if (newton_pair || jreverse_comm_pair(this); - // + // - for (ii = 0; ii < inum; ii++) { + for (ii = 0; ii < inum; ii++) { i = ilist[ii]; itype = type[i]; - uLD = 0.0; + uLD = 0.0; for (k = 0; k < nLD; k++) { - /*skip over this loop if the LD potential + /*skip over this loop if the LD potential is not intendend for central atomtype */ - if (!(a[k][itype])) continue; - + if (!(a[k][itype])) continue; + // linear extrapolation at rho_min and rho_max - + if (localrho[k][i] <= rho_min[k]) { coeff = frho_spline[k][0]; fp[k][i] = coeff[2]; @@ -284,14 +284,14 @@ void PairLocalDensity::compute(int eflag, int vflag) if (eflag) { if (eflag_global) eng_vdwl += uLD; - if (eflag_atom) eatom[i] += uLD; + if (eflag_atom) eatom[i] += uLD; } } // communicate LD and fp to all procs comm->forward_comm_pair(this); - + // compute forces on each atom // loop over neighbors of my atoms @@ -306,7 +306,7 @@ void PairLocalDensity::compute(int eflag, int vflag) jnum = numneigh[i]; for (jj = 0; jj < jnum; jj++) { - j = jlist[jj]; + j = jlist[jj]; j &= NEIGHMASK; jtype = type[j]; @@ -316,19 +316,19 @@ void PairLocalDensity::compute(int eflag, int vflag) dely = ytmp - x[j][1]; delz = ztmp - x[j][2]; rsq = delx*delx + dely*dely + delz*delz; - - // calculate force between two atoms + + // calculate force between two atoms fpair = 0.0; if (rsq < cutforcesq) { // global cutoff check rsqinv = 1.0/rsq; for (k = 0; k < nLD; k++) { if (rsq >= lowercutsq[k] && rsq < uppercutsq[k]) { dphi = rsq * (2.0*c2[k] + rsq * (4.0*c4[k] + 6.0*c6[k]*rsq)); - fpair += -(a[k][itype]*b[k][jtype]*fp[k][i] + a[k][jtype]*b[k][itype]*fp[k][j]) * dphi; + fpair += -(a[k][itype]*b[k][jtype]*fp[k][i] + a[k][jtype]*b[k][itype]*fp[k][j]) * dphi; } - } - fpair *= rsqinv; - + } + fpair *= rsqinv; + f[i][0] += delx*fpair; f[i][1] += dely*fpair; f[i][2] += delz*fpair; @@ -337,19 +337,19 @@ void PairLocalDensity::compute(int eflag, int vflag) f[j][1] -= dely*fpair; f[j][2] -= delz*fpair; } - - /*eng_vdwl has already been completely built, + + /*eng_vdwl has already been completely built, so no need to add anything here*/ - + if (eflag) evdwl = 0.0; - + if (evflag) ev_tally(i,j,nlocal,newton_pair, evdwl,0.0,fpair,delx,dely,delz); } } } - + if (vflag_fdotr) virial_fdotr_compute(); } @@ -362,7 +362,7 @@ void PairLocalDensity::allocate() { allocated = 1; int n = atom->ntypes; - + memory->create(cutsq,n+1,n+1,"pair:cutsq"); memory->create(setflag,n+1,n+1,"pair:setflag"); @@ -430,7 +430,7 @@ void PairLocalDensity::init_style() // request half neighbor list array2spline(); - + // half neighbor request neighbor->request(this); } @@ -446,7 +446,7 @@ double PairLocalDensity::init_one(int /* i */, int /* j */) cutmax = 0.0; for (int k = 0; k < nLD; k++) cutmax = MAX(cutmax,uppercut[k]); - + cutforcesq = cutmax*cutmax; return cutmax; @@ -454,13 +454,13 @@ double PairLocalDensity::init_one(int /* i */, int /* j */) /*-------------------------------------------------------------------------- - pair_write functionality for this pair style that gives just a snap-shot + pair_write functionality for this pair style that gives just a snap-shot of the LD potential without doing an actual MD run ---------------------------------------------------------------------------*/ double PairLocalDensity::single(int /* i */, int /* j */, int itype, int jtype, - double rsq, double /* factor_coul */, - double /* factor_lj */, double &fforce) + double rsq, double /* factor_coul */, + double /* factor_lj */, double &fforce) { int m, k, index; double rsqinv, p, uLD; @@ -473,7 +473,7 @@ double PairLocalDensity::single(int /* i */, int /* j */, int itype, int jtype, for (k = 0; k < nLD; k++) { LD[k][1] = 0.0; // itype:- 1 LD[k][2] = 0.0; // jtype:- 2 - } + } rsqinv = 1.0/rsq; for (k = 0; k < nLD; k++) { @@ -487,13 +487,13 @@ double PairLocalDensity::single(int /* i */, int /* j */, int itype, int jtype, phi = c0[k] + rsq * (c2[k] + rsq * (c4[k] + c6[k]*rsq)); } LD[k][1] += (phi * b[k][jtype]); - LD[k][2] += (phi * b[k][itype]); + LD[k][2] += (phi * b[k][itype]); } for (k = 0; k < nLD; k++) { if (a[k][itype]) index = 1; if (a[k][jtype]) index = 2; - + if (LD[k][index] <= rho_min[k]) { coeff = frho_spline[k][0]; dFdrho = coeff[2]; @@ -545,43 +545,43 @@ void PairLocalDensity::array2spline() { } -/* ---------------------------------------------------------------------- - (one-dimensional) cubic spline interpolation sub-routine, - which determines the coeffs for a clamped cubic spline +/* ---------------------------------------------------------------------- + (one-dimensional) cubic spline interpolation sub-routine, + which determines the coeffs for a clamped cubic spline given tabulated data ------------------------------------------------------------------------*/ -void PairLocalDensity::interpolate_cbspl(int n, double delta, - double *f, double **spline) +void PairLocalDensity::interpolate_cbspl(int n, double delta, + double *f, double **spline) { /* inputs: n number of interpolating points - - f array containing function values to - be interpolated; f[i] is the function - value corresponding to x[i] - ('x' refers to the independent var) - - delta difference in tabulated values of x - - outputs: (packaged as columns of the coeff matrix) - coeff_b coeffs of linear terms - coeff_c coeffs of quadratic terms - coeff_d coeffs of cubic terms + + f array containing function values to + be interpolated; f[i] is the function + value corresponding to x[i] + ('x' refers to the independent var) + + delta difference in tabulated values of x + + outputs: (packaged as columns of the coeff matrix) + coeff_b coeffs of linear terms + coeff_c coeffs of quadratic terms + coeff_d coeffs of cubic terms spline matrix that collects b,c,d - - - other parameters: - fpa derivative of function at x=a - fpb derivative of function at x=b + + + other parameters: + fpa derivative of function at x=a + fpb derivative of function at x=b */ - + double *dl, *dd, *du; double *coeff_b, *coeff_c, *coeff_d; double fpa, fpb; int i; - + coeff_b = new double [n]; coeff_c = new double [n]; coeff_d = new double [n]; @@ -598,11 +598,11 @@ void PairLocalDensity::interpolate_cbspl(int n, double delta, // set slopes at beginning and end fpa = 0.; fpb = 0.; - + for ( i = 0; i < n-1; i++ ) { dl[i] = du[i] = delta; } - + dd[0] = 2.0 * delta; dd[n-1] = 2.0 * delta; coeff_c[0] = ( 3.0 / delta ) * ( f[1] - f[0] ) - 3.0 * fpa; @@ -612,20 +612,20 @@ void PairLocalDensity::interpolate_cbspl(int n, double delta, coeff_c[i+1] = ( 3.0 / delta ) * ( f[i+2] - f[i+1] ) - ( 3.0 / delta ) * ( f[i+1] - f[i] ); } - + // tridiagonal solver for ( i = 0; i < n-1; i++ ) { du[i] /= dd[i]; dd[i+1] -= dl[i]*du[i]; } - + coeff_c[0] /= dd[0]; for ( i = 1; i < n; i++ ) coeff_c[i] = ( coeff_c[i] - dl[i-1] * coeff_c[i-1] ) / dd[i]; - + for ( i = n-2; i >= 0; i-- ) coeff_c[i] -= coeff_c[i+1] * du[i]; - + for ( i = 0; i < n-1; i++ ) { coeff_d[i] = ( coeff_c[i+1] - coeff_c[i] ) / ( 3.0 * delta ); coeff_b[i] = ( f[i+1] - f[i] ) / delta - delta * ( coeff_c[i+1] + 2.0*coeff_c[i] ) / 3.0; @@ -648,7 +648,7 @@ void PairLocalDensity::interpolate_cbspl(int n, double delta, spline[i][1] = 2.0*spline[i][4]/delta; spline[i][0] = 3.0*spline[i][3]/delta; } - + delete [] coeff_b; delete [] coeff_c; delete [] coeff_d; @@ -662,7 +662,7 @@ void PairLocalDensity::interpolate_cbspl(int n, double delta, ------------------------------------------------------------------------- */ void PairLocalDensity::parse_file(char *filename) { - + int k, n; int me = comm->me; FILE *fptr; @@ -680,23 +680,23 @@ void PairLocalDensity::parse_file(char *filename) { } double *ftmp; // tmp var to extract the complete 2D frho array from file - + // broadcast number of LD potentials and number of (rho,frho) pairs if (me == 0) { - - // first 2 comment lines ignored + + // first 2 comment lines ignored utils::sfgets(FLERR,line,MAXLINE,fptr,filename,error); utils::sfgets(FLERR,line,MAXLINE,fptr,filename,error); - + // extract number of potentials and number of (frho, rho) points - utils::sfgets(FLERR,line,MAXLINE,fptr,filename,error); + utils::sfgets(FLERR,line,MAXLINE,fptr,filename,error); sscanf(line, "%d %d", &nLD, &nrho); utils::sfgets(FLERR,line,MAXLINE,fptr,filename,error); } MPI_Bcast(&nLD,1,MPI_INT,0,world); MPI_Bcast(&nrho,1,MPI_INT,0,world); - + // setting up all arrays to be read from files and broadcasted memory->create(uppercut, nLD, "pairLD:uppercut"); memory->create(lowercut, nLD, "pairLD:lowercut"); @@ -706,14 +706,14 @@ void PairLocalDensity::parse_file(char *filename) { memory->create(c2, nLD, "pairLD:c2"); memory->create(c4, nLD, "pairLD:c4"); memory->create(c6, nLD, "pairLD:c6"); - memory->create(rho_min, nLD, "pairLD:rho_min"); + memory->create(rho_min, nLD, "pairLD:rho_min"); memory->create(rho_max, nLD, "pairLD:rho_max"); memory->create(delta_rho, nLD,"pairLD:delta_rho"); memory->create(ftmp, nrho*nLD, "pairLD:ftmp"); - - // setting up central and neighbor atom filters + + // setting up central and neighbor atom filters memory->create(a, nLD, atom->ntypes+1 , "pairLD:a"); - memory->create(b, nLD, atom->ntypes+1, "pairLD:b"); + memory->create(b, nLD, atom->ntypes+1, "pairLD:b"); if (me == 0) { for (n = 1; n <= atom->ntypes; n++){ for (k = 0; k < nLD; k++) { @@ -721,17 +721,17 @@ void PairLocalDensity::parse_file(char *filename) { b[k][n] = 0; } } - } - + } + // read file block by block - + if (me == 0) { for (k = 0; k < nLD; k++) { - - // parse upper and lower cut values + + // parse upper and lower cut values if (fgets(line,MAXLINE,fptr)==NULL) break; sscanf(line, "%lf %lf", &lowercut[k], &uppercut[k]); - + // parse and broadcast central atom filter utils::sfgets(FLERR,line, MAXLINE, fptr,filename,error); char *tmp = strtok(line, " /t/n/r/f"); @@ -739,27 +739,27 @@ void PairLocalDensity::parse_file(char *filename) { a[k][atoi(tmp)] = 1; tmp = strtok(NULL, " /t/n/r/f"); } - + // parse neighbor atom filter utils::sfgets(FLERR,line, MAXLINE, fptr,filename,error); tmp = strtok(line, " /t/n/r/f"); - while (tmp != NULL) { + while (tmp != NULL) { b[k][atoi(tmp)] = 1; tmp = strtok(NULL, " /t/n/r/f"); } - + // parse min, max and delta rho values utils::sfgets(FLERR,line, MAXLINE, fptr,filename,error); sscanf(line, "%lf %lf %lf", &rho_min[k], &rho_max[k], &delta_rho[k]); // recompute delta_rho from scratch for precision delta_rho[k] = (rho_max[k] - rho_min[k]) / (nrho - 1); - + // parse tabulated frho values from each line into temporary array - for (n = 0; n < nrho; n++) { + for (n = 0; n < nrho; n++) { utils::sfgets(FLERR,line,MAXLINE,fptr,filename,error); sscanf(line, "%lf", &ftmp[k*nrho + n]); } - + // ignore blank line at the end of every block utils::sfgets(FLERR,line,MAXLINE,fptr,filename,error); @@ -778,7 +778,7 @@ void PairLocalDensity::parse_file(char *filename) { } } - // Broadcast all parsed arrays + // Broadcast all parsed arrays MPI_Bcast(&lowercut[0], nLD, MPI_DOUBLE, 0, world); MPI_Bcast(&uppercut[0], nLD, MPI_DOUBLE, 0, world); MPI_Bcast(&lowercutsq[0], nLD, MPI_DOUBLE, 0, world); @@ -800,8 +800,8 @@ void PairLocalDensity::parse_file(char *filename) { // set up rho and frho arrays memory->create(rho, nLD, nrho, "pairLD:rho"); - memory->create(frho, nLD, nrho, "pairLD:frho"); - + memory->create(frho, nLD, nrho, "pairLD:frho"); + for (k = 0; k < nLD; k++) { for (n = 0; n < nrho; n++) { rho[k][n] = rho_min[k] + n*delta_rho[k]; @@ -812,24 +812,24 @@ void PairLocalDensity::parse_file(char *filename) { // delete temporary array memory->destroy(ftmp); } - + /* ---------------------------------------------------------------------- communication routines ------------------------------------------------------------------------- */ int PairLocalDensity::pack_comm(int n, int *list, double *buf, - int /* pbc_flag */, int * /* pbc */) { + int /* pbc_flag */, int * /* pbc */) { int i,j,k; - int m; + int m; m = 0; for (i = 0; i < n; i++) { - j = list[i]; + j = list[i]; for (k = 0; k < nLD; k++) { - buf[m++] = fp[k][j]; - } + buf[m++] = fp[k][j]; + } } - + return nLD; } @@ -838,14 +838,14 @@ int PairLocalDensity::pack_comm(int n, int *list, double *buf, void PairLocalDensity::unpack_comm(int n, int first, double *buf) { int i,k,m,last; - + m = 0; last = first + n; for (i = first; i < last; i++) { for (k = 0; k < nLD; k++) { fp[k][i] = buf[m++]; } - } + } } /* ---------------------------------------------------------------------- */ @@ -876,7 +876,7 @@ void PairLocalDensity::unpack_reverse_comm(int n, int *list, double *buf) { j = list[i]; for (k = 0; k < nLD; k++) { localrho[k][j] += buf[m++]; - } + } } } diff --git a/src/USER-MISC/pair_local_density.h b/src/USER-MISC/pair_local_density.h index 77aab1399b0a1d1fe25197d6d336bae56f0dfe1f..e99935268017b01f62cfa4a9faa3d5c6b4c0fe18 100644 --- a/src/USER-MISC/pair_local_density.h +++ b/src/USER-MISC/pair_local_density.h @@ -13,8 +13,8 @@ pair_LocalDensity written by: Tanmoy Sanyal and M. Scott Shell from UC Santa Barbara David Rosenberger: TU Darmstadt --------------------------------------------------------------------------*/ - +-------------------------------------------------------------------------*/ + #ifdef PAIR_CLASS @@ -40,7 +40,7 @@ class PairLocalDensity : public Pair { void init_style(); double init_one(int, int); double single(int, int, int, int, double, double, double, double &); - + virtual int pack_comm(int, int *, double *, int, int *); virtual void unpack_comm(int, int, double *); int pack_reverse_comm(int, int, double *); @@ -51,7 +51,7 @@ class PairLocalDensity : public Pair { protected: //------------------------------------------------------------------------ //This information is read from the tabulated input file - + int nLD, nrho; // number of LD types int **a, **b; // central and neigh atom filters double *uppercut, *lowercut; // upper and lower cutoffs @@ -59,26 +59,26 @@ class PairLocalDensity : public Pair { double *c0, *c2, *c4, *c6; // coeffs for indicator function double *rho_min, *rho_max, *delta_rho; // min, max & grid-size for LDs double **rho, **frho; // LD and LD function tables - + //------------------------------------------------------------------------ - + double ***frho_spline; // splined LD potentials double cutmax; // max cutoff for all elements double cutforcesq; // square of global upper cutoff - + int nmax; // max size of per-atom arrays double **localrho; // per-atom LD double **fp; // per-atom LD potential function derivative - + void allocate(); - - // read tabulated input file - void parse_file(char *); - - // convert array to spline - void array2spline(); - - // cubic spline interpolation + + // read tabulated input file + void parse_file(char *); + + // convert array to spline + void array2spline(); + + // cubic spline interpolation void interpolate_cbspl(int, double, double *, double **); }; diff --git a/src/USER-MOLFILE/reader_molfile.cpp b/src/USER-MOLFILE/reader_molfile.cpp index 5cff56753b2bbc951d75806eb7a945a7051ea5c6..292a451a870b45bd1858dda76ea702a0956cbb2b 100644 --- a/src/USER-MOLFILE/reader_molfile.cpp +++ b/src/USER-MOLFILE/reader_molfile.cpp @@ -282,7 +282,7 @@ bigint ReaderMolfile::read_header(double box[3][3], int &boxinfo, int &triclinic } // if no field info requested, just return - + if (!fieldinfo) return natoms; memory->create(fieldindex,nfield,"read_dump:fieldindex"); diff --git a/src/USER-OMP/reaxc_init_md_omp.cpp b/src/USER-OMP/reaxc_init_md_omp.cpp index fce23c645f478000f9785337117db340153f71b3..66f1acf91c9a8e118d61e2f5b540ef69cf046152 100644 --- a/src/USER-OMP/reaxc_init_md_omp.cpp +++ b/src/USER-OMP/reaxc_init_md_omp.cpp @@ -46,8 +46,8 @@ extern int Init_Workspace(reax_system*, control_params*, storage*, char*); /* ---------------------------------------------------------------------- */ int Init_ListsOMP(reax_system *system, control_params *control, - simulation_data * /* data */, storage * /* workspace */, - reax_list **lists, mpi_datatypes * /* mpi_data */, char * /* msg */) + simulation_data * /* data */, storage * /* workspace */, + reax_list **lists, mpi_datatypes * /* mpi_data */, char * /* msg */) { int i, total_hbonds, total_bonds, bond_cap, num_3body, cap_3body, Htop; int *hb_top, *bond_top; diff --git a/src/USER-PHONON/dynamical_matrix.cpp b/src/USER-PHONON/dynamical_matrix.cpp index fe266fba76f525a6e75562e30c942591d62d787e..149521912476c2e91cb29fe3d4617f6fff0c4f89 100644 --- a/src/USER-PHONON/dynamical_matrix.cpp +++ b/src/USER-PHONON/dynamical_matrix.cpp @@ -259,7 +259,7 @@ void DynamicalMatrix::calculateMatrix() fprintf(screen," Atoms in group = " BIGINT_FORMAT "\n", gcount); fprintf(screen," Total dynamical matrix elements = " BIGINT_FORMAT "\n", (dynlen*dynlen) ); } - + // emit dynlen rows of dimalpha*dynlen*dimbeta elements update->nsteps = 0; diff --git a/src/USER-PLUMED/fix_plumed.cpp b/src/USER-PLUMED/fix_plumed.cpp index c75a48f9b492556f8ebb122c0f29792df7cc8ac4..b02de2af0d2f1b82311801978d5ebfb3a7ebfbad 100644 --- a/src/USER-PLUMED/fix_plumed.cpp +++ b/src/USER-PLUMED/fix_plumed.cpp @@ -411,7 +411,7 @@ void FixPlumed::post_force(int /* vflag */) // pass all pointers to plumed: p->cmd("setStep",&step); - int plumedStopCondition=0; + int plumedStopCondition=0; p->cmd("setStopFlag",&plumedStopCondition); p->cmd("setPositions",&atom->x[0][0]); p->cmd("setBox",&box[0][0]); diff --git a/src/USER-REAXC/reaxc_ffield.cpp b/src/USER-REAXC/reaxc_ffield.cpp index e3a6645fc2c09d5e3009490ddcd5f327460ee202..c8e097eb1c648b0c3623a45dd33240716231856a 100644 --- a/src/USER-REAXC/reaxc_ffield.cpp +++ b/src/USER-REAXC/reaxc_ffield.cpp @@ -154,7 +154,7 @@ char Read_Force_Field( FILE *fp, reax_interaction *reax, /* Sanity checks */ if (c == 2 && !lgflag) - control->error_ptr->all(FLERR, "Force field file requires using 'lgvdw yes'"); + control->error_ptr->all(FLERR, "Force field file requires using 'lgvdw yes'"); if (c < 9) { snprintf (errmsg, 1024, "Missing parameter(s) in line %s", s); diff --git a/src/USER-YAFF/pair_lj_switch3_coulgauss_long.cpp b/src/USER-YAFF/pair_lj_switch3_coulgauss_long.cpp index 77a25db7cc103b4de5587b021010300672805cc9..022b93a0d28d2a54396ba12fe81c7fc9d72156aa 100644 --- a/src/USER-YAFF/pair_lj_switch3_coulgauss_long.cpp +++ b/src/USER-YAFF/pair_lj_switch3_coulgauss_long.cpp @@ -133,7 +133,7 @@ void PairLJSwitch3CoulGaussLong::compute(int eflag, int vflag) if (rsq < cutsq[itype][jtype]) { r2inv = 1.0/rsq; - + if (rsq < cut_coulsq) { if (!ncoultablebits || rsq <= tabinnersq) { r = sqrt(rsq); @@ -202,7 +202,7 @@ void PairLJSwitch3CoulGaussLong::compute(int eflag, int vflag) if (r>cut_lj[itype][jtype]-truncw) { trx = (cut_lj[itype][jtype]-r)*truncwi; tr = trx*trx*(3.0-2.0*trx); - ftr = 6.0*trx*(1.0-trx)*r*truncwi; + ftr = 6.0*trx*(1.0-trx)*r*truncwi; forcelj = forcelj*tr + evdwl*ftr; evdwl *= tr; } @@ -683,7 +683,7 @@ double PairLJSwitch3CoulGaussLong::single(int i, int j, int itype, int jtype, if (r>cut_lj[itype][jtype]-truncw) { trx = (cut_lj[itype][jtype]-r)*truncwi; tr = trx*trx*(3.0-2.0*trx); - ftr = 6.0*trx*(1.0-trx)*r*truncwi; + ftr = 6.0*trx*(1.0-trx)*r*truncwi; forcelj = forcelj*tr + evdwl*ftr; evdwl *= tr; } diff --git a/src/USER-YAFF/pair_mm3_switch3_coulgauss_long.cpp b/src/USER-YAFF/pair_mm3_switch3_coulgauss_long.cpp index 3a4a49c880dbb40ee544b821302522b0954c7b4a..6b0466cd6dcc23ea398f8e3047dee35930677272 100644 --- a/src/USER-YAFF/pair_mm3_switch3_coulgauss_long.cpp +++ b/src/USER-YAFF/pair_mm3_switch3_coulgauss_long.cpp @@ -133,7 +133,7 @@ void PairMM3Switch3CoulGaussLong::compute(int eflag, int vflag) if (rsq < cutsq[itype][jtype]) { r2inv = 1.0/rsq; - + if (rsq < cut_coulsq) { if (!ncoultablebits || rsq <= tabinnersq) { r = sqrt(rsq); @@ -204,7 +204,7 @@ void PairMM3Switch3CoulGaussLong::compute(int eflag, int vflag) if (r>cut_lj[itype][jtype]-truncw) { trx = (cut_lj[itype][jtype]-r)*truncwi; tr = trx*trx*(3.0-2.0*trx); - ftr = 6.0*trx*(1.0-trx)*r*truncwi; + ftr = 6.0*trx*(1.0-trx)*r*truncwi; forcelj = forcelj*tr + evdwl*ftr; evdwl *= tr; } @@ -683,7 +683,7 @@ double PairMM3Switch3CoulGaussLong::single(int i, int j, int itype, int jtype, if (r>cut_lj[itype][jtype]-truncw) { trx = (cut_lj[itype][jtype]-r)*truncwi; tr = trx*trx*(3.0-2.0*trx); - ftr = 6.0*trx*(1.0-trx)*r*truncwi; + ftr = 6.0*trx*(1.0-trx)*r*truncwi; forcelj = forcelj*tr + evdwl*ftr; evdwl *= tr; } diff --git a/src/comm.cpp b/src/comm.cpp index fa6790e0ece9ae2a5f31e3e84b375dd95a1bac4f..9a577c0e4fac69a361723c281cadf461dabd4770 100644 --- a/src/comm.cpp +++ b/src/comm.cpp @@ -673,7 +673,7 @@ double Comm::get_comm_cutoff() // cutoff was given and no pair style present. Otherwise print a // warning, if the estimated bond based cutoff is larger than what // is currently used. - + if (!force->pair && (cutghostuser == 0.0)) { maxcommcutoff = MAX(maxcommcutoff,maxbondcutoff); } else { diff --git a/src/compute_bond_local.cpp b/src/compute_bond_local.cpp index e14f188e62c2fc37e622056f8197b91515f03fc5..010e8db627f4bf13ad174222ac216f3954f43a70 100644 --- a/src/compute_bond_local.cpp +++ b/src/compute_bond_local.cpp @@ -130,7 +130,7 @@ ComputeBondLocal::ComputeBondLocal(LAMMPS *lmp, int narg, char **arg) : singleflag = 0; velflag = 0; for (int i = 0; i < nvalues; i++) { - if (bstyle[i] == ENGPOT || bstyle[i] == FORCE || bstyle[i] == FX || + if (bstyle[i] == ENGPOT || bstyle[i] == FORCE || bstyle[i] == FX || bstyle[i] == FY || bstyle[i] == FZ) singleflag = 1; if (bstyle[i] == VELVIB || bstyle[i] == OMEGA || bstyle[i] == ENGTRANS || bstyle[i] == ENGVIB || bstyle[i] == ENGROT) velflag = 1; diff --git a/src/compute_orientorder_atom.cpp b/src/compute_orientorder_atom.cpp index 0a783561272299e7fa726f1387e6f9e7f9e3b5ab..dcb104fc3a45074e2df1137e1d9eda2cc35c5c9a 100644 --- a/src/compute_orientorder_atom.cpp +++ b/src/compute_orientorder_atom.cpp @@ -493,7 +493,7 @@ void ComputeOrientOrderAtom::calc_boop(double **rlist, } // calculate Q_l - // NOTE: optional W_l_hat and components of Q_qlcomp use these stored Q_l values + // NOTE: optional W_l_hat and components of Q_qlcomp use these stored Q_l values int jj = 0; for (int il = 0; il < nqlist; il++) { @@ -505,7 +505,7 @@ void ComputeOrientOrderAtom::calc_boop(double **rlist, qn[jj++] = qnormfac * sqrt(qm_sum); } - // TODO: + // TODO: // 1. [done]Need to allocate extra memory in qnarray[] for this option // 2. [done]Need to add keyword option // 3. [done]Need to caclulate Clebsch-Gordan/Wigner 3j coefficients @@ -673,7 +673,7 @@ void ComputeOrientOrderAtom::init_clebsch_gordan() for(int m2 = MAX(0,l-m1); m2 < MIN(2*l+1,3*l-m1+1); m2++) { bb2 = m2 - l; m = aa2 + bb2 + l; - + sum = 0.0; for (int z = MAX(0, MAX(-aa2, bb2)); z <= MIN(l, MIN(l - aa2, l + bb2)); z++) { @@ -686,7 +686,7 @@ void ComputeOrientOrderAtom::init_clebsch_gordan() factorial(aa2 + z) * factorial(-bb2 + z)); } - + cc2 = m - l; sfaccg = sqrt(factorial(l + aa2) * factorial(l - aa2) * @@ -695,7 +695,7 @@ void ComputeOrientOrderAtom::init_clebsch_gordan() factorial(l + cc2) * factorial(l - cc2) * (2*l + 1)); - + sfac1 = factorial(3*l + 1); sfac2 = factorial(l); dcg = sqrt(sfac2*sfac2*sfac2 / sfac1); diff --git a/src/fix_neigh_history.cpp b/src/fix_neigh_history.cpp index 1967e433361e36a0749c6a3bfe147365297e3da2..9b632b7ff8372845634f07249196bc14bfff7723 100644 --- a/src/fix_neigh_history.cpp +++ b/src/fix_neigh_history.cpp @@ -421,7 +421,7 @@ void FixNeighHistory::pre_exchange_newton() m = npartner[j]++; partner[j][m] = tag[i]; jvalues = &valuepartner[j][dnum*m]; - if (pair->nondefault_history_transfer) + if (pair->nondefault_history_transfer) pair->transfer_history(onevalues,jvalues); else for (n = 0; n < dnum; n++) jvalues[n] = -onevalues[n]; } @@ -535,7 +535,7 @@ void FixNeighHistory::pre_exchange_no_newton() m = npartner[j]++; partner[j][m] = tag[i]; jvalues = &valuepartner[j][dnum*m]; - if (pair->nondefault_history_transfer) + if (pair->nondefault_history_transfer) pair->transfer_history(onevalues, jvalues); else for (n = 0; n < dnum; n++) jvalues[n] = -onevalues[n]; } diff --git a/src/force.cpp b/src/force.cpp index cc121a5f801d1d6bf9ee951811bf206f642a3702..63d1fcbe3197111b1251e358d6245669504a4a00 100644 --- a/src/force.cpp +++ b/src/force.cpp @@ -204,17 +204,17 @@ void Force::init() if (!bond && (atom->nbonds > 0)) { error->warning(FLERR,"Bonds are defined but no bond style is set"); if ((special_lj[1] != 1.0) || (special_coul[1] != 1.0)) - error->warning(FLERR,"Likewise 1-2 special neighbor interactions != 1.0"); + error->warning(FLERR,"Likewise 1-2 special neighbor interactions != 1.0"); } if (!angle && (atom->nangles > 0)) { error->warning(FLERR,"Angles are defined but no angle style is set"); if ((special_lj[2] != 1.0) || (special_coul[2] != 1.0)) - error->warning(FLERR,"Likewise 1-3 special neighbor interactions != 1.0"); + error->warning(FLERR,"Likewise 1-3 special neighbor interactions != 1.0"); } if (!dihedral && (atom->ndihedrals > 0)) { error->warning(FLERR,"Dihedrals are defined but no dihedral style is set"); if ((special_lj[3] != 1.0) || (special_coul[3] != 1.0)) - error->warning(FLERR,"Likewise 1-4 special neighbor interactions != 1.0"); + error->warning(FLERR,"Likewise 1-4 special neighbor interactions != 1.0"); } if (!improper && (atom->nimpropers > 0)) error->warning(FLERR,"Impropers are defined but no improper style is set"); diff --git a/src/input.h b/src/input.h index 4b274c17a99bbbd723bb9a5d186af7d849975ed3..b4df0f016052ecc8d1a662bcdaf74adb115ded1f 100644 --- a/src/input.h +++ b/src/input.h @@ -39,7 +39,7 @@ class Input : protected Pointers { // substitute for variables in a string int expand_args(int, char **, int, char **&); // expand args due to wildcard void write_echo(const char *); // send text to active echo file pointers - + protected: char *command; // ptr to current command int echo_screen; // 0 = no, 1 = yes diff --git a/src/lammps.cpp b/src/lammps.cpp index b3f420b03da780c9288816a590599079d2a31082..a2d405855d71d863c4b0abf85dc725ae86993c3f 100644 --- a/src/lammps.cpp +++ b/src/lammps.cpp @@ -1013,7 +1013,7 @@ void _noopt LAMMPS::init_pkg_lists() #undef REGION_CLASS } -bool LAMMPS::is_installed_pkg(const char *pkg) +bool LAMMPS::is_installed_pkg(const char *pkg) { for (int i=0; installed_packages[i] != NULL; ++i) if (strcmp(installed_packages[i],pkg) == 0) return true; diff --git a/src/min.cpp b/src/min.cpp index 5721d5ab3ea246c2b37ba088b4b00d0e95831a35..3b60f2c2e692587afc92a10642c06227dcf66f01 100644 --- a/src/min.cpp +++ b/src/min.cpp @@ -898,7 +898,7 @@ double Min::total_torque() MPI_Allreduce(&ftotsqone,&ftotsqall,1,MPI_DOUBLE,MPI_SUM,world); // multiply it by hbar so that units are in eV - + return sqrt(ftotsqall) * hbar; } diff --git a/src/min.h b/src/min.h index 61f9ce0bda5b384e9e95b2883861662b68ddd594..874c7b773db4fdaf4811077f085c168044947c57 100644 --- a/src/min.h +++ b/src/min.h @@ -47,8 +47,8 @@ class Min : protected Pointers { // methods for spin minimizers double total_torque(); - double inf_torque(); - double max_torque(); + double inf_torque(); + double max_torque(); virtual void init_style() {} virtual void setup_style() = 0; @@ -64,11 +64,11 @@ class Min : protected Pointers { int virial_style; // compute virial explicitly or implicitly int external_force_clear; // clear forces locally or externally - double dmax; // max dist to move any atom in one step - int linestyle; // 0 = backtrack, 1 = quadratic, 2 = forcezero - // 3 = spin_cubic, 4 = spin_none + double dmax; // max dist to move any atom in one step + int linestyle; // 0 = backtrack, 1 = quadratic, 2 = forcezero + // 3 = spin_cubic, 4 = spin_none - int normstyle; // TWO, MAX or INF flag for force norm evaluation + int normstyle; // TWO, MAX or INF flag for force norm evaluation int nelist_global,nelist_atom; // # of PE,virial computes to check int nvlist_global,nvlist_atom; diff --git a/src/min_cg.cpp b/src/min_cg.cpp index 4cf53f08bce32c83314733537542f4260895e929..9db1fd9799fbabef5e2145ee4abc3eaa5f473cde 100644 --- a/src/min_cg.cpp +++ b/src/min_cg.cpp @@ -91,7 +91,7 @@ int MinCG::iterate(int maxiter) dot[0] += fvec[i]*fvec[i]; dot[1] += fvec[i]*g[i]; } - + if (nextra_atom) for (m = 0; m < nextra_atom; m++) { fatom = fextra_atom[m]; diff --git a/src/neighbor.cpp b/src/neighbor.cpp index 2c77a1325831ba0676601c35c79b979dc6750c63..c54dd83682cef74dd34f715320f8d9e115241acd 100644 --- a/src/neighbor.cpp +++ b/src/neighbor.cpp @@ -34,6 +34,7 @@ #include "comm.h" #include "force.h" #include "pair.h" +#include "pair_hybrid.h" #include "domain.h" #include "group.h" #include "modify.h" @@ -374,9 +375,32 @@ void Neighbor::init() special_flag[3] = 1; else special_flag[3] = 2; - if (force->kspace || force->pair_match("coul/wolf",0) || - force->pair_match("coul/dsf",0) || force->pair_match("thole",0)) - special_flag[1] = special_flag[2] = special_flag[3] = 2; + // We cannot remove special neighbors with kspace or kspace-like pair styles + // as the exclusion needs to remove the full coulomb and not the damped interaction. + // Special treatment is required for hybrid pair styles since Force::pair_match() + // will only return a non-NULL pointer if there is only one substyle of the kind. + + if (force->kspace) { + special_flag[1] = special_flag[2] = special_flag[3] = 2; + } else { + PairHybrid *ph = reinterpret_cast(force->pair_match("^hybrid",0)); + if (ph) { + int flag=0; + for (int isub=0; isub < ph->nstyles; ++isub) { + if (force->pair_match("coul/wolf",0,isub) + || force->pair_match("coul/dsf",0,isub) + || force->pair_match("thole",0,isub)) + ++flag; + } + if (flag) + special_flag[1] = special_flag[2] = special_flag[3] = 2; + } else { + if (force->pair_match("coul/wolf",0) + || force->pair_match("coul/dsf",0) + || force->pair_match("thole",0)) + special_flag[1] = special_flag[2] = special_flag[3] = 2; + } + } // maxwt = max multiplicative factor on atom indices stored in neigh list @@ -1941,7 +1965,7 @@ int Neighbor::decide() conservative shrink procedure: compute distance each of 8 corners of box has moved since last reneighbor reduce skin distance by sum of 2 largest of the 8 values - if reduced skin distance is negative, set to zero + if reduced skin distance is negative, set to zero new trigger = 1/2 of reduced skin distance for orthogonal box, only need 2 lo/hi corners for triclinic, need all 8 corners since deformations can displace all 8 @@ -1963,7 +1987,7 @@ int Neighbor::check_distance() delz = bboxhi[2] - boxhi_hold[2]; delta2 = sqrt(delx*delx + dely*dely + delz*delz); delta = 0.5 * (skin - (delta1+delta2)); - if (delta < 0.0) delta = 0.0; + if (delta < 0.0) delta = 0.0; deltasq = delta*delta; } else { domain->box_corners(); @@ -1977,7 +2001,7 @@ int Neighbor::check_distance() else if (delta > delta2) delta2 = delta; } delta = 0.5 * (skin - (delta1+delta2)); - if (delta < 0.0) delta = 0.0; + if (delta < 0.0) delta = 0.0; deltasq = delta*delta; } } else deltasq = triggersq; diff --git a/src/pair_hybrid.h b/src/pair_hybrid.h index 61e961ddcb1730c194d44f05847edb8ac88de360..7717d1fd517844ac2806cd454f2d826f1ed63e69 100644 --- a/src/pair_hybrid.h +++ b/src/pair_hybrid.h @@ -29,6 +29,7 @@ class PairHybrid : public Pair { friend class FixIntel; friend class FixOMP; friend class Force; + friend class Neighbor; friend class Respa; friend class Info; friend class PairDeprecated; diff --git a/src/read_data.cpp b/src/read_data.cpp index 1208ab4b439f99f5727419918f3c51890220a285..d558b876330efbe9333eaeda6232a398926af42e 100644 --- a/src/read_data.cpp +++ b/src/read_data.cpp @@ -2151,7 +2151,7 @@ void ReadData::parse_coeffs(char *line, const char *addstr, // to avoid segfaults on empty lines if (narg == 0) return; - + if (noffset) { int value = force->inumeric(FLERR,arg[0]); sprintf(argoffset1,"%d",value+offset); diff --git a/src/read_dump.cpp b/src/read_dump.cpp index 7316a2f5cd7f1771996be8fbd42943e98cbc4591..dd9395c09285590cfa3b530b8276359d47138938 100644 --- a/src/read_dump.cpp +++ b/src/read_dump.cpp @@ -503,7 +503,7 @@ void ReadDump::header(int fieldinfo) yhi = box[1][1]; zlo = box[2][0]; zhi = box[2][1]; - + if (triclinic_snap) { xy = box[0][2]; xz = box[1][2]; diff --git a/src/reader_native.cpp b/src/reader_native.cpp index a4b188be5f82dddc9bd32a34dba183be2b23ea52..da2c97bbe56cad66da32776613874ad6a08aa6b2 100644 --- a/src/reader_native.cpp +++ b/src/reader_native.cpp @@ -113,7 +113,7 @@ void ReaderNative::skip() only called by proc 0 ------------------------------------------------------------------------- */ -bigint ReaderNative::read_header(double box[3][3], int &boxinfo, int &triclinic, +bigint ReaderNative::read_header(double box[3][3], int &boxinfo, int &triclinic, int fieldinfo, int nfield, int *fieldtype, char **fieldlabel, int scaleflag, int wrapflag, int &fieldflag,