• Open Access

New quadrature-based moment method for the mixing of inert polydisperse fluidized powders in commercial CFD codes



To describe the behavior of polydisperse multiphase systems in an Eulerian framework, we solved the population balance equation (PBE), letting it account only for particle size dependencies. To integrate the PBE within a commercial computational fluid dynamics code, we formulated and implemented a novel version of the quadrature method of moments (QMOM). This no longer assumes that the particles move with the same velocity, allowing the latter to be size-dependent. To verify and test the model, we simulated the mixing of inert polydisperse fluidized suspensions initially segregated, validating the results experimentally. Because the accuracy of QMOM increases with the number of moments tracked, we ran three classes of simulations, preserving the first four, six, and eight integer moments of the particle density function. We found that in some cases the numerics corrupts the higher-order moments and a corrective algorithm, designed to restore the validity of the moment set, has to be implemented. © 2012 American Institute of Chemical Engineers AIChE J, 58: 3054–3069, 2012


Several industrial processes, such as catalytic polymerization, combustion, and gasification, involve fluidized bed reactors. These are attractive because they maximize the contact area between the phases and guarantee excellent heat and mass transfer. Even so, developing, innovating, and scaling up these processes is still quite challenging, because the dynamics and reactive behavior of fluidized suspensions are extremely difficult to predict and control. The complexity originates from the many physical and chemical phenomena that occur concurrently: chemical reactions take place, which usually affect the properties of the particles; in addition, these can aggregate or break into subelements, whereas others can form through nucleation. The end-product quality strongly depends on all these competing phenomena, which in turn are influenced by the suspension fluid dynamics and, indirectly, by the reactor internals, geometry, and size.

To design these units, process engineers have resorted for many years to experimental correlations and pilot plants. However, since these correlations are valid only for the specific units investigated, they cannot help engineers to innovate or improve design and performance; pilot plants, conversely are expensive and time-consuming, not always leading to adequate scale up.

Thanks to the availability of high-speed computer processors, computational fluid dynamics (CFD) plays nowadays a key role in understanding the behavior of multiphase systems and in particular fluidized beds. The improvement in accuracy of recent fluid dynamic models1–5 has substantially increased the interest of industry in this technique; nevertheless, since many limitations in the predictive capabilities of such models still exist, much theoretical research is required to turn CFD into a fully reliable design tool. One of the assumptions which restricts even the most advanced models is the particles having constant and equal size.6–13 As just pointed out, in industrial processes there exists a particle size distribution (PSD), whose changes in time and space reflect the course of the very physical and chemical phenomena characterizing the processes. These changes in PSDs are associated with the possible occurrence of segregation phenomena, which result into uneven distribution of the particles within the bed. Depending on the application at hand, segregation may be beneficial or detrimental,14–17 but in either case being able to predict its extent and dynamics is key to properly design and operate fluidized bed reactors.

To partially overcome this limitation, research groups have extended to polydisperse suspensions models originally developed for monodisperse. This approach still hinges on the constant-size assumption, but now two or more particle classes differing in size are accounted for, so that powders can segregate.18–27 Even so, variations in size are not allowed for, whereas in reality particles can shrink, aggregate, break, and nucleate, their size distribution varying continuously in time and space. Predicting this evolution, which depends upon the local conditions wherein the system operates, is essential for a reliable description of the suspension behavior, but requires a more powerful modeling strategy.

To account for size-changing phenomena, which characterize the physics and chemistry of the process at hand, and describe how the PSD evolves locally within the reactor, we need to solve, along with, or in place of, the averaged transport equations of conservation of mass, linear momentum and possibly energy, a population balance equation (PBE). Doing so, however, is not trivial, because the dimensionality of this equation depends on the application and on the strategy that the modeler wishes to use (e.g., on how many internal coordinates he uses to characterize the state of the particles). Hence, PBEs are not necessarily three-dimensional (3-D) and cannot be easily integrated within customary CFD codes. In the context of multiphase flows, not so many research groups have used this modeling approach. Olmos et al.28 simulated bubble columns considering 10 different size classes to represent the bubbles, but solved only the dynamical equation for the mixture. The bubbles consequently shared the same velocity. Using similar strategies, other groups have simulated gas–liquid systems.29–31 Dense fluid–solid systems, conversely, in which the phases strongly interact and move with different velocities, have been investigated much less.32–34

Various techniques can solve PBEs numerically; for a comprehensive review we refer to Ramkrishna.35 Here, we focus on the so-called method of moments. Frequently engineers do not really need to know the particle density function, which describes how the population of elements is distributed locally over the properties of interest, but are only interested in some integral properties of the latter. Such properties, called moments, may be important because they control the product quality or because they are easy to measure and monitor. The idea behind the method of moments is to derive transport equations for the moments of interest by integrating out the internal coordinates from the PBE.36 The method is attractive, because the transport equations that govern the moments are 3-D and the number of moments to be tracked is small; however, the transport equations are unclosed, because for any given set of moments that the modeler wishes to consider, the equations normally involve also higher-order moments external to the set.37, 38

The quadrature method of moments (QMOM), which approximates the particle density function using a quadrature formula, overcomes this problem; turning integrals of the density function into summations, the formula eliminates the problem of closure.39, 40 To compute the quadrature nodes and weights, QMOM forces them to agree with a set of independent lower-order moments41 that the model tracks by integrating their transport equations. From this set, QMOM then determines the finite-mode representation of the density function.

For monovariate distributions, that is, distributions with only one internal coordinate, to back-calculate the quadrature nodes and weights from the moments of the density function we can adopt the product-difference (PD) algorithm of Gordon,42 which requires finding the eigenvalues of a real symmetrical tridiagonal matrix, or the algorithm of Wheeler.43 Nevertheless, these algorithms cannot be applied when a higher number of internal coordinates is present. The quadrature approximation must then be determined using multivariate inversion algorithms, such as Brute-Force methods,44 Tensor-Product methods,45 or Conditional QMOM.46 Even if some of these algorithms are very efficient, in this work we let the PBE account only for size dependencies; under this hypothesis, particles with the same size move with the same velocity, the latter being excluded from the set of internal coordinates, and the density function is monovariate. We then solve the PBE with the averaged dynamical equations of multiphase flows, adopting a hybrid approach.

In the present work, we develop and implement a new version of QMOM into the multifluid model of the commercial CFD code Fluent. There are two important novelties: (1) the model is based on a volume, and not on a number, density function, so that it deals with volume fractions instead of number densities, and (2) the particles no longer share the same velocity, so that they can freely mix and segregate. The method is quite general and can treat any type of particulate process, but in what follows we verify and validate it on a simple process in which the particles neither react nor agglomerate nor break. The PSD changes solely because the powders mix. This is a relatively simple problem, but its very simplicity is key to test the method, understand it better and highlight possible issues or limitations. We believe that before tackling more complex problems, involving continuous and discontinuous changes in particle size, this analysis is necessary.

The article is thus structured. First, we introduce the system investigated. Next, we describe the experimental methodology and findings. We then present the mathematical model and the numerics, reporting the predictions of the simulations and showing how these compare with the experimental data. As we shall see, when QMOM is solved with spatial discretization schemes that use higher-order numerical schemes or when it tracks a sufficiently high number of moments (eight in this work), some moments corrupt, this leading to poor results or generating instabilities that eventually make the simulations crash altogether. We thus discuss the problem of moment corruption and present a few strategies that may be able to overcome it. One of these, reported by Wright,47 is implementing a corrective algorithm that replaces invalid moment sets with valid ones in the cells where moments corrupt. To conclude the article, we describe and discuss this method, assessing its potentials and limitations.

