├── .DESCRIPTION.md ├── .files.txt ├── .generateREADME.sh ├── .gitattributes ├── .github └── workflows │ └── latexmk_yml ├── .gitignore ├── .gitmodules ├── LICENSE ├── Makefile ├── README.md ├── figures ├── CNT-breakable-stress-energy.png ├── CNT-deformed-breakable.png ├── CNT-deformed-unbreakable.png ├── CNT-energy-breakable.png ├── CNT-energy-unbreakable.png ├── CNT-lenght-unbreakable.png ├── CNT-stress-strain-breakable.png ├── CNT-stress-strain-unbreakable.png ├── CNT-unbreakable-length-energy.png ├── CNT-unbreakable-stress-strain.png ├── CNT-unbreakable.png ├── CNT-underformed-deleted.png ├── CNT-underformed.png ├── CNT.png ├── GCMC-cracked.png ├── GCMC-dimension.png ├── GCMC-generate.png ├── GCMC-number.png ├── GCMC-solvated.png ├── GCMC.png ├── GUI-1.png ├── LJ-avatar.png ├── LJ-coords.png ├── LJ-cylinder.png ├── LJ-energy.png ├── LJ-evolution.png ├── LJ-mixing.png ├── LJ.png ├── NANOSHEAR-equilibration.png ├── NANOSHEAR-minimization.png ├── NANOSHEAR-profiles.png ├── NANOSHEAR-system.png ├── NANOSHEAR.png ├── PEG-density.png ├── PEG-distance.png ├── PEG-in-vacuum.png ├── PEG-in-water.png ├── PEG-solvated.png ├── PEG-water.png ├── PEG.png ├── REACT-final.png ├── REACT-mixing.png ├── REACT-reacting.png ├── REACT.png ├── SIO-charge.png ├── SIO-decorated.png ├── SIO-deformed-charge.png ├── SIO-deformed.png ├── SIO-distribution-bis.png ├── SIO-distribution.png ├── SIO-slice.png ├── SIO-temperature.png ├── SIO-volume.png ├── SIO.png ├── US-density-evolution.png ├── US-density.png ├── US-free-energy.png ├── US-freenergy.png ├── US-freesampling.png ├── US-potential.png ├── US-system-biased.png ├── US-system-unbiased.png ├── US.png └── chart-and-output.png ├── files ├── tutorial1 │ ├── .manifest │ ├── improved.md.lmp │ ├── improved.min.lmp │ ├── initial.lmp │ └── solution │ │ ├── improved.md.dat │ │ ├── improved.md.ipynb │ │ ├── improved.md.lmp │ │ ├── improved.md.log │ │ ├── improved.md.mp4 │ │ ├── improved.md.png │ │ ├── improved.min.data │ │ ├── improved.min.lmp │ │ ├── improved.min.log │ │ ├── improved.min.png │ │ ├── initial.ipynb │ │ ├── initial.lmp │ │ ├── initial.log │ │ ├── initial.min.png │ │ ├── initial.mp4 │ │ └── initial.png ├── tutorial2 │ ├── .manifest │ ├── CH.airebo │ ├── breakable.data │ ├── breakable.lmp │ ├── solution │ │ ├── CH.airebo │ │ ├── breakable-with-tip.lmp │ │ ├── breakable-yaml-reader.py │ │ ├── breakable.dat │ │ ├── breakable.data │ │ ├── breakable.ipynb │ │ ├── breakable.lmp │ │ ├── breakable.log │ │ ├── breakable.png │ │ ├── breakable.yaml │ │ ├── unbreakable-yaml-reader.py │ │ ├── unbreakable.dat │ │ ├── unbreakable.data │ │ ├── unbreakable.inc │ │ ├── unbreakable.ipynb │ │ ├── unbreakable.lmp │ │ ├── unbreakable.log │ │ ├── unbreakable.png │ │ └── unbreakable.yaml │ ├── unbreakable-yaml-reader.py │ ├── unbreakable.data │ ├── unbreakable.inc │ └── unbreakable.lmp ├── tutorial3 │ ├── .manifest │ ├── merge.lmp │ ├── parameters.inc │ ├── peg.mol │ ├── pull.lmp │ ├── solution │ │ ├── merge.lmp │ │ ├── merge.log │ │ ├── merge.png │ │ ├── merge.restart │ │ ├── parameters.inc │ │ ├── peg.mol │ │ ├── pull-with-tip.lmp │ │ ├── pull.dat │ │ ├── pull.ipynb │ │ ├── pull.lammpstrj │ │ ├── pull.lmp │ │ ├── pull.log │ │ ├── pull.png │ │ ├── water.ipynb │ │ ├── water.lmp │ │ ├── water.log │ │ ├── water.mol │ │ ├── water.png │ │ └── water.restart │ ├── water.lmp │ └── water.mol ├── tutorial4 │ ├── .manifest │ ├── create.lmp │ ├── equilibrate.lmp │ ├── groups.inc │ ├── parameters.inc │ ├── shearing.lmp │ ├── solution │ │ ├── create.data │ │ ├── create.lmp │ │ ├── create.log │ │ ├── equilibrate.data │ │ ├── equilibrate.ipynb │ │ ├── equilibrate.lmp │ │ ├── equilibrate.log │ │ ├── groups.inc │ │ ├── parameters.inc │ │ ├── shearing-ions.dat │ │ ├── shearing-wall.dat │ │ ├── shearing-water.dat │ │ ├── shearing.ipynb │ │ ├── shearing.lmp │ │ ├── shearing.log │ │ ├── shearing.png │ │ └── water.mol │ └── water.mol ├── tutorial5 │ ├── .manifest │ ├── decorate.lmp │ ├── deform.lmp │ ├── reaxCHOFe.inc │ ├── relax.lmp │ ├── silica.data │ └── solution │ │ ├── decorate-H.histo │ │ ├── decorate-O.histo │ │ ├── decorate-Si.histo │ │ ├── decorate.lmp │ │ ├── decorate.log │ │ ├── decorate.png │ │ ├── decorate.species │ │ ├── deform-O.histo │ │ ├── deform-Si.histo │ │ ├── deform-mod.data │ │ ├── deform.data │ │ ├── deform.ipynb │ │ ├── deform.lmp │ │ ├── deform.log │ │ ├── deform.png │ │ ├── deform.species │ │ ├── reaxCHOFe.inc │ │ ├── relax-O.histo │ │ ├── relax-Si.histo │ │ ├── relax.data │ │ ├── relax.ipynb │ │ ├── relax.lmp │ │ ├── relax.log │ │ ├── relax.png │ │ ├── relax.species │ │ └── silica.data ├── tutorial6 │ ├── .manifest │ ├── H2O.mol │ ├── SiO.1990.vashishta │ ├── cracking.lmp │ ├── gcmc.lmp │ ├── generate.lmp │ └── solution │ │ ├── H2O.mol │ │ ├── SiO.1990.vashishta │ │ ├── cracking-mod.data │ │ ├── cracking.data │ │ ├── cracking.lmp │ │ ├── cracking.log │ │ ├── cracking.png │ │ ├── gcmc.ipynb │ │ ├── gcmc.lmp │ │ ├── gcmc.log │ │ ├── gcmc.png │ │ ├── generate.data │ │ ├── generate.ipynb │ │ ├── generate.lmp │ │ ├── generate.log │ │ └── generate.png ├── tutorial7 │ ├── .manifest │ ├── free-sampling.lmp │ ├── solution │ │ ├── free-sampling.dat │ │ ├── free-sampling.ipynb │ │ ├── free-sampling.lmp │ │ ├── free-sampling.log │ │ ├── free-sampling.png │ │ ├── umbrella-sampling.1.dat │ │ ├── umbrella-sampling.10.dat │ │ ├── umbrella-sampling.11.dat │ │ ├── umbrella-sampling.12.dat │ │ ├── umbrella-sampling.13.dat │ │ ├── umbrella-sampling.14.dat │ │ ├── umbrella-sampling.15.dat │ │ ├── umbrella-sampling.2.dat │ │ ├── umbrella-sampling.3.dat │ │ ├── umbrella-sampling.4.dat │ │ ├── umbrella-sampling.5.dat │ │ ├── umbrella-sampling.6.dat │ │ ├── umbrella-sampling.7.dat │ │ ├── umbrella-sampling.8.dat │ │ ├── umbrella-sampling.9.dat │ │ ├── umbrella-sampling.dat │ │ ├── umbrella-sampling.ipynb │ │ ├── umbrella-sampling.lmp │ │ ├── umbrella-sampling.log │ │ ├── umbrella-sampling.meta │ │ ├── umbrella-sampling.png │ │ └── wham │ ├── umbrella-sampling.lmp │ ├── umbrella-sampling.meta │ └── wham └── tutorial8 │ ├── .manifest │ ├── CNT.data │ ├── M-M.rxnmap │ ├── M-M_post.mol │ ├── M-M_pre.mol │ ├── M-P.rxnmap │ ├── M-P_post.mol │ ├── M-P_pre.mol │ ├── P-P.rxnmap │ ├── P-P_post.mol │ ├── P-P_pre.mol │ ├── mixing.lmp │ ├── polymerize.lmp │ ├── solution │ ├── CNT.data │ ├── M-M.rxnmap │ ├── M-M_post.mol │ ├── M-M_pre.mol │ ├── M-P.rxnmap │ ├── M-P_post.mol │ ├── M-P_pre.mol │ ├── P-P.rxnmap │ ├── P-P_post.mol │ ├── P-P_pre.mol │ ├── mixing.data │ ├── mixing.ipynb │ ├── mixing.lmp │ ├── mixing.log │ ├── mixing.png │ ├── mixing.restart │ ├── polymerize.data │ ├── polymerize.ipynb │ ├── polymerize.lmp │ ├── polymerize.log │ ├── polymerize.png │ └── styrene.mol │ └── styrene.mol ├── journal-article.bib ├── lammps-tutorials.pdf ├── lammps-tutorials.tex ├── livecoms.cls └── vancouver-livecoms.bst /.DESCRIPTION.md: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | # A Set of Tutorials for the LAMMPS Simulation Package 5 | 6 | [![DOI](https://zenodo.org/badge/314814105.svg)](https://zenodo.org/doi/10.5281/zenodo.14747799) 7 | [![License: CC BY 4.0](https://img.shields.io/badge/License-CC%20BY%204.0-blue.svg)](https://creativecommons.org/licenses/by/4.0/) 8 | [![PDF](https://img.shields.io/badge/PDF-lammps--tutorials.pdf-blue.svg)](lammps-tutorials.pdf) 9 | 10 |
11 | 12 |
13 | 14 | This repository contains the article introducing a suite of tutorials designed 15 | to make learning LAMMPS more accessible for new users. 16 | 17 | ## Tutorials 18 | 19 | - Tutorial 1: Lennard-Jones fluid 20 | - Tutorial 2: Pulling on a carbon nanotube 21 | - Tutorial 3: Polymer in water 22 | - Tutorial 4: Nanosheared electrolyte 23 | - Tutorial 5: Reactive silicon dioxide 24 | - Tutorial 6: Water adsorption in silica 25 | - Tutorial 7: Free energy calculation 26 | - Tutorial 8: Reactive Molecular Dynamics 27 | 28 | ## Input files 29 | 30 | All the input files from the tutorials can be found in the 31 | [**files/**](files/) folder. The Python scripts used to generate the plots 32 | are also provided. 33 | 34 | For each tutorial, a `.manifest` file lists all the files required to 35 | follow the tutorial. These files can be downloaded from the LAMMPS-GUI by 36 | selecting `Start Tutorial X`. The solutions to the tutorials are provided 37 | within the solution repository located in each tutorial folder. 38 | 39 | ## PDF 40 | 41 | Access here the last version of 42 | [lammps-tutorials.pdf](lammps-tutorials.pdf), or clone this repository 43 | and compile the `.tex` file yourself by typing in a terminal: 44 | ``` 45 | make 46 | ``` 47 | This will generate the `.pdf` version of the tutorial. Ensure you have LaTeX and the necessary dependencies installed on your system before attempting to compile. 48 | 49 | ## Contributing 50 | 51 | We welcome contributions to improve the tutorials. If you encounter any issues, have suggestions, or want to ask questions, please open an issue in this repository. You can also contribute by submitting a pull request to improve the tutorials or fix any bugs. 52 | Your feedback and contributions help make the tutorials more useful for everyone. 53 | 54 | ## License 55 | 56 | This project is licensed under the Creative Commons Attribution 4.0 International License. This license covers all the input [**files/**](files/) and tutorial content. For more details, see the [LICENSE](LICENSE) file. -------------------------------------------------------------------------------- /.files.txt: -------------------------------------------------------------------------------- 1 | .dependencies/.github/COMMENT.md 2 | .DESCRIPTION.md 3 | .dependencies/.github/AUTHORS.md 4 | .dependencies/.github/ACKNOWLEDGEMENTS.md 5 | -------------------------------------------------------------------------------- /.generateREADME.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | .dependencies/.github/generateREADME.sh 4 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | lammps-tutorials.pdf filter=lfs diff=lfs merge=lfs -text 2 | -------------------------------------------------------------------------------- /.github/workflows/latexmk_yml: -------------------------------------------------------------------------------- 1 | name: LaTeX PDF Build 2 | 3 | on: 4 | push: 5 | branches: 6 | - main 7 | pull_request: 8 | branches: 9 | - main 10 | 11 | jobs: 12 | build: 13 | runs-on: ubuntu-latest 14 | 15 | steps: 16 | # Step 1: Checkout the repository 17 | - name: Checkout repository 18 | uses: actions/checkout@v3 19 | 20 | # Step 2: Install LaTeX tools and missing packages 21 | - name: Install LaTeX and required packages 22 | run: | 23 | sudo apt-get update 24 | sudo apt-get install -y texlive texlive-latex-extra texlive-fonts-recommended texlive-xetex latexmk 25 | sudo apt-get install -y texlive-fonts-extra texlive-science texlive-pstricks 26 | 27 | # Step 3: Install make (required to run your Makefile) 28 | - name: Install make 29 | run: sudo apt-get install make 30 | 31 | # Step 4: Build the PDF using the Makefile 32 | - name: Build PDF using Makefile 33 | run: make 34 | 35 | # Step 5: Upload the generated PDF as an artifact 36 | - name: Upload PDF artifact 37 | uses: actions/upload-artifact@v3 38 | with: 39 | name: lammps-tutorials-pdf 40 | path: lammps-tutorials.pdf 41 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # To be removed when final version is published 2 | lammps-tutorials.pdf 3 | 4 | # LaTex files for the manuscript 5 | lammps-tutorials.aux 6 | lammps-tutorials.log 7 | lammps-tutorials.out 8 | lammps-tutorials.bbl 9 | lammps-tutorials.blg 10 | lammps-tutorials.suppinfo 11 | lammps-tutorials.fls 12 | lammps-tutorials.synctex* 13 | lammps-tutorials.fdb* 14 | pdflatex*.fls 15 | 16 | # LaTex files for the presubmission letter 17 | presubmission-letter/*.log 18 | presubmission-letter/*.pdf 19 | presubmission-letter/*.aux 20 | presubmission-letter/*.out 21 | 22 | # Python files 23 | __pycache__ 24 | **/__pycache__ 25 | *.pyc 26 | 27 | _region_.* 28 | /auto 29 | *~ 30 | *.orig 31 | *.rej 32 | 33 | # LAMMPS output files 34 | myimage-*.ppm 35 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "files/pyplot-perso"] 2 | path = files/shared-pyplot 3 | url = git@github.com:simongravelle/pyplot-perso.git 4 | branch = LAMMPS-livecom 5 | [submodule ".dependencies/.github"] 6 | path = .dependencies/.github 7 | url = git@github.com:lammpstutorials/.github.git 8 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | # Makefile for building lammps-tutorials.pdf 2 | all: build 3 | 4 | # Target to build the PDF 5 | build: 6 | latexmk -pdf lammps-tutorials.tex 7 | 8 | # Target to clean up generated files 9 | clean: 10 | rm -f lammps-tutorials.pdf \ 11 | lammps-tutorials.aux \ 12 | lammps-tutorials.log \ 13 | lammps-tutorials.out \ 14 | lammps-tutorials.bbl \ 15 | lammps-tutorials.blg \ 16 | lammps-tutorials.fdb_latexmk \ 17 | lammps-tutorials.suppinfo \ 18 | lammps-tutorials.fls -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 8 | 9 | 10 | 11 |
12 | 13 | # A Set of Tutorials for the LAMMPS Simulation Package 14 | 15 | [![DOI](https://zenodo.org/badge/314814105.svg)](https://zenodo.org/doi/10.5281/zenodo.14747799) 16 | [![License: CC BY 4.0](https://img.shields.io/badge/License-CC%20BY%204.0-blue.svg)](https://creativecommons.org/licenses/by/4.0/) 17 | [![PDF](https://img.shields.io/badge/PDF-lammps--tutorials.pdf-blue.svg)](lammps-tutorials.pdf) 18 | 19 |
20 | 21 |
22 | 23 | This repository contains the article introducing a suite of tutorials designed 24 | to make learning LAMMPS more accessible for new users. 25 | 26 | ## Tutorials 27 | 28 | - Tutorial 1: Lennard-Jones fluid 29 | - Tutorial 2: Pulling on a carbon nanotube 30 | - Tutorial 3: Polymer in water 31 | - Tutorial 4: Nanosheared electrolyte 32 | - Tutorial 5: Reactive silicon dioxide 33 | - Tutorial 6: Water adsorption in silica 34 | - Tutorial 7: Free energy calculation 35 | - Tutorial 8: Reactive Molecular Dynamics 36 | 37 | ## Input files 38 | 39 | All the input files from the tutorials can be found in the 40 | [**files/**](files/) folder. The Python scripts used to generate the plots 41 | are also provided. 42 | 43 | For each tutorial, a `.manifest` file lists all the files required to 44 | follow the tutorial. These files can be downloaded from the LAMMPS-GUI by 45 | selecting `Start Tutorial X`. The solutions to the tutorials are provided 46 | within the solution repository located in each tutorial folder. 47 | 48 | ## PDF 49 | 50 | Access here the last version of 51 | [lammps-tutorials.pdf](lammps-tutorials.pdf), or clone this repository 52 | and compile the `.tex` file yourself by typing in a terminal: 53 | ``` 54 | make 55 | ``` 56 | This will generate the `.pdf` version of the tutorial. Ensure you have LaTeX and the necessary dependencies installed on your system before attempting to compile. 57 | 58 | ## Contributing 59 | 60 | We welcome contributions to improve the tutorials. If you encounter any issues, have suggestions, or want to ask questions, please open an issue in this repository. You can also contribute by submitting a pull request to improve the tutorials or fix any bugs. 61 | Your feedback and contributions help make the tutorials more useful for everyone. 62 | 63 | ## License 64 | 65 | This project is licensed under the Creative Commons Attribution 4.0 International License. This license covers all the input [**files/**](files/) and tutorial content. For more details, see the [LICENSE](LICENSE) file. 66 | 67 | ## Authors 68 | 69 | - [Simon Gravelle](https://github.com/simongravelle) (corr. author), 70 | Université Grenoble Alpes, CNRS, LIPhy, 38000 Grenoble, France. 71 | - [Jacob R. Gissinger](https://www.stevens.edu/profile/jgissing), 72 | Stevens Institute of Technology, Hoboken, NJ 07030, USA. 73 | - [Axel Kohlmeyer](https://sites.google.com/site/akohlmey), 74 | Institute for Computational Molecular Science, Temple University, Philadelphia, 75 | PA 19122, USA. 76 | 77 | 78 | 79 | ## Acknowledgements 80 | 81 | - Simon Gravelle acknowledges funding from the European Union's Horizon 2020 82 | research and innovation programme under the Marie Skłodowska-Curie grant 83 | agreement N°101065060. 84 | - Axel Kohlmeyer acknowledges financial support from Sandia National Laboratories 85 | under POs 2149742 and 2407526. 86 | 87 | 88 | -------------------------------------------------------------------------------- /figures/CNT-breakable-stress-energy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-breakable-stress-energy.png -------------------------------------------------------------------------------- /figures/CNT-deformed-breakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-deformed-breakable.png -------------------------------------------------------------------------------- /figures/CNT-deformed-unbreakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-deformed-unbreakable.png -------------------------------------------------------------------------------- /figures/CNT-energy-breakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-energy-breakable.png -------------------------------------------------------------------------------- /figures/CNT-energy-unbreakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-energy-unbreakable.png -------------------------------------------------------------------------------- /figures/CNT-lenght-unbreakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-lenght-unbreakable.png -------------------------------------------------------------------------------- /figures/CNT-stress-strain-breakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-stress-strain-breakable.png -------------------------------------------------------------------------------- /figures/CNT-stress-strain-unbreakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-stress-strain-unbreakable.png -------------------------------------------------------------------------------- /figures/CNT-unbreakable-length-energy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-unbreakable-length-energy.png -------------------------------------------------------------------------------- /figures/CNT-unbreakable-stress-strain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-unbreakable-stress-strain.png -------------------------------------------------------------------------------- /figures/CNT-unbreakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-unbreakable.png -------------------------------------------------------------------------------- /figures/CNT-underformed-deleted.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-underformed-deleted.png -------------------------------------------------------------------------------- /figures/CNT-underformed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT-underformed.png -------------------------------------------------------------------------------- /figures/CNT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/CNT.png -------------------------------------------------------------------------------- /figures/GCMC-cracked.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/GCMC-cracked.png -------------------------------------------------------------------------------- /figures/GCMC-dimension.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/GCMC-dimension.png -------------------------------------------------------------------------------- /figures/GCMC-generate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/GCMC-generate.png -------------------------------------------------------------------------------- /figures/GCMC-number.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/GCMC-number.png -------------------------------------------------------------------------------- /figures/GCMC-solvated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/GCMC-solvated.png -------------------------------------------------------------------------------- /figures/GCMC.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/GCMC.png -------------------------------------------------------------------------------- /figures/GUI-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/GUI-1.png -------------------------------------------------------------------------------- /figures/LJ-avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/LJ-avatar.png -------------------------------------------------------------------------------- /figures/LJ-coords.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/LJ-coords.png -------------------------------------------------------------------------------- /figures/LJ-cylinder.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/LJ-cylinder.png -------------------------------------------------------------------------------- /figures/LJ-energy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/LJ-energy.png -------------------------------------------------------------------------------- /figures/LJ-evolution.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/LJ-evolution.png -------------------------------------------------------------------------------- /figures/LJ-mixing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/LJ-mixing.png -------------------------------------------------------------------------------- /figures/LJ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/LJ.png -------------------------------------------------------------------------------- /figures/NANOSHEAR-equilibration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/NANOSHEAR-equilibration.png -------------------------------------------------------------------------------- /figures/NANOSHEAR-minimization.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/NANOSHEAR-minimization.png -------------------------------------------------------------------------------- /figures/NANOSHEAR-profiles.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/NANOSHEAR-profiles.png -------------------------------------------------------------------------------- /figures/NANOSHEAR-system.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/NANOSHEAR-system.png -------------------------------------------------------------------------------- /figures/NANOSHEAR.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/NANOSHEAR.png -------------------------------------------------------------------------------- /figures/PEG-density.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/PEG-density.png -------------------------------------------------------------------------------- /figures/PEG-distance.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/PEG-distance.png -------------------------------------------------------------------------------- /figures/PEG-in-vacuum.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/PEG-in-vacuum.png -------------------------------------------------------------------------------- /figures/PEG-in-water.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/PEG-in-water.png -------------------------------------------------------------------------------- /figures/PEG-solvated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/PEG-solvated.png -------------------------------------------------------------------------------- /figures/PEG-water.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/PEG-water.png -------------------------------------------------------------------------------- /figures/PEG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/PEG.png -------------------------------------------------------------------------------- /figures/REACT-final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/REACT-final.png -------------------------------------------------------------------------------- /figures/REACT-mixing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/REACT-mixing.png -------------------------------------------------------------------------------- /figures/REACT-reacting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/REACT-reacting.png -------------------------------------------------------------------------------- /figures/REACT.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/REACT.png -------------------------------------------------------------------------------- /figures/SIO-charge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-charge.png -------------------------------------------------------------------------------- /figures/SIO-decorated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-decorated.png -------------------------------------------------------------------------------- /figures/SIO-deformed-charge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-deformed-charge.png -------------------------------------------------------------------------------- /figures/SIO-deformed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-deformed.png -------------------------------------------------------------------------------- /figures/SIO-distribution-bis.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-distribution-bis.png -------------------------------------------------------------------------------- /figures/SIO-distribution.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-distribution.png -------------------------------------------------------------------------------- /figures/SIO-slice.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-slice.png -------------------------------------------------------------------------------- /figures/SIO-temperature.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-temperature.png -------------------------------------------------------------------------------- /figures/SIO-volume.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO-volume.png -------------------------------------------------------------------------------- /figures/SIO.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/SIO.png -------------------------------------------------------------------------------- /figures/US-density-evolution.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US-density-evolution.png -------------------------------------------------------------------------------- /figures/US-density.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US-density.png -------------------------------------------------------------------------------- /figures/US-free-energy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US-free-energy.png -------------------------------------------------------------------------------- /figures/US-freenergy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US-freenergy.png -------------------------------------------------------------------------------- /figures/US-freesampling.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US-freesampling.png -------------------------------------------------------------------------------- /figures/US-potential.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US-potential.png -------------------------------------------------------------------------------- /figures/US-system-biased.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US-system-biased.png -------------------------------------------------------------------------------- /figures/US-system-unbiased.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US-system-unbiased.png -------------------------------------------------------------------------------- /figures/US.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/US.png -------------------------------------------------------------------------------- /figures/chart-and-output.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/figures/chart-and-output.png -------------------------------------------------------------------------------- /files/tutorial1/.manifest: -------------------------------------------------------------------------------- 1 | # LAMMPS Tutorial manifest file. This file determines what is downloaded when. 2 | # comments start with a # as the first character. 3 | # comments and empty lines are ignored 4 | ############################################################################## 5 | # 1) input file templates 6 | # the first file will be automatically loaded 7 | initial.lmp 8 | improved.min.lmp 9 | improved.md.lmp 10 | 11 | # 2) solution files 12 | # only downloaded on request 13 | solution/improved.md.dat 14 | solution/improved.md.lmp 15 | solution/improved.md.log 16 | solution/improved.md.mp4 17 | solution/improved.md.png 18 | solution/improved.min.data 19 | solution/improved.min.lmp 20 | solution/improved.min.log 21 | solution/improved.min.png 22 | solution/initial.lmp 23 | solution/initial.log 24 | solution/initial.min.png 25 | solution/initial.mp4 26 | solution/initial.png 27 | 28 | 29 | # 3) folders not known to LAMMPS GUI will be skipped 30 | -------------------------------------------------------------------------------- /files/tutorial1/improved.md.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # 1) Initialization 7 | units lj 8 | dimension 3 9 | atom_style atomic 10 | boundary p p p 11 | # 2) System definition 12 | # 3) Settings 13 | # 4) Visualization 14 | # 5) Run 15 | -------------------------------------------------------------------------------- /files/tutorial1/improved.min.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # 1) Initialization 7 | units lj 8 | dimension 3 9 | atom_style atomic 10 | boundary p p p 11 | # 2) System definition 12 | # 3) Settings 13 | mass 1 1.0 14 | mass 2 10.0 15 | pair_style lj/cut 4.0 16 | pair_coeff 1 1 1.0 1.0 17 | pair_coeff 2 2 0.5 3.0 18 | # 4) Visualization 19 | thermo 10 20 | thermo_style custom step etotal press 21 | # 5) Run 22 | minimize 1.0e-6 1.0e-6 1000 10000 -------------------------------------------------------------------------------- /files/tutorial1/initial.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # PART A - ENERGY MINIMIZATION 7 | # 1) Initialization 8 | # 2) System definition 9 | # 3) Settings 10 | # 4) Visualization 11 | # 5) Run 12 | -------------------------------------------------------------------------------- /files/tutorial1/solution/improved.md.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # 1) Initialization 7 | units lj 8 | dimension 3 9 | atom_style atomic 10 | boundary p p p 11 | 12 | # 2) System definition 13 | pair_style lj/cut 4.0 14 | read_data improved.min.data 15 | region cyl_in cylinder z 0 0 10 INF INF side in 16 | region cyl_out cylinder z 0 0 10 INF INF side out 17 | group grp_t1 type 1 18 | group grp_t2 type 2 19 | group grp_in region cyl_in 20 | group grp_out region cyl_out 21 | group grp_t1_in intersect grp_t1 grp_in 22 | group grp_t2_out intersect grp_t2 grp_out 23 | delete_atoms group grp_t1_in 24 | delete_atoms group grp_t2_out 25 | # delete no longer needed groups 26 | group grp_in delete 27 | group grp_out delete 28 | group grp_t1_in delete 29 | group grp_t2_out delete 30 | variable n1_in equal count(grp_t1,cyl_in) 31 | variable n2_in equal count(grp_t2,cyl_in) 32 | compute coor12 grp_t1 coord/atom cutoff 2.0 group grp_t2 33 | compute sumcoor12 grp_t1 reduce ave c_coor12 34 | 35 | # 3) Settings 36 | 37 | # 4) Visualization 38 | thermo 1000 39 | thermo_style custom step temp pe ke etotal & 40 | press v_n1_in v_n2_in c_sumcoor12 41 | dump viz all image 1000 myimage-*.ppm type type & 42 | shiny 0.1 box no 0.01 view 0 0 zoom 1.8 fsaa yes size 800 800 43 | dump_modify viz adiam 1 1 adiam 2 3 acolor 1 & 44 | turquoise acolor 2 royalblue backcolor white 45 | 46 | # 5) Run 47 | velocity all create 1.0 49284 mom yes dist gaussian 48 | fix mynve all nve 49 | fix mylgv all langevin 1.0 1.0 0.1 10917 zero yes 50 | timestep 0.005 51 | run 300000 52 | -------------------------------------------------------------------------------- /files/tutorial1/solution/improved.md.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial1/solution/improved.md.mp4 -------------------------------------------------------------------------------- /files/tutorial1/solution/improved.md.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial1/solution/improved.md.png -------------------------------------------------------------------------------- /files/tutorial1/solution/improved.min.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # 1) Initialization 7 | units lj 8 | dimension 3 9 | atom_style atomic 10 | boundary p p p 11 | 12 | # 2) System definition 13 | region simbox block -20 20 -20 20 -20 20 14 | create_box 2 simbox 15 | # for creating atoms 16 | region cyl_in cylinder z 0 0 10 INF INF side in 17 | region cyl_out cylinder z 0 0 10 INF INF side out 18 | create_atoms 1 random 1000 34134 cyl_out 19 | create_atoms 2 random 150 12756 cyl_in 20 | 21 | # 3) Settings 22 | mass 1 1.0 23 | mass 2 10.0 24 | pair_style lj/cut 4.0 25 | pair_coeff 1 1 1.0 1.0 26 | pair_coeff 2 2 0.5 3.0 27 | 28 | # 4) Visualization 29 | thermo 10 30 | thermo_style custom step etotal press 31 | 32 | # 5) Run 33 | minimize 1.0e-6 1.0e-6 1000 10000 34 | 35 | # 6) Save system 36 | write_data improved.min.data 37 | 38 | -------------------------------------------------------------------------------- /files/tutorial1/solution/improved.min.log: -------------------------------------------------------------------------------- 1 | using 8 OpenMP thread(s) per MPI task 2 | using multi-threaded neighbor list subroutines 3 | Created orthogonal box = (-20 -20 -20) to (20 20 20) 4 | 1 by 1 by 1 MPI processor grid 5 | Created 1000 atoms 6 | using lattice units in orthogonal box = (-20 -20 -20) to (20 20 20) 7 | create_atoms CPU = 0.001 seconds 8 | Created 150 atoms 9 | using lattice units in orthogonal box = (-20 -20 -20) to (20 20 20) 10 | create_atoms CPU = 0.000 seconds 11 | Generated 1 of 1 mixed pair_coeff terms from geometric mixing rule 12 | Last active /omp style is pair_style lj/cut/omp 13 | Neighbor list info ... 14 | update: every = 1 steps, delay = 0 steps, check = yes 15 | max neighbors/atom: 2000, page size: 100000 16 | master list distance cutoff = 4.3 17 | ghost atom cutoff = 4.3 18 | binsize = 2.15, bins = 19 19 19 19 | 1 neighbor lists, perpetual/occasional/extra = 1 0 0 20 | (1) pair lj/cut/omp, perpetual 21 | attributes: half, newton on, omp 22 | pair build: half/bin/newton/atomonly/omp 23 | stencil: half/bin/3d 24 | bin: standard 25 | Setting up cg style minimization ... 26 | Unit style : lj 27 | Current step : 0 28 | Per MPI rank memory allocation (min/avg/max) = 10.44 | 10.44 | 10.44 Mbytes 29 | Step TotEng Press 30 | 0 54761786 3936022.4 31 | 10 176.91911 12.863396 32 | 20 -0.11205829 0.010652824 33 | 30 -0.30111788 -0.0017497658 34 | 40 -0.35254802 -0.001887464 35 | 50 -0.38729228 -0.0015091815 36 | 60 -0.4211304 -0.0014600849 37 | 70 -0.45426771 -0.0014537976 38 | 80 -0.48038274 -0.0012997883 39 | 90 -0.50163775 -0.0011680016 40 | 100 -0.52151941 -0.0011791364 41 | 110 -0.53866774 -0.0010309661 42 | 120 -0.55044406 -0.0010001938 43 | 130 -0.56366692 -0.0011643297 44 | 140 -0.57899488 -0.0009797283 45 | 150 -0.5963819 -0.0010400132 46 | 160 -0.61002679 -0.0010129188 47 | 170 -0.62179364 -0.00098485447 48 | 180 -0.63611906 -0.00090648163 49 | 190 -0.64642099 -0.000859569 50 | 200 -0.6592561 -0.00081560214 51 | 210 -0.66881981 -0.00098696926 52 | 220 -0.68881622 -0.00098693914 53 | 230 -0.70730015 -0.00087075503 54 | 240 -0.7194967 -0.00084859744 55 | 250 -0.72805174 -0.00075921585 56 | 260 -0.74332908 -0.00084461619 57 | 270 -0.75797638 -0.0008105387 58 | 280 -0.76965606 -0.00089012487 59 | 290 -0.78166177 -0.00079470219 60 | 300 -0.79339379 -0.00083366621 61 | 310 -0.80429865 -0.00067170898 62 | 320 -0.81430164 -0.00086881517 63 | 330 -0.82472125 -0.00091018528 64 | 340 -0.8374806 -0.00079232741 65 | 350 -0.84846695 -0.00085794428 66 | 360 -0.86353637 -0.00083847471 67 | 370 -0.87707394 -0.0010556514 68 | 380 -0.88859363 -0.0008160601 69 | 390 -0.90046015 -0.00098574725 70 | 400 -0.91714548 -0.00079306685 71 | 410 -0.9305283 -0.0008990471 72 | 420 -0.94432882 -0.00067475102 73 | 430 -0.95719228 -0.00066825052 74 | 440 -0.96513493 -0.00059413382 75 | 450 -0.97722513 -0.0006067788 76 | 460 -0.99092981 -0.00066937989 77 | 470 -1.001195 -0.00046755847 78 | 480 -1.0093395 -0.00047709224 79 | 490 -1.0152011 -0.00041960592 80 | 500 -1.0220654 -0.00055340573 81 | 510 -1.0327648 -0.00055925672 82 | 520 -1.0397095 -0.00058485381 83 | 530 -1.0439799 -0.00052168531 84 | 540 -1.0532762 -0.00052507494 85 | 550 -1.0580754 -0.00055851018 86 | 560 -1.0629387 -0.00063883014 87 | 570 -1.0726912 -0.00058233725 88 | 580 -1.0805042 -0.00051109857 89 | 590 -1.0892957 -0.00056762995 90 | 600 -1.094905 -0.00057482607 91 | 610 -1.0997733 -0.0005814013 92 | 620 -1.1079174 -0.00058094402 93 | 630 -1.1169692 -0.00056923325 94 | 640 -1.1251539 -0.00062559912 95 | 650 -1.1335934 -0.00050994051 96 | 660 -1.1391963 -0.00054617354 97 | 670 -1.1450314 -0.00048208338 98 | 680 -1.1520798 -0.00062511746 99 | 690 -1.1595918 -0.00055964147 100 | 700 -1.1662469 -0.0004773895 101 | 710 -1.1712293 -0.00049354384 102 | 720 -1.17641 -0.00044283008 103 | 730 -1.1829704 -0.00051043683 104 | 740 -1.1894613 -0.00058008299 105 | 750 -1.2001753 -0.00059495655 106 | 760 -1.2072788 -0.00049525285 107 | 770 -1.2121429 -0.00051619546 108 | 780 -1.2193466 -0.0005642907 109 | 790 -1.2295715 -0.00057965055 110 | 800 -1.2348375 -0.00050282052 111 | 810 -1.2398868 -0.00050295903 112 | 820 -1.2445682 -0.00051008287 113 | 830 -1.249363 -0.00052432997 114 | 840 -1.2547425 -0.00050750011 115 | 850 -1.2591896 -0.00041418748 116 | 860 -1.2681549 -0.00049612953 117 | 870 -1.2753284 -0.00043909014 118 | 880 -1.2815564 -0.0005012037 119 | 890 -1.2874537 -0.00051553646 120 | 900 -1.2927225 -0.00046251677 121 | 910 -1.2996896 -0.00060394453 122 | 920 -1.3070614 -0.00063410104 123 | 930 -1.3131187 -0.0005156457 124 | 940 -1.3206692 -0.00051230256 125 | 950 -1.3280126 -0.00048864778 126 | 960 -1.3366366 -0.0005908634 127 | 970 -1.3422344 -0.00052708995 128 | 980 -1.3509009 -0.00062855692 129 | 990 -1.3621364 -0.00057827024 130 | 1000 -1.3722835 -0.00049492281 131 | Loop time of 0.126597 on 8 procs for 1000 steps with 1150 atoms 132 | 133 | 884.9% CPU use with 1 MPI tasks x 8 OpenMP threads 134 | 135 | Minimization stats: 136 | Stopping criterion = max iterations 137 | Energy initial, next-to-last, final = 138 | 54761786.280003 -1.37145523859299 -1.37228351583272 139 | Force two-norm initial, final = 1.7244393e+12 10.937962 140 | Force max component initial, final = 7.5319478e+11 3.5357557 141 | Final line search alpha, max atom move = 0.026631138 0.094161197 142 | Iterations, force evaluations = 1000 1938 143 | 144 | MPI task timing breakdown: 145 | Section | min time | avg time | max time |%varavg| %total 146 | --------------------------------------------------------------- 147 | Pair | 0.045 | 0.045 | 0.045 | 0.0 | 35.55 148 | Neigh | 0.022573 | 0.022573 | 0.022573 | 0.0 | 17.83 149 | Comm | 0.015767 | 0.015767 | 0.015767 | 0.0 | 12.45 150 | Output | 0.000642 | 0.000642 | 0.000642 | 0.0 | 0.51 151 | Modify | 0.014301 | 0.014301 | 0.014301 | 0.0 | 11.30 152 | Other | | 0.02832 | | | 22.37 153 | 154 | Nlocal: 1150 ave 1150 max 1150 min 155 | Histogram: 1 0 0 0 0 0 0 0 0 0 156 | Nghost: 965 ave 965 max 965 min 157 | Histogram: 1 0 0 0 0 0 0 0 0 0 158 | Neighs: 3672 ave 3672 max 3672 min 159 | Histogram: 1 0 0 0 0 0 0 0 0 0 160 | 161 | Total # of neighbors = 3672 162 | Ave neighs/atom = 3.1930435 163 | Neighbor list builds = 326 164 | Dangerous builds = 0 165 | System init for write_data ... 166 | Generated 1 of 1 mixed pair_coeff terms from geometric mixing rule 167 | Last active /omp style is pair_style lj/cut/omp 168 | -------------------------------------------------------------------------------- /files/tutorial1/solution/improved.min.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial1/solution/improved.min.png -------------------------------------------------------------------------------- /files/tutorial1/solution/initial.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # PART A - ENERGY MINIMIZATION 7 | # 1) Initialization 8 | units lj 9 | dimension 3 10 | atom_style atomic 11 | boundary p p p 12 | # 2) System definition 13 | 14 | # 2) System definition 15 | region simbox block -20 20 -20 20 -20 20 16 | create_box 2 simbox 17 | create_atoms 1 random 1500 34134 simbox overlap 0.3 18 | create_atoms 2 random 100 12756 simbox overlap 0.3 19 | 20 | # 3) Settings 21 | mass 1 1.0 22 | mass 2 5.0 23 | pair_style lj/cut 4.0 24 | pair_coeff 1 1 1.0 1.0 25 | pair_coeff 2 2 0.5 3.0 26 | 27 | # 4) Visualization 28 | thermo 10 29 | thermo_style custom step etotal press 30 | 31 | # 5) Run 32 | minimize 1.0e-6 1.0e-6 1000 10000 33 | 34 | # PART B - MOLECULAR DYNAMICS 35 | # 4) Visualization 36 | thermo 50 37 | thermo_style custom step temp etotal pe ke press 38 | dump viz all image 100 myimage-*.ppm type type & 39 | size 800 800 zoom 1.452 shiny 0.7 fsaa yes & 40 | view 80 10 box yes 0.025 axes no 0.0 0.0 & 41 | center s 0.483725 0.510373 0.510373 42 | dump_modify viz pad 9 boxcolor royalblue & 43 | backcolor white adiam 1 1.6 adiam 2 4.8 44 | 45 | # 5) Run 46 | fix mynve all nve 47 | fix mylgv all langevin 1.0 1.0 0.1 10917 48 | timestep 0.005 49 | run 15000 50 | 51 | -------------------------------------------------------------------------------- /files/tutorial1/solution/initial.min.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial1/solution/initial.min.png -------------------------------------------------------------------------------- /files/tutorial1/solution/initial.mp4: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial1/solution/initial.mp4 -------------------------------------------------------------------------------- /files/tutorial1/solution/initial.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial1/solution/initial.png -------------------------------------------------------------------------------- /files/tutorial2/.manifest: -------------------------------------------------------------------------------- 1 | # LAMMPS Tutorial manifest file. This file determines what is downloaded when. 2 | # comments start with a # as the first character. 3 | # comments and empty lines are ignored 4 | ############################################################################## 5 | # 1) input file templates and data files 6 | # the first file will be automatically loaded 7 | unbreakable.lmp 8 | unbreakable.data 9 | unbreakable.inc 10 | breakable.lmp 11 | breakable.data 12 | 13 | # 2) support files 14 | CH.airebo 15 | 16 | # 3) solution files 17 | # only downloaded on request 18 | solution/unbreakable.lmp 19 | solution/unbreakable.data 20 | solution/unbreakable.yaml 21 | solution/unbreakable.log 22 | solution/unbreakable.inc 23 | solution/unbreakable.png 24 | solution/unbreakable.dat 25 | solution/unbreakable-yaml-reader.py 26 | solution/breakable.lmp 27 | solution/breakable.data 28 | solution/breakable.yaml 29 | solution/breakable.log 30 | solution/breakable.png 31 | solution/breakable.dat 32 | solution/breakable-yaml-reader.py 33 | solution/breakable-with-tip.lmp 34 | 35 | # 4) extra files 36 | unbreakable-yaml-reader.py 37 | 38 | -------------------------------------------------------------------------------- /files/tutorial2/breakable.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | units metal 7 | atom_style atomic 8 | boundary f f f 9 | 10 | read_data breakable.data 11 | pair_style airebo 3.0 12 | pair_coeff * * CH.airebo C 13 | 14 | group carbon_atoms type 1 15 | 16 | variable xmax equal bound(carbon_atoms,xmax)-0.5 17 | variable xmin equal bound(carbon_atoms,xmin)+0.5 18 | region rtop block ${xmax} INF INF INF INF INF 19 | region rbot block INF ${xmin} INF INF INF INF 20 | region rmid block ${xmin} ${xmax} INF INF INF INF 21 | 22 | group cnt_top region rtop 23 | group cnt_bot region rbot 24 | group cnt_mid region rmid 25 | 26 | variable xmax_del equal ${xmax}-2 27 | variable xmin_del equal ${xmin}+2 28 | region rdel block ${xmin_del} ${xmax_del} INF INF INF INF 29 | 30 | group rdel region rdel 31 | delete_atoms random fraction 0.02 no rdel NULL 482793 32 | 33 | reset_atoms id sort yes 34 | velocity cnt_mid create 300 48455 mom yes rot yes 35 | 36 | fix mynve1 cnt_top nve 37 | fix mynve2 cnt_bot nve 38 | fix mynvt cnt_mid nvt temp 300 300 0.1 39 | 40 | run 0 post no 41 | -------------------------------------------------------------------------------- /files/tutorial2/solution/CH.airebo: -------------------------------------------------------------------------------- 1 | ../CH.airebo -------------------------------------------------------------------------------- /files/tutorial2/solution/breakable-with-tip.lmp: -------------------------------------------------------------------------------- 1 | # Python script (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | units metal 7 | atom_style molecular 8 | boundary f f f 9 | pair_style lj/cut 14 10 | bond_style harmonic 11 | angle_style harmonic 12 | dihedral_style opls 13 | improper_style harmonic 14 | read_data unbreakable.data extra/bond/per/atom 10 extra/special/per/atom 10 15 | include parameters.inc 16 | 17 | pair_style airebo 3.0 1 1 18 | pair_coeff * * CH.airebo C 19 | bond_style zero 20 | bond_coeff 1 1.4 21 | delete_bonds all angle 1 22 | delete_bonds all dihedral 1 23 | delete_bonds all improper 1 remove special 24 | 25 | angle_style none 26 | dihedral_style none 27 | improper_style none 28 | 29 | special_bonds lj/coul 1.0 1.0 1.0 30 | group carbon_atoms type 1 31 | 32 | variable xmax equal bound(carbon_atoms,xmax)-0.5 33 | variable xmin equal bound(carbon_atoms,xmin)+0.5 34 | region rtop block ${xmax} INF INF INF INF INF 35 | region rbot block INF ${xmin} INF INF INF INF 36 | region rmid block ${xmin} ${xmax} INF INF INF INF 37 | 38 | group cnt_top region rtop 39 | group cnt_bot region rbot 40 | group cnt_mid region rmid 41 | 42 | velocity cnt_mid create 300 48455 mom yes rot yes 43 | 44 | fix mynve1 cnt_top nve 45 | fix mynve2 cnt_bot nve 46 | fix mynvt cnt_mid nvt temp 300 300 0.1 47 | 48 | fix mysf1 cnt_bot setforce 0 0 0 49 | fix mysf2 cnt_top setforce 0 0 0 50 | velocity cnt_bot set 0 0 0 51 | velocity cnt_top set 0 0 0 52 | 53 | variable Lcnt equal xcm(cnt_top,x)-xcm(cnt_bot,x) 54 | variable Fcnt equal f_mysf1[1]-f_mysf2[1] 55 | 56 | dump viz all image 500 myimage-*.ppm element type size 1000 400 zoom 4 shiny 0.3 fsaa yes bond atom 0.8 view 0 90 box no 0.0 axes no 0.0 0.0 57 | dump_modify viz pad 9 backcolor white element C adiam 1 0.85 bdiam 1 1.0 58 | 59 | fix break all bond/break 1000 1 2.5 60 | fix form all bond/create/angle 1000 1 1 2.0 1 aconstrain 90.0 180 61 | 62 | compute Tmid cnt_mid temp 63 | thermo 100 64 | thermo_style custom step temp etotal v_Lcnt v_Fcnt 65 | thermo_modify temp Tmid line yaml 66 | 67 | timestep 0.0005 68 | run 10000 69 | 70 | velocity cnt_top set 0.75 0 0 71 | velocity cnt_bot set -0.75 0 0 72 | 73 | run 30000 74 | -------------------------------------------------------------------------------- /files/tutorial2/solution/breakable-yaml-reader.py: -------------------------------------------------------------------------------- 1 | import numpy as np 2 | import re 3 | import yaml 4 | 5 | # Import the data from the yaml file 6 | pattern = r"^(keywords:.*$|data:$|---$|\.\.\.$| - \[.*\]$)" 7 | docs = "" 8 | with open("breakable.yaml") as f: 9 | for line in f: 10 | m = re.search(pattern, line) 11 | if m: 12 | docs += m.group(0) + "\n" 13 | thermo = list(yaml.load_all(docs, Loader=yaml.CSafeLoader)) 14 | 15 | # Read basic information 16 | print("Number of runs: ", len(thermo)) 17 | print("All info:", thermo[1]['keywords']) 18 | 19 | # Read the data from the second run, and save it. 20 | Force = [] 21 | Length = [] 22 | for line in thermo[1]["data"]: 23 | _, _, _, L, F = line 24 | Force.append(F) 25 | Length.append(L) 26 | Force = np.array(Force) 27 | Length = np.array(Length) 28 | 29 | # Calculate the stress and the strain from the Force and Length 30 | Area = np.pi*5.2**2 # Angstrom^2 31 | Stress = Force/Area # eV/Angstrom^3 32 | Strain = 100*(Length-Length[0])/Length[0] # in percents 33 | 34 | np.savetxt("breakable.dat", np.vstack([Strain, Stress]).T) 35 | -------------------------------------------------------------------------------- /files/tutorial2/solution/breakable.data: -------------------------------------------------------------------------------- 1 | ../breakable.data -------------------------------------------------------------------------------- /files/tutorial2/solution/breakable.lmp: -------------------------------------------------------------------------------- 1 | # Python script (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | units metal 7 | atom_style atomic 8 | boundary f f f 9 | 10 | read_data breakable.data 11 | pair_style airebo 3.0 12 | pair_coeff * * CH.airebo C 13 | 14 | group carbon_atoms type 1 15 | 16 | variable xmax equal bound(carbon_atoms,xmax)-0.5 17 | variable xmin equal bound(carbon_atoms,xmin)+0.5 18 | region rtop block ${xmax} INF INF INF INF INF 19 | region rbot block INF ${xmin} INF INF INF INF 20 | region rmid block ${xmin} ${xmax} INF INF INF INF 21 | 22 | group cnt_top region rtop 23 | group cnt_bot region rbot 24 | group cnt_mid region rmid 25 | 26 | variable xmax_del equal ${xmax}-2 27 | variable xmin_del equal ${xmin}+2 28 | region rdel block ${xmin_del} ${xmax_del} INF INF INF INF 29 | 30 | group rdel region rdel 31 | delete_atoms random fraction 0.02 no rdel NULL 482793 32 | 33 | reset_atoms id sort yes 34 | velocity cnt_mid create 300 48455 mom yes rot yes 35 | 36 | fix mynve1 cnt_top nve 37 | fix mynve2 cnt_bot nve 38 | fix mynvt cnt_mid nvt temp 300 300 0.1 39 | 40 | fix mysf1 cnt_bot setforce 0 0 0 41 | fix mysf2 cnt_top setforce 0 0 0 42 | velocity cnt_bot set 0 0 0 43 | velocity cnt_top set 0 0 0 44 | 45 | variable Lcnt equal xcm(cnt_top,x)-xcm(cnt_bot,x) 46 | variable Fcnt equal f_mysf1[1]-f_mysf2[1] 47 | 48 | dump viz all image 500 myimage.*.ppm type type size 1000 400 zoom 4 shiny 0.3 adiam 1.5 box no 0.01 view 0 90 shiny 0.1 fsaa yes 49 | dump_modify viz pad 5 backcolor white acolor 1 gray 50 | 51 | compute Tmid cnt_mid temp 52 | thermo 100 53 | thermo_style custom step temp etotal v_Lcnt v_Fcnt 54 | thermo_modify temp Tmid line yaml 55 | 56 | timestep 0.0005 57 | run 10000 58 | 59 | velocity cnt_top set 0.75 0 0 60 | velocity cnt_bot set -0.75 0 0 61 | 62 | run 30000 63 | -------------------------------------------------------------------------------- /files/tutorial2/solution/breakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial2/solution/breakable.png -------------------------------------------------------------------------------- /files/tutorial2/solution/unbreakable-yaml-reader.py: -------------------------------------------------------------------------------- 1 | ../unbreakable-yaml-reader.py -------------------------------------------------------------------------------- /files/tutorial2/solution/unbreakable.dat: -------------------------------------------------------------------------------- 1 | 0.000000000000000000e+00 -9.400207256093542352e-01 2 | 1.802711277758064501e-01 -3.955621872810567208e+00 3 | 3.605422555514464222e-01 -3.897018876485572658e+00 4 | 5.408133833272656954e-01 -1.166165580669490609e+00 5 | 7.210845111030721455e-01 -4.277641290525327378e+00 6 | 9.013556388787120621e-01 -6.097514090097470252e+00 7 | 1.081626766654531391e+00 -3.743030818502816714e+00 8 | 1.261897894430337841e+00 -5.569946686255953239e+00 9 | 1.442169022205977758e+00 -6.510907205291913691e+00 10 | 1.622440149981784208e+00 -8.953725969057686029e+00 11 | 1.802711277757603536e+00 -5.733105788957951532e+00 12 | 1.982982405533243453e+00 -8.465258228273901508e+00 13 | 2.163253533309049903e+00 -7.751567220148621651e+00 14 | 2.343524661084869010e+00 -7.560560757909755125e+00 15 | 2.523795788860509148e+00 -1.000774880845322379e+01 16 | 2.704066916636315820e+00 -9.516826798852482838e+00 17 | 2.884338044412134927e+00 -1.118718000977085048e+01 18 | 3.064609172187762187e+00 -1.166195878116858609e+01 19 | 3.244880299963581294e+00 -1.253942304265159180e+01 20 | 3.425151427739400400e+00 -1.301758631087983176e+01 21 | 3.605422555515027661e+00 -1.217973194507690238e+01 22 | 3.785693683290846767e+00 -1.320992575020864557e+01 23 | 3.965964811066666318e+00 -1.477183753285759948e+01 24 | 4.146235938842293578e+00 -1.302455008814379944e+01 25 | 4.326507066618112241e+00 -1.481133312249889045e+01 26 | 4.506778194393931791e+00 -1.619382679517009294e+01 27 | 4.687049322169559495e+00 -1.810027281013000788e+01 28 | 4.867320449945379046e+00 -1.605908162947824991e+01 29 | 5.047591577721185274e+00 -1.789266781780692384e+01 30 | 5.227862705496824525e+00 -1.994215796742281910e+01 31 | 5.408133833272644075e+00 -1.822335693430939330e+01 32 | 5.588404961048451192e+00 -1.843187070168137609e+01 33 | 5.768676088824269854e+00 -2.026031574210990271e+01 34 | 5.948947216599909993e+00 -1.924291165481921695e+01 35 | 6.129218344375716221e+00 -2.068715871022335762e+01 36 | 6.309489472151356360e+00 -2.085246403286516426e+01 37 | 6.489760599927162588e+00 -2.220790537196539915e+01 38 | 6.670031727702982138e+00 -2.279397442963343678e+01 39 | 6.850302855478800801e+00 -2.410833339154157073e+01 40 | 7.030573983254428505e+00 -2.372860585917198861e+01 41 | 7.210845111030248056e+00 -2.445032174761844246e+01 42 | 7.391116238806066718e+00 -2.446156442243117368e+01 43 | 7.571387366581693534e+00 -2.515307129754476279e+01 44 | 7.751658494357513973e+00 -2.322682277394143924e+01 45 | 7.931929622133320201e+00 -2.555936330854553873e+01 46 | 8.112200749908959452e+00 -2.775379430497033795e+01 47 | 8.292471877684779002e+00 -2.532199129000396809e+01 48 | 8.472743005460404930e+00 -2.883915862342587388e+01 49 | 8.653014133236224481e+00 -2.659312021397110826e+01 50 | 8.833285261012045808e+00 -2.737934557336479813e+01 51 | 9.013556388787671736e+00 -2.748459467915356669e+01 52 | 9.193827516563491287e+00 -2.936064087810040490e+01 53 | 9.374098644339296627e+00 -2.884047433805924143e+01 54 | 9.554369772115117954e+00 -3.033846936153036822e+01 55 | 9.734640899890758092e+00 -3.082980043771922496e+01 56 | 9.914912027666563432e+00 -3.079590502091352633e+01 57 | 1.009518315544220179e+01 -3.231515646142916864e+01 58 | 1.027545428321802135e+01 -3.195805352104443031e+01 59 | 1.045572541099382846e+01 -3.154763184370596463e+01 60 | 1.063599653876946860e+01 -3.371704777067160563e+01 61 | 1.081626766654527394e+01 -3.429742803536588980e+01 62 | 1.099653879432109527e+01 -3.254816454389570879e+01 63 | 1.117680992209673363e+01 -3.332932997687038323e+01 64 | 1.135708104987254075e+01 -3.436028134747714091e+01 65 | 1.153735217764835852e+01 -3.637167346098076592e+01 66 | 1.171762330542417985e+01 -3.663589715484612697e+01 67 | 1.189789443319980577e+01 -3.605607573987517611e+01 68 | 1.207816556097562710e+01 -3.722649939978437317e+01 69 | 1.225843668875125303e+01 -4.062472726062344464e+01 70 | 1.243870781652707258e+01 -3.994991177750544153e+01 71 | 1.261897894430289035e+01 -3.791330345182041128e+01 72 | 1.279925007207869747e+01 -4.174570405919007499e+01 73 | 1.297952119985433761e+01 -4.234206929069938496e+01 74 | 1.315979232763015894e+01 -4.112359227261057981e+01 75 | 1.334006345540578486e+01 -4.262225917293643107e+01 76 | 1.352033458318160264e+01 -4.344746654417064491e+01 77 | 1.370060571095742219e+01 -4.162305587241836946e+01 78 | 1.388087683873322753e+01 -4.266046831776194637e+01 79 | 1.406114796650886944e+01 -4.374664800728414349e+01 80 | 1.424141909428467478e+01 -4.198672265001882664e+01 81 | 1.442169022206031492e+01 -4.462764874557716865e+01 82 | 1.460196134983613447e+01 -4.603841141676610960e+01 83 | 1.478223247761194159e+01 -4.403634690091733006e+01 84 | 1.496250360538794055e+01 -4.944391794299267673e+01 85 | 1.514277473316429834e+01 -4.855947045449136823e+01 86 | 1.532304586094065613e+01 -4.538736263414927663e+01 87 | 1.550331698871719155e+01 -5.027221464447168131e+01 88 | 1.568358811649353513e+01 -4.799796183295764962e+01 89 | 1.586385924426990535e+01 -4.806347430370759355e+01 90 | 1.604413037204696835e+01 -4.941558283775781746e+01 91 | 1.622440149982405444e+01 -5.006319534979270003e+01 92 | 1.640467262760093803e+01 -5.036149477588256218e+01 93 | 1.658494375537802412e+01 -4.988225186255761656e+01 94 | 1.676521488315511377e+01 -5.075103836776742838e+01 95 | 1.694548601093217144e+01 -5.103996664167342345e+01 96 | 1.712575713870926108e+01 -5.261300468303652877e+01 97 | 1.730602826648614467e+01 -5.380312099091337785e+01 98 | 1.748629939426323077e+01 -5.435605618722125598e+01 99 | 1.766657052204031686e+01 -5.380564002485100161e+01 100 | 1.784684164981738164e+01 -5.562240391705624631e+01 101 | 1.802711277759428654e+01 -5.480649311604779683e+01 102 | -------------------------------------------------------------------------------- /files/tutorial2/solution/unbreakable.data: -------------------------------------------------------------------------------- 1 | ../unbreakable.data -------------------------------------------------------------------------------- /files/tutorial2/solution/unbreakable.inc: -------------------------------------------------------------------------------- 1 | ../unbreakable.inc -------------------------------------------------------------------------------- /files/tutorial2/solution/unbreakable.lmp: -------------------------------------------------------------------------------- 1 | # Python script (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | units real 7 | atom_style molecular 8 | boundary f f f 9 | 10 | pair_style lj/cut 14.0 11 | bond_style harmonic 12 | angle_style harmonic 13 | dihedral_style opls 14 | improper_style harmonic 15 | special_bonds lj 0.0 0.0 0.5 16 | 17 | read_data unbreakable.data 18 | include unbreakable.inc 19 | 20 | group carbon_atoms type 1 21 | variable xmax equal bound(carbon_atoms,xmax)-0.5 22 | variable xmin equal bound(carbon_atoms,xmin)+0.5 23 | region rtop block ${xmax} INF INF INF INF INF 24 | region rbot block INF ${xmin} INF INF INF INF 25 | region rmid block ${xmin} ${xmax} INF INF INF INF 26 | 27 | group cnt_top region rtop 28 | group cnt_bot region rbot 29 | group cnt_mid region rmid 30 | set group cnt_top mol 1 31 | set group cnt_bot mol 2 32 | set group cnt_mid mol 3 33 | 34 | variable xmax_del equal ${xmax}-2 35 | variable xmin_del equal ${xmin}+2 36 | region rdel block ${xmin_del} ${xmax_del} INF INF INF INF 37 | group rdel region rdel 38 | delete_atoms random fraction 0.02 no rdel NULL 2793 bond yes 39 | 40 | reset_atoms id sort yes 41 | velocity cnt_mid create 300 48455 mom yes rot yes 42 | 43 | fix mynve1 cnt_top nve 44 | fix mynve2 cnt_bot nve 45 | fix mynvt cnt_mid nvt temp 300 300 100 46 | 47 | fix mysf1 cnt_top setforce 0 0 0 48 | fix mysf2 cnt_bot setforce 0 0 0 49 | velocity cnt_top set 0 0 0 50 | velocity cnt_bot set 0 0 0 51 | 52 | variable Lcnt equal xcm(cnt_top,x)-xcm(cnt_bot,x) 53 | variable Fcnt equal f_mysf1[1]-f_mysf2[1] 54 | 55 | dump viz all image 500 myimage-*.ppm element type size 1000 400 zoom 6 shiny 0.3 fsaa yes bond atom 0.8 view 0 90 box no 0.0 axes no 0.0 0.0 56 | dump_modify viz pad 9 backcolor white adiam 1 0.85 bdiam 1 1.0 57 | 58 | compute Tmid cnt_mid temp 59 | thermo 100 60 | thermo_style custom step temp etotal v_Lcnt v_Fcnt 61 | thermo_modify temp Tmid line yaml 62 | 63 | timestep 1.0 64 | run 5000 65 | 66 | velocity cnt_top set 0.0005 0 0 67 | velocity cnt_bot set -0.0005 0 0 68 | 69 | run 10000 70 | -------------------------------------------------------------------------------- /files/tutorial2/solution/unbreakable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial2/solution/unbreakable.png -------------------------------------------------------------------------------- /files/tutorial2/unbreakable-yaml-reader.py: -------------------------------------------------------------------------------- 1 | # Python script (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | import numpy as np 7 | import re 8 | import yaml 9 | 10 | # Import the data from the yaml file 11 | pattern = r"^(keywords:.*$|data:$|---$|\.\.\.$| - \[.*\]$)" 12 | docs = "" 13 | with open("unbreakable.yaml") as f: 14 | for line in f: 15 | m = re.search(pattern, line) 16 | if m: 17 | docs += m.group(0) + "\n" 18 | thermo = list(yaml.load_all(docs, Loader=yaml.CSafeLoader)) 19 | 20 | # Read basic information 21 | print("Number of runs: ", len(thermo)) 22 | print("All info:", thermo[1]['keywords']) 23 | 24 | # Read the data from the second run, and save it. 25 | Force = [] 26 | Length = [] 27 | for line in thermo[1]["data"]: 28 | _, _, _, L, F = line 29 | Force.append(F) 30 | Length.append(L) 31 | Force = np.array(Force) 32 | Length = np.array(Length) 33 | 34 | # Calculate the stress and the strain from the Force and Length 35 | Area = np.pi*5.2**2 # Angstrom^2 36 | Stress = Force/Area # Kcal/mol/Angstrom^3 37 | Strain = 100*(Length-Length[0])/Length[0] # in percents 38 | 39 | np.savetxt("unbreakable.dat", np.vstack([Strain, Stress]).T) 40 | -------------------------------------------------------------------------------- /files/tutorial2/unbreakable.inc: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | pair_coeff 1 1 0.066 3.4 7 | bond_coeff 1 469 1.4 8 | angle_coeff 1 63 120 9 | dihedral_coeff 1 0 7.25 0 0 10 | improper_coeff 1 5 180 11 | -------------------------------------------------------------------------------- /files/tutorial2/unbreakable.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | units real 7 | atom_style molecular 8 | boundary f f f 9 | 10 | pair_style lj/cut 14.0 11 | bond_style harmonic 12 | angle_style harmonic 13 | dihedral_style opls 14 | improper_style harmonic 15 | special_bonds lj 0.0 0.0 0.5 16 | 17 | read_data unbreakable.data 18 | include unbreakable.inc 19 | 20 | run 0 post no 21 | -------------------------------------------------------------------------------- /files/tutorial3/.manifest: -------------------------------------------------------------------------------- 1 | # LAMMPS Tutorial manifest file. This file determines what is downloaded when. 2 | # comments start with a # as the first character. 3 | # comments and empty lines are ignored 4 | ############################################################################## 5 | # 1) input file templates and data files 6 | # the first file will be automatically loaded 7 | water.lmp 8 | merge.lmp 9 | pull.lmp 10 | peg.mol 11 | water.mol 12 | parameters.inc 13 | 14 | # 2) solution files 15 | # only downloaded on request 16 | solution/parameters.inc 17 | solution/peg.mol 18 | solution/water.lmp 19 | solution/water.mol 20 | solution/water.restart 21 | solution/water.log 22 | solution/water.png 23 | solution/merge.lmp 24 | solution/merge.restart 25 | solution/merge.log 26 | solution/merge.png 27 | solution/pull.lmp 28 | solution/pull.log 29 | solution/pull.png 30 | 31 | # 3) support files 32 | 33 | -------------------------------------------------------------------------------- /files/tutorial3/merge.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | read_restart water.restart 7 | -------------------------------------------------------------------------------- /files/tutorial3/parameters.inc: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | labelmap atom 1 OE 2 C 3 HC 4 H 5 CPos 6 OAlc 7 OW 8 HW 7 | labelmap bond 1 g4 2 g18 3 g26 4 g27 5 g56 6 g71 7 OW-HW 8 | labelmap angle 1 g12 2 g13 3 g14 4 g15 5 g51 6 g56 7 g102 8 HW-OW-HW 9 | labelmap dihedral 1 g23 2 g34 3 g46 4 glj14 10 | 11 | mass OE 15.9994 # PEG O (GROMOS 54A7) 12 | mass C 12.011 # PEG C (GROMOS 54A7) 13 | mass HC 1.008 # PEG H (GROMOS 54A7) 14 | mass H 1.008 # PEG H (GROMOS 54A7) 15 | mass CPos 12.011 # PEG C (GROMOS 54A7) 16 | mass OAlc 15.9994 # PEG O (GROMOS 54A7) 17 | mass OW 15.9994 # H2O O (SPC/Fw) 18 | mass HW 1.008 # H2O H (SPC/Fw) 19 | 20 | pair_coeff OE OE 0.2526 2.8492 21 | pair_coeff C C 0.0663 3.5812 22 | pair_coeff HC HC 0.0283 2.3734 23 | pair_coeff H H 0.0 0.0 24 | pair_coeff CPos CPos 0.2450 2.8114 25 | pair_coeff OAlc OAlc 0.1195 3.1000 26 | pair_coeff OW OW 0.155 3.165 27 | pair_coeff HW HW 0.0 0.0 28 | 29 | bond_coeff g4 1109.2926 1.12 30 | bond_coeff g18 399.7916 1.43 31 | bond_coeff g26 299.8440 1.52 32 | bond_coeff g27 400.0343 1.53 33 | bond_coeff g56 310.7075 1.41 34 | bond_coeff g71 179.2543 0.971 35 | bond_coeff OW-HW 529.581 1.012 36 | 37 | angle_coeff g12 47.6940 109.5 38 | angle_coeff g13 55.1271 109.5 39 | angle_coeff g14 47.6350 109.6 40 | angle_coeff g15 55.1139 111.0 41 | angle_coeff g51 54.9931 110.3 42 | angle_coeff g56 180.4602 109.0 43 | angle_coeff g102 30.1731 110.0 44 | angle_coeff HW-OW-HW 37.95 113.24 45 | 46 | dihedral_coeff g23 0.3011 1 3 47 | dihedral_coeff g34 1.4149 1 3 48 | dihedral_coeff g46 0.2390 -1 3 49 | dihedral_coeff glj14 0.0 1 1 50 | -------------------------------------------------------------------------------- /files/tutorial3/peg.mol: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # PEG molecule 7 | 8 | 59 atoms 9 | 58 bonds 10 | 104 angles 11 | 116 dihedrals 12 | 13 | Coords 14 | 15 | 1 -3.0661409 -3.1122069 -1.2331413 16 | 2 -3.0905955 -3.1901295 -0.3069935 17 | 3 -1.7871211 -3.4628029 0.1677571 18 | 4 -1.7892607 -3.9757321 1.1640826 19 | 5 -1.4364998 -2.4400568 0.4558979 20 | 6 -0.9585523 -4.2486658 -0.9052389 21 | 7 -1.5905948 -5.0815649 -1.3120303 22 | 8 -0.0526673 -4.7456765 -0.4700128 23 | 9 -0.63208 -3.3539891 -2.0115812 24 | 10 0.2145577 -4.0010762 -2.9207664 25 | 11 -0.3729619 -4.5629487 -3.6922491 26 | 12 1.0240761 -4.5117416 -2.3388433 27 | 13 0.9711505 -2.8357534 -3.5251923 28 | 14 0.3408715 -1.9581318 -3.822669 29 | 15 1.6180273 -3.1186311 -4.3940263 30 | 16 1.8975644 -2.4613039 -2.5075514 31 | 17 3.0585685 -1.8075132 -3.006783 32 | 18 2.8443427 -0.8083913 -3.4607034 33 | 19 3.6249113 -2.4323449 -3.7466593 34 | 20 3.992363 -1.7272376 -1.8733916 35 | 21 4.9511518 -1.186389 -2.07637 36 | 22 4.254519 -2.795933 -1.6625937 37 | 23 3.423965 -1.0901105 -0.7496133 38 | 24 3.8947239 -1.659389 0.516987 39 | 25 3.9258208 -0.8841055 1.3251652 40 | 26 4.9554296 -2.0063238 0.4150401 41 | 27 3.0359709 -2.8971462 1.0103722 42 | 28 3.8185678 -3.6568248 1.2752906 43 | 29 2.4917984 -3.195833 0.0744643 44 | 30 2.0725911 -2.848428 2.0760021 45 | 31 1.638817 -1.4838974 2.5253139 46 | 32 2.5752075 -1.0062795 2.9080422 47 | 33 0.9012089 -1.6500344 3.3573053 48 | 34 0.8815328 -0.5306711 1.5538689 49 | 35 0.5519052 -1.1815579 0.7041188 50 | 36 1.6224746 0.2331944 1.1997508 51 | 37 -0.2989756 -0.0199954 2.1694908 52 | 38 -0.3033598 1.4095408 2.1280825 53 | 39 0.0521263 1.761717 1.1273303 54 | 40 0.4747811 1.7876458 2.8392599 55 | 41 -1.6030958 1.9523106 2.4553161 56 | 42 -1.5646386 2.9988577 2.8519616 57 | 43 -1.9732467 1.2583804 3.2576206 58 | 44 -2.5225735 1.8953969 1.3081864 59 | 45 -3.3669469 3.0741107 1.0973018 60 | 46 -3.0220368 3.8450892 1.8318384 61 | 47 -4.4858675 3.0095129 1.1439484 62 | 48 -3.0599689 3.6382723 -0.3005937 63 | 49 -3.982976 3.5193791 -0.9249329 64 | 50 -2.1988642 3.09917 -0.7700861 65 | 51 -2.7010767 5.025878 -0.199455 66 | 52 -1.3877664 5.5169363 -0.1698399 67 | 53 -0.8882234 5.1431508 -1.0995853 68 | 54 -0.935725 4.957068 0.6896982 69 | 55 -1.3304483 7.055419 0.0381237 70 | 56 -2.0611646 7.6166778 -0.601446 71 | 57 -0.3436857 7.3639388 -0.3955144 72 | 58 -1.5631742 7.5380082 1.3714558 73 | 59 -2.4256234 7.9039402 1.5299768 74 | 75 | Types 76 | 77 | 1 H 78 | 2 OAlc 79 | 3 CPos 80 | 4 HC 81 | 5 HC 82 | 6 C 83 | 7 HC 84 | 8 HC 85 | 9 OE 86 | 10 C 87 | 11 HC 88 | 12 HC 89 | 13 C 90 | 14 HC 91 | 15 HC 92 | 16 OE 93 | 17 C 94 | 18 HC 95 | 19 HC 96 | 20 C 97 | 21 HC 98 | 22 HC 99 | 23 OE 100 | 24 C 101 | 25 HC 102 | 26 HC 103 | 27 C 104 | 28 HC 105 | 29 HC 106 | 30 OE 107 | 31 C 108 | 32 HC 109 | 33 HC 110 | 34 C 111 | 35 HC 112 | 36 HC 113 | 37 OE 114 | 38 C 115 | 39 HC 116 | 40 HC 117 | 41 C 118 | 42 HC 119 | 43 HC 120 | 44 OE 121 | 45 C 122 | 46 HC 123 | 47 HC 124 | 48 C 125 | 49 HC 126 | 50 HC 127 | 51 OE 128 | 52 C 129 | 53 HC 130 | 54 HC 131 | 55 CPos 132 | 56 HC 133 | 57 HC 134 | 58 OAlc 135 | 59 H 136 | 137 | Charges 138 | 139 | 1 0.211 140 | 2 -0.328 141 | 3 -0.019 142 | 4 0.093 143 | 5 0.093 144 | 6 -0.063 145 | 7 0.079 146 | 8 0.079 147 | 9 -0.295 148 | 10 -0.021 149 | 11 0.084 150 | 12 0.084 151 | 13 -0.023 152 | 14 0.083 153 | 15 0.083 154 | 16 -0.283 155 | 17 -0.023 156 | 18 0.083 157 | 19 0.083 158 | 20 -0.023 159 | 21 0.083 160 | 22 0.083 161 | 23 -0.283 162 | 24 -0.023 163 | 25 0.082 164 | 26 0.082 165 | 27 -0.023 166 | 28 0.082 167 | 29 0.082 168 | 30 -0.283 169 | 31 -0.023 170 | 32 0.082 171 | 33 0.082 172 | 34 -0.023 173 | 35 0.082 174 | 36 0.082 175 | 37 -0.283 176 | 38 -0.023 177 | 39 0.082 178 | 40 0.083 179 | 41 -0.023 180 | 42 0.083 181 | 43 0.083 182 | 44 -0.283 183 | 45 -0.023 184 | 46 0.083 185 | 47 0.083 186 | 48 -0.021 187 | 49 0.084 188 | 50 0.084 189 | 51 -0.295 190 | 52 -0.063 191 | 53 0.079 192 | 54 0.079 193 | 55 -0.019 194 | 56 0.093 195 | 57 0.093 196 | 58 -0.328 197 | 59 0.211 198 | 199 | Bonds 200 | 201 | 1 g18 13 16 202 | 2 g18 16 17 203 | 3 g18 20 23 204 | 4 g18 23 24 205 | 5 g18 27 30 206 | 6 g18 30 31 207 | 7 g18 34 37 208 | 8 g18 37 38 209 | 9 g18 41 44 210 | 10 g18 44 45 211 | 11 g18 48 51 212 | 12 g18 51 52 213 | 13 g18 6 9 214 | 14 g18 9 10 215 | 15 g26 17 20 216 | 16 g26 24 27 217 | 17 g26 31 34 218 | 18 g26 38 41 219 | 19 g27 10 13 220 | 20 g27 3 6 221 | 21 g27 45 48 222 | 22 g27 52 55 223 | 23 g4 10 11 224 | 24 g4 10 12 225 | 25 g4 13 14 226 | 26 g4 13 15 227 | 27 g4 17 18 228 | 28 g4 17 19 229 | 29 g4 20 21 230 | 30 g4 20 22 231 | 31 g4 24 25 232 | 32 g4 24 26 233 | 33 g4 27 28 234 | 34 g4 27 29 235 | 35 g4 3 4 236 | 36 g4 3 5 237 | 37 g4 31 32 238 | 38 g4 31 33 239 | 39 g4 34 35 240 | 40 g4 34 36 241 | 41 g4 38 39 242 | 42 g4 38 40 243 | 43 g4 41 42 244 | 44 g4 41 43 245 | 45 g4 45 46 246 | 46 g4 45 47 247 | 47 g4 48 49 248 | 48 g4 48 50 249 | 49 g4 52 53 250 | 50 g4 52 54 251 | 51 g4 55 56 252 | 52 g4 55 57 253 | 53 g4 6 7 254 | 54 g4 6 8 255 | 55 g56 2 3 256 | 56 g56 55 58 257 | 57 g71 1 2 258 | 58 g71 58 59 259 | 260 | Angles 261 | 262 | 1 g102 14 13 16 263 | 2 g102 15 13 16 264 | 3 g102 2 3 4 265 | 4 g102 2 3 5 266 | 5 g102 21 20 23 267 | 6 g102 22 20 23 268 | 7 g102 23 24 25 269 | 8 g102 23 24 26 270 | 9 g102 30 31 32 271 | 10 g102 30 31 33 272 | 11 g102 35 34 37 273 | 12 g102 36 34 37 274 | 13 g102 37 38 39 275 | 14 g102 37 38 40 276 | 15 g102 4 3 5 277 | 16 g102 4 3 6 278 | 17 g102 44 45 46 279 | 18 g102 44 45 47 280 | 19 g102 5 3 6 281 | 20 g102 52 55 56 282 | 21 g102 52 55 57 283 | 22 g102 56 55 57 284 | 23 g102 56 55 58 285 | 24 g102 57 55 58 286 | 25 g12 1 2 3 287 | 26 g12 13 16 17 288 | 27 g12 20 23 24 289 | 28 g12 27 30 31 290 | 29 g12 34 37 38 291 | 30 g12 41 44 45 292 | 31 g12 48 51 52 293 | 32 g12 55 58 59 294 | 33 g12 6 9 10 295 | 34 g13 10 13 16 296 | 35 g13 16 17 20 297 | 36 g13 17 20 23 298 | 37 g13 23 24 27 299 | 38 g13 3 6 9 300 | 39 g13 30 31 34 301 | 40 g13 31 34 37 302 | 41 g13 37 38 41 303 | 42 g13 38 41 44 304 | 43 g13 44 45 48 305 | 44 g13 45 48 51 306 | 45 g13 51 52 55 307 | 46 g13 9 10 13 308 | 47 g14 11 10 12 309 | 48 g14 14 13 15 310 | 49 g14 18 17 19 311 | 50 g14 21 20 22 312 | 51 g14 25 24 26 313 | 52 g14 28 27 29 314 | 53 g14 32 31 33 315 | 54 g14 35 34 36 316 | 55 g14 39 38 40 317 | 56 g14 42 41 43 318 | 57 g14 46 45 47 319 | 58 g14 49 48 50 320 | 59 g14 51 52 53 321 | 60 g14 51 52 54 322 | 61 g14 53 52 54 323 | 62 g14 7 6 8 324 | 63 g14 7 6 9 325 | 64 g14 8 6 9 326 | 65 g15 2 3 6 327 | 66 g15 3 6 7 328 | 67 g15 3 6 8 329 | 68 g15 52 55 58 330 | 69 g15 53 52 55 331 | 70 g15 54 52 55 332 | 71 g51 10 13 14 333 | 72 g51 10 13 15 334 | 73 g51 11 10 13 335 | 74 g51 12 10 13 336 | 75 g51 16 17 18 337 | 76 g51 16 17 19 338 | 77 g51 17 20 21 339 | 78 g51 17 20 22 340 | 79 g51 18 17 20 341 | 80 g51 19 17 20 342 | 81 g51 24 27 28 343 | 82 g51 24 27 29 344 | 83 g51 25 24 27 345 | 84 g51 26 24 27 346 | 85 g51 28 27 30 347 | 86 g51 29 27 30 348 | 87 g51 31 34 35 349 | 88 g51 31 34 36 350 | 89 g51 32 31 34 351 | 90 g51 33 31 34 352 | 91 g51 38 41 42 353 | 92 g51 38 41 43 354 | 93 g51 39 38 41 355 | 94 g51 40 38 41 356 | 95 g51 42 41 44 357 | 96 g51 43 41 44 358 | 97 g51 45 48 49 359 | 98 g51 45 48 50 360 | 99 g51 46 45 48 361 | 100 g51 47 45 48 362 | 101 g56 49 48 51 363 | 102 g56 50 48 51 364 | 103 g56 9 10 11 365 | 104 g56 9 10 12 366 | 367 | Dihedrals 368 | 369 | 1 g23 1 2 3 6 370 | 2 g23 10 13 16 17 371 | 3 g23 13 16 17 20 372 | 4 g23 17 20 23 24 373 | 5 g23 20 23 24 27 374 | 6 g23 27 30 31 34 375 | 7 g23 3 6 9 10 376 | 8 g23 31 34 37 38 377 | 9 g23 34 37 38 41 378 | 10 g23 38 41 44 45 379 | 11 g23 41 44 45 48 380 | 12 g23 45 48 51 52 381 | 13 g23 48 51 52 55 382 | 14 g23 52 55 58 59 383 | 15 g23 6 9 10 13 384 | 16 g34 2 3 6 9 385 | 17 g34 51 52 55 58 386 | 18 g46 16 17 20 23 387 | 19 g46 30 31 34 37 388 | 20 g46 37 38 41 44 389 | 21 g46 44 45 48 51 390 | 22 g46 9 10 13 16 391 | 23 glj14 1 2 3 4 392 | 24 glj14 1 2 3 5 393 | 25 glj14 11 10 13 14 394 | 26 glj14 11 10 13 15 395 | 27 glj14 11 10 13 16 396 | 28 glj14 12 10 13 14 397 | 29 glj14 12 10 13 15 398 | 30 glj14 12 10 13 16 399 | 31 glj14 13 16 17 18 400 | 32 glj14 13 16 17 19 401 | 33 glj14 14 13 16 17 402 | 34 glj14 15 13 16 17 403 | 35 glj14 16 17 20 21 404 | 36 glj14 16 17 20 22 405 | 37 glj14 18 17 20 21 406 | 38 glj14 18 17 20 22 407 | 39 glj14 18 17 20 23 408 | 40 glj14 19 17 20 21 409 | 41 glj14 19 17 20 22 410 | 42 glj14 19 17 20 23 411 | 43 glj14 2 3 6 7 412 | 44 glj14 2 3 6 8 413 | 45 glj14 20 23 24 25 414 | 46 glj14 20 23 24 26 415 | 47 glj14 21 20 23 24 416 | 48 glj14 22 20 23 24 417 | 49 glj14 23 24 27 28 418 | 50 glj14 23 24 27 29 419 | 51 glj14 25 24 27 28 420 | 52 glj14 25 24 27 29 421 | 53 glj14 26 24 27 28 422 | 54 glj14 26 24 27 29 423 | 55 glj14 27 30 31 32 424 | 56 glj14 27 30 31 33 425 | 57 glj14 28 27 30 31 426 | 58 glj14 29 27 30 31 427 | 59 glj14 30 31 34 35 428 | 60 glj14 30 31 34 36 429 | 61 glj14 32 31 34 35 430 | 62 glj14 32 31 34 36 431 | 63 glj14 32 31 34 37 432 | 64 glj14 33 31 34 35 433 | 65 glj14 33 31 34 36 434 | 66 glj14 33 31 34 37 435 | 67 glj14 34 37 38 39 436 | 68 glj14 34 37 38 40 437 | 69 glj14 35 34 37 38 438 | 70 glj14 36 34 37 38 439 | 71 glj14 37 38 41 42 440 | 72 glj14 37 38 41 43 441 | 73 glj14 39 38 41 42 442 | 74 glj14 39 38 41 43 443 | 75 glj14 39 38 41 44 444 | 76 glj14 4 3 6 7 445 | 77 glj14 4 3 6 8 446 | 78 glj14 4 3 6 9 447 | 79 glj14 40 38 41 42 448 | 80 glj14 40 38 41 43 449 | 81 glj14 40 38 41 44 450 | 82 glj14 41 44 45 46 451 | 83 glj14 41 44 45 47 452 | 84 glj14 42 41 44 45 453 | 85 glj14 43 41 44 45 454 | 86 glj14 44 45 48 49 455 | 87 glj14 44 45 48 50 456 | 88 glj14 46 45 48 49 457 | 89 glj14 46 45 48 50 458 | 90 glj14 46 45 48 51 459 | 91 glj14 47 45 48 49 460 | 92 glj14 47 45 48 50 461 | 93 glj14 47 45 48 51 462 | 94 glj14 48 51 52 53 463 | 95 glj14 48 51 52 54 464 | 96 glj14 49 48 51 52 465 | 97 glj14 5 3 6 7 466 | 98 glj14 5 3 6 8 467 | 99 glj14 5 3 6 9 468 | 100 glj14 50 48 51 52 469 | 101 glj14 51 52 55 56 470 | 102 glj14 51 52 55 57 471 | 103 glj14 53 52 55 56 472 | 104 glj14 53 52 55 57 473 | 105 glj14 53 52 55 58 474 | 106 glj14 54 52 55 56 475 | 107 glj14 54 52 55 57 476 | 108 glj14 54 52 55 58 477 | 109 glj14 56 55 58 59 478 | 110 glj14 57 55 58 59 479 | 111 glj14 6 9 10 11 480 | 112 glj14 6 9 10 12 481 | 113 glj14 7 6 9 10 482 | 114 glj14 8 6 9 10 483 | 115 glj14 9 10 13 14 484 | 116 glj14 9 10 13 15 485 | -------------------------------------------------------------------------------- /files/tutorial3/pull.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | kspace_style pppm 1e-5 7 | read_restart merge.restart 8 | -------------------------------------------------------------------------------- /files/tutorial3/solution/merge.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS input file (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | kspace_style pppm 1e-5 7 | read_restart water.restart 8 | 9 | molecule pegmol peg.mol 10 | create_atoms 0 single 0 0 0 mol pegmol 454756 11 | 12 | group PEG type C CPos H HC OAlc OE 13 | 14 | delete_atoms overlap 2.0 H2O PEG mol yes 15 | 16 | dump viz all image 250 myimage-*.ppm type & 17 | type shiny 0.1 box no 0.01 & 18 | view 0 90 zoom 3 fsaa yes bond atom 0.8 size 1000 500 19 | dump_modify viz backcolor white & 20 | acolor OW red acolor HW white & 21 | acolor OE darkred acolor OAlc darkred & 22 | acolor C gray acolor CPos gray & 23 | acolor H white acolor HC white & 24 | adiam OW 0.2 adiam HW 0.2 & 25 | adiam C 2.8 adiam CPos 2.8 adiam OAlc 2.6 & 26 | adiam H 1.4 adiam HC 1.4 adiam OE 2.6 27 | 28 | fix mynpt all npt temp 300 300 100 x 1 1 1000 29 | fix myrct PEG recenter 0 0 0 shift all 30 | timestep 1.0 31 | 32 | thermo 500 33 | run 10000 34 | 35 | write_restart merge.restart 36 | # write_data merge.data # uncomment to write a .data file as well 37 | -------------------------------------------------------------------------------- /files/tutorial3/solution/merge.log: -------------------------------------------------------------------------------- 1 | using 8 OpenMP thread(s) per MPI task 2 | using multi-threaded neighbor list subroutines 3 | Reading restart file ... 4 | restart file = 29 Aug 2024, LAMMPS = 29 Aug 2024 5 | restoring atom style full from restart 6 | orthogonal box = (-22.256144 -11.128072 -11.128072) to (22.256144 11.128072 11.128072) 7 | 1 by 1 by 1 MPI processor grid 8 | restoring pair style lj/cut/coul/long/omp from restart 9 | restoring bond style harmonic/omp from restart 10 | restoring angle style harmonic/omp from restart 11 | restoring dihedral style harmonic/omp from restart 12 | 2100 atoms 13 | 1400 bonds 14 | 700 angles 15 | Finding 1-2 1-3 1-4 neighbors ... 16 | special bond factors lj: 0 0 0.5 17 | special bond factors coul: 0 0 1 18 | 2 = max # of 1-2 neighbors 19 | 1 = max # of 1-3 neighbors 20 | 1 = max # of 1-4 neighbors 21 | 15 = max # of special neighbors 22 | special bonds CPU = 0.001 seconds 23 | read_restart CPU = 0.005 seconds 24 | Read molecule template pegmol: 25 | PEG molecule 26 | 1 molecules 27 | 0 fragments 28 | 59 atoms with max type 6 29 | 58 bonds with max type 6 30 | 104 angles with max type 7 31 | 116 dihedrals with max type 4 32 | 0 impropers with max type 0 33 | Created 59 atoms 34 | using lattice units in orthogonal box = (-22.256144 -11.128072 -11.128072) to (22.256144 11.128072 11.128072) 35 | create_atoms CPU = 0.000 seconds 36 | 59 atoms in group PEG 37 | System init for delete_atoms ... 38 | PPPM initialization ... 39 | using 12-bit tables for long-range coulomb (src/kspace.cpp:342) 40 | G vector (1/distance) = 0.30147332 41 | grid = 32 20 20 42 | stencil order = 5 43 | estimated absolute RMS force accuracy = 0.0034375004 44 | estimated relative force accuracy = 1.035193e-05 45 | using double precision KISS FFT 46 | 3d grid and FFT values/proc = 28431 12800 47 | Generated 28 of 28 mixed pair_coeff terms from geometric mixing rule 48 | Unused restart file global fix info: 49 | fix style: npt, fix ID: mynpt 50 | Last active /omp style is kspace_style pppm/omp 51 | Neighbor list info ... 52 | update: every = 1 steps, delay = 0 steps, check = yes 53 | max neighbors/atom: 2000, page size: 100000 54 | master list distance cutoff = 12 55 | ghost atom cutoff = 12 56 | binsize = 6, bins = 8 4 4 57 | 2 neighbor lists, perpetual/occasional/extra = 1 1 0 58 | (1) command delete_atoms, occasional 59 | attributes: full, newton on, omp 60 | pair build: full/bin/omp 61 | stencil: full/bin/3d 62 | bin: standard 63 | (2) pair lj/cut/coul/long/omp, perpetual 64 | attributes: half, newton on, omp 65 | pair build: half/bin/newton/omp 66 | stencil: half/bin/3d 67 | bin: standard 68 | WARNING: Ignoring 'compress yes' for molecular system (src/delete_atoms.cpp:141) 69 | Deleted 96 atoms, new total = 2063 70 | Deleted 64 bonds, new total = 1394 71 | Deleted 32 angles, new total = 772 72 | Deleted 0 dihedrals, new total = 116 73 | 74 | CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE 75 | 76 | Your simulation uses code contributions which should be cited: 77 | - Type Label Framework: https://doi.org/10.1021/acs.jpcb.3c08419 78 | The log file lists these citations in BibTeX format. 79 | 80 | CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE-CITE 81 | 82 | PPPM initialization ... 83 | using 12-bit tables for long-range coulomb (src/kspace.cpp:342) 84 | G vector (1/distance) = 0.30147173 85 | grid = 32 20 20 86 | stencil order = 5 87 | estimated absolute RMS force accuracy = 0.0033561701 88 | estimated relative force accuracy = 1.0107007e-05 89 | using double precision KISS FFT 90 | 3d grid and FFT values/proc = 28431 12800 91 | Generated 28 of 28 mixed pair_coeff terms from geometric mixing rule 92 | Last active /omp style is kspace_style pppm/omp 93 | Neighbor list info ... 94 | update: every = 1 steps, delay = 0 steps, check = yes 95 | max neighbors/atom: 2000, page size: 100000 96 | master list distance cutoff = 12 97 | ghost atom cutoff = 12 98 | binsize = 6, bins = 8 4 4 99 | 1 neighbor lists, perpetual/occasional/extra = 1 0 0 100 | (1) pair lj/cut/coul/long/omp, perpetual 101 | attributes: half, newton on, omp 102 | pair build: half/bin/newton/omp 103 | stencil: half/bin/3d 104 | bin: standard 105 | Setting up Verlet run ... 106 | Unit style : real 107 | Current step : 15000 108 | Time step : 1 109 | Per MPI rank memory allocation (min/avg/max) = 21.57 | 21.57 | 21.57 Mbytes 110 | Step Temp E_pair E_mol TotEng Press Volume 111 | 15000 293.96336 -6937.5692 809.92925 -4320.8147 -324.16098 22048.535 112 | 15500 303.55223 -7052.6966 800.95294 -4385.981 159.56378 22126.265 113 | 16000 299.6112 -7008.7809 788.22037 -4379.0211 -521.48094 22225.118 114 | 16500 297.84365 -7024.1933 799.14999 -4394.368 -549.95427 22078.839 115 | 17000 304.4771 -7151.7783 828.86978 -4451.4613 -1196.0884 21797.644 116 | 17500 297.2736 -7140.0735 799.15477 -4513.7472 -64.748238 21483.268 117 | 18000 290.38437 -7125.4702 772.583 -4568.0599 -147.3855 21603.548 118 | 18500 300.21995 -7069.3954 797.33657 -4426.7778 -858.54751 21744.808 119 | 19000 304.5521 -7222.3234 892.996 -4457.4191 -299.2864 21693.475 120 | 19500 300.26279 -7212.0992 892.97173 -4473.5832 317.78627 21838.822 121 | 20000 296.16369 -7088.4563 790.03404 -4478.0727 -324.19543 21847.186 122 | 20500 294.2846 -7173.3437 862.60611 -4501.9378 -10.865505 21688.816 123 | 21000 307.82989 -7129.0355 839.23064 -4397.7499 483.90536 21507.857 124 | 21500 298.67151 -7128.1414 811.38427 -4480.9935 508.12832 21488.203 125 | 22000 293.33114 -7103.4785 840.9377 -4459.6014 1534.3863 21399.357 126 | 22500 300.04254 -7088.2347 811.98583 -4432.0583 13.37241 21477.914 127 | 23000 297.09602 -7052.5148 855.06239 -4371.3725 -99.140411 21868.119 128 | 23500 304.62568 -7119.4796 835.07566 -4412.0435 -66.958474 21978.769 129 | 24000 301.80283 -7134.5524 806.69856 -4472.8438 399.88923 21660.515 130 | 24500 296.45896 -7156.1096 838.01791 -4495.9273 456.62139 21628.227 131 | 25000 297.98494 -7041.5008 828.93835 -4381.0188 146.83299 21852.916 132 | Loop time of 68.6241 on 8 procs for 10000 steps with 2063 atoms 133 | 134 | Performance: 12.590 ns/day, 1.906 hours/ns, 145.721 timesteps/s, 300.623 katom-step/s 135 | 713.6% CPU use with 1 MPI tasks x 8 OpenMP threads 136 | 137 | MPI task timing breakdown: 138 | Section | min time | avg time | max time |%varavg| %total 139 | --------------------------------------------------------------- 140 | Pair | 21.648 | 21.648 | 21.648 | 0.0 | 31.55 141 | Bond | 0.39399 | 0.39399 | 0.39399 | 0.0 | 0.57 142 | Kspace | 25.793 | 25.793 | 25.793 | 0.0 | 37.59 143 | Neigh | 2.7759 | 2.7759 | 2.7759 | 0.0 | 4.05 144 | Comm | 0.82742 | 0.82742 | 0.82742 | 0.0 | 1.21 145 | Output | 10.283 | 10.283 | 10.283 | 0.0 | 14.98 146 | Modify | 6.8375 | 6.8375 | 6.8375 | 0.0 | 9.96 147 | Other | | 0.06478 | | | 0.09 148 | 149 | Nlocal: 2063 ave 2063 max 2063 min 150 | Histogram: 1 0 0 0 0 0 0 0 0 0 151 | Nghost: 11827 ave 11827 max 11827 min 152 | Histogram: 1 0 0 0 0 0 0 0 0 0 153 | Neighs: 703928 ave 703928 max 703928 min 154 | Histogram: 1 0 0 0 0 0 0 0 0 0 155 | 156 | Total # of neighbors = 703928 157 | Ave neighs/atom = 341.21571 158 | Ave special neighs/atom = 2.2171595 159 | Neighbor list builds = 542 160 | Dangerous builds = 0 161 | System init for write_restart ... 162 | PPPM initialization ... 163 | using 12-bit tables for long-range coulomb (src/kspace.cpp:342) 164 | G vector (1/distance) = 0.30178312 165 | grid = 32 20 20 166 | stencil order = 5 167 | estimated absolute RMS force accuracy = 0.0033082643 168 | estimated relative force accuracy = 9.9627396e-06 169 | using double precision KISS FFT 170 | 3d grid and FFT values/proc = 28431 12800 171 | Generated 28 of 28 mixed pair_coeff terms from geometric mixing rule 172 | Last active /omp style is kspace_style pppm/omp 173 | -------------------------------------------------------------------------------- /files/tutorial3/solution/merge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial3/solution/merge.png -------------------------------------------------------------------------------- /files/tutorial3/solution/merge.restart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial3/solution/merge.restart -------------------------------------------------------------------------------- /files/tutorial3/solution/parameters.inc: -------------------------------------------------------------------------------- 1 | ../parameters.inc -------------------------------------------------------------------------------- /files/tutorial3/solution/peg.mol: -------------------------------------------------------------------------------- 1 | ../peg.mol -------------------------------------------------------------------------------- /files/tutorial3/solution/pull-with-tip.lmp: -------------------------------------------------------------------------------- 1 | # LAMMPS input file (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | kspace_style pppm 1e-5 7 | read_restart merge.restart 8 | 9 | group ends type OAlc 10 | variable xcm equal xcm(ends,x) 11 | variable oxies atom type==label2type(atom,OAlc) 12 | variable end1 atom v_oxies*(x>v_xcm) 13 | variable end2 atom v_oxies*(xv_xcm) 13 | variable end2 atom v_oxies*(x 0.9 error continue 38 | 39 | thermo 200 40 | thermo_style custom step temp pe etotal press density 41 | 42 | run 9000 43 | 44 | unfix mydef 45 | unfix myhal 46 | reset_timestep 0 47 | 48 | fix myrec CNT recenter NULL 0 0 units box shift all 49 | 50 | dump viz all image 1000 myimage-*.ppm & 51 | type type shiny 0.1 box no 0.01 size 1000 1000 & 52 | view 90 0 zoom 1.8 fsaa yes bond atom 0.5 53 | dump_modify viz backcolor white & 54 | acolor cp gray acolor c=1 gray & 55 | acolor c= gray acolor c1 deeppink & 56 | acolor c2 deeppink acolor c3 deeppink & 57 | adiam cp 0.3 adiam c=1 0.3 & 58 | adiam c= 0.3 adiam c1 0.3 & 59 | adiam c2 0.3 adiam c3 0.3 & 60 | acolor hc white adiam hc 0.15 61 | 62 | run 10000 63 | 64 | write_data mixing.data 65 | -------------------------------------------------------------------------------- /files/tutorial8/solution/mixing.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial8/solution/mixing.png -------------------------------------------------------------------------------- /files/tutorial8/solution/mixing.restart: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial8/solution/mixing.restart -------------------------------------------------------------------------------- /files/tutorial8/solution/polymerize.lmp: -------------------------------------------------------------------------------- 1 | # Python script (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # polymerization of PS-CNT composite using REACTER 7 | 8 | units real 9 | boundary p p p 10 | 11 | atom_style full 12 | kspace_style pppm 1.0e-5 13 | pair_style lj/class2/coul/long 8.5 14 | angle_style class2 15 | bond_style class2 16 | dihedral_style class2 17 | improper_style class2 18 | 19 | pair_modify tail yes mix sixthpower 20 | special_bonds lj/coul 0 0 1 21 | 22 | read_data mixing.data & 23 | extra/bond/per/atom 5 & 24 | extra/angle/per/atom 15 & 25 | extra/dihedral/per/atom 15 & 26 | extra/improper/per/atom 25 & 27 | extra/special/per/atom 25 28 | 29 | molecule mol1 M-M_pre.mol 30 | molecule mol2 M-M_post.mol 31 | molecule mol3 M-P_pre.mol 32 | molecule mol4 M-P_post.mol 33 | molecule mol5 P-P_pre.mol 34 | molecule mol6 P-P_post.mol 35 | 36 | dump viz all image 200 myimage-*.ppm & 37 | type type shiny 0.1 box no 0.01 size 1000 1000 & 38 | view 90 0 zoom 1.8 fsaa yes bond atom 0.5 39 | dump_modify viz backcolor white & 40 | acolor cp gray acolor c=1 gray & 41 | acolor c= gray acolor c1 deeppink & 42 | acolor c2 deeppink acolor c3 deeppink & 43 | adiam cp 0.3 adiam c=1 0.3 & 44 | adiam c= 0.3 adiam c1 0.3 & 45 | adiam c2 0.3 adiam c3 0.3 & 46 | acolor hc white adiam hc 0.15 47 | 48 | fix rxn all bond/react & 49 | stabilization yes statted_grp 0.03 & 50 | react R1 all 1 0 3.0 mol1 mol2 M-M.rxnmap & 51 | react R2 all 1 0 3.0 mol3 mol4 M-P.rxnmap & 52 | react R3 all 1 0 5.0 mol5 mol6 P-P.rxnmap 53 | 54 | fix mynvt statted_grp_REACT nvt temp 530 530 100 55 | group CNT molecule 1 56 | fix myrec CNT recenter NULL 0 0 shift all 57 | 58 | thermo 200 59 | thermo_style custom step temp press density f_rxn[*] 60 | 61 | run 25000 62 | -------------------------------------------------------------------------------- /files/tutorial8/solution/polymerize.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/files/tutorial8/solution/polymerize.png -------------------------------------------------------------------------------- /files/tutorial8/solution/styrene.mol: -------------------------------------------------------------------------------- 1 | ../styrene.mol -------------------------------------------------------------------------------- /files/tutorial8/styrene.mol: -------------------------------------------------------------------------------- 1 | # LAMMPS Input File (License CC BY 4.0) 2 | # By Simon Gravelle, Jacob R. Gissinger, and Axel Kohlmeyer 3 | # The DOI will be added upon publication 4 | # Find more on GitHub: https://github.com/lammpstutorials 5 | 6 | # styrene_molecule 7 | 8 | 16 atoms 9 | 16 bonds 10 | 24 angles 11 | 32 dihedrals 12 | 8 impropers 13 | 14 | Coords 15 | 16 | 1 13.465814590 0.682534277 -1.658940911 17 | 2 14.397815704 1.221534133 -1.658940911 18 | 3 12.235815048 1.392534137 -1.658940911 19 | 4 12.235815048 2.892534256 -1.658940911 20 | 5 11.005815506 0.682534277 -1.658940911 21 | 6 10.073815346 1.221534133 -1.658940911 22 | 7 11.005815506 -0.737465739 -1.658940911 23 | 8 10.073815346 -1.276464581 -1.658940911 24 | 9 12.235815048 -1.447464824 -1.658940911 25 | 10 12.235815048 -2.524465084 -1.658940911 26 | 11 13.465814590 -0.737465739 -1.658940911 27 | 12 14.397815704 -1.276464581 -1.658940911 28 | 13 13.101815224 3.297534943 -1.301940918 29 | 14 10.957815170 3.441534996 -2.220940590 30 | 15 11.007814407 4.183535576 -2.319940567 31 | 16 10.314815521 2.618533611 -2.514940262 32 | 33 | Types 34 | 35 | 1 cp 36 | 2 hc 37 | 3 cp 38 | 4 c=1 39 | 5 cp 40 | 6 hc 41 | 7 cp 42 | 8 hc 43 | 9 cp 44 | 10 hc 45 | 11 cp 46 | 12 hc 47 | 13 hc 48 | 14 c= 49 | 15 hc 50 | 16 hc 51 | 52 | Charges 53 | 54 | 1 -0.129000 55 | 2 0.123700 56 | 3 0.026600 57 | 4 -0.018200 58 | 5 -0.129000 59 | 6 0.123700 60 | 7 -0.173400 61 | 8 0.140300 62 | 9 -0.113400 63 | 10 0.128800 64 | 11 -0.173400 65 | 12 0.140300 66 | 13 0.051800 67 | 14 -0.069600 68 | 15 0.035400 69 | 16 0.035400 70 | 71 | Molecules 72 | 73 | 1 1 74 | 2 1 75 | 3 1 76 | 4 1 77 | 5 1 78 | 6 1 79 | 7 1 80 | 8 1 81 | 9 1 82 | 10 1 83 | 11 1 84 | 12 1 85 | 13 1 86 | 14 1 87 | 15 1 88 | 16 1 89 | 90 | Bonds 91 | 92 | 1 cp-hc 1 2 93 | 2 cp-cp 1 3 94 | 3 cp-cp 1 11 95 | 4 cp-c=1 3 4 96 | 5 cp-cp 3 5 97 | 6 hc-c=1 13 4 98 | 7 c=1-c= 4 14 99 | 8 cp-hc 5 6 100 | 9 cp-cp 5 7 101 | 10 cp-hc 7 8 102 | 11 cp-cp 7 9 103 | 12 cp-hc 9 10 104 | 13 cp-cp 9 11 105 | 14 cp-hc 11 12 106 | 15 hc-c= 15 14 107 | 16 hc-c= 16 14 108 | 109 | Angles 110 | 111 | 1 cp-cp-hc 3 1 2 112 | 2 cp-cp-hc 11 1 2 113 | 3 cp-cp-cp 3 1 11 114 | 4 cp-cp-c=1 1 3 4 115 | 5 cp-cp-cp 1 3 5 116 | 6 cp-cp-c=1 5 3 4 117 | 7 cp-c=1-hc 3 4 13 118 | 8 cp-c=1-c= 3 4 14 119 | 9 hc-c=1-c= 13 4 14 120 | 10 cp-cp-hc 3 5 6 121 | 11 cp-cp-cp 3 5 7 122 | 12 cp-cp-hc 7 5 6 123 | 13 cp-cp-hc 5 7 8 124 | 14 cp-cp-cp 5 7 9 125 | 15 cp-cp-hc 9 7 8 126 | 16 cp-cp-hc 7 9 10 127 | 17 cp-cp-cp 7 9 11 128 | 18 cp-cp-hc 11 9 10 129 | 19 cp-cp-cp 1 11 9 130 | 20 cp-cp-hc 1 11 12 131 | 21 cp-cp-hc 9 11 12 132 | 22 hc-c=-c=1 15 14 4 133 | 23 hc-c=-c=1 16 14 4 134 | 24 hc-c=-hc 15 14 16 135 | 136 | Dihedrals 137 | 138 | 1 hc-cp-cp-c=1 2 1 3 4 139 | 2 cp-cp-cp-hc 5 3 1 2 140 | 3 cp-cp-cp-c=1 11 1 3 4 141 | 4 cp-cp-cp-cp 11 1 3 5 142 | 5 cp-cp-cp-hc 9 11 1 2 143 | 6 hc-cp-cp-hc 2 1 11 12 144 | 7 cp-cp-cp-cp 3 1 11 9 145 | 8 cp-cp-cp-hc 3 1 11 12 146 | 9 cp-cp-c=1-hc 1 3 4 13 147 | 10 cp-cp-c=1-c= 1 3 4 14 148 | 11 cp-cp-c=1-hc 5 3 4 13 149 | 12 cp-cp-c=1-c= 5 3 4 14 150 | 13 cp-cp-cp-hc 1 3 5 6 151 | 14 cp-cp-cp-cp 1 3 5 7 152 | 15 hc-cp-cp-c=1 6 5 3 4 153 | 16 cp-cp-cp-c=1 7 5 3 4 154 | 17 cp-c=1-c=-hc 3 4 14 15 155 | 18 cp-c=1-c=-hc 3 4 14 16 156 | 19 hc-c=1-c=-hc 13 4 14 15 157 | 20 hc-c=1-c=-hc 13 4 14 16 158 | 21 cp-cp-cp-hc 3 5 7 8 159 | 22 cp-cp-cp-cp 3 5 7 9 160 | 23 hc-cp-cp-hc 6 5 7 8 161 | 24 cp-cp-cp-hc 9 7 5 6 162 | 25 cp-cp-cp-hc 5 7 9 10 163 | 26 cp-cp-cp-cp 5 7 9 11 164 | 27 hc-cp-cp-hc 8 7 9 10 165 | 28 cp-cp-cp-hc 11 9 7 8 166 | 29 cp-cp-cp-cp 7 9 11 1 167 | 30 cp-cp-cp-hc 7 9 11 12 168 | 31 cp-cp-cp-hc 1 11 9 10 169 | 32 hc-cp-cp-hc 10 9 11 12 170 | 171 | Impropers 172 | 173 | 1 cp-cp-cp-hc 3 1 11 2 174 | 2 cp-cp-cp-c=1 1 3 5 4 175 | 3 cp-c=1-hc-c= 3 4 13 14 176 | 4 cp-cp-cp-hc 3 5 7 6 177 | 5 cp-cp-cp-hc 5 7 9 8 178 | 6 cp-cp-cp-hc 7 9 11 10 179 | 7 cp-cp-cp-hc 1 11 9 12 180 | 8 hc-c=-hc-c=1 15 14 16 4 181 | -------------------------------------------------------------------------------- /lammps-tutorials.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/lammpstutorials/lammpstutorials-article/47ad2e73f540ffce06bf6199336105c18bc473fa/lammps-tutorials.pdf --------------------------------------------------------------------------------