rename USER-SMD package to MACHDYN
This commit is contained in:
66306
examples/PACKAGES/machdyn/funnel_flow/boundary.stl
Normal file
66306
examples/PACKAGES/machdyn/funnel_flow/boundary.stl
Normal file
File diff suppressed because it is too large
Load Diff
127
examples/PACKAGES/machdyn/funnel_flow/in.funnel_flow
Normal file
127
examples/PACKAGES/machdyn/funnel_flow/in.funnel_flow
Normal file
@ -0,0 +1,127 @@
|
||||
####################################################################################################
|
||||
#
|
||||
# ULSPH example: water flow through a complex geometry read from a .STL file
|
||||
#
|
||||
# The boundary dump file (see below) can be converted into VTK format using the conversion
|
||||
# tool dump2vtk_tris from the tools/smd directory.
|
||||
#
|
||||
# unit system: GPa / mm / ms
|
||||
#
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# MATERIAL PARAMETERS
|
||||
####################################################################################################
|
||||
variable c0 equal 10.0 # speed of sound for fluid
|
||||
variable rho equal 1.0e-6 # initial mass density
|
||||
variable q1 equal 0.06 # standard artificial viscosity linear coefficient
|
||||
variable q2 equal 0.0 # standard artificial viscosity quadratic coefficient
|
||||
variable hg equal 0.0 # hourglass control coefficient
|
||||
variable cp equal 1.0 # heat capacity of material -- not used here
|
||||
variable K equal ${c0}*${rho}^2
|
||||
variable contact_stiffness equal 0.1*${K}
|
||||
|
||||
####################################################################################################
|
||||
# INITIALIZE LAMMPS
|
||||
####################################################################################################
|
||||
dimension 3
|
||||
units si
|
||||
boundary f f f # simulation box boundaries
|
||||
atom_style smd
|
||||
atom_modify map array
|
||||
comm_modify vel yes
|
||||
comm_style tiled
|
||||
neigh_modify every 10 delay 0 check yes exclude type 2 2 one 10000
|
||||
newton off
|
||||
|
||||
####################################################################################################
|
||||
# CREATE INITIAL GEOMETRY
|
||||
####################################################################################################
|
||||
variable l0 equal 5.0 # lattice spacing for creating particles
|
||||
lattice sc ${l0}
|
||||
region box block -110 60 -30 220 -90 130 units box
|
||||
create_box 2 box
|
||||
region particles cylinder y 0 -30 47 135 200 units box
|
||||
create_atoms 1 region particles
|
||||
group water type 1
|
||||
|
||||
####################################################################################################
|
||||
# DISCRETIZATION PARAMETERS
|
||||
####################################################################################################
|
||||
variable h equal 2.01*${l0} # SPH smoothing kernel radius
|
||||
variable vol_one equal ${l0}^3 # volume of one particle -- assuming unit thickness
|
||||
variable skin equal 0.1*${h} # Verlet list range
|
||||
neighbor ${skin} bin
|
||||
variable cr equal ${l0}/2
|
||||
set group all smd/contact/radius ${cr}
|
||||
set group all volume ${vol_one}
|
||||
set group all smd/mass/density ${rho}
|
||||
set group all diameter ${h} # set SPH kernel radius
|
||||
|
||||
####################################################################################################
|
||||
# DEFINE GRAVITY BOUNDARY CONDITION
|
||||
####################################################################################################
|
||||
fix gfix all gravity 0.01 vector 0.0 -1. 0.0
|
||||
|
||||
####################################################################################################
|
||||
# INTERACTION PHYSICS / MATERIAL MODEL
|
||||
# We use polynomial EOS for the pressure and the Johnson Cook strength model
|
||||
# An integration point fails (cannot support tension anymore) if the plastic strain exceeds 0.5.
|
||||
####################################################################################################
|
||||
pair_style hybrid/overlay smd/tri_surface 1.0 &
|
||||
smd/ulsph *DENSITY_CONTINUITY *VELOCITY_GRADIENT *NO_GRADIENT_CORRECTION
|
||||
pair_coeff 1 1 smd/ulsph *COMMON ${rho} ${c0} ${q1} ${cp} ${hg} &
|
||||
*EOS_TAIT 2 &
|
||||
*END
|
||||
pair_coeff 2 2 none
|
||||
pair_coeff 1 2 smd/tri_surface ${contact_stiffness}
|
||||
|
||||
####################################################################################################
|
||||
# LOAD STL SURFACE
|
||||
####################################################################################################
|
||||
fix stl_surface_fix all smd/wall_surface boundary.stl 2 65535
|
||||
run 0 # This is important! Always run for 0 timesteps directly after loading STL file!
|
||||
group surface type 2
|
||||
|
||||
####################################################################################################
|
||||
# TIME INTEGRATION
|
||||
####################################################################################################
|
||||
fix force_fix surface setforce 0 0 0
|
||||
fix dtfix all smd/adjust_dt 0.1 # dynamically adjust time increment every step
|
||||
fix integration_fix all smd/integrate_ulsph adjust_radius 1.01 10 15
|
||||
|
||||
####################################################################################################
|
||||
# SPECIFY TRAJECTORY OUTPUT
|
||||
####################################################################################################
|
||||
variable dumpFreq equal 100
|
||||
compute rho all smd/rho
|
||||
compute nn all smd/ulsph/num/neighs # number of neighbors for each particle
|
||||
compute contact_radius all smd/contact/radius
|
||||
compute surface_coords surface smd/triangle/vertices
|
||||
|
||||
|
||||
dump dump_id water custom ${dumpFreq} dump.LAMMPS id type x y z vx vy vz &
|
||||
c_rho c_nn c_contact_radius proc
|
||||
dump_modify dump_id first yes
|
||||
|
||||
dump surf_dump surface custom 999999999 surface.LAMMPS id type mol x y z &
|
||||
c_surface_coords[1] c_surface_coords[2] c_surface_coords[3] &
|
||||
c_surface_coords[4] c_surface_coords[5] c_surface_coords[6] &
|
||||
c_surface_coords[7] c_surface_coords[8] c_surface_coords[9]
|
||||
dump_modify surf_dump first yes
|
||||
|
||||
####################################################################################################
|
||||
# STATUS OUTPUT
|
||||
####################################################################################################
|
||||
compute eint all smd/internal/energy
|
||||
compute alleint all reduce sum c_eint
|
||||
variable etot equal pe+ke+c_alleint+f_gfix # total energy of the system
|
||||
thermo 100
|
||||
thermo_style custom step dt f_dtfix pe ke v_etot
|
||||
|
||||
####################################################################################################
|
||||
# RUN SIMULATION
|
||||
####################################################################################################
|
||||
balance 1.1 rcb
|
||||
fix balance_fix all balance 200 1.1 rcb
|
||||
run 5000
|
||||
@ -0,0 +1,335 @@
|
||||
LAMMPS (9 Oct 2020)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
####################################################################################################
|
||||
#
|
||||
# ULSPH example: water flow through a complex geometry read from a .STL file
|
||||
#
|
||||
# The boundary dump file (see below) can be converted into VTK format using the conversion
|
||||
# tool dump2vtk_tris from the tools/smd directory.
|
||||
#
|
||||
# unit system: GPa / mm / ms
|
||||
#
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# MATERIAL PARAMETERS
|
||||
####################################################################################################
|
||||
variable c0 equal 10.0 # speed of sound for fluid
|
||||
variable rho equal 1.0e-6 # initial mass density
|
||||
variable q1 equal 0.06 # standard artificial viscosity linear coefficient
|
||||
variable q2 equal 0.0 # standard artificial viscosity quadratic coefficient
|
||||
variable hg equal 0.0 # hourglass control coefficient
|
||||
variable cp equal 1.0 # heat capacity of material -- not used here
|
||||
variable K equal ${c0}*${rho}^2
|
||||
variable K equal 10*${rho}^2
|
||||
variable K equal 10*1e-06^2
|
||||
variable contact_stiffness equal 0.1*${K}
|
||||
variable contact_stiffness equal 0.1*1e-11
|
||||
|
||||
####################################################################################################
|
||||
# INITIALIZE LAMMPS
|
||||
####################################################################################################
|
||||
dimension 3
|
||||
units si
|
||||
boundary f f f # simulation box boundaries
|
||||
atom_style smd
|
||||
atom_modify map array
|
||||
comm_modify vel yes
|
||||
comm_style tiled
|
||||
neigh_modify every 10 delay 0 check yes exclude type 2 2 one 10000
|
||||
newton off
|
||||
|
||||
####################################################################################################
|
||||
# CREATE INITIAL GEOMETRY
|
||||
####################################################################################################
|
||||
variable l0 equal 5.0 # lattice spacing for creating particles
|
||||
lattice sc ${l0}
|
||||
lattice sc 5
|
||||
Lattice spacing in x,y,z = 5.0000000 5.0000000 5.0000000
|
||||
region box block -110 60 -30 220 -90 130 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-110.00000 -30.000000 -90.000000) to (60.000000 220.00000 130.00000)
|
||||
1 by 1 by 1 MPI processor grid
|
||||
region particles cylinder y 0 -30 47 135 200 units box
|
||||
create_atoms 1 region particles
|
||||
Created 3878 atoms
|
||||
create_atoms CPU = 0.001 seconds
|
||||
group water type 1
|
||||
3878 atoms in group water
|
||||
|
||||
####################################################################################################
|
||||
# DISCRETIZATION PARAMETERS
|
||||
####################################################################################################
|
||||
variable h equal 2.01*${l0} # SPH smoothing kernel radius
|
||||
variable h equal 2.01*5
|
||||
variable vol_one equal ${l0}^3 # volume of one particle -- assuming unit thickness
|
||||
variable vol_one equal 5^3
|
||||
variable skin equal 0.1*${h} # Verlet list range
|
||||
variable skin equal 0.1*10.05
|
||||
neighbor ${skin} bin
|
||||
neighbor 1.005 bin
|
||||
variable cr equal ${l0}/2
|
||||
variable cr equal 5/2
|
||||
set group all smd/contact/radius ${cr}
|
||||
set group all smd/contact/radius 2.5
|
||||
Setting atom values ...
|
||||
3878 settings made for smd/contact/radius
|
||||
set group all volume ${vol_one}
|
||||
set group all volume 125
|
||||
Setting atom values ...
|
||||
3878 settings made for volume
|
||||
set group all smd/mass/density ${rho}
|
||||
set group all smd/mass/density 1e-06
|
||||
Setting atom values ...
|
||||
3878 settings made for smd/mass/density
|
||||
set group all diameter ${h} # set SPH kernel radius
|
||||
set group all diameter 10.05
|
||||
Setting atom values ...
|
||||
3878 settings made for diameter
|
||||
|
||||
####################################################################################################
|
||||
# DEFINE GRAVITY BOUNDARY CONDITION
|
||||
####################################################################################################
|
||||
fix gfix all gravity 0.01 vector 0.0 -1. 0.0
|
||||
|
||||
####################################################################################################
|
||||
# INTERACTION PHYSICS / MATERIAL MODEL
|
||||
# We use polynomial EOS for the pressure and the Johnson Cook strength model
|
||||
# An integration point fails (cannot support tension anymore) if the plastic strain exceeds 0.5.
|
||||
####################################################################################################
|
||||
pair_style hybrid/overlay smd/tri_surface 1.0 smd/ulsph *DENSITY_CONTINUITY *VELOCITY_GRADIENT *NO_GRADIENT_CORRECTION
|
||||
pair_coeff 1 1 smd/ulsph *COMMON ${rho} ${c0} ${q1} ${cp} ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 ${c0} ${q1} ${cp} ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 10 ${q1} ${cp} ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 10 0.06 ${cp} ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 10 0.06 1 ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 10 0.06 1 0 *EOS_TAIT 2 *END
|
||||
pair_coeff 2 2 none
|
||||
pair_coeff 1 2 smd/tri_surface ${contact_stiffness}
|
||||
pair_coeff 1 2 smd/tri_surface 1e-12
|
||||
|
||||
####################################################################################################
|
||||
# LOAD STL SURFACE
|
||||
####################################################################################################
|
||||
fix stl_surface_fix all smd/wall_surface boundary.stl 2 65535
|
||||
run 0 # This is important! Always run for 0 timesteps directly after loading STL file!
|
||||
Neighbor list info ...
|
||||
update every 10 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 10000, page size: 100000
|
||||
master list distance cutoff = 11.055
|
||||
ghost atom cutoff = 11.055
|
||||
binsize = 5.5275, bins = 31 46 40
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair smd/tri_surface, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair smd/ulsph, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/newtoff
|
||||
stencil: half/bin/3d/newtoff
|
||||
bin: standard
|
||||
scanning triangle pairs ...
|
||||
... fix smd/wall_surface finished reading triangulated surface
|
||||
fix smd/wall_surface created 9472 atoms
|
||||
>>========>>========>>========>>========>>========>>========>>========>>========
|
||||
Per MPI rank memory allocation (min/avg/max) = 10.41 | 10.41 | 10.41 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 0 0 0 0
|
||||
Loop time of 1.19209e-06 on 1 procs for 0 steps with 13350 atoms
|
||||
|
||||
251.7% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Output | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 1.192e-06 | | |100.00
|
||||
|
||||
Nlocal: 13350.0 ave 13350 max 13350 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0.0000000
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
group surface type 2
|
||||
9472 atoms in group surface
|
||||
|
||||
####################################################################################################
|
||||
# TIME INTEGRATION
|
||||
####################################################################################################
|
||||
fix force_fix surface setforce 0 0 0
|
||||
fix dtfix all smd/adjust_dt 0.1 # dynamically adjust time increment every step
|
||||
fix integration_fix all smd/integrate_ulsph adjust_radius 1.01 10 15
|
||||
|
||||
####################################################################################################
|
||||
# SPECIFY TRAJECTORY OUTPUT
|
||||
####################################################################################################
|
||||
variable dumpFreq equal 100
|
||||
compute rho all smd/rho
|
||||
compute nn all smd/ulsph/num/neighs # number of neighbors for each particle
|
||||
compute contact_radius all smd/contact/radius
|
||||
compute surface_coords surface smd/triangle/vertices
|
||||
|
||||
|
||||
dump dump_id water custom ${dumpFreq} dump.LAMMPS id type x y z vx vy vz c_rho c_nn c_contact_radius proc
|
||||
dump dump_id water custom 100 dump.LAMMPS id type x y z vx vy vz c_rho c_nn c_contact_radius proc
|
||||
dump_modify dump_id first yes
|
||||
|
||||
dump surf_dump surface custom 999999999 surface.LAMMPS id type mol x y z c_surface_coords[1] c_surface_coords[2] c_surface_coords[3] c_surface_coords[4] c_surface_coords[5] c_surface_coords[6] c_surface_coords[7] c_surface_coords[8] c_surface_coords[9]
|
||||
dump_modify surf_dump first yes
|
||||
|
||||
####################################################################################################
|
||||
# STATUS OUTPUT
|
||||
####################################################################################################
|
||||
compute eint all smd/internal/energy
|
||||
compute alleint all reduce sum c_eint
|
||||
variable etot equal pe+ke+c_alleint+f_gfix # total energy of the system
|
||||
thermo 100
|
||||
thermo_style custom step dt f_dtfix pe ke v_etot
|
||||
|
||||
####################################################################################################
|
||||
# RUN SIMULATION
|
||||
####################################################################################################
|
||||
balance 1.1 rcb
|
||||
Balancing ...
|
||||
Neighbor list info ...
|
||||
update every 10 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 10000, page size: 100000
|
||||
master list distance cutoff = 11.055
|
||||
ghost atom cutoff = 11.055
|
||||
binsize = 5.5275, bins = 31 46 40
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair smd/tri_surface, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair smd/ulsph, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/newtoff
|
||||
stencil: half/bin/3d/newtoff
|
||||
bin: standard
|
||||
fix balance_fix all balance 200 1.1 rcb
|
||||
run 5000
|
||||
Neighbor list info ...
|
||||
update every 10 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 10000, page size: 100000
|
||||
master list distance cutoff = 11.055
|
||||
ghost atom cutoff = 11.055
|
||||
binsize = 5.5275, bins = 31 46 40
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair smd/tri_surface, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair smd/ulsph, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/newtoff
|
||||
stencil: half/bin/3d/newtoff
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 16.94 | 16.94 | 16.94 Mbytes
|
||||
Step Dt f_dtfix PotEng KinEng v_etot
|
||||
0 1e-16 0 0 0 7373.6969
|
||||
100 0.070241957 7.4813056 0 0.0013565713 7373.6969
|
||||
200 0.070241957 14.505501 0 0.0050998019 7373.6969
|
||||
300 0.070241957 21.529697 0 0.011234756 7373.6969
|
||||
400 0.070241957 28.553893 0 0.019761435 7373.6969
|
||||
500 0.068651004 35.521974 2.9536075e-17 0.030501647 7373.6969
|
||||
600 0.063567733 42.018915 1.5012312e-20 0.042319821 7373.6969
|
||||
700 0.06328517 48.362291 4.2726605e-17 0.054476749 7373.6969
|
||||
800 0.062612972 54.677804 2.9574077e-16 0.061321338 7373.6964
|
||||
900 0.061046594 60.843808 2.4764809e-15 0.059143351 7373.6941
|
||||
1000 0.060891431 66.91066 9.0780396e-16 0.051813676 7373.6909
|
||||
1100 0.060874371 72.951879 1.5743441e-15 0.044736442 7373.6887
|
||||
1200 0.061243012 79.052117 1.3268705e-16 0.038992873 7373.6875
|
||||
1300 0.06125516 85.174023 4.803371e-17 0.036387177 7373.6872
|
||||
1400 0.061802711 91.329247 3.9865332e-17 0.034853455 7373.6871
|
||||
1500 0.061687292 97.49874 6.2876669e-17 0.034362699 7373.6871
|
||||
1600 0.061476202 103.60196 1.0306933e-16 0.034747965 7373.6871
|
||||
1700 0.060566669 109.7162 7.8436106e-17 0.035644692 7373.687
|
||||
1800 0.061646486 115.87735 2.9003723e-17 0.03607698 7373.6867
|
||||
1900 0.061299326 122.03236 1.7843781e-16 0.03653221 7373.6863
|
||||
2000 0.061774936 128.17277 7.8851844e-17 0.036748903 7373.6859
|
||||
2100 0.061852608 134.3374 3.4689543e-17 0.036970808 7373.6855
|
||||
2200 0.061820375 140.50665 4.9453837e-17 0.037549449 7373.6852
|
||||
2300 0.06084664 146.66596 1.0442793e-17 0.038461012 7373.685
|
||||
2400 0.061370143 152.82413 2.5065434e-17 0.039575266 7373.6848
|
||||
2500 0.061892113 158.99977 2.5338703e-17 0.04067509 7373.6845
|
||||
2600 0.061876574 165.18168 2.6500242e-17 0.041556692 7373.6842
|
||||
2700 0.061813006 171.32911 9.8478324e-17 0.04246145 7373.6839
|
||||
2800 0.061457255 177.47316 6.827231e-17 0.043444855 7373.6837
|
||||
2900 0.061925739 183.61894 7.9179167e-16 0.044560297 7373.6835
|
||||
3000 0.061893083 189.78619 1.6443425e-16 0.045653853 7373.6832
|
||||
3100 0.061462631 195.93892 1.6994763e-17 0.046918113 7373.683
|
||||
3200 0.061370761 202.09427 5.8002308e-17 0.047943876 7373.6827
|
||||
3300 0.061736844 208.25229 1.6923966e-17 0.049274334 7373.6824
|
||||
3400 0.061854818 214.40475 1.4362026e-17 0.050293079 7373.6821
|
||||
3500 0.061104996 220.5707 9.6219144e-18 0.051499671 7373.6819
|
||||
3600 0.061725483 226.74238 4.6985917e-17 0.052788247 7373.6816
|
||||
3700 0.061415526 232.89307 8.9255744e-17 0.054165669 7373.6814
|
||||
3800 0.061749225 239.04031 1.2661727e-16 0.055407691 7373.6812
|
||||
3900 0.061566598 245.20678 9.7555398e-18 0.056554105 7373.6809
|
||||
4000 0.061522412 251.36073 3.612872e-17 0.057775565 7373.6807
|
||||
4100 0.061519755 257.49877 3.6475184e-17 0.059026603 7373.6805
|
||||
4200 0.061617099 263.65144 1.8654744e-16 0.060402607 7373.6803
|
||||
4300 0.061765314 269.79662 1.3742267e-16 0.06198524 7373.6801
|
||||
4400 0.060964776 275.94941 5.6067161e-17 0.063217622 7373.6799
|
||||
4500 0.061692851 282.10139 4.2434485e-17 0.064775345 7373.6797
|
||||
4600 0.061575778 288.25001 6.9753486e-17 0.066331185 7373.6796
|
||||
4700 0.061415078 294.38918 2.2377578e-17 0.06793909 7373.6794
|
||||
4800 0.061801946 300.5394 1.5457224e-17 0.069523222 7373.6792
|
||||
4900 0.061468033 306.68667 4.3328468e-17 0.071106234 7373.6791
|
||||
5000 0.061718584 312.83399 2.6787461e-17 0.072510135 7373.6789
|
||||
Loop time of 33.9352 on 1 procs for 5000 steps with 13350 atoms
|
||||
|
||||
99.3% CPU use with 1 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 25.103 | 25.103 | 25.103 | 0.0 | 73.97
|
||||
Neigh | 6.4624 | 6.4624 | 6.4624 | 0.0 | 19.04
|
||||
Comm | 0.038788 | 0.038788 | 0.038788 | 0.0 | 0.11
|
||||
Output | 0.57804 | 0.57804 | 0.57804 | 0.0 | 1.70
|
||||
Modify | 1.6405 | 1.6405 | 1.6405 | 0.0 | 4.83
|
||||
Other | | 0.1125 | | | 0.33
|
||||
|
||||
Nlocal: 13350.0 ave 13350 max 13350 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Nghost: 0.00000 ave 0 max 0 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 195088.0 ave 195088 max 195088 min
|
||||
Histogram: 1 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 195088
|
||||
Ave neighs/atom = 14.613333
|
||||
Neighbor list builds = 455
|
||||
Dangerous builds = 414
|
||||
Total wall time: 0:00:34
|
||||
@ -0,0 +1,339 @@
|
||||
LAMMPS (9 Oct 2020)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
####################################################################################################
|
||||
#
|
||||
# ULSPH example: water flow through a complex geometry read from a .STL file
|
||||
#
|
||||
# The boundary dump file (see below) can be converted into VTK format using the conversion
|
||||
# tool dump2vtk_tris from the tools/smd directory.
|
||||
#
|
||||
# unit system: GPa / mm / ms
|
||||
#
|
||||
####################################################################################################
|
||||
|
||||
####################################################################################################
|
||||
# MATERIAL PARAMETERS
|
||||
####################################################################################################
|
||||
variable c0 equal 10.0 # speed of sound for fluid
|
||||
variable rho equal 1.0e-6 # initial mass density
|
||||
variable q1 equal 0.06 # standard artificial viscosity linear coefficient
|
||||
variable q2 equal 0.0 # standard artificial viscosity quadratic coefficient
|
||||
variable hg equal 0.0 # hourglass control coefficient
|
||||
variable cp equal 1.0 # heat capacity of material -- not used here
|
||||
variable K equal ${c0}*${rho}^2
|
||||
variable K equal 10*${rho}^2
|
||||
variable K equal 10*1e-06^2
|
||||
variable contact_stiffness equal 0.1*${K}
|
||||
variable contact_stiffness equal 0.1*1e-11
|
||||
|
||||
####################################################################################################
|
||||
# INITIALIZE LAMMPS
|
||||
####################################################################################################
|
||||
dimension 3
|
||||
units si
|
||||
boundary f f f # simulation box boundaries
|
||||
atom_style smd
|
||||
atom_modify map array
|
||||
comm_modify vel yes
|
||||
comm_style tiled
|
||||
neigh_modify every 10 delay 0 check yes exclude type 2 2 one 10000
|
||||
newton off
|
||||
|
||||
####################################################################################################
|
||||
# CREATE INITIAL GEOMETRY
|
||||
####################################################################################################
|
||||
variable l0 equal 5.0 # lattice spacing for creating particles
|
||||
lattice sc ${l0}
|
||||
lattice sc 5
|
||||
Lattice spacing in x,y,z = 5.0000000 5.0000000 5.0000000
|
||||
region box block -110 60 -30 220 -90 130 units box
|
||||
create_box 2 box
|
||||
Created orthogonal box = (-110.00000 -30.000000 -90.000000) to (60.000000 220.00000 130.00000)
|
||||
1 by 2 by 2 MPI processor grid
|
||||
region particles cylinder y 0 -30 47 135 200 units box
|
||||
create_atoms 1 region particles
|
||||
Created 3878 atoms
|
||||
create_atoms CPU = 0.001 seconds
|
||||
group water type 1
|
||||
3878 atoms in group water
|
||||
|
||||
####################################################################################################
|
||||
# DISCRETIZATION PARAMETERS
|
||||
####################################################################################################
|
||||
variable h equal 2.01*${l0} # SPH smoothing kernel radius
|
||||
variable h equal 2.01*5
|
||||
variable vol_one equal ${l0}^3 # volume of one particle -- assuming unit thickness
|
||||
variable vol_one equal 5^3
|
||||
variable skin equal 0.1*${h} # Verlet list range
|
||||
variable skin equal 0.1*10.05
|
||||
neighbor ${skin} bin
|
||||
neighbor 1.005 bin
|
||||
variable cr equal ${l0}/2
|
||||
variable cr equal 5/2
|
||||
set group all smd/contact/radius ${cr}
|
||||
set group all smd/contact/radius 2.5
|
||||
Setting atom values ...
|
||||
3878 settings made for smd/contact/radius
|
||||
set group all volume ${vol_one}
|
||||
set group all volume 125
|
||||
Setting atom values ...
|
||||
3878 settings made for volume
|
||||
set group all smd/mass/density ${rho}
|
||||
set group all smd/mass/density 1e-06
|
||||
Setting atom values ...
|
||||
3878 settings made for smd/mass/density
|
||||
set group all diameter ${h} # set SPH kernel radius
|
||||
set group all diameter 10.05
|
||||
Setting atom values ...
|
||||
3878 settings made for diameter
|
||||
|
||||
####################################################################################################
|
||||
# DEFINE GRAVITY BOUNDARY CONDITION
|
||||
####################################################################################################
|
||||
fix gfix all gravity 0.01 vector 0.0 -1. 0.0
|
||||
|
||||
####################################################################################################
|
||||
# INTERACTION PHYSICS / MATERIAL MODEL
|
||||
# We use polynomial EOS for the pressure and the Johnson Cook strength model
|
||||
# An integration point fails (cannot support tension anymore) if the plastic strain exceeds 0.5.
|
||||
####################################################################################################
|
||||
pair_style hybrid/overlay smd/tri_surface 1.0 smd/ulsph *DENSITY_CONTINUITY *VELOCITY_GRADIENT *NO_GRADIENT_CORRECTION
|
||||
pair_coeff 1 1 smd/ulsph *COMMON ${rho} ${c0} ${q1} ${cp} ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 ${c0} ${q1} ${cp} ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 10 ${q1} ${cp} ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 10 0.06 ${cp} ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 10 0.06 1 ${hg} *EOS_TAIT 2 *END
|
||||
pair_coeff 1 1 smd/ulsph *COMMON 1e-06 10 0.06 1 0 *EOS_TAIT 2 *END
|
||||
pair_coeff 2 2 none
|
||||
pair_coeff 1 2 smd/tri_surface ${contact_stiffness}
|
||||
pair_coeff 1 2 smd/tri_surface 1e-12
|
||||
|
||||
####################################################################################################
|
||||
# LOAD STL SURFACE
|
||||
####################################################################################################
|
||||
fix stl_surface_fix all smd/wall_surface boundary.stl 2 65535
|
||||
run 0 # This is important! Always run for 0 timesteps directly after loading STL file!
|
||||
Neighbor list info ...
|
||||
update every 10 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 10000, page size: 100000
|
||||
master list distance cutoff = 11.055
|
||||
ghost atom cutoff = 11.055
|
||||
binsize = 5.5275, bins = 31 46 40
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair smd/tri_surface, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair smd/ulsph, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/newtoff
|
||||
stencil: half/bin/3d/newtoff
|
||||
bin: standard
|
||||
scanning triangle pairs ...
|
||||
... fix smd/wall_surface finished reading triangulated surface
|
||||
fix smd/wall_surface created 9472 atoms
|
||||
>>========>>========>>========>>========>>========>>========>>========>>========
|
||||
Per MPI rank memory allocation (min/avg/max) = 9.998 | 10.04 | 10.17 Mbytes
|
||||
Step Temp E_pair E_mol TotEng Press
|
||||
0 0 0 0 0 0
|
||||
Loop time of 1.97887e-05 on 4 procs for 0 steps with 13350 atoms
|
||||
|
||||
103.6% 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 | 0 | 0 | 0.0 | 0.00
|
||||
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Comm | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Output | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||||
Other | | 1.979e-05 | | |100.00
|
||||
|
||||
Nlocal: 3337.50 ave 6452 max 836 min
|
||||
Histogram: 1 0 0 1 1 0 0 0 0 1
|
||||
Nghost: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
Neighs: 0.00000 ave 0 max 0 min
|
||||
Histogram: 4 0 0 0 0 0 0 0 0 0
|
||||
|
||||
Total # of neighbors = 0
|
||||
Ave neighs/atom = 0.0000000
|
||||
Neighbor list builds = 0
|
||||
Dangerous builds = 0
|
||||
group surface type 2
|
||||
9472 atoms in group surface
|
||||
|
||||
####################################################################################################
|
||||
# TIME INTEGRATION
|
||||
####################################################################################################
|
||||
fix force_fix surface setforce 0 0 0
|
||||
fix dtfix all smd/adjust_dt 0.1 # dynamically adjust time increment every step
|
||||
fix integration_fix all smd/integrate_ulsph adjust_radius 1.01 10 15
|
||||
|
||||
####################################################################################################
|
||||
# SPECIFY TRAJECTORY OUTPUT
|
||||
####################################################################################################
|
||||
variable dumpFreq equal 100
|
||||
compute rho all smd/rho
|
||||
compute nn all smd/ulsph/num/neighs # number of neighbors for each particle
|
||||
compute contact_radius all smd/contact/radius
|
||||
compute surface_coords surface smd/triangle/vertices
|
||||
|
||||
|
||||
dump dump_id water custom ${dumpFreq} dump.LAMMPS id type x y z vx vy vz c_rho c_nn c_contact_radius proc
|
||||
dump dump_id water custom 100 dump.LAMMPS id type x y z vx vy vz c_rho c_nn c_contact_radius proc
|
||||
dump_modify dump_id first yes
|
||||
|
||||
dump surf_dump surface custom 999999999 surface.LAMMPS id type mol x y z c_surface_coords[1] c_surface_coords[2] c_surface_coords[3] c_surface_coords[4] c_surface_coords[5] c_surface_coords[6] c_surface_coords[7] c_surface_coords[8] c_surface_coords[9]
|
||||
dump_modify surf_dump first yes
|
||||
|
||||
####################################################################################################
|
||||
# STATUS OUTPUT
|
||||
####################################################################################################
|
||||
compute eint all smd/internal/energy
|
||||
compute alleint all reduce sum c_eint
|
||||
variable etot equal pe+ke+c_alleint+f_gfix # total energy of the system
|
||||
thermo 100
|
||||
thermo_style custom step dt f_dtfix pe ke v_etot
|
||||
|
||||
####################################################################################################
|
||||
# RUN SIMULATION
|
||||
####################################################################################################
|
||||
balance 1.1 rcb
|
||||
Balancing ...
|
||||
Neighbor list info ...
|
||||
update every 10 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 10000, page size: 100000
|
||||
master list distance cutoff = 11.055
|
||||
ghost atom cutoff = 11.055
|
||||
binsize = 5.5275, bins = 31 46 40
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair smd/tri_surface, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair smd/ulsph, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/newtoff
|
||||
stencil: half/bin/3d/newtoff
|
||||
bin: standard
|
||||
rebalancing time: 0.004 seconds
|
||||
iteration count = 0
|
||||
initial/final maximal load/proc = 6452.0000 3338.0000
|
||||
initial/final imbalance factor = 1.9331835 1.0001498
|
||||
fix balance_fix all balance 200 1.1 rcb
|
||||
run 5000
|
||||
Neighbor list info ...
|
||||
update every 10 steps, delay 0 steps, check yes
|
||||
max neighbors/atom: 10000, page size: 100000
|
||||
master list distance cutoff = 11.055
|
||||
ghost atom cutoff = 11.055
|
||||
binsize = 5.5275, bins = 31 46 40
|
||||
3 neighbor lists, perpetual/occasional/extra = 3 0 0
|
||||
(1) pair smd/tri_surface, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(2) pair smd/ulsph, perpetual, skip from (3)
|
||||
attributes: half, newton off, size
|
||||
pair build: skip/half/size
|
||||
stencil: none
|
||||
bin: none
|
||||
(3) neighbor class addition, perpetual
|
||||
attributes: half, newton off, size
|
||||
pair build: half/size/bin/newtoff
|
||||
stencil: half/bin/3d/newtoff
|
||||
bin: standard
|
||||
Per MPI rank memory allocation (min/avg/max) = 13.83 | 14.29 | 14.77 Mbytes
|
||||
Step Dt f_dtfix PotEng KinEng v_etot
|
||||
0 1e-16 0 0 0 7373.6969
|
||||
100 0.070241957 7.4813056 0 0.0013565713 7373.6969
|
||||
200 0.070241957 14.505501 0 0.0050998019 7373.6969
|
||||
300 0.070241957 21.529697 0 0.011234756 7373.6969
|
||||
400 0.070241957 28.553893 0 0.019761435 7373.6969
|
||||
500 0.068651003 35.521974 3.3398251e-17 0.030501227 7373.6969
|
||||
600 0.063584088 42.017746 5.0216152e-21 0.042318622 7373.6969
|
||||
700 0.063273268 48.360764 2.869923e-17 0.054475156 7373.697
|
||||
800 0.062596325 54.675638 1.914049e-16 0.061317608 7373.6964
|
||||
900 0.060956889 60.838664 1.364032e-16 0.059099685 7373.694
|
||||
1000 0.060500918 66.902834 7.7879913e-16 0.052025026 7373.6908
|
||||
1100 0.061006314 72.967816 8.8948385e-16 0.043977414 7373.6885
|
||||
1200 0.061106341 79.06191 1.2108608e-16 0.039591388 7373.6873
|
||||
1300 0.061575846 85.205075 4.3893276e-17 0.035450911 7373.6871
|
||||
1400 0.061574282 91.365864 1.1854613e-17 0.033362633 7373.687
|
||||
1500 0.061497834 97.533763 4.6436735e-17 0.03269109 7373.6869
|
||||
1600 0.061595974 103.70193 1.6602311e-17 0.033272424 7373.6869
|
||||
1700 0.061563704 109.8721 2.2645323e-16 0.034038708 7373.6867
|
||||
1800 0.06059329 116.01016 6.1435625e-17 0.034550695 7373.6864
|
||||
1900 0.061467912 122.16549 4.8739314e-16 0.03488115 7373.686
|
||||
2000 0.061562246 128.31107 3.5375613e-17 0.035132319 7373.6855
|
||||
2100 0.061653756 134.48162 1.0915664e-16 0.035417433 7373.6852
|
||||
2200 0.061651709 140.64731 8.9201563e-17 0.035984037 7373.6849
|
||||
2300 0.061689901 146.82024 9.6641953e-18 0.036737453 7373.6847
|
||||
2400 0.061831964 152.95634 5.2029274e-17 0.037566234 7373.6844
|
||||
2500 0.061545083 159.11879 1.0704726e-16 0.038487643 7373.6842
|
||||
2600 0.061718412 165.27525 2.209067e-17 0.039629082 7373.684
|
||||
2700 0.061888857 171.43147 1.4203448e-16 0.040587002 7373.6837
|
||||
2800 0.060734321 177.58356 1.6497386e-17 0.041695514 7373.6835
|
||||
2900 0.061593696 183.7246 2.6908238e-16 0.04260728 7373.6832
|
||||
3000 0.061359875 189.87309 7.6944155e-17 0.043473709 7373.6829
|
||||
3100 0.061757906 196.04331 1.3564873e-17 0.044354763 7373.6827
|
||||
3200 0.061673522 202.20766 8.5854387e-17 0.045594109 7373.6824
|
||||
3300 0.061806603 208.37498 4.9782287e-17 0.046679326 7373.6822
|
||||
3400 0.061456829 214.56062 1.6007817e-16 0.047908363 7373.6819
|
||||
3500 0.061670152 220.72476 1.2073319e-16 0.049083832 7373.6817
|
||||
3600 0.061694334 226.89174 5.9467418e-17 0.050344595 7373.6815
|
||||
3700 0.061950743 233.06903 2.7093066e-16 0.05171424 7373.6812
|
||||
3800 0.061870535 239.21714 3.0291981e-17 0.053188154 7373.681
|
||||
3900 0.061445215 245.37229 1.3950612e-16 0.054616384 7373.6808
|
||||
4000 0.061577186 251.51495 1.5979833e-16 0.055992071 7373.6806
|
||||
4100 0.061641242 257.67172 7.9579236e-18 0.057167166 7373.6804
|
||||
4200 0.061600879 263.82304 1.6463047e-17 0.058701188 7373.6802
|
||||
4300 0.061689229 269.98083 1.2308103e-16 0.05994652 7373.68
|
||||
4400 0.061755315 276.14174 7.6188916e-17 0.06118267 7373.6798
|
||||
4500 0.061268331 282.29296 5.5093198e-16 0.062460243 7373.6796
|
||||
4600 0.061568693 288.44732 4.6189329e-17 0.063787422 7373.6794
|
||||
4700 0.061343927 294.60421 6.4688633e-17 0.065177329 7373.6793
|
||||
4800 0.061421519 300.75275 1.2254993e-16 0.066908319 7373.6792
|
||||
4900 0.061604108 306.88136 4.0399992e-17 0.068693568 7373.679
|
||||
5000 0.061805479 313.02216 1.3760324e-16 0.07042394 7373.6789
|
||||
Loop time of 32.2245 on 4 procs for 5000 steps with 13350 atoms
|
||||
|
||||
60.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 | 18.107 | 19.756 | 21.776 | 37.4 | 61.31
|
||||
Neigh | 1.5053 | 2.2024 | 2.872 | 36.3 | 6.83
|
||||
Comm | 1.874 | 2.5067 | 3.064 | 26.8 | 7.78
|
||||
Output | 0.59172 | 0.61037 | 0.65691 | 3.5 | 1.89
|
||||
Modify | 3.5805 | 6.8465 | 9.8575 | 96.2 | 21.25
|
||||
Other | | 0.3025 | | | 0.94
|
||||
|
||||
Nlocal: 3337.50 ave 3580 max 3072 min
|
||||
Histogram: 1 1 0 0 0 0 0 0 0 2
|
||||
Nghost: 853.250 ave 1111 max 624 min
|
||||
Histogram: 1 0 0 1 0 1 0 0 0 1
|
||||
Neighs: 51525.8 ave 67469 max 37698 min
|
||||
Histogram: 1 0 1 0 0 1 0 0 0 1
|
||||
|
||||
Total # of neighbors = 206103
|
||||
Ave neighs/atom = 15.438427
|
||||
Neighbor list builds = 455
|
||||
Dangerous builds = 414
|
||||
Total wall time: 0:00:32
|
||||
Reference in New Issue
Block a user