Muutke küpsiste eelistusi

E-raamat: Understanding the Discrete Element Method: Simulation of Non-Spherical Particles for Granular and Multi-body Systems

(The University of Electro-Communications, Japan), (RIKEN Advanced Institute for Computational Science, Japan)
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 12-May-2014
  • Kirjastus: John Wiley & Sons Inc
  • Keel: eng
  • ISBN-13: 9781118567289
Teised raamatud teemal:
  • Formaat - EPUB+DRM
  • Hind: 156,78 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Raamatukogudele
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 12-May-2014
  • Kirjastus: John Wiley & Sons Inc
  • Keel: eng
  • ISBN-13: 9781118567289
Teised raamatud teemal:

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

Specialists in granular materials, Matuttis and Chen show how to apply the discrete element method to analyze non-spherical particles. Because the method has long been used for round particles and is well known, they focus more on concrete illustrations and motivations than on abstract derivations. They provide details of geometrical arguments and approaches that are often not part of the curricula in the fields relevant to this book. They write for graduates in the physical sciences, engineering, and computer science and assume a reasonable familiarity with Newtonian mechanics, linear algebra, ordinary differential equations, and at least one procedural programming language. Annotation ©2014 Ringgold, Inc., Portland, OR (protoview.com)

Gives readers a more thorough understanding of DEM and equips researchers for independent work and an ability to judge methods related to simulation of polygonal particles

  • Introduces DEM from the fundamental concepts (theoretical mechanics and solidstate physics), with 2D and 3D simulation methods for polygonal particles
  • Provides the fundamentals of coding discrete element method (DEM) requiring little advance knowledge of granular matter or numerical simulation
  • Highlights the numerical tricks and pitfalls that are usually only realized after years of experience, with relevant simple experiments as applications
  • Presents a logical approach starting withthe mechanical and physical bases,followed by a description of the techniques and finally their applications
  • Written by a key author presenting ideas on how to model the dynamics of angular particles using polygons and polyhedral
  • Accompanying website includes MATLAB-Programs providing the simulation code for two-dimensional polygons

Recommended for researchers and graduate students who deal with particle models in areas such as fluid dynamics, multi-body engineering, finite-element methods, the geosciences, and multi-scale physics.

