Académique Documents
Professionnel Documents
Culture Documents
Verlb
a
School of Business Informatics and Mathematics, University of Mannheim,
A 5,6, D-68131 Mannheim, Germany
goettlich@uni-mannheim.de, schindler@math.uni-mannheim.de,
http://lpwima.math.uni-mannheim.de/de/home/
b
Institute for Control Engineering of Machine Tools and Manufacturing Units, University of Stuttgart,
Seidenstrae 36, D-70174 Stuttgart, Germany
{Simon.Hoher, Alexander.Verl}@isw.uni-stuttgart.de
www.isw.uni-stuttgart.de
c
Institute of Applied Analysis and Numerical Simulation, University of Stuttgart,
Pfaffenwaldring 57, D-70569 Stuttgart Germany
Veronik.Schleper@mathematik.uni-stuttgart.de
http://www.mathematik.uni-stuttgart.de/fak8/ians/
Abstract In this paper a model comparison approach based on material flow systems is investigated
that is divided into a microscopic and a macroscopic model scale. On the microscopic model scale
particles are simulated using a model based on Newton dynamics borrowed from the engineering
literature. Phenomenological observations lead to a hyperbolic partial differential equation on the
macroscopic model scale. Suitable numerical algorithms are presented and both models are compared
numerically and validated against real-data test settings.
Keywords particle simulation, conservation laws with nonlocal flow, numerical studies
Preprint Series
Stuttgart Research Centre for Simulation Technology (SRC SimTech)
SimTech Cluster of Excellence
Pfaffenwaldring 5a
70569 Stuttgart
publications@simtech.uni-stuttgart.de
www.simtech.uni-stuttgart.de
Modeling, simulation and validation of material flow on
conveyor belts
Abstract
In this paper a model comparison approach based on material flow systems is
investigated that is divided into a microscopic and a macroscopic model scale.
On the microscopic model scale particles are simulated using a model based on
Newton dynamics borrowed from the engineering literature. Phenomenological
observations lead to a hyperbolic partial differential equation on the macroscopic
model scale. Suitable numerical algorithms are presented and both models are
compared numerically and validated against real-data test settings.
Keywords: particle simulation, conservation laws with nonlocal flow,
numerical studies
2000 MSC: 82C22, 35Q70, 35L65
1. Introduction
Corresponding author
Email addresses: goettlich@uni-mannheim.de (Simone G ottlich),
simon.hoher@isw.uni-stuttgart.de (Simon Hoher), schindler@math.uni-mannheim.de
(Patrick Schindler), veronika.schleper@mathematik.uni-stuttgart.de (Veronika Schleper),
alexander.verl@isw.uni-stuttgart.de (Alexander Verl)
2
acting forces to simulate the evolution of material distribution and density. This
modeling approach is well known from molecular simulations, see e.g. [2] for a
recent review. In the engineering community, models based on this or similar
principles are state of the art for material flow simulation in the planning phases,
see e.g. [3, 4, 5] as well as for other applications such as granular flow [6, 7],
computer graphics [8, 9] or traffic flow [10].
In section 3, motivated by [11, 12], a phenomenological study of the model
in section 2 yields a macroscopic model, based on a two-dimensional nonlo-
cal hyperbolic partial differential equation (see [13] and the references therein
for an overview), that is designed to fulfill the requirements of the preparation
phase. This model is especially suitable to provide first estimates on the mate-
rial flow and throughput rate of the production line. Similar ideas are used to
rigorously derive macroscopic models from microscopic ones via kinetic models,
see [14, 15, 16]. In section 4, we explain the numerical implementation of the
two proposed material flow models and discuss numerical issues such as com-
putation time. The presentation concludes with section 5 devoted to a detailed
comparison of the microscopic and macroscopic model with experimental data.
The results of this section show very promising agreement of the models with
the experiments in terms of throughput rate and material flow.
2. Microscopic Modeling
In the microscopic material flow model the physical movement of each single
particle or cargo on material flow elements is studied in a general setting, i.e. a
3-dimensional space. Each cargo is described as an unbounded rigid body with
the corresponding mass and moment of inertia. The interactions between the
cargo among themselves or cargo and conveyor belt are presented through the
physical laws of contact mechanics [17]. This approach is mainly used in material
sciences (see e.g. [18, 19]) or granular flow (see e.g. [20]). In the following the
microscopic model for the transport of cylindrical cargo on a conveyor belt is
derived (see figure 2). The cargo is separated by a rigid singularizer.
Conveyor Singularizer
Cargo
The material flow process is described as the sum of the unbounded movable
cargo and the contact between other cargo and the material flow elements. The
equation of motion for the movement of the cargo i is derived by means of
3
Newtons law of motion:
dxi (t)
= v i (t), (1a)
dt
Nf
dv i (t) X
mi = f i,n (t), i = 1, . . . , Nn (1b)
dt n=1
xi (0) = xi,0 , v i (0) = v i,0 , i = 1, . . . , Nn (1c)
3 3
where xi R is the cargo position vector, v i R is the cargo velocity vector,
mi R+ is the cargo mass, Nn is the total number of cargo, f i,n R3 is
the sum of Nf forces affecting the conveyed material. In our model especially
the contact forces, the occurring friction force and the gravitation are taken
into account. Note that there is no need to specify boundary conditions, as the
effect of the boundaries is handled by the contact force that occurs when a cargo
collides with the conveyor boundary.
According to the rigid body dynamics, the angular movement of the free
cargo is the result of Eulers equation of motion. The rotation of the cargo i is
described with the quaternion q i R4 .The advantage here is that these deliver
a numerically stable description of the rotation (see [21]):
dq i (t) 1
= [ i (t), 0] q i (t), q i (0) = q i,0 (2a)
dt 2
where i (t) R3 is the angular velocity of the cargo i at the time t and [i (t), 0]
is the associated quaternion. The angular velocity i (t) is given by
Nf Mf
d i (t) X X
i (t) = ri,n (t) f i,n (t) + ti,m (t), i (0) = i,0 (2b)
dt n=1 m=1
where ti,m R3 describes the Mf moments taking effect in the center of gravity.
In our model there occur no moments in the center of gravity. Since we model
a rigid body simulation, the N moments resulting from the cross product of
the contact points ri,n (t) R3 and the forces f i,n for i = 1, . . . , Nn have to be
taken into consideration. i R33 is the moment of inertia of the cargo i.
This is determined from the moment of inertia in the center of gravity G of the
cargo:
(G)
i (t) = Ri (t)i Ri (t)T , (3)
where Ri R33 is the rotation matrix of the cargo. Ri can be directly
calculated from q i (see [21]). The aspect of rotation of the cargo is important in
the later computation of the contact point and also enters in the computation
of friction forces through the relative velocity v i,j in the collision point, see also
section 4.1.
Now, the contact force f contact
i,j will be deduced which results in case of
contact of cargo i with another cargo j. Note, that contact forces always occur
opposed between the cargo i and cargo j.
f contact
i,j = f contact
j,i .
4
In contact between two cylinders with parallel axes, the contact force is linearly
proportional to the penetration depth
f contact = k
i,j i,j + d
i,j i,j ni,j ,
(4a)
i,j
with
1 1 i2 1 j2
ki,j = E li,j , = + . (4b)
4 i,j
Ei,j Ei Ej
Here, we are dealing with an analytical model according to [17] with the Youngs
moduli Ei (Ej respectively) and the Poision ratio i (j ) that are described by
the material properties of cargo i and j, see tables 1 and 2 in section 5. The
height of the contact pairs is described by li,j and the penetration depth by i,j .
The temporal change of the penetration depth i,j is given by the difference
of the velocities at the contact point of cargo i and j, denoted by v i,j . The
damping constant di,j is usually determined by experiments based on Lehrs
damping factor. The Young moduli and the Poision ratio were defined for a
multitude of materials and can be taken from relevant mechanical and metal
trades handbooks (see e.g. [22]). The normal direction of the contact pair is
described by ni,j R3 .
The contact force occurring during the contact between a cylindrical cargo
i and the singularizer or the belts can also be described by equation (4a). For
the contact of the cylindrical cargo and the elastic conveyor belt j the following
equation is adequate for ki,j :
ki,j = 2Ei,j i , (5)
if
v tan
0, i,j 2 = 0
slip
f i,j = v tan (6)
i,j
, otherwise
lin
contact
i,j
f i,j
2
v tan
i,j 2
where v tan 3
i,j R is the projection of the relative velocity in the collision point
on the tangential level of the contact pair. lin
i,j is the coefficient of the sliding
slip
friction and is determined experimentally for the contact pairs. If f i,j would
slip
produce an acceleration of the cargo in the opposite direction, f i,j is reduced
until there is no more movement
of the cargo in the direction of the tangential
velocity. In the case of
v tan
i,j 2 = 0, equation (6) is discontinuous. Therefore,
the Coulombic friction is extended in equation (6) by a hyperbolic tangent
5
function, in order to eliminate instabilities by discontinuity in the numerical
solution method (see [18]):
v tan
lin
contact
i,j
f slip lin
tan
i,j = i,j f i,j 2
v tan
tanh i,j v i,j 2 . (7)
i,j 2
lin
i,j is a numerical parameter and should be selected so that an opposed accel-
eration is not possible. In our case lini,j = 10.0 was an adequate choice.
The contact friction f slip
i,j can if necessary still be extended by further effects
like static, dynamic or viscous friction. A common model is here the Stribeck
friction (see [23]). In our microscopic material flow model this simple descrip-
tion proved to be perfectly sufficient and consequently useful in the context of
an efficient computation.
Furthermore, another friction moment tslip i,j occurs in the contact point which
is also described by means of the Coulomb friction
tslip ang
contact
nor ang
nor
i,j = i,j f i,j 2
sgn i,j n i,j tanh i,j i,j 2
ni,j . (8)
nor
i,j is the angular velocity between the bodies i and j in normal direction.
In a final step the contact point ri,j between the objects i and j must
be identified. For special bodies this point can be determined analytically.
For any convex bodies, however, the contact point can only be approximated
numerically. For any three dimensional bodies, various methods for contact
point detection have been developed over the last decades (see [24]). For this
the ideal bodies are approximated with the point set S i . We have applied the
GJK/EPA algorithm based on an implementation by Presson [25] for convex
bodies, because this implementation calculates very precisely and with high
stability the contact point as well as the penetration depth.
Since contact point detection is very computation-intensive, a pre-selection
can be made by a simple test. Thus the number of the precise contact point de-
tection of Nn objects of the order O Nn (N2n 1) can be reduced to O (Cp Nn ),
with Cp being the maximum number of contact points of an object with direct
object pressure. For the pre-selection of the contact point detection we used a
simplified separating-axis test:
abs (xi xj ) < i,j , (9a)
with
q
i,j = i + j , i = a2i + b2i + c2i , (9b)
6
3. Macroscopic Modeling
Continuous models relying on conservation laws are used in different en-
gineering areas, e.g. traffic flow [26], manufacturing systems [27], crowd and
evacuation dynamics [11, 12]. Inspired by the work of Colombo et al. [11, 12]
we now derive an observation-based two dimensional hyperbolic partial differ-
ential equation to approximate the physical flow line model in section 2 in an
appropriate way.
We consider again the setting illustrated in figure 2 where we mainly assume
that the number of cargo inside the system should be large. A singularizer
is installed to redirect and sort the cargo to another position on the moving
conveyor belt, i.e. phenomena such as queuing and changes of transport direc-
tions will occur. It is well known that the microscopic model captures the most
accurate dynamics but gets computational extremely costly and produces in-
efficient simulation times. Clearly, the new approach shall represent the right
dynamical behavior of the material flow and provide suitable simulation times
as well. This can be achieved using a macroscopic model avoiding the individual
tracking of parts through the system using averaged quantities as part density
(parts per length) and flux (parts per time). As an approximation, we propose
a two dimensional non-local hyperbolic partial differential equation (PDE), or
conservation law, which determines the motion of the part density.
To derive an appropriate macroscopic model for the conveyor belt, the main
ingredients and assumptions are:
(I) Mass should be conserved, i.e we do not gain or lose cargo.
(II) The model must allow the formation of congestions at obstacles.
(III) Similar to traffic models, a maximal density is needed to deal with over-
crowded situations.
(IV) Two velocities are relevant: the constant velocity of the conveyor belt and
a velocity depending on the part density to decide whether and in which
direction the density will be negotiated or stopped.
The crucial point in modeling these phenomena is a conservation law with a
mass-dependent velocity field, cf. [11, 12]. Therefore, we introduce the part
density as a two dimensional space and time depending function : R+
R+ , with R2 that governs dynamics of the following setting:
t + ((v dyn () + v stat (x))) = 0 (10a)
dyn
v () = H( max ) I() (10b)
( )
I() = p (10c)
1 + k( )k22
(x, 0) = 0 (x), x R2 , (10d)
where = (x, t), H denotes the common Heaviside function assigning zero to
negative arguments and max the fixed maximal density.
7
Corresponding to (I), equation (10a) determines the evolution of the initial
part density (10d) depending on the velocity field consisting of two parts: the
time-independent velocity field v stat (x) and a dynamic velocity field v dyn (),
cf. (IV). The field v stat (x) prescribes the transport velocity induced by the
conveyor belt, cf. discussion in subsection 3.1. Thus v stat (x) defines the velocity
field of single cargo without any interaction between each other. However, the
dynamic component v dyn () in equation (10c) reflects the movement of colliding
objects, similar to [11, 12]. We assume that the objects never move out of the
x1 , x2 -plane, i.e. objects cannot overlay in the third dimension. By observation
(II), the parts accumulate at the singularizer. But in reality colliding objects
do not penetrate each other. This implies that the density could not be larger
than the density of a close-packing of parts max , see (III). That means, we
have to prevent situations that yield densities > max for 0 (x1 , x2 ) < max
in a certain time t > 0 and space x R2 . This scenario is relevant if the
divergence of the velocity field v stat (x) is negative and > 0. To ensure that
the density does not become much larger than max the density dependent
velocity v dyn () is introduced to reduce this effect. The velocity field v dyn ()
disperses clouds with > max . Thus, further compressions are prevented and
the density does not exceed max anymore. The term (10c) is obviously active
if > max , i.e. H( max ) = 1, and 0 (inactive) vice versa.
Remark 3.1. In [28], a basic model without interaction term is introduced, i.e.
t + (H(max )v stat (x)) = 0. The drawback is that such an approach
does not involve force terms pushing densities close to max in less crowded
areas. In total, this leads to a lower throughput rate.
We introduce the non-local operator I() that is controllable with the con-
stant parameter > 0. The negative gradient field yields the steepest descent of
the convolution , where is a sufficiently smooth mollifier. The denominator
of I() ensures that the vector norm is bounded, i.e. kI()k2 . Consequently,
the parts feel a force pushing them in direction to a lower density. Moreover,
inside a fully compressed cloud, the density is constant in space and therefore
the term ( ) does not give any contribution to the force field. This is
in accordance with the physical behavior where the forces inside the congested
region sum up to zero. Thus, the density dependent force term I() will only
act in a small neighborhood of the boundary of a congested region. Finally, the
total throughput rate corresponds to real experiments, see section 4.
Let us summarize: The friction force between the parts and the conveyor
belt implies a strong damping effect. Thus, in the microscopic model, the ve-
locity of non-colliding parts converge to the transport velocity of the conveyor
belt quite fast. In the macroscopic model, due to the Heaviside function, the
non-interacting (or free flow) velocity is immediately v stat (x). This is possible
because the macroscopic model does not consider any inertia. On the other
hand, if parts interact in the microscopic model, a collision force will appear
which repulses interacting parts. In the macroscopic model, a dispersing veloc-
ity field v dyn () is activated which has a repulsive effect by the term I().
8
Remark 3.2. The boundary conditions of (10a) at are imposed by the ge-
ometry of the conveyor belt. We divide the boundary into two areas:
= wall inf low ,
where wall describes solid boundaries and inf low denotes the inflow region.
At inf low , we set homogeneous Dirichlet conditions. Otherwise, at wall ,
we apply free slip conditions.
(x, t) = 0, x inf low (11a)
dyn stat
hv (x, t) + v (x), ni = 0, x wall , (11b)
with n being the normal vector to .
Note that in our experimental setting we do not need an inflow profile since all
experiments are initialized with an initial distribution given by equation (10d),
cf. section 5.
A
C B
9
Generally, cargo move along the singularizer. For that reason, we introduce an
additional velocity domain C to describe the slide effect at obstacles. In domain
C, the dominating vector is introduced as follows:
stat cos() cos()
v (x) = v T , x C.
sin () cos()
Remark 3.3. Note that walls can also be integrated in the static velocity field
v stat (x). For instance, consider the construction of domain B and use the
normal vector n of the walls as the dominating vector of the domain.
4. Numerical Methods
10
Presson [25]) is carried out. The equations (4), (7) and (8) are summed up in
the function computeContactForces(...) for computing the contact forces;
one time step of the numerical computation method per object is calculated in
the function computeStep(...). Hereby, Nt describes the number of time steps
to be computed and Nn denotes for the number of objects in the microscopic
model. The pseudo code is realized in vector style.
micro solver()
computeContactForce(...)
11
computeStep(...)
(3.1) 1n := R(q n )n
(G),1 T
R (q n )
n (t)
(3.2) xn,1 := (2 Dn t)xn xn,1 + t2 fm
num
n
xn,1 xn,1
(3.3) v n := 2t
(3.4) xn,1 := xn
(3.5) xn := xn,1
(3.6) n := (1 Dnnum )t n + 1 n ( ttn )
num t t
(3.7) q n := (1 Dn ) q n + 2 [n , 0]q n
micro 1
Trun = Nn Nt (7761c1 + 8520c2 + 82c3 + 108c4 + 24c6 + 973c7 + c8 (14)
2
+ Nn (3c1 + 4c3 + 2c6 + c7 + c8 ))
Proof. The evaluation of the Axis Separating Test (AST) in code line 1.4 costs
3 additions (c1 ) and 3 comparisons (c3 ). In addition the jump in the control
structure has to be assessed (c6 ). The test is conducted for all objects Nn2 times.
Then, the total execution of the Axis Separating Test costs
Nn (Nn 1)
TAST,1.4 = Nt (3c1 + 3c3 + c6 ).
2
The cylindrical objects in our experiment have an object pressure of a maximum
of 6 contact points (Cp = 6), i.e. the pseudo code in lines 1.5 to 1.12 has to
be executed at the most 6Nn times. For the exact collision point detection in
line 1.5 it is assumed that a convex hull is put around each cargo and is then
described with a number of 32 vertices (corresponding to the number of vertices
12
for a cylinder with octagonal ends). After Gilbert (Ref. [30]), a maximum of 1000
EF (Equivalent Flops) results at an average of 32 vertices for the contact point
detection with his GJK algorithm. Although this value has been determined
using an iterative procedure and depends on specific situations, Gilbert expects
that the contact point is always detected after 1000 EF (Ref. [30]). One EF is
translated by us as follows:
c1 + c2
= EF.
2
For the storage of the computing results, 8 allocations (c7 ) become due. Thus,
for the exact contact point detection in line 1.5 the following costs arise
c1 + c2
TGJK,1.5 = 6Nn Nt 1000 + 8c7 .
2
The control structure in line 1.6 needs a jump instruction (c6 )
TIf,1.6 = 6Nn Nt c6 .
In line 1.8 to 1.12 follow the assignments of the calculated forces to the total
forces of the singular objects. The costs for this result from 8 vector addi-
tions/subtractions and 3 vector assignments to
In line 1.18 and 1.19 the gravitational force is set and the moment is reset to 0.
The costs with 2 vector assignments result in
13
With this cost estimation the function calls computeContactForce(...) and
computeStep(...) are counted as inline functions, so they do not cause any
costs for the jump to function and for the variable assignment of the functions
return values.
The basic structure of the microscopic model is realized by several interlaced
For loops. A For loop consists of Nt assignments (c7 ), Nt jumps (c6 ), Nt
comparisons (c3 ) and Nt increments (c8 ). The overall performance of a loop is
then
TLoop = Nt (c3 + c6 + c7 + c8 ).
The runtime performance for the overall loop from line 1.1 to 1.21 with the
sub-loops 1.2 to 1.15 and 1.3 to 1.14 is
Nn (Nn 1)
TLoop,1.21.15 = Nt (c3 + c6 + c7 + c8 )
2
and for the overall loop from line 1.1 to 1.21 with the sub-loop from line 1.16
to 1.20
TLoop,1.161.20 = Nt Nn ((c3 + c6 + c7 + c8 ) + c7 ).
Summing up the individual costs of all parts, we get the total runtime perfor-
mance (14).
Remark 4.1. Several components are essential for the runtime performance:
1. The computing effort for contact point detection of polygonal models con-
tributes significantly to the runtime performance per object and time step.
Even though there are many methods for detecting contact points, this ef-
fort could only be reduced by pre-selecting whether a collision detection will
be necessary or not, also in recent research results [31, 32].
2. The runtime performance increases quadratically with the number of ob-
jects to be simulated, i.e. the complexity is O(Nn2 Nt ). Note that a reduc-
tion of the model to two space dimensions will not significantly reduce the
computational effort since all changes will effect only the constants (e.g.
2 instead of 3 multiplications for a scalar-vector product). Furthermore,
from a physical point of view, a reduction to two dimensions does not
seem reasonable due to the different contact points for the present forces
(collision, friction,...).
3. The time step should always be selected within the context to be simulated,
since this has a linear influence on the computing performance. Note
however that the above described method is explicit such that time step
restrictions have to be followed. In the present case, all forces as well as
the maximal velocity of the cargo are known or can be estimated a priori.
Therefore, once an appropriate time step is chosen, no check on the time
step size is needed during the runtime.
14
4.2. Numerical Methods for the Macroscopic Model
Following the structure of subsection 4.1, we now present a suitable numeri-
cal method for the partial differential equation (10). The procedure is based on
the Roe method with dimensional splitting, see [33]. The computation works
with a discrete data set of the density and velocity in space and time. The
two dimensional spatial domain is discretized equidistantly in rectangular cells.
Each cell is identified by the indices i, j. The center of a cell i, j is located at
xi,j = (x1,i , x2,j )T . The lengths of the cells are given by the spatial step sizes
x1 , x2 . Additionally the time t is discretized by step size t. We use the
following space and time grid:
x1,i = ix1 , i = 1, .., Nx1 , x2,j = jx2 , j = 1, .., Nx2 , tk = kt, k = 1, .., Nt .
The cells are presented as Qi,j = [x1,i 12 , x1,i+ 12 ] [x2,j 12 , x2,j+ 12 ]. Note that
for numerical simulations the spatial domain is bounded and has a rectangular
t
shape. Furthermore d = x d
for d = 1, 2 are the grid constants. The density
is now defined as a step function
( ) = (x1 , x2 )T . (15)
For clarification, we consider only the first component of the vector (15). For
the numerical method it is necessary to evaluate the flux between the cells. For
that reason we compute the convolution in the spatial point x = (x1,i+ 12 , x2,j )T
at a fixed time tk .
Z
(x1 )(x) = x1 (x )( )d (16a)
R2
X Z
= kp,q x1 (x )d (16b)
p,q Qp,q
X
= kp,q c1ip,jq , (16c)
p,q
15
where the weights cdp,q are defined as
Z Z
c1p,q := x1 ( )d , c2p,q := x2 ( )d .
Qp+ 1 ,q Qp,q+ 1
2 2
Remark 4.2. The expression (16c) is formulated as an infinite sum. For the
numerical implementations, the sum is considered in a finite way with S1 S2
summands.
The numerical flux in one dimension, i.e. d = 1 at points xi+ 21 ,j and tk is a
modified Roe flux combined with the non local term I() :
(
k k ki,j H(ki,j max )I1 ()(xi+ 12 ,j ), I1 ()(xi+ 12 ,j ) 0
F1 (, i,j , i+1,j , xi+ 12 ,j ) =
ki+1,j H(ki+1,j max )I1 ()(xi+ 21 ,j ), I1 ()(xi+ 12 ,j ) 0.
I1 () respectively I2 () are the first and second components of the vector I().
Furthermore, the static flux is chosen as the classical Roe flux
( k stat stat
i,j v1,i+ 1 ,j , v1,i+ 1 0
k k stat 2 ,j
G1 (i,j , i+1,j , v i+ 1 ,j ) = k
2
stat stat
2 i+1,j v1,i+ 1 ,j , v1,i+ 1 ,j 0,
2 2
The fluxes in x2 -direction F2 (, kij , ki,j+1 , xi,j+ 12 ) and G2 (ki,j , ki,j+1 , v stat
i,j+ 12
)
are defined analogously.
The routine macro solver() describes a numerical solver for the macro-
scopic model. The dynamic velocity field is solved explicitly for time tk in
the routine compute velocityfield(...). The static velocity field is time
invariant and an update routine with respect to time is redundant. In lines
1.3 - 1.16 in macro solver(), the continuity equation for the velocity field
(v dyn () + v stat (x)) is solved for the next time step tk+1 by dimension splitting.
macro solver()
(1.1) For k = 0 to Nt 1
(1.2) compute velocityfield()
(1.3) For j = 1 to Nx2
(1.4) For i = 1 to Nx1
(1.5) F1+ := F1 (, ki,j , ki+1,j , xi+ 12 ,j ) + G1 (ki,j , ki+1,j , v stat
i+ 12 ,j
)
k k k k stat
(1.6) F1 := F1 (, i1,j , i,j , xi 12 ,j ) + G1 (i1,j , i,j , v i 1 ,j )
2
(1.7) ki,j = ki,j 1 [F1+ F1 ]
(1.8) End
(1.9) End
16
(1.10) For i = 1 to N1
(1.11) For j = 1 to N2
(1.12) F2+ := F2 (, ki,j , ki,j+1 , xi,j+ 12 ) + G2 (
ki,j , ki,j+1 , v stat
i,j+ 12
)
k k k k stat
(1.13) F2 := F2 (, i,j1 , i,j , xi,j 12 ) + G2 ( i,j1 , i,j , v i,j 1 )
2
(1.14) k+1 ki,j 2 [F2+ F2 ]
i,j =
(1.15) End
(1.16) End
(1.17) End
compute velocityfield()
Dx1 i,j
(2.4) I1 ()(xi+ 12 ,j ) =
1+(Dx1 i,j )2 +(Dx2 i,j )2
Dx2 i,j
(2.5) I2 ()(xi,j+ 12 ) =
1+(Dx1 i,j )2 +(Dx2 i,j )2
(2.6) End
T
Remark 4.3. 1. Using the notation (v dyn ()+v stat (x)) = (F1 (, x), F2 (, x)) ,
we note that the above discrete flux fulfills
F1 ( , , v stat
, , , xi+ 12 ,j ) + G1 ( i+ 1 ,j ) = F1 (
, xi+ 21 ,j )
2
F2 ( , , v stat
, , , xi,j+ 12 ) + G2 ( i,j+ 1 ) = F2 (
, xi,j+ 12 )
2
F1 := kij ( + v1,i
stat
1
,j ). 2
Therefore,
kij := kij 1 F1+ F1 > 0.
17
Lemma 4.2 (Macroscopic Model: Runtime performance). Let cl the com-
putation times of a single operation as defined in Lemma 4.1 for l = 1, . . . , 8.
macro
Then the computation time Trun of the algorithm is expressible by the formula
macro
Trun = Nt (Nx1 Nx2 (S1 S2 (2c1 + c2 + 2c3 + 4c6 + 2c7 + 2c8 ) (17)
+ 16c1 + 24c2 + 13c3 + 2c5 + 3c6 + 5c7 + 3c8 ))
Proof. Each iteration of a For loop costs a comparison, jump operation, as-
signment and an integer increase. A For loop with Nt iterations needs the
following computation time
TLoop = Nt (c3 + c6 + c7 + c8 ).
Line 1.5 to line 1.7 in the main routine macro solver() uses 6 additions, 9
multiplications and 1 assignment. Furthermore the call of the function F1 ()
or G1 () needs a comparison operation. The assignments of F + , F are not
necessary and can be neglected. The convoluted For loops in line 1.3 and 1.4
repeat the operations in line 1.5-1.7 (Nx1 Nx2 ) times. This yields a computation
time for line 1.3-1.9:
The computation time of line 1.10 - 1.16 is equal to line 1.3-1.9. The For loop
in line 1 repeats the computation for one time-step Nt times. This yields the
entire computation time for the routine macro solver()
macro
Trun = Nt (TV el,1.2 + 2Nx1 Nx2 (6c1 + 9c2 + 5c3 + 2c7 + c8 ).
18
2. To ensure stability of the algorithm macro solver(), the CFL condition
t
must be satisfied, i.e. x d
max k( [(v dyn () + v stat (x))]k 1 for
d = 1, 2. In our case this is valid for a smoothed version of the Heaviside
function. A similar expression can also be derived for the use of the (non-
smooth) Heaviside function.
5. Experiments
Microscopic Model Settings. The microscopic model uses the same data setting
as above. Additionally, the parameterization of the microscopic model is shown
in tables 1 and 2. The values are adopted from relevant literature (Ref. [22]). For
all simulation runs the step size is t = 105 . The elastic modules are reduced
by the factor 106 during the simulation runs, in order to reduce the numerical
stiffness of the differential equation of motion. Due to the lower elastic module,
the cargo can penetrate each other more than in reality.
material Ei i i Dinum
kN 1
[ mm 2] [m ] [m] [1]
cargo 210 0.28 0.012 0.1
conveyor 40 0.05 0.012 0.1
handling 70 0.34 0.012 0.1
Table 1: Material parameters for the different elements of the microscopic model.
Note that the chosen values correspond to the mean values given in the literature
(see Ref. [22]). Varying the parameters inside their respective confidence interval
can certainly yield a better agreement of experiment and simulation. However,
we want to show the capability of the model to predict the behavior of the cargo
transport even with standard parameter choices.
19
lin/ang lin/ang
paring li,j di,j i,j i,j
[m] [N ] [1] [1]
cargo-cargo 0.008 119 0.15 10.0/1.0
conveyor-cargo 0.008 230 1.0 10.0/1.0
handling-cargo 0.008 120 0.19 10.0/1.0
20
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
Figure 4: Real world data (left), microscopic model (middle) and macroscopic
model (right).
21
5.1.1. Mass balance and outflow behavior
Let us analyze the experiment quantitatively. We are interested in the
amount of cargo that pass the singularizer. A time-dynamic mass function
U (t) counts all cargo which have not passed the singularizer. The aim is to
compare the amount of passed objects for both models and the real data. For
the real data and the microscopic model, the time-dynamic mass function U (t)
is defined as
Nn
(
X 1 x 0
U (t) = 0 (xi (t)), 0 (x) =
i=1
0 otherwise.
200
PDE
180 ODE
Experiment
160
Number of Parts before Obstacle
140
120
100
80
60
40
20
0
0 1 2 3 4 5 6
Time
Figure 5: Comparison of the outflows over time. Each object and quantity is
measured in the conveyor-region x1 < 0.75.
22
figure 6. The composition of the plots in figure 6 is analogue to figure 4. In all
models, the cargo are transported with the conveyor belt velocity in direction
of the singularizer. Due to the rectangular arrangement of the singularizer, we
recognize more crowded regions and congestions. Note that the rounded shape
of the congestion in figure 6(f) is a result of the convolution ( ).
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
Figure 6: Real world data (left), microscopic model (middle) and macroscopic
model (right).
23
is emphasized in figure 7. At time t 2, an effect of tilting occurs in the real
data, explaining the small plateau of the blue line in figure 7. Note that this
setting represents a very challenging experiment, since not all cargo can pass
the singularizer. In the experimental setting, vibrations transmitted from the
conveyor belt onto the cargo result in additional small contributions to the ve-
locity of the objects. Due to the 90 degree angle of the singularizer, the overall
outflow velocity of the cargo is lower than in Example 1, such that the effect
of vibration is of higher influence in this setting. However, the additional con-
tribution introduced by vibrations is not represented in the numerical models.
Since these models tend to predict slightly too high throughput rates, but do
not capture the additional velocity contribution, the gap in the outflow rate is
reduced in this example.
200
PDE
180 ODE
Experiment
160
Number of Parts before Obstacle
140
120
100
80
60
40
20
0
0 1 2 3 4 5 6
Time
Figure 7: Comparison of the outflows over time. Each object and quantity is
measured in the conveyor-region x1 < 0.75.
24
agreement with the results in [12]. However it is up to now not understood
why lane formation occurs and why it seems to be less pronounced for the
non-smooth version of the model that is presented in this paper.
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
0 0 0
0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8 0 0.2 0.4 0.6 0.8
Acknowledgements
Simon Hoher, Veronika Schleper and Alexaner Verl would like to thank the
German Research Foundation (DFG) for financial support of the project within
the Cluster of Excellence in Simulation Technology (EXC 310/1) at the Univer-
sity of Stuttgart.
References
25
[4] G. W unsch, Realtime collision detection and rigid body simulation for the
digital assembly automation, in: CARV 2009 - 3rd International Conference
on Changeable, Agile, Reconfigurable and Virtual Production, 2009, pp.
899907.
[5] G. Reinhart, F.-F. Lacour, Physically based virtual commissioning of mate-
rial flow intensive manufacturing plants, in: H. A. Zaeh, M. F.; ElMaraghy
(Ed.), 3rd International Conference on Changeable, Agile, Reconfigurable
and Virtual Production (CARV 2009), Utz, Munich, 2009, pp. 377387.
[6] P. A. Cundall, O. D. L. Strack, A discrete numerical model for granular
assemblies, Geotechnique 29 (1979) 4765.
[7] J. W. Landry, G. S. Grest, L. E. Silbert, S. J. Plimpton, Confined granular
packings: Structure, stress, and forces, Phys. Rev. E 67 (2003) 041303.
[8] W. T. Reeves, Particle systemsa technique for modeling a class of
fuzzy objects, SIGGRAPH Comput. Graph. 17 (3) (1983) 359375.
doi:10.1145/964967.801167.
26
[17] V. L. Popov, Contact Mechanics and Friction. Physical Principles and Ap-
plications, Springer, 2010.
[18] T. Gaugele, F. Fleissner, P. Eberhard, Simulation of material tests using
meshfree lagrangian particle methods, in: Proc. IMechE, Vol. 222, 2008,
pp. 327338, part K: Multi-body Dynamics.
[19] S. Kantorovich, R. Weeber, J. J. Cerd`a, C. Holm, Magnetic particles with
shifted dipoles, Journal of Magnetism and Magnetic Materials 323 (2011)
12691272.
[20] P. A. Langston, U. T uzun, D. M. Heyes, Discrete element simulation of
granular flow in 2d and 3d hoppers: Dependence of discharge rate and wall
stress on particle interactions, Chemical Engineering Science 50 (1995) 967
987.
[21] K. Shoemake, Animating rotation with quaternion curves, SIGGRAPH
Computer graphics 19 (1985) 245254.
[22] U. Fischer, R. Gomeringer, M. Heinzler, R. Kilgus, F. Naher, Mechanical
and Metal Trades Handbook, 2nd Edition, Europa-Lehrmittel, 2010.
[23] K. J. Olsson, H.and Astrom, C. Canudas de Wit, M. Gafvert, P. Lischinsky,
Friction models and friction compensation, European journal of control 4
(1998) 176195.
[24] S. Kockara, T. Halic, K. Iqbal, C. Bayrak, R. Rowe, Collision detection:
A survey, in: IEEE International Conference on Systems, Man and Cyber-
netics (ISIC), 2007, pp. 40464051.
[25] E. Coumans, Bullet Continuous Collision Detection and Physics Library.
GJK/EPA Solver implemented by Nathanael Presson, Bullet 2.80 (2012).
URL http://bulletphysics.org/
[26] M. Garavello, B. Piccoli, Traffic flow on networks, Vol. 1 of AIMS Se-
ries on Applied Mathematics, American Institute of Mathematical Sciences
(AIMS), Springfield, MO, 2006, conservation laws models.
[27] D. Armbruster, P. Degond, C. Ringhofer, A model for the dynamics of large
queuing networks and supply chains, SIAM J. on Applied Mathematics 66
(2006) 896920.
[28] S. Hoher, P. Schindler, S. Gottlich, V. Schleper, S. Rock, System dynamic
models and real-time simulation of complex material flow systems, in: H. A.
ElMaraghy (Ed.), Enabling Manufacturing competitiveness and economic
sustainability, Part 3, Springer, 2012, pp. 316321.
[29] L. Verlet, Computer Experiments on Classical Fluids. I. Thermodynam-
ical Properties of Lennard-Jones Molecules, Phys. Rev. 159 (1967) 98103.
27
[30] E. G. Gilbert, D. W. Johnson, S. S. Keerthi, A fast procedure for computing
the distance between complex objects in three-dimensional space, IEEE
Journal of Robotics and Automation 4 (1988) 193203.
[31] P. Jimenez, F. Thomas, C. Torras, 3d collision detection: a survey, Com-
puters & Graphics 25 (2) (2001) 269285.
[32] M. Lin, S. Gottschalk, Collision detection between geometric models: A
survey, in: Proc. of IMA Conf. on Mathematics of Surfaces, 1998.
[33] R. J. LeVeque, Finite volume methods for hyperbolic problems, Cambridge
Texts in Applied Mathematics, Cambridge University Press, Cambridge,
2002.
28