Goal of this Work

We intend to describe the mixing of two inert polydisperse fluidized powders initially segregated and test our new QMOM model. The physical system that we are going to investigate is a packed bed constituted of two superposed layers of polydisperse particles of equal density. Referred to as powders A and B, respectively, lower and upper layers differ only in PSD, the one on top having greater mean particle size. To thoroughly mix the powders, we feed fluid at a superficial velocity much greater than both minimum fluidization velocities uA and uB. The resulting powder, referred to as powder C, has a PSD that combines the two original ones. Adopting the QMOM, we intend to predict the new PSD and see how it compares with the experimental one.


A description of the experimental apparatus, shown in Figure 1 along with its schematic representation, and a detailed discussion of the experimental results are reported in our previous work.34 Here, let us just remind that the powders are ballotini particles with density of 2500 kg/m3. Figure 2 reports their density and cumulative PSDs found by sieving. For powders A and B, the Sauter average diameters,48 coefficients of variation36 and minimum fluidization velocities are equal to 88 μm, 273 μm, 0.16, 0.20, 1.00 cm/s and 6.40 cm/s, respectively.

Figure 1.

Photograph and schematic representation of the experimental apparatus. (1) Nitrogen tanks, (2) oil filter, (3) flow meters, (4) pressure taps, (5) fluidized bed, (6) electronic manometer, and (7) on/off valves control switch, (X) freeboard, (Y) fluidized bed, and (Z) windbox.

[Color figure can be viewed in the online issue, which is available at wileyonlinelibrary.com.]

Figure 2.

Experimental normal and cumulative PSDs for powders (A) and (B).

[Color figure can be viewed in the online issue, which is available at wileyonlinelibrary.com.]

When fluidized, the powders mix almost perfectly, the PSDs in the bed being nearly identical everywhere. Figures 3A,B report the PSDs averaged over the most significant bed layers: the lowest, which lies on the distributor, and the highest, which separates the bed from the freeboard. The new PSDs are identical and seem to be obtained by juxtaposing the two original distributions reported in Figures 2A,C; this indicates excellent mixing.

Figure 3.

Experimental PSDs in the top (near the freeboard) and bottom (near the distributor plate) layers of the bed after collapse.

[Color figure can be viewed in the online issue, which is available at wileyonlinelibrary.com.]

Multiphase Fluid Dynamic Model

The particle population that we consider is characterized by diameter and velocity; so, there are two internal coordinates, one scalar and one vectorial, and the internal state space is 4-D. To describe the population of particles, we introduce a volume density function (VDF); denoted by fv, this is defined so that fv(s,v,x,t) ds dv dx represents the expected volume of particles contained at time t in the physical volume dx around x with size s in the range ds and velocity v in the range dv. We denote the domains of variation of s and v by equation image+ and equation image3, respectively. The reason for preferring a volume to a number density function is that the former deals directly with volume fractions, a more usual choice when one treats fluidized systems.

To determine fv we should solve a PBE written in the 4-D internal state space mentioned earlier. Because neither heterogeneous reactions nor particle attrition occur, s does not vary continuously and the particles have zero velocity in size space; so, the PBE reads

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${{\partial f_v } \over {\partial t}} + \nabla _{\bi x} \cdot(f_v \;{\bi v}) + \nabla _v \cdot(f_v \;\dot {\bi v}) = {{\partial _e f_v } \over {\partial t}}$$(0.1)

where equation image· and equation image· are divergence operators in the physical and velocity spaces, respectively, \font\abc=cmmib10\def\bi #1{\hbox{\abc #1}}$ \dot{{\bi v}}$ is the particle acceleration and ∂efv/∂t is a source term that accounts for discontinuous jumps in the particle state space. Instead of solving Eq. 0.1 directly, we approximate the VDF using a quadrature formula, which expresses fv as a summation of ν Dirac delta functions

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $$f_v (s,{\bi v},{\bi x},t) \approx \sum\limits_{r = 1}^\nu {\phi _r ({\bi x},t)\;\delta [s - s_r ({\bi x},t)]\delta [{\bi v} - {\bi v}_r ({\bi x},t)]} $$(0.2)

where sr(x,t) and vr(x,t) are the rth quadrature nodes and ϕr(x,t) is the rth quadrature weight. Eq. 0.2 states that the particle population is represented by ν classes, the rth of which having volume fraction ϕr(x,t), diameter sr(x,t) and velocity vr(x,t). Therefore, the problem reduces to predicting the evolution in time and space of these 3ν functions.

This choice of internal coordinates – particle size and velocity – results in a multivariate density function. As previously mentioned, although multivariate inversion algorithms exist, in this work we first reduce the dimensionality of the problem before going on to solve it. Being the velocity a vector, this is the coordinate that we should eliminate to turn the VDF into a monovariate distribution. In the following sections, we first do this and then develop our new version of the QMOM model.

Reduction of the VDF dimensionality

To reduce the dimensionality of the VDF, we integrate out the coordinate v from Eq. 0.1; this results in the reduced PBE

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${{\partial\bar f_v } \over {\partial t}} + \nabla _x \cdot(\bar f_v \;\langle {\bi v}|s\rangle ) = {{\partial _e \bar f_v } \over {\partial t}}$$(0.3)

where, by definition, it is

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $$\bar f_v \equiv \int _{\Omega _v } f_v \;d{\bi v};\quad \bar f_v \;\langle {\bi v}|s\rangle \equiv \int _{\Omega _v } f_v \;{\bi v}\;d{\bi v};\quad {{\partial _e \bar f_v } \over {\partial t}} \equiv \int _{\Omega _v } {{\partial _e f_v } \over {\partial t}}\;d{\bi v}$$(0.4)

In this equation, 〈v|s〉(s,x,t) is the mean particle velocity conditioned on the particle size s. Note that being 〈v|s〉 size-dependent, the reduced PBE features no diffusive flux in physical space. This is because particles with different size are convected with different velocity. Spatial diffusion would arise if we replaced 〈v|s〉 with the mean velocity of the whole particle population, which would be averaged over s.49 Using Eq. 0.2 to approximate the VDF, we find

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $$\eqalign{ & \bar f_v (s,{\bi x},t) \approx \sum\limits_{r = 1}^\nu {\phi _r ({\bi x},t)\;\delta [s - s_r ({\bi x},t)]} \quad {\rm and}\quad \cr & \hskip 8pc\langle {\bi v}|s\rangle [s_r ({\bi x},t),{\bi x},t] = {\bi v}_r ({\bi x},t)}$$(0.5)

Hence, as expected, the particles belonging to the size class sr are advected with the velocity vr(x,t), this coinciding with their conditional velocity 〈v|s〉(sr,x,t). Note that, as particles neither aggregate nor break, the size-dependent source term equation image vanishes, reducing Eq. 0.3 to

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${{\partial \bar f_v } \over {\partial t}} + \nabla _x \cdot(\bar f_v \;\langle {\bi v}|s\rangle ) = 0$$(0.6)

This new PBE governs the evolution of the monovariate function \font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $\bar f_v (s,{\bi x},t)$. We can use it to find the 2ν functions ϕr(x,t) and sr(x,t), but the equation can no longer provide any information about the velocities vr(x,t). To compute these, we resort to the averaged dynamical equations of multiphase flows (refer to the section Multifluid dynamical and pseudointernal energy equations). With this hybrid approach, the particle velocity is no longer an internal coordinate and the VDF becomes monovariate, but additional equations are necessary in addition to the PBE, this being left only with the task of governing the PSD evolution.

