1.5 VS 1.4.6

Submitted by andrea.pasquali on Wed, 12/07/2011 - 09:30

Hi all,
I'm trying now the new 1.5 (downloaded from git)
I fount that the compute eraotate/sphere command warks stangly
It calculates Rot. En. = 24662670.
Using the same in. file the 1.4.6 version calculates Rot. En. = 3.0077387e-08 (that is more familiar with my case).
Maybe is there some bugs in the 1.5? Or the command is changed?
Thanks

ckloss's picture

ckloss | Fri, 12/09/2011 - 16:17

The testharness did not show deviations here...
If you can send me the case, I can have a look at some point next week!

Cheers, Christoph

andrea.pasquali | Thu, 12/15/2011 - 11:27

Hi Christoph,
here my example.
I will show you in. file and log file for version 1.5 and 1.4.6.

in. file

# --------------------------------------------------------------------------------------------- #
# GENERAL
# -------
atom_style granular
newton off
units si
communicate single vel yes
boundary p p m
#echo both
# PARALLEL RUN
# ------------
processors 8 1 1
# RESTART: READ
# -------------
#read_restart OK_restart.1000000 # if used "create_box" is to be commented
# VARIABLES
# ---------
variable NumMat equal 2 # Num of materials
variable deltaT equal 1.5e-7 # timestep [s] , Num_Its_x_1_sec = 1 / timestep
variable mZ equal -0.1000 # profondità del dominio [m] = -0.25 : -0.30 m
variable halfedgeY equal 0.0500 # lato metà dominio Y [m] = 0.075 : 0.100 m
variable vel0Z equal 0 # velocità iniziale di inserimento particelle [m/s]
variable alpha equal 0.20 # percentuale inziale di inserimento particelle [-]
variable displ equal 0.10 # spostamento del penetrometro [m] = 300 cm = 0.3 m
variable movecadvel equal 0.02 # velocità di penetrazione [m/s] = 2 cm/s = 0.02 m/s
variable directionX equal 0 # direzione X
variable directionY equal 0 # direzione Y
variable directionZ equal -1 # direzione Z
variable threshold equal 1e-7 # soglia per il controllo della Kinetic Energy [-]
variable timestepthreshold equal 0.15 # soglia per il controllo del time step [-]
variable radiusM equal 0.0011000 # raggio max particella [m]
variable radiusm equal 0.0007000 # raggio min particella [m]
variable density equal 1.45e+3 # densità [kg/m^3]
# fr: friction, co: cohesion
# a: atoms, c: cad, w: walls
# friction, 0: off, 1: tg, 2: roll, 3: tg+roll
# cohesion, 0: off, 1: on # Note: to be used only if HERTZ
variable fr_a equal 3
variable fr_c equal 3
variable fr_w equal 3
variable co_a equal 1
variable co_c equal 1
variable co_w equal 1
# Material proterties
# Note: Num. Mat. prop. = NumMat
variable Y_1 equal 100e+9 # Young modulus
variable Y_2 equal 210e+9
variable nu_1 equal 0.20 # Poisson ratio
variable nu_2 equal 0.30
variable e_11 equal 0.10 # Coeff. of restitution
variable e_22 equal 0.90
variable e_12 equal 0.90
variable tg_11 equal 0.50 # Tg. friction
variable tg_22 equal 0.70
variable tg_12 equal 0.70
variable roll_11 equal 0.70 # Roll. friction
variable roll_22 equal 0.90
variable roll_12 equal 0.90
variable vel_1 equal 2.00 # Characteristic vel. # Note: needed only if HOOKE
variable vel_2 equal 2.00
variable co_11 equal 1e+6 # Choesion En. # Note: to be used only if HERTZ
variable co_22 equal 1e+6
variable co_12 equal 1e+6
# --------------------------------------------------------------------------------------------- #
# SIMULATION BOX
# --------------
variable skin equal 0.1*2*${radiusm} # skin = 0.1:1*diameter(min)
variable incr equal -${mZ}
variable halfedgeX equal ${radiusM} # lato metà dominio X [m]
variable mX equal -${halfedgeX}
variable pX equal ${halfedgeX}
variable mY equal -${halfedgeY}
variable pY equal ${halfedgeY}
variable cZ equal ${mZ}+${incr}
variable bZ equal ${cZ}+${incr}
variable aZ equal ${bZ}+${incr}
variable pZ equal ${aZ}+${incr}
neighbor ${skin} bin
neigh_modify delay 0
region reg block ${mX} ${pX} ${mY} ${pY} ${mZ} ${pZ} units box
create_box ${NumMat} reg
# CONTACT MODEL
# -------------
pair_style gran/hertz/history ${fr_a} ${co_a} # Note: Hertz o Hooke
pair_coeff * *
fix gravi all gravity 9.81 vector ${directionX} ${directionY} ${directionZ}
# MATERIAL PROPERTIES
# -------------------
fix m1 all property/global youngsModulus peratomtype ${Y_1} ${Y_2}
fix m2 all property/global poissonsRatio peratomtype ${nu_1} ${nu_2}
fix m3 all property/global coefficientRestitution peratomtypepair ${NumMat} ${e_11} ${e_12} ${e_12} ${e_22}
fix m4 all property/global coefficientFriction peratomtypepair ${NumMat} ${tg_11} ${tg_12} ${tg_12} ${tg_22}
fix m5 all property/global coefficientRollingFriction peratomtypepair ${NumMat} ${roll_11} ${roll_12} ${roll_12} ${roll_22}
fix m6 all property/global characteristicVelocity scalar ${vel_1} ${vel_2}
fix m7 all property/global cohesionEnergyDensity peratomtypepair ${NumMat} ${co_11} ${co_12} ${co_12} ${co_22}
# BOX WALLS
# ---------
#fix boxwalls_x all wall/gran/hertz/history ${fr_w} ${co_w} xplane ${mX} ${pX} 1
#fix boxwalls_y all wall/gran/hertz/history ${fr_w} ${co_w} yplane ${mY} ${pY} 1
fix boxwalls_z all wall/gran/hertz/history ${fr_w} ${co_w} zplane ${mZ} ${pZ} 1
# TIME
# ----
timestep ${deltaT}
variable runtime equal 1/${deltaT}
variable thermotime equal ${runtime}/100
variable instime equal 1/10*${runtime}
variable Nattemps equal ${runtime}/${thermotime}
variable restarttime equal ${thermotime}
variable dumptime equal ${thermotime}
variable Nevery equal 1
variable Nrepeat equal ${thermotime}
variable Nfreq equal ${thermotime}
fix ts all check/timestep/gran ${thermotime} ${timestepthreshold} ${timestepthreshold}
# DISTRIBUTION FOR INSERTION
# --------------------------
fix pts1 all particletemplate/sphere 1 atom_type 1 density constant ${density} radius uniform ${radiusm} ${radiusM}
fix pdd1 all particledistribution/discrete 1. 1 pts1 1
region bc1 block ${mX} ${pX} ${mY} ${pY} ${mZ} ${aZ} units box
fix 1 all nve/sphere
# OUTPUTS
# -------
compute RotEng all erotate/sphere
compute Z all property/atom z
compute maxZ all reduce max c_Z
thermo_style custom step atoms ke c_RotEng vol c_maxZ
thermo ${thermotime}
thermo_modify lost ignore norm no
compute_modify thermo_temp dynamic yes
# RESTART: WRITE
# --------------
restart ${restarttime} restart
# RUN: INSERT PARTICLES
# ---------------------
fix ins1 all pour/dev/packing 1 distributiontemplate pdd1 vol ${alpha} ${Nattemps} vel uniform 0 0 0 0 ${vel0Z} region bc1
run 1
unfix ins1
# RUN: SETTLING PARTICLES
# -----------------------
dump dumpIns all custom ${dumptime} &
post/dump*.Ins &
id type type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius
variable KinEn equal ke
variable RotEng equal c_RotEng
label keloop
run ${instime}
print ""
print "-----> Checking Kin En..."
if ${KinEn} < ${threshold} then &
"jump in.penetrometro reloop" &
else &
"print -----> ... Kin En NOT OK yet!" &
"print -----> ... Let particles settling more time..." &
"jump in.penetrometro keloop"
label reloop
print "-----> ... Kin En OK!"
print "-----> Checking Rot En..."
if ${RotEng} < ${threshold} then &
"print -----> ... Rot En OK!" &
"print -----> Stop let particles settling" &
"jump in.penetrometro endloop" &
else &
"print -----> ... Rot En NOT OK yet!" &
"print -----> ... Let particles settling more time..." &
"jump in.penetrometro keloop"
label endloop
print ""
print "-----> Checking the max particles Z to set the cad"
variable maxZp equal c_maxZ
variable setcad equal ${maxZp}+${radius1}
print "-----> Cad set @ Z = ${setcad}"
print ""
undump dumpIns
# RUN: CAD
# --------
variable movecadtime equal ${displ}/${movecadvel}*${runtime}
variable movecadvelX equal ${directionX}*${movecadvel}
variable movecadvelY equal ${directionY}*${movecadvel}
variable movecadvelZ equal ${directionZ}*${movecadvel}
fix cad1 all mesh/gran/stressanalysis penetrometro.stl ${NumMat} 1 0. 0. ${setcad} 0. 0. 0.
fix granwalls all wall/gran/hertz/history ${fr_c} ${co_c} mesh/gran 1 cad1
compute 4 all displace/atom
dump dumpMove all custom ${dumptime} &
post/dump*.Move &
id type type x y z ix iy iz vx vy vz fx fy fz omegax omegay omegaz radius &
c_4[1] c_4[2] c_4[3]
dump dumpCad all mesh/gran/VTK ${dumptime} &
post/cad1*.vtk &
stress cad1
fix forceOnCad all ave/time ${Nevery} ${Nrepeat} ${Nfreq} f_cad1[1] f_cad1[2] f_cad1[3] file forces.dat
fix force2OnCad all ave/time ${Nevery} 1 ${Nfreq} f_cad1[1] f_cad1[2] f_cad1[3] file forces_at_dumptime.dat
fix movecad1 all move/mesh/gran linear ${movecadvelX} ${movecadvelY} ${movecadvelZ} cad1 1
run ${movecadtime}
unfix movecad1
# --------------------------------------------------------------------------------------------- #

