254 lines
13 KiB
Groff
254 lines
13 KiB
Groff
LAMMPS (19 Nov 2024)
|
|
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:99)
|
|
using 1 OpenMP thread(s) per MPI task
|
|
# Removing Binned Velocities of Center of Mass (VCM) from Stress
|
|
|
|
# This example shows how to remove rigid body motion from
|
|
# binned stress calculations. This uses a combination of commands
|
|
# from compute chunk/atom, compute temp/chunk, compute
|
|
# stress/atom and fix ave/time. We'll show how these commands
|
|
# work in the context of a shockwave experiment on a cube of
|
|
# atoms. To shock the cube, a rectangular region of atoms is
|
|
# frozen, moved into the cube with a constant velocity along the
|
|
# x direction, and then unfrozen. As the shockwave begins
|
|
# propagating, the body of the cube also moves along the x
|
|
# direction. To better understand the stress dynamics of the
|
|
# cube we remove the velocity component belonging to the overall
|
|
# motion of each bin.
|
|
|
|
units metal
|
|
boundary p p p
|
|
atom_style atomic
|
|
lattice fcc 5.3589
|
|
Lattice spacing in x,y,z = 5.3589 5.3589 5.3589
|
|
processors 1 * *
|
|
|
|
# Defining regions for box and atoms.
|
|
# In this experiment an elongated simulation cell is
|
|
# defined in the x direction to allow for non-periodic
|
|
# motion of the atoms.
|
|
|
|
region box1 block -3 24 0 12 0 12 units lattice
|
|
region box2 block 0 12 0 12 0 12 units lattice
|
|
|
|
# Creating box and atoms
|
|
|
|
create_box 1 box1
|
|
Created orthogonal box = (-16.0767 0 0) to (128.6136 64.3068 64.3068)
|
|
1 by 2 by 2 MPI processor grid
|
|
create_atoms 1 region box2
|
|
Created 7200 atoms
|
|
using lattice units in orthogonal box = (-16.0767 0 0) to (128.6136 64.3068 64.3068)
|
|
create_atoms CPU = 0.001 seconds
|
|
|
|
mass 1 40.00
|
|
|
|
# Adding energy to the system
|
|
|
|
velocity all create 600.0 9999
|
|
|
|
pair_style lj/cut 10
|
|
pair_coeff 1 1 0.04 3.405
|
|
|
|
# Begin time integration
|
|
|
|
timestep 2e-3
|
|
|
|
fix fix_nve all nve
|
|
|
|
thermo 100
|
|
|
|
run 500
|
|
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
|
Neighbor list info ...
|
|
update: every = 1 steps, delay = 0 steps, check = yes
|
|
max neighbors/atom: 2000, page size: 100000
|
|
master list distance cutoff = 12
|
|
ghost atom cutoff = 12
|
|
binsize = 6, bins = 25 11 11
|
|
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
|
(1) pair lj/cut/opt, perpetual
|
|
attributes: half, newton on
|
|
pair build: half/bin/atomonly/newton
|
|
stencil: half/bin/3d
|
|
bin: standard
|
|
Per MPI rank memory allocation (min/avg/max) = 3.662 | 3.662 | 3.662 Mbytes
|
|
Step Temp E_pair E_mol TotEng Press
|
|
0 600 -2252.7567 0 -1694.4304 -974.62456
|
|
100 284.1896 -1976.961 0 -1712.5101 2462.6396
|
|
200 308.58965 -1998.6349 0 -1711.4787 1789.0033
|
|
300 300.55093 -1989.9838 0 -1710.308 1545.8576
|
|
400 297.91491 -1986.2519 0 -1709.029 1247.7121
|
|
500 294.66041 -1982.1097 0 -1707.9153 961.03073
|
|
Loop time of 0.942408 on 4 procs for 500 steps with 7200 atoms
|
|
|
|
Performance: 91.680 ns/day, 0.262 hours/ns, 530.556 timesteps/s, 3.820 Matom-step/s
|
|
82.1% CPU use with 4 MPI tasks x 1 OpenMP threads
|
|
|
|
MPI task timing breakdown:
|
|
Section | min time | avg time | max time |%varavg| %total
|
|
---------------------------------------------------------------
|
|
Pair | 0.61287 | 0.63781 | 0.65858 | 2.1 | 67.68
|
|
Neigh | 0.030246 | 0.031529 | 0.034546 | 1.0 | 3.35
|
|
Comm | 0.23074 | 0.25145 | 0.27819 | 3.7 | 26.68
|
|
Output | 0.000282 | 0.0003735 | 0.000463 | 0.0 | 0.04
|
|
Modify | 0.005566 | 0.0057635 | 0.005989 | 0.2 | 0.61
|
|
Other | | 0.01548 | | | 1.64
|
|
|
|
Nlocal: 1800 ave 1814 max 1787 min
|
|
Histogram: 1 0 1 0 0 0 0 1 0 1
|
|
Nghost: 3713.5 ave 3727 max 3699 min
|
|
Histogram: 1 0 1 0 0 0 0 1 0 1
|
|
Neighs: 153532 ave 154995 max 152312 min
|
|
Histogram: 1 0 1 0 0 1 0 0 0 1
|
|
|
|
Total # of neighbors = 614128
|
|
Ave neighs/atom = 85.295556
|
|
Neighbor list builds = 9
|
|
Dangerous builds = 0
|
|
|
|
#------------------------------------#
|
|
# Chunk, Stress, and VCM removal steps
|
|
#------------------------------------#
|
|
|
|
# 1. Create 20 equispaced bins sliced along the x direction.
|
|
# "units reduced" normalizes the distance from 0 to 1
|
|
variable nbins index 20
|
|
variable fraction equal 1.0/v_nbins
|
|
variable volfrac equal 1/(vol*${fraction})
|
|
variable volfrac equal 1/(vol*0.05)
|
|
compute ch_id all chunk/atom bin/1d x lower ${fraction} units reduced
|
|
compute ch_id all chunk/atom bin/1d x lower 0.05 units reduced
|
|
|
|
# 2. Calculate temperature bins with VCM aka COM velocities removed.
|
|
compute ch_temp_vcm all temp/chunk ch_id com yes
|
|
|
|
# 3. Compute per atom stress with VCM removed via temp-ID.
|
|
# The velocities from specified temp-ID are used to compute stress
|
|
# Stress/atom units are pressure*volume! Optionally handled next step.
|
|
compute atom_stress_vcm all stress/atom ch_temp_vcm
|
|
|
|
# 4. Divide out bin volume from xx stress component.
|
|
variable stress atom -(c_atom_stress_vcm[1])/(vol*${fraction})
|
|
variable stress atom -(c_atom_stress_vcm[1])/(vol*0.05)
|
|
|
|
# 5. Sum the per atom stresses in each bin.
|
|
compute ch_stress_vcm all reduce/chunk ch_id sum v_stress
|
|
|
|
# 6. Average and output to file.
|
|
# The average output is every 100 steps with samples collected 20 times with 5 step intervals
|
|
# fix ave_stress_vcm all ave/time 5 20 100 c_ch_stress_vcm mode vector file stress_xx.out
|
|
|
|
#------------------------------------#
|
|
|
|
# Piston compressing along x direction
|
|
|
|
region piston block -1 1 INF INF INF INF units lattice
|
|
group piston region piston
|
|
864 atoms in group piston
|
|
fix fix_piston piston move linear 5 0 0 units box # strain rate ~ 8e10 1/s
|
|
|
|
thermo_style custom step temp ke pe lx ly lz pxx pyy pzz econserve
|
|
|
|
# Atom dump
|
|
|
|
# dump atom_dump all atom 50 dump.vcm
|
|
|
|
# # Image dumps
|
|
|
|
# dump 2 all image 250 image.*.jpg type type # axes yes 0.8 0.02 view 60 -30
|
|
# dump_modify 2 pad 1
|
|
|
|
# # Movie dump
|
|
|
|
# dump 3 all movie 125 movie.avi type type # axes yes 0.8 0.02 view 60 -30
|
|
# dump_modify 3 pad 1
|
|
|
|
run 500
|
|
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
|
WARNING: One or more atoms are time integrated more than once (src/modify.cpp:296)
|
|
Per MPI rank memory allocation (min/avg/max) = 4.916 | 4.916 | 4.916 Mbytes
|
|
Step Temp KinEng PotEng Lx Ly Lz Pxx Pyy Pzz Econserve
|
|
500 294.66041 274.19441 -1982.1097 144.6903 64.3068 64.3068 645.25795 1119.5337 1118.3006 -1707.9153
|
|
600 357.88641 333.02897 -1951.8158 144.6903 64.3068 64.3068 2176.0343 1929.2787 1981.8479 -1618.7869
|
|
700 418.41159 389.3503 -1912.8337 144.6903 64.3068 64.3068 3702.2875 3043.7607 3081.1607 -1523.4834
|
|
800 483.71102 450.11428 -1875.7955 144.6903 64.3068 64.3068 5254.3875 4190.9789 4158.3561 -1425.6813
|
|
900 586.0893 545.38176 -1870.9313 144.6903 64.3068 64.3068 6509.1439 4756.2216 4724.7086 -1325.5495
|
|
1000 686.32946 638.65962 -1874.811 144.6903 64.3068 64.3068 7515.1606 5193.049 5261.8688 -1236.1514
|
|
Loop time of 0.656417 on 4 procs for 500 steps with 7200 atoms
|
|
|
|
Performance: 131.624 ns/day, 0.182 hours/ns, 761.711 timesteps/s, 5.484 Matom-step/s
|
|
92.8% CPU use with 4 MPI tasks x 1 OpenMP threads
|
|
|
|
MPI task timing breakdown:
|
|
Section | min time | avg time | max time |%varavg| %total
|
|
---------------------------------------------------------------
|
|
Pair | 0.51672 | 0.52334 | 0.53259 | 0.8 | 79.73
|
|
Neigh | 0.045091 | 0.045915 | 0.047402 | 0.4 | 6.99
|
|
Comm | 0.060735 | 0.071794 | 0.079302 | 2.6 | 10.94
|
|
Output | 0.000208 | 0.000389 | 0.000926 | 0.0 | 0.06
|
|
Modify | 0.006007 | 0.0061595 | 0.00626 | 0.1 | 0.94
|
|
Other | | 0.008815 | | | 1.34
|
|
|
|
Nlocal: 1800 ave 1811 max 1785 min
|
|
Histogram: 1 0 0 1 0 0 0 0 0 2
|
|
Nghost: 3713.25 ave 3727 max 3702 min
|
|
Histogram: 2 0 0 0 0 0 0 1 0 1
|
|
Neighs: 161477 ave 162958 max 159732 min
|
|
Histogram: 1 0 0 0 1 0 0 1 0 1
|
|
|
|
Total # of neighbors = 645909
|
|
Ave neighs/atom = 89.709583
|
|
Neighbor list builds = 15
|
|
Dangerous builds = 0
|
|
|
|
unfix fix_piston
|
|
|
|
run 1500
|
|
Generated 0 of 0 mixed pair_coeff terms from geometric mixing rule
|
|
Per MPI rank memory allocation (min/avg/max) = 4.541 | 4.541 | 4.541 Mbytes
|
|
Step Temp KinEng PotEng Lx Ly Lz Pxx Pyy Pzz Econserve
|
|
1000 686.32946 638.65962 -1874.811 144.6903 64.3068 64.3068 7515.1606 5193.049 5261.8688 -1236.1514
|
|
1100 709.7333 660.43791 -1898.2844 144.6903 64.3068 64.3068 7932.8638 5334.6171 5364.5335 -1237.8465
|
|
1200 713.27253 663.73132 -1902.4588 144.6903 64.3068 64.3068 7957.2574 5500.6231 5538.0516 -1238.7275
|
|
1300 705.44796 656.45022 -1895.1575 144.6903 64.3068 64.3068 7996.7265 5584.6233 5538.2494 -1238.7072
|
|
1400 711.86463 662.42121 -1899.8416 144.6903 64.3068 64.3068 7674.2462 5292.4915 5294.5366 -1237.4204
|
|
1500 742.18946 690.63979 -1924.9562 144.6903 64.3068 64.3068 6047.915 4056.6156 4014.4446 -1234.3164
|
|
1600 762.81764 709.83522 -1939.8563 144.6903 64.3068 64.3068 4185.5873 2530.0572 2576.1943 -1230.0211
|
|
1700 754.40428 702.00621 -1927.7337 144.6903 64.3068 64.3068 2662.7604 1509.1985 1484.7252 -1225.7275
|
|
1800 721.03504 670.95468 -1893.5556 144.6903 64.3068 64.3068 1765.8783 835.89765 861.9432 -1222.6009
|
|
1900 689.64162 641.74172 -1861.8886 144.6903 64.3068 64.3068 941.58148 312.93205 409.79901 -1220.1469
|
|
2000 650.79664 605.59477 -1823.9889 144.6903 64.3068 64.3068 543.39234 28.48735 80.396505 -1218.3941
|
|
2100 616.04072 573.25286 -1790.1764 144.6903 64.3068 64.3068 308.16444 -235.20997 -248.22531 -1216.9235
|
|
2200 587.18712 546.40333 -1761.8878 144.6903 64.3068 64.3068 37.044801 -476.50396 -470.83059 -1215.4845
|
|
2300 562.84178 523.74892 -1738.2239 144.6903 64.3068 64.3068 -139.28348 -711.17273 -730.80877 -1214.475
|
|
2400 540.48362 502.94367 -1716.3529 144.6903 64.3068 64.3068 -320.98222 -951.2066 -943.93966 -1213.4093
|
|
2500 519.80431 483.70067 -1696.1896 144.6903 64.3068 64.3068 -471.61317 -1088.8457 -1131.5396 -1212.4889
|
|
Loop time of 1.97213 on 4 procs for 1500 steps with 7200 atoms
|
|
|
|
Performance: 131.431 ns/day, 0.183 hours/ns, 760.598 timesteps/s, 5.476 Matom-step/s
|
|
95.3% CPU use with 4 MPI tasks x 1 OpenMP threads
|
|
|
|
MPI task timing breakdown:
|
|
Section | min time | avg time | max time |%varavg| %total
|
|
---------------------------------------------------------------
|
|
Pair | 1.5455 | 1.5599 | 1.5723 | 0.8 | 79.10
|
|
Neigh | 0.16844 | 0.1704 | 0.17237 | 0.4 | 8.64
|
|
Comm | 0.19002 | 0.2047 | 0.22068 | 2.4 | 10.38
|
|
Output | 0.000525 | 0.0006785 | 0.001077 | 0.0 | 0.03
|
|
Modify | 0.012434 | 0.012601 | 0.012777 | 0.1 | 0.64
|
|
Other | | 0.02388 | | | 1.21
|
|
|
|
Nlocal: 1800 ave 1833 max 1776 min
|
|
Histogram: 1 0 1 0 1 0 0 0 0 1
|
|
Nghost: 3702 ave 3732 max 3674 min
|
|
Histogram: 1 0 0 1 0 0 1 0 0 1
|
|
Neighs: 129380 ave 132578 max 127003 min
|
|
Histogram: 1 0 0 2 0 0 0 0 0 1
|
|
|
|
Total # of neighbors = 517520
|
|
Ave neighs/atom = 71.877778
|
|
Neighbor list builds = 54
|
|
Dangerous builds = 0
|
|
Total wall time: 0:00:03
|