QMOM transport equations

Our objective is determining the 2ν scalar functions ϕr(x,t) and sr(x,t), because these would tell us how the PSD evolves in time and space. To this end, our strategy is developing transport equations that govern the evolution of a set of 2ν independent moments of the VDF and back-calculating from this set the quadrature nodes and weights, which in general entails solving a nonlinear algebraic system. We remind that, given a function φ(s,x,t), the integral transform

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $$\varphi (s,{\bi x},t) \to {\cal M}_k (\varphi )\;({\bi x},t) \equiv \int _{\Omega _s } \varphi (s,{\bi x},t)\;s^k \;ds$$(0.7)

defines the moment of order k with respect to the internal coordinate s of φ(s,x,t). Applying this transform to Eq. 0.6 yields

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${{\partial {\cal M}_k } \over {\partial t}} + \nabla _x \cdot({\cal M}_k \;\hat {\bi v}_k ) = 0$$(0.8)

where \font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} ${\cal M}_k ({\bi x},t)$ is the kth order moment of \font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $\bar f_v (s,{\bi x},t)$ and \font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $\widehat {\bi v}_{k} ({\bi x},t)$ is the velocity with which this moment is advected; this is defined so that

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${\cal M}_k ({\bi x},t)\;\hat {\bi v}_k ({\bi x},t) \equiv \int _{\Omega _s } \bar f_v (s,{\bi x},t)\;\langle {\bi v}|s\rangle (s,{\bi x},t)\;s^k \;ds$$(0.9)

The quadrature approximation allows us to relate this velocity to the quadrature nodes and weights ϕr(x,t) and sr(x,t) and to the velocities vr(x,t) with which these variables are advected; introducing the relations (0.5) into the defining expression of the moment velocity \font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $ \widehat {\bi v}_k (\bi x, \bi t)$ yields

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${\hat {\bi v}_k ({\bi x},t) = \sum\limits_{r = 1}^\nu {p_{kr} ({\bi x},t)\;{\bi v}_r ({\bi x},t)} \quad {\rm where} \ p_{kr} (\bi x,t) \equiv {{\phi _r ({\bi x},t)\;s_r^k ({\bi x},t)} \over {{\cal M}_k ({\bi x},t)}}}$$(0.10)

As we can see, each moment moves with a different velocity, which is a linear combination of the velocities vr(x,t). The transport Eq. 0.8 governs the evolution of the moment of order k of the VDF, allowing us to determine its value in each point of the computational domain as time goes by. Assuming we know the values of 2ν independent moments in a generic point x at time t, we can then back-calculate the quadrature nodes and weights corresponding to this set of moments. To do this, we need to solve the nonlinear algebraic system made up of the 2ν equations

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${\cal M}_k ({\bi x},t) = \sum\limits_{r = 1}^\nu {\phi _r ({\bi x},t)\;s_r^k ({\bi x},t)} $$(0.11)

Here, we can choose any set of 2ν values of k. The algebraic system and the VDF representation, however, depend on the set that we select, because different moments preserve different properties of the distribution. Among the many possible choices, one is particularly accurate: if we preserve the first 2ν integer moments, ϕr(x,t) and sr(x,t) fulfill the quadrature condition

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $$\int _{\Omega _s } \bar f_v (s,{\bi x},t)\;\pi _k (s)\;ds = \sum\limits_{r = 1}^\nu {\phi _r ({\bi x},t)\;\pi _k [s_r ({\bi x},t)]} $$(0.12)

for any polynomial πk(s) of degree k with 0 ≤ k ≤ 2ν − 1 and k integer. Hence, this particular choice of nodes and weights renders Eq. 0.5 a Gaussian quadrature: with ν nodes, the approximation reaches an accuracy of order 2ν − 1 instead of ν − 1, which is the order of accuracy that a non-Gaussian quadrature formula yields (for more details, we refer to Refs, 38 and 50). Thus, preserving the first 2ν integer moments of the VDF is the most convenient option from the standpoint of mathematical accuracy. Also, when the quadrature is Gaussian, we can solve the nonlinear algebraic system and determine weights and nodes very efficiently by adopting the PD algorithm of Gordon.42 For these reasons, in this study we selected this particular set of moments. This choice makes physical sense as well, because the lower-order moments of the distribution relate to important properties of the PSD. For example, equation image represents the overall solid volume fraction, whereas equation image the volume-averaged particle size. Other important properties of the distribution such as the variance and the skewness, which represent respectively its broadness and its shape, can be calculated from the moments of order two and three.36, 38 These simple examples prove that knowing the first four moments already suffices to solve most problems of engineering interest concerning fluid-solid flows. Should more properties of the distribution be needed, however, more moments can be tracked.

Let us conclude by summarizing the main steps of the method: (1) we track the first 2ν integer moments of the VDF, choosing k = 0,1,2,…,2ν − 1, where ν is the number of quadrature nodes; (2) integrating the transport Eq. 0.8, we compute how the moments evolve in time and space; (3) in any point x of the computational domain and for any time t of interest, we finally solve the nonlinear algebraic system (0.11) using the PD algorithm of Gordon42 and back-calculate the nodes and weights of the corresponding VDF finite-mode representation.

A final consideration is in order. The moment transport Eq. 0.8 features no diffusive flux because each moment is convected with its own velocity. Similarly to what we said about the PBE, in these equations diffusion would arise if we replaced the velocities \font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $\widehat {\bi v}_k ({\bi x},t)$ with a mean velocity shared by all moments. If we used this approach, diffusion would appear in the moment transport equations, and we would have only one average dynamical equation to solve. With our approach, conversely, there is no diffusion, but we need to determine the velocity field of each moment of the distribution.

We should point out, nonetheless, that the finite-volume scheme that the CFD code uses to discretize the equations of change (refer to the section Numerical schemes and implementation techniques) generates numerical diffusion. Hence, the moment transport equation that the code really solves is

equation image(0.13)

where equation image is a numerical diffusivity that depends on the discretization scheme and on the computational grid. The diffusive flux cannot be eliminated, for numerical diffusion is always present when one integrates purely convective equations with CFD codes. A classical example is given by the multifluid equations of continuity for monodisperse fluidized suspensions, where numerical diffusion smoothes out the spatial volume fraction profiles of the fluid and solid phases.

We can estimate the value of equation image employing the relation equation image, where u is the velocity at which the property is convected and Lc is the length of a computational cell. This relation is valid only for first-order upwind discretization schemes, which we indeed used in most of the simulations. Taking as characteristic velocity 0.10 m/s, a value that has the same order of magnitude as the gas superficial velocity, and Lc equal to 10 mm, we obtain a diffusion coefficient of order of magnitude equal to 10−3 m2/s.

The diffusive term equation image, as we well-know, alter the results. Notwithstanding, since the PBE and the moments are linear in the VDF, and since mixing is a linear process, the mixed moments and in turn the mixed VDF are correctly estimated. There is no way around this problem, but numerical diffusion can be reduced if one uses fine computational grids and higher-order discretization schemes. Unfortunately, the latter are less stable than lower-order schemes and in consequence might compromise the numerical stability of the simulations. Furthermore, as we shall discuss later on, higher-order discretization schemes are liable to corrupt higher-order moments, leading to unphysical values of quadrature nodes and eventually making the simulations crash. A tradeoff must therefore be accepted.