log file versione 1.5

# --------------------------------------------------------------------------------------------- #
LIGGGHTS 1.5 based on lammps-10Mar10
Created orthogonal box = (-0.0011 -0.05 -0.1) to (0.0011 0.05 0.3)
8 by 1 by 1 processor grid
Fix particledistribution/discrete (id pdd1): distribution based on mass%:
pts1: d=2.200000e-03 (max. bounding sphere) mass%=100.000000%
Fix particledistribution/discrete (id pdd1): distribution based on number%:
pts1: d=2.200000e-03 (max. bounding sphere) number%=100.000000%
Particle packing insertion: trying 4119.217941 particles once
Setting up run ...
Memory usage per processor = 9.81762 Mbytes
Step Atoms KinEng RotEng Volume maxZ
0 0 -0 0 8.8e-05 -1e+20
1 4119 3.6627476e-15 0 8.8e-05 0.19889998
Loop time of 0.166504 on 8 procs for 1 steps with 4119 atoms

Pair time (%) = 8.61287e-06 (0.00517278)
Neigh time (%) = 0.000622451 (0.373836)
Comm time (%) = 0.00975999 (5.86172)
Outpt time (%) = 0.00017634 (0.105908)
Other time (%) = 0.155936 (93.6534)

Nlocal: 514.875 ave 4119 max 0 min
Histogram: 7 0 0 0 0 0 0 0 0 1
Nghost: 9054.38 ave 12759 max 8506 min
Histogram: 7 0 0 0 0 0 0 0 0 1
Neighs: 146.25 ave 1170 max 0 min
Histogram: 7 0 0 0 0 0 0 0 0 1

