mirror of
https://github.com/ParticulateFlow/CFDEMcoupling-PFM.git
synced 2025-12-08 06:37:44 +00:00
93 lines
3.5 KiB
Plaintext
Executable File
93 lines
3.5 KiB
Plaintext
Executable File
################################################################################
|
||
# brief: Periodic box - run #
|
||
# #
|
||
# Periodic box simulations of Geldart A particles (d=0.075mm, rho=1500kg/m3) #
|
||
# Cf. Radl, S. and Sundaresan, S., A drag model for filtered Euler–Lagrange #
|
||
# simulations of clustered gas–particle suspensions. #
|
||
# Chem. Eng. Sci., (2014) #
|
||
# mass loading = 0.05 #
|
||
# authors: Behrad Esgandari #
|
||
# date: Aug 2023 #
|
||
# copyright: 2023- JKU Linz #
|
||
################################################################################
|
||
|
||
log ../DEM/log.liggghts
|
||
thermo_log ../DEM/post/thermo.txt
|
||
|
||
# define the attributes associated with the particles,
|
||
# 'granular' (or 'sphere') style uses diameter, mass and angular velocity
|
||
atom_style granular
|
||
|
||
# use an array to map particle IDs to local storage index,
|
||
atom_modify map array
|
||
|
||
# set simulation domain to be periodic in x y z
|
||
boundary p p p
|
||
|
||
# save communication by turning off Newton's 3rd law for pairwise interaction,
|
||
# note: this setting only influences communication between procs, Newton's
|
||
# 3rd law is still used for contact force calculations
|
||
newton off
|
||
|
||
# use a single value for ghost particle cutoff distance and
|
||
# enable velocity to be communicated with ghost particles
|
||
communicate single vel yes
|
||
|
||
# set unit system to SI
|
||
units si
|
||
|
||
# specify domain decomposition for parallel execution
|
||
processors 4 2 4
|
||
|
||
# read the restart file
|
||
read_restart ../DEM/post/restart/liggghts.restart
|
||
|
||
# specify the skin distance for neighbor list generation
|
||
neighbor 0.000075 bin
|
||
neigh_modify every 5 delay 0 check no
|
||
|
||
# define the material properties required for granular pair styles
|
||
# type 1 = particles with friction
|
||
fix m1 all property/global youngsModulus peratomtype 1e6
|
||
fix m2 all property/global poissonsRatio peratomtype 0.42
|
||
fix m3 all property/global coefficientRestitution peratomtypepair 1 0.9
|
||
fix m4 all property/global coefficientFriction peratomtypepair 1 0.1
|
||
|
||
# specify contact model to use
|
||
pair_style gran model hertz tangential incremental_history limitForce on
|
||
pair_coeff * *
|
||
|
||
# set the time step
|
||
timestep 0.000001
|
||
|
||
# apply gravity
|
||
fix gravity all gravity 9.81 vector 0.0 0.0 -1.0
|
||
|
||
# set up coupling to CFD simulation
|
||
fix cfd all couple/cfd couple_every 50 mpi
|
||
fix cfd2 all couple/cfd/force/implicit
|
||
|
||
# use constant NVE integration to update position, velocity and angular velocity
|
||
fix integr all nve/sphere
|
||
|
||
# output settings, include kinetic energy
|
||
thermo_style custom step atoms ke
|
||
|
||
# set frequency of output
|
||
thermo 1000
|
||
|
||
# ignore particles leaving the simulation domain,
|
||
# do not normalize thermodynamic output values by the number of atoms
|
||
thermo_modify lost ignore norm no
|
||
compute_modify thermo_temp dynamic yes
|
||
|
||
# output particle properties (same frequency as CFD output)
|
||
dump dmp all custom/vtk 10000 ../DEM/post/liggghts_run_*.vtk id type x y z vx vy vz &
|
||
fx fy fz omegax omegay omegaz radius
|
||
|
||
dump dmp2 all custom 10000 ../DEM/post/liggghts_run_*.run id type x y z vx vy vz &
|
||
fx fy fz omegax omegay omegaz radius
|
||
|
||
# run 1 time step to initialize all DEM systems
|
||
run 1
|