Multifluid dynamical and pseudointernal energy equations

We assume that the dynamical equations for the fluid and particle phases (the latter really representing the quadrature nodes) are the customary multifluid equations of multiphase systems, obtained by mathematical averaging.5 For details we refer to the literature. We have a dynamical equation for the fluid and for each quadrature classes; the first reads

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $$\rho _e \left[{\partial \over {\partial t}}(\varepsilon \;{\bi u}_e ) + \nabla _x \cdot(\varepsilon \;{\bi u}_e \;{\bi u}_e )\right] = \nabla _x \cdot {\bi S}_e - \sum\limits_{r = 1}^\nu {n_r \;{\bi f}_r } + \varepsilon \;\rho _e \;{\bi g}$$(0.14)

where ρe and ε are its density and volume fraction, respectively, ue its averaged velocity and Se its effective stress tensor. Moreover, nr is the number density of particle phase r and fr is the force exerted by the fluid on a single particle of the rth phase. Finally, g is the gravitational field. We do not need a transport equation for ε, because ε = 1−ϕ, where ϕ is the sum of all the quadrature weights. The dynamical equation for the rth quadrature class reads

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $$\eqalign{ {\rho _s \left[{\partial \over {\partial t}}(\phi _r \;{\bi v}_r ) + \nabla _x \cdot(\phi _r \;{\bi v}_r \;{\bi v}_r )\right] = \nabla _x \cdot {\bi S}_r + n_r \;{\bi f}_r + \sum\limits_{k = 1}^\nu {n_r \;{\bi f}_{rk} }} \cr {\hskip 14pc+ \phi _r \;\rho _s \;{\bi g}}}$$(0.15)

where ρs is the solid density (which is the same for all the classes), Sr is the effective stress tensor of phase r and frk is the force exerted by phase k on a single particle of phase r.

In the equation above, the effective stress Sr accounts for collisions between alike particles, whereas the particle–particle interaction force frk accounts for collisions between particles of different sizes. Both terms are functions of the granular temperatures of the quadrature classes involved.51 To find the granular temperature for the rth quadrature class, we solved the following pseudointernal energy balance equation

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $$\eqalign{ {\rho _s \left[{\partial \over {\partial t}}(\phi _r \;U_r ) + \nabla _x \cdot(\phi _r \;U_r \;{\bi v}_r )\right] = - \,\nabla _x \cdot\;{\bi q}_r + {\bi S}_r :\nabla _x {\bi v}_r} \cr \hskip 12.5pc+ G_r^d - S_r^v - S_r^c}$$(0.16)

Here, Ur(x,t) ≡ 3θr(x,t)/2 is the pseudointernal energy, θr(x,t) is the granular temperature and qr(x,t) is the pseudothermal heat flux. The above equation differs from the usual internal energy balance equation because of a sink term Smath formula(x,t) representing losses of pseudointernal energy caused by inelastic collisions, a source term Gmath formula(x,t) representing the generation of particle velocity fluctuations by fluctuating fluid-particle forces, and a sink term Smath formula(x,t) representing their dampening by the viscous resistance to particle motion. For the constitutive equations adopted to express the unclosed terms in Eqs 0.14, 0.15 and 0.16, among which we find the effective stress tensors, the fluid–particle interaction forces (consisting of buoyancy and drag forces) and the particle–particle interaction forces, we refer the reader to Mazzei et al.52 These are standard closure relations for dense fluidized suspensions.

Boundary and initial conditions

The computational grid (uniform, with square cells of 5 mm side) is 2-D; hence, front and back wall effects were neglected. On the left and right walls, we used no-slip boundary conditions. At the bottom of the bed, the inlet gas velocity was set to 15 cm/s. At the domain upper boundary, the pressure was set to 105 Pa. On all boundaries, the moment fluxes were set to zero.

To assign the initial conditions, we need to know the values of 2ν independent moments everywhere within the computational domain. In its initial state, the bed is fixed and made up of two superposed layers; these are 15 mm high, and together occupy half of the vessel. As we know the experimental PSDs in the two layers (refer to Figures 2A,C), we can compute the moments \font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} ${\cal M}_k ({\bi x},t_0 )$; being the powders well mixed, in each layer the moments do not depend on x and it is

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${\cal M}_k \approx (1 - \varepsilon )\sum\limits_{i = 1}^m {\left[{{\sigma _i^{\;k + 1} - \sigma _{i - 1}^{\;k + 1} } \over {(k + 1)\;(\sigma _i - \sigma _{i - 1} )}}\right]\;\omega (\sigma _{i - 1} ,\sigma _i )} $$(0.17)

where m is the number of sieves used (10 in our case), σi is the aperture of the ith sieve and ω(σi-1i) is the mass fraction of powder in the size range (σi−1i). Eq. 0.17 tells us that equation image is a function of ε; this is because, whereas the PSD refers to solid mass fractions on a void-free basis, the VDF accounts for voids and provides volume densities, that is, volumes of solid per unit volume of physical space.

Table 1 reports the experimental values of VDF moments, nodes and weights for quadratures with two, three and four nodes. First, we computed the moments using Eq. 0.17 and setting ε = 0.400; then, we calculated nodes and weights using the PD algorithm of Gorden.42 We used the values of the moments to initialize the QMOM transport Eqs. 0.8.

Table 1. Values of the VDF Moments and of the Quadrature Nodes and Weights Obtained from the Experimental PSDs Reported in Figures 2A,C Assuming a Void Fraction of 0.400
Moments of the Volume Density Function
Powder equation image equation image equation image equation image
A0.6005.45 × 1015.06 × 1034.82 × 105
B0.6001.70 × 1024.98 × 1041.52 × 107
Powder equation image equation image equation image equation image
A4.67 × 1074.61 × 1094.63 × 10114.73 × 1013
B4.80 × 1091.57 × 10125.32 × 10141.86 × 1017
Quadrature Nodes and Weights for a Two-Node Quadrature Formula
Powders1 [μm]ϕ1 [−]s2 [μm]ϕ2 [−]
Quadrature Nodes and Weights for a Three-Node Quadrature Formula
Powders1 [μm]ϕ1 [−]s2 [μm]ϕ2 [−]
Powders3 [μm]ϕ3 [−]
Quadrature Nodes and Weights for a Four-Node Quadrature Formula
Powders1 [μm]ϕ1 [−]s2 [μm]ϕ2 [−]
Powders3 [μm]ϕ3 [−]s4 [μm]ϕ4 [−]

Numerical Schemes and Implementation Techniques

To run the simulations, we used the commercial CFD code Fluent. We implemented the governing and constitutive equations in the multifluid model of the package, which is based on an Eulerian description of the dynamics, using user-defined functions and subroutines. Simulations ran with a quadrature approximation of order two (i.e., ν = 2) required tracking the evolution of the first four integer moments of the VDF and defining three phases in the multifluid model: one gas and two particle phases. Similarly, when three and four nodes were used (i.e., ν = 3 and ν = 4, respectively), the first six and eight integer moments of the distribution were respectively tracked, and four and five phases were respectively defined. As pointed out, balance equations for linear momentum and pseudointernal energy were solved for each phase.

As we computed the quadrature weights (that is, the volume fractions of the particle phases) from the moments by using the PD algorithm of Gordom,42 we disabled the equations of mass conservation and passed the volume fractions to the main CFD solver and to the user-defined subroutines (for instance, those that implement the drag force closure and that determine the moment convective fluxes) through user-defined memories and define-property functions (for details, we refer to the code manual).