Total # of neighbors = 1170
Ave neighs/atom = 0.28405
Neighbor list builds = 1
Dangerous builds = 0
Setting up run ...
Memory usage per processor = 11.4764 Mbytes
Step Atoms KinEng RotEng Volume maxZ
1 4119 3.6627476e-15 0 8.8e-05 0.19889998
WARNING: time-step is 33.244722 % of rayleigh time
66666 4119 6.5042935e-05 3.3218132e-19 8.8e-05 0.1984095
WARNING: time-step is 33.244722 % of rayleigh time
133332 4119 0.00025849614 61.464698 8.8e-05 0.19693804
WARNING: time-step is 33.244722 % of rayleigh time
199998 4119 0.00057354723 61.400859 8.8e-05 0.19448559
# --------------------------------------------------------------------------------------------- #

log file version 1.4.6

# --------------------------------------------------------------------------------------------- #
LIGGGHTS 1.4.6 based on lammps-10Mar10
Created orthogonal box = (-0.0011 -0.05 -0.1) to (0.0011 0.05 0.3)
8 by 1 by 1 processor grid
Fix particledistribution/discrete (id pdd1): distribution based on mass%:
pts1: d=2.200000e-03 (max. bounding sphere) mass%=100.000000%
Fix particledistribution/discrete (id pdd1): distribution based on number%:
pts1: d=2.200000e-03 (max. bounding sphere) number%=100.000000%
Particle packing insertion: trying 4119.217941 particles once
Setting up run ...
Memory usage per processor = 9.81762 Mbytes
Step Atoms KinEng RotEng Volume maxZ
0 0 -0 0 8.8e-05 -1e+20
1 4119 3.6627476e-15 0 8.8e-05 0.19889998
Loop time of 0.167363 on 8 procs for 1 steps with 4119 atoms