About the Authors xv
Preface xvii
Acknowledgements xix
List of Abbreviations xxi
1 Mechanics 1(64)
1.1 Degrees of freedom
1(4)
1.1.1 Particle mechanics and constraints
1(2)
1.1.2 From point particles to rigid bodies
3(1)
1.1.3 More context and terminology
4(1)
1.2 Dynamics of rectilinear degrees of freedom
5(1)
1.3 Dynamics of angular degrees of freedom
6(23)
1.3.1 Rotation in two dimensions
6(1)
1.3.2 Moment of inertia
7(2)
1.3.3 From two to three dimensions
9(3)
1.3.4 Rotation matrix in three dimensions
12(1)
1.3.5 Three-dimensional moments of inertia
13(3)
1.3.6 Space-fixed and body-fixed coordinate systems and equations of motion
16(3)
1.3.7 Problems with Euler angles
19(1)
1.3.8 Rotations represented using complex numbers
20(1)
1.3.9 Quaternions
21(6)
1.3.10 Derivation of quaternion dynamics
27(2)
1.4 The phase space
29(10)
1.4.1 Qualitative discussion of the time dependence of linear oscillations
31(3)
1.4.2 Resonance
34(1)
1.4.3 The flow in phase space
35(4)
1.5 Nonlinearities
39(8)
1.5.1 Harmonic balance
40(2)
1.5.2 Resonance in nonlinear systems
42(2)
1.5.3 Higher harmonics and frequency mixing
44(1)
1.5.4 The van der Pol oscillator
45(2)
1.6 From higher harmonics to chaos
47(6)
1.6.1 The bifurcation cascade
47(1)
1.6.2 The nonlinear frictional oscillator and Poincare maps
47(4)
1.6.3 The route to chaos
51(1)
1.6.4 Boundary conditions and many-particle systems
52(1)
1.7 Stability and conservation laws
53(8)
1.7.1 Stability in statics
54(1)
1.7.2 Stability in dynamics
55(1)
1.7.3 Stable axes of rotation around the principal axis
56(2)
1.7.4 Noether's theorem and conservation laws
58(3)
1.8 Further reading
61(1)
Exercises
61(2)
References
63(2)
2 Numerical Integration of Ordinary Differential Equations 65(64)
2.1 Fundamentals of numerical analysis
65(10)
2.1.1 Floating point numbers
65(2)
2.1.2 Big-O notation
67(2)
2.1.3 Relative and absolute error
69(1)
2.1.4 Truncation error
69(2)
2.1.5 Local and global error
71(3)
2.1.6 Stability
74(1)
2.1.7 Stable integrators for unstable problems
74(1)
2.2 Numerical analysis for ordinary differential equations
75(4)
2.2.1 Variable notation and transformation of the order of a differential equation
75(1)
2.2.2 Differences in the simulation of atoms and molecules, as compared to macroscopic particles
76(1)
2.2.3 Truncation error for solutions of ordinary differential equations
76(1)
2.2.4 Fundamental approaches
77(1)
2.2.5 Explicit Euler method
77(1)
2.2.6 Implicit Euler method
78(1)
2.3 Runge-Kutta methods
79(3)
2.3.1 Adaptive step-size control
79(2)
2.3.2 Dense output and event location
81(1)
2.3.3 Partitioned Runge-Kutta methods
82(1)
2.4 Symplectic methods
82(10)
2.4.1 The classical Verlet method
82(1)
2.4.2 Velocity-Verlet methods
83(2)
2.4.3 Higher-order velocity-Verlet methods
85(3)
2.4.4 Pseudo-symplectic methods
88(1)
2.4.5 Order, accuracy and energy conservation
88(1)
2.4.6 Backward error analysis
89(1)
2.4.7 Case study: the harmonic oscillator with and without viscous damping
90(2)
2.5 Stiff problems
92(2)
2.5.1 Evaluating computational costs
93(1)
2.5.2 Stiff solutions and error as noise
94(1)
2.5.3 Order reduction
94(1)
2.6 Backward difference formulae
94(4)
2.6.1 Implicit integrators of the predictor-corrector formulae
94(2)
2.6.2 The corrector step
96(1)
2.6.3 Multiple corrector steps
97(1)
2.6.4 Program flow
98(1)
2.6.5 Variable time-step and variable order
98(1)
2.7 Other methods
98(5)
2.7.1 Why not to use self-written or novel integrators
98(2)
2.7.2 Stochastic differential equations
100(1)
2.7.3 Extrapolation and high-order methods
100(1)
2.7.4 Multi-rate integrators
101(1)
2.7.5 Zero-order algorithms
101(2)
2.8 Differential algebraic equations
103(6)
2.8.1 The pendulum in Cartesian coordinates
103(3)
2.8.2 Initial conditions
106(1)
2.8.3 Drift and stabilization
107(2)
2.9 Selecting an integrator
109(2)
2.9.1 Performance and stability
109(1)
2.9.2 Angular degrees of freedom
109(1)
2.9.3 Force equilibrium
109(1)
2.9.4 Exploring new fields
110(1)
2.9.5 ODE solvers unsuitable for DEM simulations
110(1)
2.10 Further reading
111(2)
Exercises
113(12)
References
125(4)
3 Friction 129(32)
3.1 Sliding Coulomb friction
129(7)
3.1.1 A block on a slope
130(2)
3.1.2 Static and dynamic friction coefficients
132(2)
3.1.3 Apparent and actual contact area
134(1)
3.1.4 Roughness and the friction coefficient
135(1)
3.1.5 Adhesion and chemical bonding
136(1)
3.2 Other contact geometries of Coulomb friction
136(8)
3.2.1 Rolling friction
137(1)
3.2.2 Pivoting friction
138(2)
3.2.3 Sliding and rolling friction: the billiard problem
140(3)
3.2.4 Sliding and rolling friction: cylinder on a slope
143(1)
3.2.5 Pivoting and rolling friction
144(1)
3.3 Exact implementation of friction
144(9)
3.3.1 Establishing the difference between dynamic and static friction
145(3)
3.3.2 Single-particle contact
148(3)
3.3.3 Frictional linear chain
151(1)
3.3.4 Higher dimensions
152(1)
3.4 Modeling and regularizations
153(2)
3.4.1 The Cundall-Strack model
153(2)
3.4.2 Cundall-Strack friction in three dimensions
155(1)
3.5 Unfortunate treatment of Coulomb friction in the literature
155(3)
3.5.1 Insufficient models
156(2)
3.5.2 Misunderstandings concerning surface roughness and friction
158(1)
3.5.3 The Painleve paradox
158(1)
3.6 Further reading
158(1)
Exercises
159(1)
References
159(2)
4 Phenomenology of Granular Materials 161(14)
4.1 Phenomenology of grains
161(3)
4.1.1 Interaction
161(1)
4.1.2 Friction and dissipation
162(1)
4.1.3 Length and time scales
162(1)
4.1.4 Particle shape, and rolling and sliding
163(1)
4.2 General phenomenology of granular agglomerates
164(4)
4.2.1 Disorder
164(1)
4.2.2 Heap formation
165(1)
4.2.3 Tri-axial compression and shear band formation
166(2)
4.2.4 Arching
168(1)
4.2.5 Clogging
168(1)
4.3 History effects in granular materials
168(5)
4.3.1 Hysteresis
169(1)
4.3.2 Reynolds dilatancy
170(1)
4.3.3 Pressure distribution under heaps
171(2)
4.4 Further reading
173(1)
References
173(2)
5 Condensed Matter and Solid State Physics 175(38)
5.1 Structure and properties of matter
176(10)
5.1.1 Crystal structures in two dimensions
176(2)
5.1.2 Crystal structures in three dimensions
178(2)
5.1.3 From the Wigner-Seitz cell to the Voronoi construction
180(2)
5.1.4 Strength parameters of materials
182(3)
5.1.5 Strength of granular assemblies
185(1)
5.2 From wave numbers to the Fourier transform
186(8)
5.2.1 Wave numbers and the reciprocal lattice
186(2)
5.2.2 The Fourier transform in one dimension
188(1)
5.2.3 Properties of the FFT
189(4)
5.2.4 Other Fourier variables
193(1)
5.2.5 The power spectrum
193(1)
5.3 Waves and dispersion
194(12)
5.3.1 Phase and group velocities
194(2)
5.3.2 Phase and group velocities for particle systems
196(3)
5.3.3 Numerical computation of the dispersion relation
199(1)
5.3.4 Density of states
200(2)
5.3.5 Dispersion relation for disordered systems
202(2)
5.3.6 Solitons
204(2)
5.4 Further reading
206(1)
Exercises
206(4)
References
210(3)
6 Modeling and Simulation 213(10)
6.1 Experiments, theory and simulation
213(1)
6.2 Computability, observables and auxiliary quantities
214(1)
6.3 Experiments, theories and the discrete element method
215(2)
6.4 The discrete element method and other particle simulation methods
217(1)
6.5 Other simulation methods for granular materials
218(3)
6.5.1 Continuum mechanics
218(1)
6.5.2 Lattice models
219(1)
6.5.3 The Monte Carlo method
220(1)
References
221(2)
7 The Discrete Element Method in Two Dimensions 223(66)
7.1 The discrete element method with soft particles
223(6)
7.1.1 The bouncing ball as a prototype for the DEM approach
224(3)
7.1.2 Using two different stiffness constants to model damping
227(1)
7.1.3 Simulation of round DEM particles in one dimension
228(1)
7.1.4 Simulation of round particles in two dimensions
228(1)
7.2 Modeling of polygonal particles
229(8)
7.2.1 Initializing two-dimensional particles
229(2)
7.2.2 Computation of the mass, center of mass and moment of inertia
231(6)
7.2.3 Non-convex polygons
237(1)
7.3 Interaction
237(13)
7.3.1 Shape-dependent elastic force law
238(2)
7.3.2 Computation of the overlap geometry
240(4)
7.3.3 Computation of other dynamic quantities
244(2)
7.3.4 Damping
246(2)
7.3.5 Cohesive forces
248(1)
7.3.6 Penetrating particle overlaps
249(1)
7.4 Initial and boundary conditions
250(7)
7.4.1 Initializing convex polygons
250(2)
7.4.2 General considerations
252(1)
7.4.3 Initial positions
253(2)
7.4.4 Boundary conditions
255(2)
7.5 Neighborhood algorithms
257(14)
7.5.1 Algorithms not recommended for elongated particles
258(5)
7.5.2 'Sort and sweep'
263(8)
7.6 Time integration
271(1)
7.7 Program issues
272(8)
7.7.1 Program restart
272(2)
7.7.2 Program initialization
274(1)
7.7.3 Program flow
274(2)
7.7.4 Proposed stages for the development of programs
276(2)
7.7.5 Modularization
278(2)
7.8 Computing observables
280(5)
7.8.1 Computing averages
280(1)
7.8.2 Homogenization and spatial averages
281(1)
7.8.3 Computing error bars
282(2)
7.8.4 Autocorrelation functions
284(1)
7.9 Further reading
285(1)
Exercises
286(1)
References
286(3)
8 The Discrete Element Method in Three Dimensions 289(46)
8.1 Generalization of the force law to three dimensions
289(3)
8.1.1 The elastic force
290(1)
8.1.2 Contact velocity and related forces
291(1)
8.2 Initialization of particles and their properties
292(9)
8.2.1 Basic concepts and data structures
292(2)
8.2.2 Particle generation and geometry update
294(2)
8.2.3 Decomposition of a polyhedron into tetrahedra
296(3)
8.2.4 Volume, mass and center of mass
299(1)
8.2.5 Moment of inertia
300(1)
8.3 Overlap computation
301(21)
8.3.1 Triangle intersection by using the point-direction form
301(4)
8.3.2 Triangle intersection by using the point-normal form
305(4)
8.3.3 Comparison of the two algorithms
309(1)
8.3.4 Determination of inherited vertices
310(2)
8.3.5 Determination of generated vertices
312(3)
8.3.6 Determination of the faces of the overlap polyhedron
315(5)
8.3.7 Determination of the contact area and normal
320(2)
8.4 Optimization for vertex computation
322(3)
8.4.1 Determination of neighboring features
323(1)
8.4.2 Neighboring features for vertex computation
324(1)
8.5 The neighborhood algorithm for polyhedra
325(4)
8.5.1 'Sort and sweep' in three dimensions
325(1)
8.5.2 Worst-case performance in three dimensions
326(1)
8.5.3 Refinement of the contact list
327(2)
8.6 Programming strategy for the polyhedral simulation
329(3)
8.7 The effect of dimensionality and the choice of boundaries
332(1)
8.7.1 Force networks and dimensionality
332(1)
8.7.2 Quasi-two-dimensional geometries
332(1)
8.7.3 Packings and sound propagation
333(1)
8.8 Further reading
333(1)
References
333(2)
9 Alternative Modeling Approaches 335(18)
9.1 Rigidly connected spheres
335(1)
9.2 Elliptical shapes
336(9)
9.2.1 Elliptical potentials
337(1)
9.2.2 Overlap computation for ellipses
337(2)
9.2.3 Newton-Raphson iteration
339(1)
9.2.4 Ellipse intersection computed with generalized eigenvalues
340(4)
9.2.5 Ellipsoids
344(1)
9.2.6 Superquadrics
344(1)
9.3 Composites of curves
345(2)
9.3.1 Composites of arcs and cylinders
345(1)
9.3.2 Spline curves
345(2)
9.3.3 Level sets
347(1)
9.4 Rigid particles
347(2)
9.4.1 Collision dynamics ('event-driven method')
347(1)
9.4.2 Contact mechanics
348(1)
9.5 Discontinuous deformation analysis
349(1)
9.6 Further reading
349(1)
References
349(4)
10 Running, Debugging and Optimizing Programs 353(42)
10.1 Programming style
353(9)
10.1.1 Literature
354(1)
10.1.2 Choosing a programming language
355(1)
10.1.3 Composite data types, strong typing and object orientation
356(1)
10.1.4 Readability
356(1)
10.1.5 Selecting variable names
357(2)
10.1.6 Comments
359(2)
10.1.7 Particle simulations versus solving ordinary differential equations
361(1)
10.2 Hardware, memory and parallelism
362(7)
10.2.1 Architecture and programming model
362(2)
10.2.2 Memory hierarchy and cache
364(1)
10.2.3 Multiprocessors, multi-core processors and shared memory
365(1)
10.2.4 Peak performance and benchmarks
365(2)
10.2.5 Amdahl's law, speed-up and efficiency
367(2)
10.3 Program writing
369(9)
10.3.1 Editors
370(1)
10.3.2 Compilers
370(1)
10.3.3 Makefiles
371(1)
10.3.4 Writing and testing code
372(5)
10.3.5 Debugging
377(1)
10.4 Measuring load, time and profiles
378(5)
10.4.1 The 'top' command
379(1)
10.4.2 Xload
379(1)
10.4.3 Performance monitor for multi-core processors
380(1)
10.4.4 The 'time' command
380(3)
10.4.5 The Unix profiler
383(1)
10.4.6 Interactive profilers
383(1)
10.5 Speeding up programs
383(8)
10.5.1 Estimating the time consumption of operations
383(1)
10.5.2 Compiler optimization options
384(5)
10.5.3 Optimizations by hand
389(1)
10.5.4 Avoiding unnecessary disk output
390(1)
10.5.5 Look up or compute
390(1)
10.5.6 Shared-memory parallelism andOpenMP
390(1)
10.6 Further reading
391(1)
Exercises
392(1)
References
392(3)
11 Beyond the Scope of This Book 395(12)
11.1 Non-convex particles
395(1)
11.2 Contact dynamics and friction
395(1)
11.3 Impact mechanics
396(1)
11.4 Fragmentation and fracturing
396(1)
11.5 Coupling codes for particles and elastic continua
396(2)
11.6 Coupling of particles and fluid
398(4)
11.6.1 Basic considerations for the fluid simulation
398(1)
11.6.2 Verification of the fluid code
398(1)
11.6.3 Macroscopic simulations
399(1)
11.6.4 Microscopic simulations
399(1)
11.6.5 Particle approach for both particles and fluid
400(2)
11.6.6 Mesh-based modeling approaches
402(1)
11.7 The finite element method for contact problems
402(1)
11.8 Long-range interactions
403(1)
References
403(4)
A MATLAB® as Programming Language 407(26)
A.1 Getting started with MATLAB®
407(1)
A.2 Data types and names
408(1)
A.3 Matrix functions and linear algebra
409(4)
A.4 Syntax and control structures
413(2)
A.5 Self-written functions
415(1)
A.6 Function overwriting and overloading
416(1)
A.7 Graphics
417(1)
A.8 Solving ordinary differential equations
418(2)
A.9 Pitfalls of using MATLAB®
420(4)
A.10 Profiling and optimization
424(1)
A.11 Free alternatives to MATLAB®
425(1)
A.12 Further reading
425(1)
Exercises
426(4)
References
430(3)
B Geometry and Computational Geometry 433(18)
B.1 Trigonometric functions
433(2)
B.2 Points, line segments and vectors
435(1)
B.3 Products of vectors
436(5)
B.3.1 Inner product (scalar product, dot product)
436(1)
B.3.2 Orthogonality
437(1)
B.3.3 Outer product
438(1)
B.3.4 Vector product
438(2)
B.3.5 Triple product
440(1)
B.4 Projections and rejections
441(1)
B.4.1 Projection of a vector onto another vector
441(1)
B.4.2 Rejection of one vector with respect to another vector
442(1)
B.5 Lines and planes
442(4)
B.5.1 Lines and line segments
442(2)
B.5.2 Planes
444(2)
B.6 Oriented quantities: distance, area, volume etc.
446(3)
B.7 Further reading
449(1)
References
449(2)
Index 451
Hans-Georg Matuttis, The University of Electro-Communications, Japan Jian Chen, RIKEN Advanced Institute for Computational Science, Japan