We could not treat the VDF moments directly as user-defined scalars, adding their transport equations to the default equations of the numerical code. This is because Fluent associates user-defined scalars either with a specific phase (the fluid or any granular phase) or with the mixture of all phases. In the first case, the equation solved by the code is

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${\partial \over {\partial t}}(\phi _k \;{\cal M}_k ) + \nabla _x \cdot(\phi _k \;{\cal M}_k \;{\bi v}_k ) = 0$$(0.18)

where, being constant, the solid density ρs does not appear. In the second case, when equation image is associated with the mixture, the equation solved by the code instead is

\font\abc=cmmib10\def\bi #1{\hbox{\abc #1}} $${\partial \over {\partial t}}(\rho _m \;{\cal M}_k ) + \nabla _x \cdot(\rho _m \;{\cal M}_k \;{\bi v}_m ) = 0$$(0.19)

where ρm and vm are defined so that

equation image(0.20)

Both equations differ from Eq. 0.8. To overcome this problem, we first modified the velocity field in Eq. 0.18, replacing the velocity vk of the k th quadrature class with the velocity \font\abc=cmmib10\def\bi#1{\hbox{\abc #1}} $\widehat {\bi v}_k $ of the k th moment of the distribution. To do this, we used a user-defined function (that is, a routine that the modeler writes and runs along with the CFD simulation) available in Fluent and called defined-uds-flux. In addition, we used as defined scalar the ratio equation image, so that the volume fraction cancels out and the transport equation reduces to the correct one, which is to say, Eq. 0.8.

We implemented the PD algorithm (described in detail in Ref.50), the closures for the velocities of the moments (that is, Eq. 0.10) and those for the fluid–particle interaction forces reported in Ref.52 using additional user-defined functions called define-adjust and define-exchange-property. We did not have to implement the other constitutive equations mentioned in the previous sections, because they are available in Fluent as default. We used the pressure-based solver, which is recommended for low-speed incompressible flows. To convert scalar differential equations into algebraic equations which can be solved numerically, the code adopts a finite-volume discretization scheme. Part of the simulations were run using the first-order upwind spatial discretization scheme, where cell-face quantities are determined by assuming that the cell-center values of any field variable represent cell-averages that hold throughout the entire cells; thus, face quantities are identical to cell quantities, and are set equal to the cell-center values in the upstream cells (relative to the velocity direction). Some simulations were also run using second-order upwind schemes that, as we shall see, significantly affect their stability. The temporal discretization is first-order accurate and implicit. At every time step, we used a maximum of 150 iterations to calculate all the flow variables. Setting the tolerance to 10−5, we saw the simulation converge within the iteration limit. We fixed the time step to 10−3 s, because shorter times steps gave equal results. Finally, we used under-relaxation factors of 0.20 for all the variables.

The Numerical Corruption of Higher-Order Advected Moments

As mentioned, the moments of a distribution represent some important physical properties of the underlying population of particles. For this reason, they have to satisfy some mathematical constraints. For instance, the positiveness of the density function over the phase space of the internal coordinate implies that the moment of order zero must be positive (note, however, that the positiveness of this moment does not guarantee that the distribution is non-negative). Additionally, there are other simple, intuitive rules, such as that the moment of order zero of a VDF has to be smaller than one, for equation image represents the overall volume fraction of solid. Also, since equation image is the volume-averaged value of the particle size, which is bounded between zero and infinity, the moment of order one (as well as all the other higher-order moments) must be positive. Another important property of the VDF is its standard deviation σ2. As Randolph and Larson36 report, in terms of moments it is

equation image(0.21)

The standard deviation of a monodisperse distribution is zero, while is positive for polydisperse distributions. Accordingly, it has to be equation image. If one (or more) of these conditions are not respected, the set of moments is invalid, because no VDF can generate them. A moment set corresponding to a physical VDF is instead said to be valid.

In general, to verify that a moment set is valid, we must ensure that the Hankel–Hadamard determinants53 are all non-negative

equation image(0.22)

for a = 0, 1 and b ≥ 0. For the first four moments, the validity condition is fulfilled if the natural logarithm of equation image vs k is a convex function. The reader can verify this by building a difference table as explained by Petitti et al.54. Note that for a = 0 and b = 1 the Hankel-Hadamard determinant is equation image, the validity condition thus reducing to equation image.

Because mixing is a linear process and because the PBE and the moment transform (0.7) are linear in the VDF, the moments of a powder obtained by blending together two or more powders whose initial sets of moments are valid should remain valid. Nevertheless, the moment transport equations are integrated with a finite-volume numerical code, which makes discretization errors. As Wright47 clearly reports, most of the problems are caused by the approximation of the convective term, in particular with higher-order discretization schemes, which can turn a valid set of moments into an invalid one. This phenomenon is called moment corruption and poses a serious threat to our simulations, because when an invalid set of moments is fed to the PD algorithm, this yields negative nodes and leads to numerical instabilities.

The reason why in finite-volume numerical codes convection corrupts valid sets of moments is that these codes are designed to transport in physical space independent variables, without having to preserve relations among them. But moments are not independent scalars, since they have to satisfy the constraints posed by Eq. 0.22. So, even if the code transports each individual moment with sufficient accuracy, the (possibly small) advection errors are enough to substantially alter the relationships among the moments of the entire set, making the latter invalid. For more details we refer to Wright.47

Results and discussion

As described in Mazzei et al,34 in the experiments we first of all fluidized the powder until it reached a pseudostationary state and then froze the bed by cutting off the gas supply. Finally, we divided the collapsed bed in layers and by sieving them we measured the PSDs. These were identical, for the powders had well mixed. From the PSDs reported in Figure 3, we calculated the moments using Eq. 0.17 and then applied the PD algorithm to compute the nodes and weights of the quadrature. We remind that, while the VDF accounts for the presence of the interstitial fluid, the PSD is a property of the powder and refers to void-free volume fractions. Consequently, to determine the quadrature weights from the experimental PSDs we had to assign a value to the void fraction; we chose the reference value of ε = 0.400, for this is roughly the one found experimentally in the collapsed bed. Table 2 reports the experimental VDF moments and the nodes and weights of the quadratures.

Table 2. Values of the VDF Moments and of the Quadrature Nodes and Weights Obtained from the Experimental PSDs Reported in Figure 33 Assuming a Void Fraction of 0.400
Moments of the Volume Density Function
equation image equation image equation image equation image
0.6001.16 × 1022.82 × 1047.84 × 106
equation image equation image equation image equation image
2.34 × 1097.32 × 10112.37 × 10147.95 × 1016
Quadrature Nodes and Weights for a Two-Node Quadrature Formula
s1 [μm]ϕ1 [−]s2 [μm]ϕ2 [−]
Quadrature Nodes and Weights for a Three-Node Quadrature Formula
s1 [μm]ϕ1 [−]s2 [μm]ϕ2 [−]
s3 [μm]ϕ3 [−]
Quadrature Nodes and Weights for a Four-Node Quadrature Formula
s1 [μm]ϕ1 [−]s2 [μm]ϕ2 [−]
s3 [μm]ϕ3 [−]s4 [μm]ϕ4 [−]

