forked from chaos-polymtl/lethe
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add checkpoint to DEM solid objects (chaos-polymtl#959)
Description of the problem The moving solid objects used in DEM simulations were not checkpointed at all. This is not good Description of the solution Add the full checkpointing of the solid objects Add a test to ensure that this works correctly How Has This Been Tested? A test has been added to check this feature. It works very well. Documentation I don't think anything needs to be documented in particular here? Co-authored-by: OGaboriault <[email protected]> Co-authored-by: Victor Oliveira Ferreira <[email protected]> Co-authored-by: OGaboriault <[email protected]> Former-commit-id: 9e01f2d
- Loading branch information
1 parent
1b841b1
commit 49f0934
Showing
24 changed files
with
666 additions
and
121 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
134 changes: 134 additions & 0 deletions
134
applications_tests/lethe-particles/moving_receptacle_files/moving_receptacle.prm
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,134 @@ | ||
# Listing of Parameters | ||
#---------------------- | ||
|
||
set dimension = 3 | ||
|
||
#--------------------------------------------------- | ||
# Simulation Control | ||
#--------------------------------------------------- | ||
|
||
subsection simulation control | ||
set time step = 5e-5 | ||
set time end = .7 | ||
set log frequency = 500 | ||
set output frequency = 0 | ||
set output path = ./output/ | ||
set output boundaries = false | ||
end | ||
|
||
#--------------------------------------------------- | ||
# Model parameters | ||
#--------------------------------------------------- | ||
|
||
subsection model parameters | ||
subsection contact detection | ||
set contact detection method = dynamic | ||
set dynamic contact search size coefficient = 0.9 | ||
set neighborhood threshold = 1.3 | ||
end | ||
subsection load balancing | ||
set load balance method = none | ||
set frequency = 10000 | ||
end | ||
set particle particle contact force method = hertz_mindlin_limit_overlap | ||
set rolling resistance torque method = constant_resistance | ||
set particle wall contact force method = nonlinear | ||
set integration method = velocity_verlet | ||
end | ||
|
||
#--------------------------------------------------- | ||
# Physical Properties | ||
#--------------------------------------------------- | ||
|
||
subsection lagrangian physical properties | ||
set gx = 9.81 | ||
set gy = 0 | ||
set gz = 0.0 | ||
set number of particle types = 1 | ||
subsection particle type 0 | ||
set size distribution type = uniform | ||
set diameter = 0.01 | ||
set number of particles = 100 | ||
set density particles = 2560 | ||
set young modulus particles = 1e6 | ||
set poisson ratio particles = 0.2 | ||
set restitution coefficient particles = 0.5 | ||
set friction coefficient particles = 0.5 | ||
set rolling friction particles = 0.3 | ||
end | ||
set young modulus wall = 1e6 | ||
set poisson ratio wall = 0.2 | ||
set restitution coefficient wall = 0.9 | ||
set friction coefficient wall = 0.5 | ||
set rolling friction wall = 0.3 | ||
end | ||
|
||
#--------------------------------------------------- | ||
# Insertion Info | ||
#--------------------------------------------------- | ||
|
||
subsection insertion info | ||
set insertion method = volume | ||
set inserted number of particles at each time step = 600 | ||
set insertion frequency = 10000 | ||
set insertion box minimum x = 0.0025 | ||
set insertion box minimum y = 0.0025 | ||
set insertion box minimum z = 0.0025 | ||
set insertion box maximum x = 0.597 | ||
set insertion box maximum y = 0.340 | ||
set insertion box maximum z = 0.397 | ||
set insertion distance threshold = 1.075 | ||
set insertion random number range = 0.025 | ||
set insertion random number seed = 19 | ||
end | ||
|
||
#--------------------------------------------------- | ||
# Insertion Info | ||
#--------------------------------------------------- | ||
|
||
subsection restart | ||
# Checkpointing parameters | ||
set checkpoint = true | ||
set frequency = 14000 | ||
|
||
# Output/input files | ||
set filename = restart | ||
|
||
# Restarting parameter | ||
set restart = false | ||
end | ||
|
||
|
||
#--------------------------------------------------- | ||
# Mesh | ||
#--------------------------------------------------- | ||
|
||
subsection mesh | ||
set type = dealii | ||
set grid type = subdivided_hyper_rectangle | ||
set grid arguments = 2,1,1 : 0,0,0 : 0.8,0.4,0.4 : false | ||
set initial refinement = 0 | ||
end | ||
|
||
#--------------------------------------------------- | ||
# Solid Objects | ||
#--------------------------------------------------- | ||
|
||
subsection solid objects | ||
set number of solids = 1 | ||
subsection solid object 0 | ||
subsection mesh | ||
set type = gmsh | ||
set file name = square.msh | ||
set simplex = true | ||
set initial refinement = 0 | ||
end | ||
|
||
subsection translational velocity | ||
set Function expression = if(t>0.4,if(t<0.6,0.1,0),0) ; 0 ; 0 | ||
end | ||
subsection angular velocity | ||
set Function expression = 0 ; 0 ; 0 | ||
end | ||
end | ||
end |
1 change: 1 addition & 0 deletions
1
applications_tests/lethe-particles/moving_receptacle_files/restart.particles
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
0 0 100 100 100 |
2 changes: 2 additions & 0 deletions
2
applications_tests/lethe-particles/moving_receptacle_files/restart.pvdhandler
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
0 | ||
Time File |
8 changes: 8 additions & 0 deletions
8
applications_tests/lethe-particles/moving_receptacle_files/restart.simulationcontrol
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
Simulation control | ||
dt_0 5e-05 | ||
dt_1 5e-05 | ||
dt_2 5e-05 | ||
dt_3 5e-05 | ||
CFL 0 | ||
Time 0.7 | ||
Iter 14000 |
1 change: 1 addition & 0 deletions
1
...ations_tests/lethe-particles/moving_receptacle_files/restart.solid_object.00.displacement
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
22 serialization::archive 17 0 0 0 0 15 2.00000000000007880e-02 0.00000000000000000e+00 0.00000000000000000e+00 2.00000000000007880e-02 0.00000000000000000e+00 0.00000000000000000e+00 2.00000000000007880e-02 0.00000000000000000e+00 0.00000000000000000e+00 2.00000000000007880e-02 0.00000000000000000e+00 0.00000000000000000e+00 2.00000000000007880e-02 0.00000000000000000e+00 0.00000000000000000e+00 |
1 change: 1 addition & 0 deletions
1
applications_tests/lethe-particles/moving_receptacle_files/restart.solid_object.00.dof
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
22 serialization::archive 17 0 0 0 0 0 0 0 0 0 0 0 0 0 0 15 15 0 0 0 0 1 0 0 0 0 15 0 1 15 0 1 0 15 0 0 1 0 1 0 0 15 0 1 15 0 0 0 1 0 0 0 3 15 0 12 13 14 0 1 2 3 4 5 9 10 11 6 7 8 0 0 0 0 1 0 3 6 0 0 3 6 9 12 15 9 0 0 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 4 34 FESystem<2,3>[FE_SimplexP<2>(1)^3] 23 Policy::Sequential<2,3> |
2 changes: 2 additions & 0 deletions
2
...ications_tests/lethe-particles/moving_receptacle_files/restart.solid_object.00.pvdhandler
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
0 | ||
Time File |
Binary file added
BIN
+800 Bytes
applications_tests/lethe-particles/moving_receptacle_files/restart.triangulation
Binary file not shown.
2 changes: 2 additions & 0 deletions
2
applications_tests/lethe-particles/moving_receptacle_files/restart.triangulation.info
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
version nproc n_attached_fixed_size_objs n_attached_variable_size_objs n_coarse_cells | ||
5 1 0 1 2 |
Binary file added
BIN
+24 Bytes
applications_tests/lethe-particles/moving_receptacle_files/restart.triangulation_fixed.data
Binary file not shown.
Binary file added
BIN
+17.6 KB
...cations_tests/lethe-particles/moving_receptacle_files/restart.triangulation_variable.data
Binary file not shown.
24 changes: 24 additions & 0 deletions
24
applications_tests/lethe-particles/moving_receptacle_files/square.geo
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
// Define a variable | ||
|
||
lc = 1; | ||
H=0.5; | ||
W=0.4; | ||
x0=0.6; | ||
|
||
|
||
Point(0) = {x0, 0, 0, lc}; | ||
Point(1) = {x0, 0, W, lc}; | ||
Point(2) = {x0, H, W, lc}; | ||
Point(3) = {x0, H, 0, lc}; | ||
|
||
Line(0)={0,1}; | ||
Line(1)={1,2}; | ||
Line(2)={2,3}; | ||
Line(3)={3,0}; | ||
|
||
Line Loop(1) = {0,1,2,3}; | ||
|
||
Plane Surface(1) = {1} ; | ||
|
||
Physical Surface(0) = {1}; | ||
|
41 changes: 41 additions & 0 deletions
41
applications_tests/lethe-particles/moving_receptacle_files/square.msh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
$MeshFormat | ||
4.1 0 8 | ||
$EndMeshFormat | ||
$Entities | ||
4 4 1 0 | ||
0 0.6 0 0 0 | ||
1 0.6 0 0.4 0 | ||
2 0.6 0.5 0.4 0 | ||
3 0.6 0.5 0 0 | ||
0 0.6 0 0 0.6 0 0.4 0 2 0 -1 | ||
1 0.6 0 0.4 0.6 0.5 0.4 0 2 1 -2 | ||
2 0.6 0.5 0 0.6 0.5 0.4 0 2 2 -3 | ||
3 0.6 0 0 0.6 0.5 0 0 2 3 0 | ||
1 0.6 0 0 0.6 0.5 0.4 1 0 4 0 1 2 3 | ||
$EndEntities | ||
$Nodes | ||
5 5 1 5 | ||
0 0 0 1 | ||
1 | ||
0.6 0 0 | ||
0 1 0 1 | ||
2 | ||
0.6 0 0.4 | ||
0 2 0 1 | ||
3 | ||
0.6 0.5 0.4 | ||
0 3 0 1 | ||
4 | ||
0.6 0.5 0 | ||
2 1 0 1 | ||
5 | ||
0.6 0.25 0.2 | ||
$EndNodes | ||
$Elements | ||
1 4 1 4 | ||
2 1 2 4 | ||
1 2 3 5 | ||
2 4 1 5 | ||
3 1 2 5 | ||
4 3 4 5 | ||
$EndElements |
130 changes: 130 additions & 0 deletions
130
applications_tests/lethe-particles/restart_moving_receptacle.output
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,130 @@ | ||
|
||
********************* | ||
Running on 1 rank(s) | ||
********************* | ||
DEM time-step is 3.69227% of Rayleigh time step | ||
Reading triangulation | ||
|
||
Finished reading triangulation | ||
Warning: expansion of particle-wall contact list is disabled. | ||
This feature is useful in geometries with concave boundaries. | ||
|
||
***************************************************************** | ||
Transient iteration: 14500 Time: 0.725 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 8.0000e+00 | 2.7586e-01 | 8.0000e+00 | | ||
| Velocity magnitude | 2.0385e-05 | 4.6928e-01 | 1.7556e-02 | 1.7556e+00 | | ||
| Angular velocity magnitude | 1.4224e-03 | 1.3591e+02 | 3.0792e+00 | 3.0792e+02 | | ||
| Translational kinetic energy | 2.7849e-13 | 1.4760e-04 | 2.8498e-06 | 2.8498e-04 | | ||
| Rotational kinetic energy | 2.7121e-14 | 2.4758e-04 | 3.2443e-06 | 3.2443e-04 | | ||
|
||
***************************************************************** | ||
Transient iteration: 15000 Time: 0.75 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.0000e+01 | 6.0000e-01 | 1.8000e+01 | | ||
| Velocity magnitude | 3.7519e-06 | 6.7722e-01 | 1.8740e-02 | 1.8740e+00 | | ||
| Angular velocity magnitude | 3.5347e-03 | 1.3591e+02 | 2.9847e+00 | 2.9847e+02 | | ||
| Translational kinetic energy | 9.4344e-15 | 3.0737e-04 | 4.8233e-06 | 4.8233e-04 | | ||
| Rotational kinetic energy | 1.6747e-13 | 2.4758e-04 | 3.2513e-06 | 3.2513e-04 | | ||
|
||
***************************************************************** | ||
Transient iteration: 15500 Time: 0.775 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 9.3548e-01 | 2.9000e+01 | | ||
| Velocity magnitude | 3.1242e-06 | 6.0538e-01 | 1.4793e-02 | 1.4793e+00 | | ||
| Angular velocity magnitude | 5.2241e-03 | 4.3128e+01 | 1.6292e+00 | 1.6292e+02 | | ||
| Translational kinetic energy | 6.5418e-15 | 2.4562e-04 | 3.8443e-06 | 3.8443e-04 | | ||
| Rotational kinetic energy | 3.6581e-13 | 2.4932e-05 | 7.0570e-07 | 7.0570e-05 | | ||
|
||
***************************************************************** | ||
Transient iteration: 16000 Time: 0.8 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.1875e+00 | 3.8000e+01 | | ||
| Velocity magnitude | 5.1992e-06 | 3.2067e-01 | 8.5319e-03 | 8.5319e-01 | | ||
| Angular velocity magnitude | 2.5888e-03 | 4.0267e+01 | 1.0967e+00 | 1.0967e+02 | | ||
| Translational kinetic energy | 1.8117e-14 | 6.8918e-05 | 1.2100e-06 | 1.2100e-04 | | ||
| Rotational kinetic energy | 8.9831e-14 | 2.1734e-05 | 4.0814e-07 | 4.0814e-05 | | ||
|
||
***************************************************************** | ||
Transient iteration: 16500 Time: 0.825 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.3030e+00 | 4.3000e+01 | | ||
| Velocity magnitude | 6.1075e-06 | 2.6943e-01 | 4.7210e-03 | 4.7210e-01 | | ||
| Angular velocity magnitude | 1.3688e-03 | 4.0267e+01 | 6.1168e-01 | 6.1168e+01 | | ||
| Translational kinetic energy | 2.5000e-14 | 4.8653e-05 | 5.6392e-07 | 5.6392e-05 | | ||
| Rotational kinetic energy | 2.5114e-14 | 2.1734e-05 | 2.3115e-07 | 2.3115e-05 | | ||
|
||
***************************************************************** | ||
Transient iteration: 17000 Time: 0.85 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.4412e+00 | 4.9000e+01 | | ||
| Velocity magnitude | 2.7954e-06 | 4.5913e-01 | 7.0493e-03 | 7.0493e-01 | | ||
| Angular velocity magnitude | 3.1862e-03 | 4.0267e+01 | 4.9273e-01 | 4.9273e+01 | | ||
| Translational kinetic energy | 5.2373e-15 | 1.4128e-04 | 1.6556e-06 | 1.6556e-04 | | ||
| Rotational kinetic energy | 1.3608e-13 | 2.1734e-05 | 2.1890e-07 | 2.1890e-05 | | ||
|
||
***************************************************************** | ||
Transient iteration: 17500 Time: 0.875 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.6000e+00 | 5.6000e+01 | | ||
| Velocity magnitude | 2.0135e-06 | 4.2505e-01 | 5.9059e-03 | 5.9059e-01 | | ||
| Angular velocity magnitude | 1.1980e-03 | 2.8965e+01 | 3.6601e-01 | 3.6601e+01 | | ||
| Translational kinetic energy | 2.7170e-15 | 1.2109e-04 | 1.3096e-06 | 1.3096e-04 | | ||
| Rotational kinetic energy | 1.9237e-14 | 1.1246e-05 | 1.1363e-07 | 1.1363e-05 | | ||
|
||
***************************************************************** | ||
Transient iteration: 18000 Time: 0.9 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.6667e+00 | 6.0000e+01 | | ||
| Velocity magnitude | 1.7462e-06 | 1.3054e-01 | 2.4122e-03 | 2.4122e-01 | | ||
| Angular velocity magnitude | 2.9066e-03 | 2.8965e+01 | 3.3427e-01 | 3.3427e+01 | | ||
| Translational kinetic energy | 2.0435e-15 | 1.1421e-05 | 1.8021e-07 | 1.8021e-05 | | ||
| Rotational kinetic energy | 1.1324e-13 | 1.1246e-05 | 1.1249e-07 | 1.1249e-05 | | ||
|
||
***************************************************************** | ||
Transient iteration: 18500 Time: 0.925 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.7027e+00 | 6.3000e+01 | | ||
| Velocity magnitude | 9.9271e-08 | 1.6718e-01 | 3.0282e-03 | 3.0282e-01 | | ||
| Angular velocity magnitude | 3.3061e-03 | 4.0013e+00 | 8.4518e-02 | 8.4518e+00 | | ||
| Translational kinetic energy | 6.6047e-18 | 1.8731e-05 | 2.9386e-07 | 2.9386e-05 | | ||
| Rotational kinetic energy | 1.4652e-13 | 2.1460e-07 | 2.1813e-09 | 2.1813e-07 | | ||
|
||
***************************************************************** | ||
Transient iteration: 19000 Time: 0.95 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.7368e+00 | 6.6000e+01 | | ||
| Velocity magnitude | 4.0188e-06 | 1.3331e-01 | 2.3277e-03 | 2.3277e-01 | | ||
| Angular velocity magnitude | 2.1452e-03 | 4.0013e+00 | 8.4088e-02 | 8.4088e+00 | | ||
| Translational kinetic energy | 1.0824e-14 | 1.1911e-05 | 1.7588e-07 | 1.7588e-05 | | ||
| Rotational kinetic energy | 6.1685e-14 | 2.1460e-07 | 2.1818e-09 | 2.1818e-07 | | ||
|
||
***************************************************************** | ||
Transient iteration: 19500 Time: 0.975 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.7692e+00 | 6.9000e+01 | | ||
| Velocity magnitude | 1.2660e-06 | 1.6892e-01 | 2.3707e-03 | 2.3707e-01 | | ||
| Angular velocity magnitude | 1.1465e-03 | 1.5682e-01 | 4.3282e-02 | 4.3282e+00 | | ||
| Translational kinetic energy | 1.0742e-15 | 1.9124e-05 | 2.1616e-07 | 2.1616e-05 | | ||
| Rotational kinetic energy | 1.7619e-14 | 3.2966e-10 | 3.4652e-11 | 3.4652e-09 | | ||
|
||
***************************************************************** | ||
Transient iteration: 20000 Time: 1 Time step: 5e-05 | ||
***************************************************************** | ||
| Variable | Min | Max | Average | Total | | ||
| Contact list generation | 0.0000e+00 | 1.1000e+01 | 1.7500e+00 | 7.0000e+01 | | ||
| Velocity magnitude | 2.1238e-06 | 9.7668e-02 | 1.1679e-03 | 1.1679e-01 | | ||
| Angular velocity magnitude | 3.6932e-04 | 7.2734e-01 | 5.3802e-02 | 5.3802e+00 | | ||
| Translational kinetic energy | 3.0231e-15 | 6.3932e-06 | 6.5134e-08 | 6.5134e-06 | | ||
| Rotational kinetic energy | 1.8283e-15 | 7.0911e-09 | 1.1543e-10 | 1.1543e-08 | |
Oops, something went wrong.