lammps/examples/USER/atc/fluids/concentration.screen

170 lines
6.9 KiB
Plaintext

LAMMPS (30 Aug 2013)
units real
atom_style full # charge
### NOTE p p p is required for both lammps & atc since periodic images are employed in ExtrinsicModelElectrostatic::correct_electrostatic_forces
########### BEGIN PARAMETERS ####################################
variable T equal 300
variable a equal 1.0 # 5.719025032
variable i equal 10 # thermo
variable f equal 50 # neighbor & conc interval
variable s equal 100 # 10 # 100 # output
variable n equal 800 # 20 # 200 # 300 # duration
variable x equal 4 # 40 # 2 # 4 # exchanges
variable e equal 100. # 1. # 100. # 10. # energy
variable h equal 5 # nelems
variable dt equal 4. #1. # 0 # 4.0
############## END PARAMETERS #################################
dimension 3
boundary p p p
pair_style lj/cut/coul/cut 13.0
lattice sc $a
lattice sc 1
Lattice spacing in x,y,z = 1 1 1
read_data concentration_init.data
Scanning data file ...
Reading data file ...
orthogonal box = (0 0 0) to (114.381 22.8761 22.8761)
4 by 1 by 1 MPI processor grid
544 atoms
544 velocities
Finding 1-2 1-3 1-4 neighbors ...
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
atom_modify sort 0 1
mass * 39.948
pair_coeff * * 0.2381 3.405
pair_coeff 1 * 0.4 3.405
dielectric 80.0
variable xlo equal xlo
variable xhi equal xhi
variable xmid equal 0.5*(${xhi}+${xlo})
variable xmid equal 0.5*(114.38050064000000816+${xlo})
variable xmid equal 0.5*(114.38050064000000816+0)
print "reservior x ${xmid}:${xhi}"
reservior x 57.190250320000004081:114.38050064000000816
variable ylo equal ylo
variable yhi equal yhi
variable zlo equal zlo
variable zhi equal zhi
region BOX block ${xlo} ${xhi} ${ylo} ${yhi} ${zlo} ${zhi} units box
region BOX block 0 ${xhi} ${ylo} ${yhi} ${zlo} ${zhi} units box
region BOX block 0 114.38050064000000816 ${ylo} ${yhi} ${zlo} ${zhi} units box
region BOX block 0 114.38050064000000816 0 ${yhi} ${zlo} ${zhi} units box
region BOX block 0 114.38050064000000816 0 22.876100128000000922 ${zlo} ${zhi} units box
region BOX block 0 114.38050064000000816 0 22.876100128000000922 0 ${zhi} units box
region BOX block 0 114.38050064000000816 0 22.876100128000000922 0 22.876100128000000922 units box
region FLUID block ${xlo} ${xhi} ${ylo} ${yhi} ${zlo} ${zhi} units box
region FLUID block 0 ${xhi} ${ylo} ${yhi} ${zlo} ${zhi} units box
region FLUID block 0 114.38050064000000816 ${ylo} ${yhi} ${zlo} ${zhi} units box
region FLUID block 0 114.38050064000000816 0 ${yhi} ${zlo} ${zhi} units box
region FLUID block 0 114.38050064000000816 0 22.876100128000000922 ${zlo} ${zhi} units box
region FLUID block 0 114.38050064000000816 0 22.876100128000000922 0 ${zhi} units box
region FLUID block 0 114.38050064000000816 0 22.876100128000000922 0 22.876100128000000922 units box
region R block ${xmid} ${xhi} ${ylo} ${yhi} ${zlo} ${zhi} units box
region R block 57.190250320000004081 ${xhi} ${ylo} ${yhi} ${zlo} ${zhi} units box
region R block 57.190250320000004081 114.38050064000000816 ${ylo} ${yhi} ${zlo} ${zhi} units box
region R block 57.190250320000004081 114.38050064000000816 0 ${yhi} ${zlo} ${zhi} units box
region R block 57.190250320000004081 114.38050064000000816 0 22.876100128000000922 ${zlo} ${zhi} units box
region R block 57.190250320000004081 114.38050064000000816 0 22.876100128000000922 0 ${zhi} units box
region R block 57.190250320000004081 114.38050064000000816 0 22.876100128000000922 0 22.876100128000000922 units box
group SOLID type 1
288 atoms in group SOLID
variable xdof equal 3*count(SOLID)
compute_modify thermo_temp extra ${xdof}
compute_modify thermo_temp extra 864
#set group SOLID charge 0
group NEUTRAL type 2
114 atoms in group NEUTRAL
group FLUID type 2 3 4
256 atoms in group FLUID
group NION type 3
66 atoms in group NION
group PION type 4
76 atoms in group PION
#group tPION type 5 # not dynamic
#group tNION type 6 # not dynamic
#variable typeP atom type[]==5
set group PION charge 1
Setting atom values ...
76 settings made for charge
set group NION charge -1
Setting atom values ...
66 settings made for charge
variable O equal count(NEUTRAL)
variable S equal count(SOLID)
variable F equal count(FLUID)
variable P equal count(PION)
variable N equal count(NION)
variable Pr equal count(PION,R)
variable Nr equal count(NION,R)
#variable tP equal count(tPION)
#variable tN equal count(tNION)
variable V equal vol
variable cO equal v_O/v_V
variable cS equal v_S/v_V
variable cN equal v_N/v_V
variable cP equal v_P/v_V
compute q all property/atom q
compute m all property/atom mass
compute Q all reduce sum c_q
compute M all reduce sum c_m
compute Qf FLUID reduce sum c_q
compute Mf FLUID reduce sum c_m
compute PMIN PION reduce min x
compute PMAX PION reduce max x
compute NMIN NION reduce min x
compute NMAX NION reduce max x
timestep ${dt}
timestep 4
#neighbor 13 bin
neigh_modify every $i check no
neigh_modify every 10 check no
# coulombic interactions
fix ATC FLUID atc species_electrostatic Ar_electrostatic.mat
ATC: constructing electrostatic species coupling with parameter file Ar_electrostatic.mat
ATC: version 2.0
ATC: peratom PE compute created with ID: 13
ATC: 1 materials defined from Ar_electrostatic.mat
ATC: creating fem_efield extrinsic model
ATC: 1 materials defined from Ar_electrostatic.mat
#fix_modify ATC parallel_consistency off
fix_modify ATC extrinsic short_range off
#fix_modify ATC boundary SOLID
fix_modify ATC atom_element_map eulerian $i
fix_modify ATC atom_element_map eulerian 10
fix_modify ATC internal_quadrature off
fix_modify ATC consistent_fe_initialization on
fix_modify ATC filter type exponential
fix_modify ATC filter scale $i
fix_modify ATC filter scale 10
fix_modify ATC filter equilibrate
# mesh
print "x = ${xlo}:${xhi}"
x = 0:114.38050064000000816
fix_modify ATC mesh create $h 1 1 BOX p p p # f p p ExtrinsicModelElectrostatic::correct_electrostatic_forces iterates through ghosts
fix_modify ATC mesh create 5 1 1 BOX p p p
ATC: created uniform mesh with 24 nodes, 5 unique nodes, and 5 elements
fix_modify ATC mesh create_nodeset LBC ${xlo} ${xlo} -INF INF -INF INF
fix_modify ATC mesh create_nodeset LBC 0 ${xlo} -INF INF -INF INF
fix_modify ATC mesh create_nodeset LBC 0 0 -INF INF -INF INF
ATC: created nodeset LBC with 1 nodes
fix_modify ATC mesh create_elementset FLUID FLUID
ATC: created elementset FLUID with 5 elements
fix_modify ATC mesh create_elementset R R
ATC: created elementset R with 2 elements
fix_modify ATC mesh create_elementset BOX BOX
ATC: created elementset BOX with 5 elements
## NOTE tag instead of type, what about transition tyme
fix_modify ATC mass_matrix fe
fix_modify ATC internal_element_set FLUID
fix_modify ATC include atomic_charge
fix_modify ATC add_species N type 3
fix_modify ATC add_species P type 4
fix_modify ATC add_species Nt type 5
fix_modify ATC add_species Pt type 6
## CC
fix_modify ATC control concentration N R 0.001 Nt # deletions R
ERROR: Illegal fix_modify command (../fix.cpp:104)