If we wanted to simulate exactly the same procedure used in the experiments, we should first simulate the fluidization phase and then the collapse phase. This, however, is unnecessary and might even be detrimental. Numerically, we can easily calculate the VDFs and the PSDs when the bed is still fluidized; to this purpose, we just have to divide the bed in layers and from the numerical profiles of the VDF moments determine their average values in each layer and then the corresponding average values of the quadrature nodes and weights. There is another reason as well for which it is better to calculate the VDFs while the bed is still fluidized. As reported by Mazzei,52 freezing the bed is detrimental, because while the experimental collapse is instantaneous, and the bed conserves its PSDs, the simulated collapse is not and permits the bigger particles to segregate toward the bottom of the vessel, altering the original segregation profile. For these reasons, we simulated only the fluidization phase, calculating the VDFs in pseudostationary conditions.

As said, in the simulations we used two-node, three-node and four-node quadrature formulas. Many modeling and numerical parameters were tested and changed, in particular the effect on the final predictions of the closures for the fluid–particle and particle–particle interaction forces and of the strategies to evaluate the granular temperatures were investigated. We found that only the particle–particle interaction term seemed to influence significantly the final predictions. In fact, when this term is neglected, the expansion of the bed is much higher than the experimental value and a certain degree of segregation, with small particles floating and accumulating above the large particles, is present. The different closures examined for the fluid–particle force (namely, those reported in Wen and Yu,55 Gidaspow1 and Mazzei and Lettieri56) had little effect on the behavior of the simulations, both in terms of quality of the predictions and overall stability. The strategies to find the granular temperatures, that is, solving the differential Eq. 0.16 or their algebraic approximations (refer, for instance, to Ref.57), did not significantly affect the predictions either, at least for the operating conditions investigated in this work.

Let us first consider the results obtained with the two-node and the three-node quadrature approximations by using first-order upwind discretization schemes. At the high fluid flux used the bed dynamics is very fast; the volume fraction profiles are not uniform, for the system operates in the bubbling regime, but vigorous mixing takes place continuously. We observed this both in the experiments and in the simulations. Figure 4 reports the profiles of the quadrature nodes and weights, for a two-quadrature approximation, at the start of the simulation and in pseudostationary conditions. Phases 2 and 3 represent the first and second quadrature classes respectively, the second corresponding to the greater particle size. As we see, while at the beginning of the simulation the upper and lower portions of the bed are clearly visible, from the different values of the nodes and weights, at the end of the simulation the bed is well mixed. This is particularly evident from the profiles of the quadrature nodes at the end of the simulation, which are completely flat. This shows that the model is capable of describing the very good mixing observed experimentally and the resulting uniformity of the PSD throughout the fluidized bed.

Figure 4.

Numerical profiles, for a two-node quadrature formula, of nodes and weights within the fluidized bed at the start of the simulation and in pseudostationary state.

Phases 2 and 3 refer respectively to the first and second quadrature classes. [Color figure can be viewed in the online issue, which is available at wileyonlinelibrary.com.]

As mentioned, the profiles of the quadrature nodes are flat, that is to say, the nodes are equal everywhere within the bed, their values being s1 = 104 μm and s2 = 318 μm. These results agree well with the experimental values of s1 = 105 μm and s2 = 304 μm reported in Table 2, showing a very small error in the prediction of the evolution of the VDF. For the weights, we report the averaged values in the top and bottom layers, for these are the most representative. In the top layer, we found ϕ1 = 0.330 and ϕ2 = 0.270, while in the bottom layer ϕ1 = 0.331 and ϕ2 = 0.269. Also these results agree well with the experimental values of ϕ1 = 0.332 and ϕ2 = 0.268 reported in Table 2. This is summarized in Table 3, in which we compare the numerical and experimental findings. Figure 5 helps to visualize the results, reporting the two-node representations of the experimental and computational PSDs in the top and bottom layers of the bed and showing in the background the experimental PSD that we obtained by sieving. An additional element that supports the correctness of the approach comes from the comparison of the averaged values of the experimentally measured and computed moments of the VDF. Comparison of these moments resulted in an error for equation image smaller than 1% and from 5 to 10% for equation image, equation image, and equation image. We shall come back to the possible sources of these errors when discussing the results of the simulations based on the three-node quadrature.

Figure 5.

Two-node representations of the experimental and computational PSDs of powder C in the top and bottom layers of the bed.

The arrows symbolize the Dirac delta functions of the quadrature formulas, their positions and heights indicating respectively the quadrature nodes and weights on a void-free basis. For reference, the figure also reports the experimental PSD obtained by sieving. [Color figure can be viewed in the online issue, which is available at wileyonlinelibrary.com.]

Table 3. Experimental and Numerical Values, for a Two-Node Quadrature Formula, of Nodes and Weights Back-Calculated from the VDF Moments Using the PD Algorithm and Assuming a Void Fraction of 0.400
 s1 [μm]ϕ1 [−]s2 [μm]ϕ2 [−]
Top Layer
Bottom Layer

Also, the simulations based on the three-node quadrature formula ran smoothly. Starting from the initial packed condition, the bed expanded, under the action of the fluid, eventually reaching a global height in good agreement with what expected. In this instance as well the profiles of the quadrature nodes are flat, the bed being uniformly mixed and the PSDs the same in every point of the computational domain. Table 4 shows the pseudostationary values of quadrature nodes and weights in the top and bottom layers of the bed, comparing experimental and numerical findings. As we can see, little difference is found between the two layers, which indicates that the simulated fluidized bed well mixes. The nodes are predicted well, the maximum deviation between their experimental and numerical values being about 6%. However, the finite-mode representation of the VDF appears not to be exact, since the quadrature weights are affected by an error larger than for the two-node quadrature. Experimental evidence tells us that the lowest nodes, s1 = 88 μm and s2 = 244 μm, share the same weight, each one accounting for about 42% of the powder mass; the greatest, in contrast, has less importance, accounting for about 14% of the powder mass. The simulation, conversely, ascribes roughly the same weight to the lowest and greatest nodes, s1 = 90 and s3 = 378 μm, each one accounting for about 17% of the powder mass, and letting the intermediate node dominate, this accounting for about 64% of the powder mass. Figure 6 reports the three-node representations of the experimental and computational PSDs in the top and bottom layers of the bed, with in the background the experimental PSD measured by sieving. This larger error in the value of the weights is also confirmed by the errors committed on the tracked moments. Also in this case, we evaluate the error in terms of the difference of the experimentally measured and computed averaged moments of the VDF. The moment of order zero is again affected by an error smaller than 1%, while the error found for the higher-order moments with order from one to five ranges from 15 to 30%.

Figure 6.

Three-node representations of the experimental and computational PSDs of powder C in the top and bottom layers of the bed.

The arrows symbolize the Dirac delta functions of the quadrature formulas, their positions and heights indicating respectively the quadrature nodes and weights on a void-free basis. For reference, the figure also reports the experimental PSD obtained by sieving. [Color figure can be viewed in the online issue, which is available at wileyonlinelibrary.com.]

Table 4. Experimental and Numerical Values, for a Three-Node Quadrature Formula, of Nodes and Weights Back-Calculated from the VDF Moments Using the PD Algorithm and Assuming a Void Fraction of 0.400
 s1 [μm]ϕ1 [−]s2 [μm]ϕ2 [−]s3 [μm]ϕ3 [−]
Top Layer
Bottom Layer