Pair time (%) = 8.64267e-06 (0.00516404)
Neigh time (%) = 0.000622898 (0.372185)
Comm time (%) = 0.00998321 (5.96502)
Outpt time (%) = 0.000175357 (0.104777)
Other time (%) = 0.156573 (93.5529)

Nlocal: 514.875 ave 4119 max 0 min
Histogram: 7 0 0 0 0 0 0 0 0 1
Nghost: 9054.38 ave 12759 max 8506 min
Histogram: 7 0 0 0 0 0 0 0 0 1
Neighs: 146.25 ave 1170 max 0 min
Histogram: 7 0 0 0 0 0 0 0 0 1

Total # of neighbors = 1170
Ave neighs/atom = 0.28405
Neighbor list builds = 1
Dangerous builds = 0
Setting up run ...
Memory usage per processor = 11.4764 Mbytes
Step Atoms KinEng RotEng Volume maxZ
1 4119 3.6627476e-15 0 8.8e-05 0.19889998
WARNING: time-step is 33.244722 % of rayleigh time
66666 4119 6.5042935e-05 0 8.8e-05 0.1984095
WARNING: time-step is 33.244722 % of rayleigh time
133332 4119 0.00025821119 4.5145761e-10 8.8e-05 0.19693804
WARNING: time-step is 33.244722 % of rayleigh time
199998 4119 0.00057233239 9.6662905e-09 8.8e-05 0.19448559
# --------------------------------------------------------------------------------------------- #

As you can see at time 199998 the Rot. Eng. is 61.4 for 1.5 VS 9.6e-9 for 1.4.6 !
I downloaded the 1.5 by git as liggghtsdev... Maybe is this the problem?
Thanks
Andrea