Inelastic Particle Clusters from Cumulative Momenta
Abstract
We consider a physical system comprising discrete massive particles on the real line whose trajectories interact via perfectly inelastic collision. It turns out that polygons formed in a “cumulative momentum diagram” of the initial conditions allow us to easily predict how many particle clusters form as time . We explore an application of this to a unit mass system with velocities.
1 Introduction
Inelastic particles, or sticky particles, have been studied in relation to the pressureless Euler system in :
(1.1) |
where and are the density and velocity fields of gas particles, respectively [7]. Note that these equations may be derived from the usual Euler equations for ideal compressible fluids by letting the pressure go to zero [2]. This system governs how an ideal pressureless system of gas particles evolves over time. Such a system has been proposed by Zeldovic [8] as a simplified model for early formations of galaxies, where individual dust particles floating in space may collide and form newer, bigger particles. Bianchini [7] proved that this system admits a unique sticky particle solution.
In one dimension, solutions to (1.1) can be obtained in the limit of a discrete system of sticky particles (see [4]) often with an interaction potential. In this paper, we focus on such a discrete system with no potential, where particles move in piecewise linear trajectories. Our main result reframes this system in terms of a cumulative momentum diagram, providing a new geometric picture of the situation that simplifies the determination of how many clusters of particles form. As an application, we use this approach to link the problem of determining how often a system of unit mass, unit speed particles on the line form one cluster to a problem concerning simple symmetric random walks. We also provide the code to implement our cumulative momentum approach.
In Section 2, we provide the necessary definitions and main theorem statement. Section 3 contains the proof of our result. Section 4 uses this approach on our toy problem, and Section 5 gives a Python code sample.
Acknowledgements
We would like to thank Jayadev Athreya for his support and bringing this topic to our attention; Rowan Rowlands for the helpful reference to [3]; as well as the Washington Experimental Math Lab for facilitating this collaboration.
2 Preliminaries
2.1 Inelastic particle systems
A particle is an ordered triple whose elements denote mass, initial position, and initial velocity, respectively. A system of particles denotes an -tuple of particles satisfying for , and ordered such that if and only if .
To each particle in our system, we may associate a unique trajectory , which is a continuous, piecewise linear map satisfying the following properties (see Proposition 2.1 in [4]):
-
1.
;
-
2.
If , then for all (stickiness); and
-
3.
If at some , then
for (conservation of momentum).
In the above, we employ the notation . We denote the velocity of at time : in particular, the velocity exists for all , but may not be continuous.
Observe that the continuity of trajectories and Property 2 together imply that if particles collide by time , then all particles for must have collided by time . Also, by expanding the right hand side of the expression in Property 3, we can recover the velocity of a particle at any time from the initial conditions of all particles involved in the collision. That is, at a given time , if is the subset of indices such that for all , then the velocity of is
(2.1) |
Using these trajectories to define an equivalence relation, we can partition our system into clusters: two particles are in the same cluster if and only if . By our observation above, we may order our clusters such that if and only if the initial position of any particle in is less than the initial position of any particle in (see Figure 1). The velocity of a cluster is the velocity of any constituent particle, for large enough such that all particles in the cluster share the same trajectory.
2.2 Cumulative momentum diagrams and polygons
Given a system , we now give an associated construction using initial momenta as follows. Let , , and let be the line segment in connecting , for . We may view as the graph of a continuous, piecewise linear function , .
Recall that the convex envelope of is defined by
The properties of imply is also a continuous, piecewise linear function; let denote its graph and its linear components of constant slope, ordered by increasing -coordinate of its left endpoint. Observe that has monotonically increasing slope due to the convexity of . Together, we refer to as the cumulative momentum diagram of our system.
For each , there are points , with , ordered by increasing -coordinate. A polygon in our diagram refers to either
-
(a)
The simple polygon bounded by and the portion of joining , for ; or
-
(b)
The line segment when (the “degenerate” case).
We can now decompose our diagram into a sequence of polygons , ordered using the -coordinate of the vertex (or endpoint) with smallest -coordinate in each polygon. This further induces a partition on our system , where if and only if belong to an edge of . In an abuse of language, the slope of refers to the slope of the linear component that bounds . See Figure 2 for an example diagram, and note is a line segment that counts as a polygon by our rules above.
2.3 Statement of theorem
Our main result states that given a system , there is a bijection between ordered clusters and ordered polygons, with .
Theorem.
Let be a system whose cumulative momentum diagram decomposes into polygons . Then the system partitions into clusters with , and the velocity of is given by the slope of .
3 Proof of main result
The key step in showing our main result is the ability to consider polygons in isolation, where particles outside a given polygon never interact with particles within. This is the statement of the following “cutting” lemma, which utilizes the monotonicity of :
Lemma 3.1.
Particles in never collide with particles in for .
Proof.
By our observation following Property 2, it suffices to show that for all , where is the index of the particle with largest -coordinate. Observe that until collide, their respective velocities at any time are given by
(3.1) | ||||
(3.2) |
for , according to (2.1). The right hand side of (3.1) is the slope of the line passing through and , which is sharply bounded above by , the slope of ; this follows from and the convexity of . Similarly, the right hand side of (3.2) is the slope of the line passing through and , which is sharply bounded below by , the slope of (see Figure 3). Due to monotonicity of polygon slopes, we know , and therefore as needed. ∎
Proof of Theorem: We proceed by induction. Suppose our system partitions into one polygon with slope . Let be the clusters of our system, and denote the velocity of by . If is the maximal collection of indices of particles belonging to , let .
Because these clusters do not collide, we have . The velocity is given by (3.2) with , which by the reasoning in the proof of Lemma 3.1 gives . Combined with conservation of momentum, this yields
It follows immediately that and .
Assume our theorem holds for polygons, and consider a system partitioned into polygons. Let be the particle with largest -coordinate belonging to the . By Lemma 3.1, particles in do not collide with particles in . Thus, the first polygons may be considered in isolation from the rest of the system, so by our inductive hypothesis, partitions into clusters with . We are then left with the particles in , which upon applying our base case reasoning corresponds to the single cluster . ∎
4 Application to a toy problem
Consider the following problem: Given a system of particles of unit mass with velocities taking values in , we want to determine the probability of one cluster forming. By looking at the associated cumulative momentum diagrams, this is equivalent to summing over the probabilities that a simple symmetric random walk (SSRW) on starting at and ending at stays strictly above for each step , where is the range of possible total velocities of the particles.
This type of problem appears in combinatorics in relation to the classic ballot problem and counting North-East lattice paths – or staircase walks – on (see Chapters 1, 2 in [6]). To see this, observe that each SSRW satisfying our needs above corresponds to a lattice path on starting at the origin and ending at that stays strictly above the line of slope ; here, each unit step in the (resp. )-direction corresponds to a (resp. ) step in our SSRW.
4.1 Young diagrams and Narayana’s path counting
In order to approach the situation above, we briefly recall Young diagrams and a useful path counting formula. Given with the Young diagram of shape comprises left justified rows with row consisting of unit boxes.
Let us introduce the notation
We know the following formula:
Theorem (Path Counting, [3] [5]).
The number of North-East lattice paths joining the southwest corner to the northeast corner of a Young diagram of shape is given by
(4.1) |
Observe that the matrix that we are taking the determinant of in (4.1) has all ones on the main subdiagonal and zeros all below that. Also, if we extend the notion of Young diagram to tuples with the zero entries corresponding to rows with left-aligned single points instead of boxes, equation (4.1) still holds due to determinant properties of block lower-triangular matrices; in this case, counts the paths on the diagram given by the corresponding Young diagram for nonzero entries of with the additional vertical line segment joining the single points (Figure 4).
4.2 Solution to the problem
Observe that for , the probabilities of one cluster forming are and respectively. For that are not those values, the number of lattice paths from the origin to staying above is given by for
This is the shape of the maximal Young diagram that fits inside and stays strictly above . Plugging in for , we find the probability of one cluster forming to be
Noting in this case that the number of permissible lattice paths from the origin to is the same as that for (see Figure 5), we may rewrite the above slightly and conclude that the probability of one cluster forming for even (resp. odd) is:
4.3 Some remarks on asymptotics
We conclude this section with a brief discussion on the asymptotics of the probability that one cluster forms from our unit mass and speed system as the number of particles . Our approach to find the above formula does not appear to be conducive in extracting asymptotics due to the complicated determinant terms arising from path-counting. Some relevant asympototics for path-counting below a certain class of lines of rational slope can be found in [1], though the techniques there do not seem to easily generalize.
Note that for a SSRW starting at , the probability remains strictly positive at each step given the walk ends at is
where denotes the -th Catalan number. Applying Stirling’s formula once again to find
we get
Heuristically, because we expect most of our walks to satisfy for small values of with high probability, we conjecture that summing over these possibilities leads to a similar asymptotic of .
5 Computational applications
We seek an algorithm that takes in a sequence of original particles as a list of pairs, and outputs a similar list of clusters after all collisions occur. An outline for one implementation of this code utilizing recursion is as follows:
-
1.
Begin with an initial cumulative momentum diagram for the entire sequence. For each point on the diagram in which the slope between it and its previous point is less than or equal to the slope between it and the following point, add said point to the list. End the list with the final point of the diagram.
-
2.
Recursively repeat the previous step with just these points acting as a revised, shortened momentum diagram. The terminating condition for said recursion occurs when this process no longer produces a shortened diagram. Take this constant result as the final diagram.
-
3.
The line segments between consecutive points in this final diagram represent the final polygons in the diagram–the slopes of the segments are the velocities of the final particles while the horizontal magnitude of the line is the mass in the unit case.
This algorithm results in a method of determining the final state of coalescence of a sequence in a much more streamlined manner than the brute-force method involving purely the physical calculations. This proves to be especially helpful in the construction of probability density functions for the state of an -length system as time goes to infinity. In this type of problem, we seek to find the probabilities of there being final clusters in an -length unit-mass system when assigned random velocities of . For low values of one can fairly easily compute these functions by hand, as each -length sequence encompasses a total of possible configurations. However, to analyze enough of the lower -length sequences, this exponential growth in the size of the input requires an algorithm that can save as much time as possible when compared to that using purely physical calculations. Following trials on randomly generated sets of sequences, algorithms based on analyzing momentum diagrams with the polygon theorem as as a basis achieves this goal; and, in addition, run with more economical memory usage as well. An example of Python code utilizing this algorithm to find the final state of an arbitrary sequence of particles is below.
# Takes two [x,y] points as input # Returns slope between both points def slope(first, second): rise = second[1] - first[1] run = second[0] - first[0] return rise/run # Takes a list of all [x,y] points of a momentum diagram as input # Returns only the points used as nodes in said momentum diagram def polygonAnalysis(seq): if len(seq) < 2: return seq else: mins = [seq[0]] curr= seq[1] currIndex = 1 while currIndex < len(seq) - 1: prev = seq[currIndex - 1] next = seq[currIndex + 1] local_Min = False if slope(prev, curr) <= slope(curr, next): local_Min = True if local_Min: mins.append(seq[currIndex]) currIndex = currIndex + 1 curr = seq[currIndex] mins.append(seq[len(seq) - 1]) # Algorithm terminates when no further reductions occur if mins == seq: return mins else: return polygonAnalysis(mins) # Takes an original sequence of particles in the form [mass, velocity] as input # Returns the final list of particles after all collisions ordered by position. def findFinalTree(origSequence): origParticles = [] index = 0 for item in origSequence: origParticles.append(item) index = index + 1 numStart = 0 numDown = 0 curr_x = numStart curr_y = numDown rldList = [[curr_x, curr_y]] for item in origParticles: curr_x = curr_x + item[0] curr_y = curr_y + (item[1] * item[0]) rldList.append([curr_x, curr_y]) middleParticles = polygonAnalysis(rldList) # Recursive step currMIndex = 0 finalParticles = [] while currMIndex < len(middleParticles) - 1: firstParticle = middleParticles[currMIndex] secondParticle = middleParticles[currMIndex + 1] mass = secondParticle[0] - firstParticle[0] finalParticles.append([mass, slope(firstParticle, secondParticle)]) currMIndex = currMIndex + 1 return [finalParticles] # Runs program, prints to terminal list of final particles after all collisions origSequence = ANY_ARBITRARY_PARTICLE_LIST print(findFinalTree(origSequence))
References
- [1] Cyril Banderier and Michael Wallner “The kernel method for lattice paths below a line of rational slope” In Lattice path combinatorics and applications Springer, 2019, pp. 119–154
- [2] Yann Brenier and Emmanuel Grenier “Sticky Particles and Scalar Conservation Laws” In SIAM J. Numer. Anal. 35.6 USA: Society for IndustrialApplied Mathematics, 1998, pp. 2317–2328 DOI: 10.1137/S0036142997317353
- [3] Mihai Ciucu “A short conceptual proof of Narayana’s path-counting formula”, 2016 arXiv:1602.02085 [math.CO]
- [4] Ryan Hynd “Sticky particles and the pressureless Euler equations in one spatial dimension”, 2020 arXiv:1804.09340 [math.AP]
- [5] Germain Kreweras “Sur une classe de problèmes de dénombrement liés au treillis des partitions des entiers” In Cahiers du Bureau universitaire de recherche opérationnelle Série Recherche 6 Institut Henri Poincaré - Institut de Statistique de l’Université de Paris, 1965, pp. 9–107 URL: http://www.numdam.org/item/BURO_1965__6__9_0/
- [6] T.. Narayana “Lattice Path Combinatorics with Statistical Applications; Mathematical Expositions 23” University of Toronto Press, 1979 URL: http://www.jstor.org/stable/10.3138/j.ctvfrxdw5
- [7] Bianchini Stefano and Daneri Sara “On the sticky particle solutions to the multi-dimensional pressureless Euler equations”, 2020 arXiv:2004.06557 [math.AP]
- [8] Ya B Zel’Dovich “Gravitational instability: An approximate theory for large density perturbations.” In Astronomy and astrophysics 5, 1970, pp. 84–89