Many are the possible sources of error. The powder being fluidized has a broad PSD, with diameters going from 45 to 425 μm, as shown in Figure 3. The superficial fluid velocity is sufficiently high to fully mix the fluid bed, being in particular much higher than the minimum fluidization velocity of the smallest particles. These, in consequence, tend to be dragged by the fluid in the freeboard of the bed and then fall back again in the dense bed. To reduce the computational time, in the simulations we considered a vessel whose height is twice the initial height of the resting powder. This height might not be sufficient to allow the small particles to fall back in the dense bed; if this happens, these escape the computational domain and are irreversibly lost. However, the contribution of this effect on the error is likely to be small, since this would be reflected on equation image. This quantity, which represents the total particle volume density (and therefore its integral throughout the bed represents the total volume of solid) is predicted with a very small error, which is furthermore very similar to the error we found when using the two-node quadrature.

Other possible sources of error are likely related to the spatial and temporal discretizations; these could be drastically reduced by using higher-order discretization schemes (which, however, corrupt the moments, as we shall see below) or by using finer grids and smaller time steps. A few tests performed with a time step 10 times smaller and a computational grid four times finer did not alter the observed behavior and confirmed the grid-independency of our results. In fact, with this much finer temporal and spatial discretization, some very limited improvement was detected at the expense of an unacceptably large computational time.

Although one might expect the opposite behavior, the overall error being larger with a three-node, instead of a two-node, quadrature is probably due to the fact that, since for this application higher-order moments are more sensitive to the numerical errors than lower-order moments, the resulting three-quadrature, which uses higher-order moments, badly approximates the real VDF, when compared to the quality of the approximation given by the two-node quadrature. This irregular behavior of the error that one observes when using QMOM with quadrature approximations of increasing order has been also highlighted by Grosch et al.58

The simulations based on the four-node quadrature did not run as smoothly as the previous ones. This is because after a few (275) time steps the PD algorithm yielded some negative (and thus unphysical) values of the nodes, this resulting into numerical instabilities that crashed the simulation. As the voidage contour plot in Figure 7 illustrates, this happens when the bed has just begun to expand.

Figure 7.

Numerical profiles of the void fraction and of the moment corruption check variables for the simulation based on the four-node quadrature formula.

[Color figure can be viewed in the online issue, which is available at wileyonlinelibrary.com.]

To confirm the nature of these instabilities, we implemented in Fluent, using define-adjust user-defined functions, an algorithm capable of checking the validity of moment sets. The algorithm first checks that the function generated by the natural logarithm of the moment set equation image vs. k is a convex function; then it also checks the positiveness of the Hankel–Hadamard determinants, but only for moments of order k greater than or equal to four. If both checks are successful, the set is valid and can be fed to the PD algorithm; otherwise, it is invalid and this is flagged by check variables.

Figure 7 illustrates this procedure for detecting moment corruption. The flag variable “overall-check” is equal to three in the cells where no solid is present, to one if the moment set is valid and to zero if it is not valid. The variable “check-45” is equal to zero only if the moment set is invalid because the determinant of the Hankel–Hadamard matrix of order three is negative, this meaning that the moments of order four and five are inconsistent with the others. Finally, the variable “check-67” examines the correctness of the moments of order six and seven through the positivity of the determinant of the Hankel–Hadamard matrix of order four. As we can observe in Figure 7, the moments that do not pass the validity checks are located where sharp node gradients develop; in particular, the moments begin to corrupt at the boundary separating the two powders. Another location where this problem often arises is the upper surface of the bed, where sharp node gradients are also present; this can be observed in the last snapshot, taken after 0.275 s.

By implementing this detection algorithm, running several simulations and changing various parameters (including the size of the grid cells, the size of the time step and the discretization scheme), we were able to confirm the key role played by the discretization scheme used. Our results show that when using the two–and three-node quadrature approximations (or in other words when transporting the first four and six moments), and when using the first-order upwind discretization scheme, QMOM is always stable. Numerical diffusion takes place, accelerating the mixing of the powders, but does not significantly alter the solution. The simple interpolation used in first-order upwind schemes preserves the validity of the moment set when only four or six moments are tracked. But if a number of moments greater than six is tracked, then higher-order moments corrupt, even with the first-order upwind discretization scheme. This issue does remain important even when working in double precision (as we did in the present work) and when improving the convergence criteria and/or increasing the maximum number of iterations per time step.

Our results also indicate that the introduction of higher-order discretization schemes (such as the simple second-order upwind) corrupt all the moments leading to instabilities and the crash of the simulations. Let us therefore discuss the numerical strategies that modelers can adopt to overcome the corruption problem. Here, we report two that are simple to implement in commercial codes and could be effective. The first is using the direct quadrature method of moments (DQMOM), instead of QMOM, whereas the second is replacing invalid sets of moments with valid ones in the computational cells where the problem arises.

QMOM and DQMOM both approximate density functions with quadrature formulas; the methods differ in how they calculate the nodes and weights of this formula. As pointed out, forcing these to agree with a set of independent lower-order moments, QMOM tracks the moments by integrating their transport equations and back-calculates nodes and weights; conversely, DQMOM tracks directly the latter, integrating transport equations that govern their evolution. In both models, the number of transport equations that one needs to solve is the same: if a quadrature formula with ν classes is adopted, QMOM requires 2ν equations for the moments, whereas DQMOM requires ν equations for the quadrature nodes and ν equations for the quadrature weights. However, to back-calculate the latter from the moments, QMOM also needs to run the PD algorithm in each computational cell at each time step. DQMOM needs this additional computation only once, at the beginning of the simulation when one has to initialize the quadrature nodes and weights (at t = 0 one knows the PSD of the system and therefore knows the values of the moments and not of the quadrature nodes and weights). However, at each time step the source terms of DQMOM (zero in our simple test case) must be calculated by solving a linear system, which when is singular (i.e., two identical nodes) cannot be inverted. We also point out that for multivariate systems the PD algorithm can no longer be used and back-calculating the quadrature nodes requires the use of other algorithms. Another important aspect is that DQMOM does not corrupt the moments of the distribution. This is because the quadrature nodes and weights can be advected as independent scalars and always result in valid moment sets. For details, we refer to Marchisio and Fox40 and Wright.47

DQMOM, however, also presents two major disadvantages, as Mazzei et al,34 have recently reported. In the presence of numerical diffusion, the transport equations governing nodes and weights feature not only diffusive terms but also source terms that relate to the node spatial gradients and the coefficient of numerical diffusion. As this coefficient is unknown and (in nonuniform computational grids) varies from cell to cell, estimating correctly the source terms is quite difficult. This undermines the method, since if the source terms (which the modeler has to implement) do not match sufficiently well the diffusive fluxes (which numerical diffusion generates), the nodes and weights are wrongly predicted; in other words, the moment set is valid, but the values of the nodes and weights – even if physically possible – are incorrect. Moreover, DQMOM (for its derivation) requires the continuity (in time and space) of the weight and node functions, making the description of problems with discontinuities (such as the mixing problem investigated here) very difficult to solve. For details, we refer to Mazzei et al.34 This explains why in this work we opted for an alternative numerical strategy, which we now briefly discuss.

A strategy that may overcome the problem of moment corruption in QMOM is replacing invalid moment sets, where and as soon as they appear, with similar valid ones. The objective is eliminating the invalid sets in the cells where they are detected, solving the problem locally before it can spread to the rest of the domain and corrupt all the simulation. An algorithm of this kind was developed by McGraw.59 It is an iterative minimization method that identifies and corrects the moment of index k that after adjustment maximizes the smoothness of the function equation image.

This is done by calculating a difference table of the function equation image vs. k up to the third order. A function is convex if the second-order difference is positive. As already mentioned, the convexity of equation image vs. k is a necessary condition for a moment set to be valid. If the difference table is constructed and the second-order difference contains negative elements, then the set is invalid. One way to cure the invalidity would be to change one of the moments, to transform the second-order difference vector into a positive sequence of numbers. However, this method would not be able to quantify how positive these numbers should be, since any positive sequence of numbers would correspond to a valid moment set. Therefore, a more stringent condition is used: that of the smallest third-order difference vector. In fact, the distribution resulting in a null third-order difference vector is the log-normal distribution, which results in a parabola for the function equation image vs. k. By changing one of the moments (the one that has to be changed the least) the algorithm tries to minimize the third-order difference vector, transforming the distribution into one that is as close to a log-normal as possible. The algorithm normally converges in few iterations, defining the index of the moment to be corrected and restoring the moment set. One can use this method when tracking sets of six or more moments. For four moments, and for the other cases where this method fails, another approach must be used. The simplest and most effective consists in replacing the moments with those of a log-normal distribution which shares with the original one only some correct moments. Because the corruption usually affects higher-order moments, one can normally find the parameters of the log-normal distribution from the lower-order moments equation image, equation image, and equation image, whose physical meaning, as stressed, is particularly important; then, using the log-normal distribution, one can calculate the other moments. For details, see McGraw59 and Petitti et al.54 As recently suggested by this last research group, when using higher-order discretization schemes or when tracking the evolution of higher-order moments (or in other words when using quadrature approximations with ν ≥ 3), one should always run the corrective algorithm to detect moment corruption and immediately restore the corrupted moments.

To overcome the problem of moment corruption, we implemented within Fluent the correction algorithm of McGraw,59 adapted to the specific QMOM version used in this work, by resorting to a define-adjust user-defined function. The correction operates as follows. When the moment set is found to be invalid then the correction procedure of McGraw is applied. As mentioned, this is based on the simple idea of correcting the one moment which needs to be changed the least to restore the convexity of the function equation image vs. k. If this first correction is unsuccessful then a second one is used. This replaces the corrupted moment set with that of a log-normal distribution that shares with the original set equation image, equation image, and equation image. Figure 7 reports the outcome of the correction. As we can see, the variable “Overall Check-After Correction” is equal to one in all the computational cells, this meaning that the validity of the moment set has been restored everywhere. In most cells, this was done by the first correction algorithm, but in some the second one acted (where the flag variable “Check-Log-normal Correction” is equal to one).

Although this algorithm has been successfully used in many cases, it did not solve the stability problem in ours. We should stress, however, that the correction algorithm has been applied so far only to multiphase systems simulated with QMOM with the assumption that the dispersed phase moves with one single velocity. This is therefore the first time that the algorithm is tested with multiple solid velocities. We tested it in all the cases were corruption was detected, that is, when we used the second-order upwind scheme and/or tracked eight moments. Unfortunately, the algorithm failed to overcome the problem, for it only delays divergence. This is illustrated in Figure 8 through one of the quadrature nodes, which is far easier to interpret than a higher-order moment. After some time, we observe that in some cells the node becomes negative; these cells are colored in white and are located where sharp node gradients develop. Without correction the simulation would stop now, whereas, thank to the corrective algorithm, it proceeds a bit further. But the algorithm fails to prevent the rapid spreading of corruption to larger regions of the bed, and eventually, half second later, the simulation crashes. As already mentioned, we found the same outcome in other tests in which we used finer computational grids, one with cells of 2.5-mm edge and another with cells of 1.0-mm edge, and smaller time steps of about 10−4 s (in some cases we had to use smaller computational domains and/or shorter real simulations times). The first simulation ran for about four real-time seconds and then crashed, whereas the second ran only for about three real-time seconds. In this instance, the corrective algorithm prevented the nodes from becoming negative, but not from taking on unphysical values; in particular, in some cells we found values lower than ten microns, which are impossible because the initial PSDs did not include particles with such a small size. We therefore concluded that the solution is indeed grid-independent and that smaller cells do not assist the numerics. Also note that this strategy increases the computational times so much to be impractical. Simulating 10 real-time seconds with cells of 5.0-mm edge takes about 10 days; reducing the edge to 1.0 mm increases the simulation running time 25-folds, bringing it in the region of eight months (of course, parallel processing alleviates the issue). This is why we had to use a smaller domain for the finest grid.

Figure 8.

Numerical profiles, for a four-node quadrature formula, of the third node within the fluidized bed.

Owing to moment corruption, in some computational cells (appearing in white) the node becomes negative. Then corruption spreads to neighboring cells. [Color figure can be viewed in the online issue, which is available at wileyonlinelibrary.com.]

As already mentioned, one possible reason for the failure of the correction algorithm is that it is coupled here – for the first time – with a new version of QMOM. The correction algorithm has worked well in QMOM implementations where the dispersed phase is assumed to move with the fluid in the low Stokes number limit60 or where all the particles of the disperse phases share the same velocity,54 which is different from that of the fluid. Instead, in our implementation each moment is convected with its own velocity, the method using a quadrature approximation with ν nodes and coupling it with a multifluid model with ν disperse phases. This QMOM implementation transports only pure moments (with respect to particle size and velocity), decoupling the evolution of the two internal coordinates. Even if this strategy was successful in some cases,61 in some others it was shown to be inadequate.62 We shall consider other solutions, such as different formulation of spatial discretization schemes and/or transport of mixed moments, in our future work.


In this work, we presented a new formulation of the QMOM. There are two novelties: (1) the model is based on a volume, rather than on a number, density function, so that it deals directly with volume fractions instead of number densities; (2) the moments, and in turn the quadrature classes, no longer share the same velocity, so that particles are free to mix and segregate. To test the model, we considered the simplest case possible: inert powders initially segregated that mix in physical space. Hence, particles do not nucleate, agglomerate, break, react, and wear, being allowed only to freely move in the bed. We selected this system because its simplicity allows to test the method, understand it better and highlight possible issues or limitations, a necessary analysis before one can tackle tougher problems.

We know that theoretically the higher the order of the quadrature formula, the better its accuracy. So, to model the mixing dynamics, we considered two-, three-, and four-node quadratures, assessing their numerical performances and comparing their predictions with experimental data. When we used a first-order spatial discretization scheme, the two-node quadrature gave very good results, predicting nodes and weights accurately (1% being the maximum deviation); the three-node quadrature predicted the nodes well (with 6% maximum deviation) but the weights poorly (with 60% being the maximum deviation); finally, the four-node quadrature corrupted the higher-order moments, crashing the simulation. Higher-order spatial discretization schemes exacerbated the problem. This numerical issue, described by McGraw59 and Wright,47 arises from the convective terms in the moment transport equations: each moment is correctly advected, but the relations among them, which make their set valid, are not preserved. This leads to unphysical node values that eventually crash the simulation.

There are various strategies to overcome this problem. In this work, we used a corrective algorithm developed by McGraw59 that replaces invalid moment sets, in the cells where they appear, with similar valid ones, attempting to solve the problem locally before it can spread to the rest of the domain and corrupt the entire simulation. Unfortunately, this procedure was not successful, which indicates that the problem of moment corruption needs to be investigated further. One possible strategy to be investigated and implemented in the future is based on the idea of calculating the moment flux by decomposing it into nodes and weights, and then use higher-order schemes only for the weights. This will be the subject of our future work.