Gilles Puy

Alexandre Boulch

Renaud Marlet

FLOT: Scene Flow on Point Clouds guided by Optimal Transport

We propose and study a method called FLOT that estimates scene flow on point clouds. We start the design of FLOT by noticing that scene flow estimation on point clouds reduces to estimating a permutation matrix in a perfect world. Inspired by recent works on graph matching, we build a method to find these correspondences by borrowing tools from optimal transport. Then, we relax the transport constraints to take into account real-world imperfections. The transport cost between two points is given by the pairwise similarity between deep features extracted by a neural network trained under full supervision using synthetic datasets. Our main finding is that FLOT can perform as well as the best existing methods on synthetic and real-world datasets while requiring much less parameters and without using multiscale analysis. Our second finding is that, on the training datasets considered, most of the performance can be explained by the learned transport cost. This yields a simpler method, FLOT0, which is obtained using a particular choice of optimal transport parameters and performs nearly as well as FLOT.

Introduction

Scene flow [START_REF] Vedula | Three-dimensional scene ow[END_REF] is the 3D motion of points at the surface of objects in a scene. It is one of the low level information for scene understanding, which can be useful, e.g., in autonomous driving. Its estimation is a problem which has been studied for several years using different modalities as inputs such as colour images, with, e.g., variational approaches [START_REF] Basha | Multi-view Scene Flow Estimation: A View Centered Variational Approach[END_REF], [START_REF] Wedel | Efficient dense scene flow from sparse or dense stereo data[END_REF] or methods using piecewise-constant priors [START_REF] Ma | Deep Rigid Instance Scene Flow[END_REF], [START_REF] Menze | Joint 3d estimation of vehicles and scene flow[END_REF], [START_REF] Vogel | Piecewise rigid scene flow[END_REF], or also using both colour and depth as modalities [START_REF] Battrawy | LiDAR-Flow: Dense Scene Flow Estimation from Sparse LiDAR and Stereo Images[END_REF], [START_REF] Hadfield | Kinecting the dots: Particle based scene flow from depth sensors[END_REF], [START_REF] Shao | Motion-Based Object Segmentation Based on Dense RGB-D Scene Flow[END_REF].

In this work, 3 we are interested in scene flow estimation on point clouds only using 3D point coordinates as input. In this setting, [START_REF] Dewan | Rigid scene flow for 3D LiDAR scans[END_REF] proposed a technique based on the minimisation of an objective function that favours closeness of matching points for accurate scene flow estimate and local smoothness of this estimate. In [START_REF] Ushani | A learning approach for real-time temporal scene flow estimation from LIDAR data[END_REF], 2D occupancy grids are constructed from the point clouds and given as input features to a learned background removal filter and a learned classifier that find matching grid cells. A minimisation problem using these grid matches is then proposed to compute a raw scene flow before a final refinement step. In [START_REF] Ushani | Feature Learning for Scene Flow Estimation from LIDAR[END_REF], a similar strategy is proposed but the match between grid cells is done using deep features. In [START_REF] Baur | Real-time 3D LiDAR Flow for Autonomous Vehicles[END_REF], [START_REF] Zou | Learning motion field of LiDAR point cloud with convolutional networks[END_REF], the point clouds are projected onto 2D cylindrical maps and fed in a traditional CNN trained for scene flow estimation. In contrast, FLOT directly consumes point clouds by using convolutions defined for them. The closest related works are discussed in Section 2.

We split scene flow estimation into two successive steps. First, we find softcorrespondences between points of the input point clouds. Second, we exploit these correspondences to estimate the flow. Taking inspiration from recent works on graph matching that use optimal transport to match nodes/vertices in two different graphs [START_REF] Maretic | GOT: An Optimal Transport framework for Graph comparison[END_REF], [START_REF] Peyr | Gromov-Wasserstein Averaging of Kernel and Distance Matrices[END_REF], [START_REF] Titouan | Optimal Transport for structured data with application on graphs[END_REF], we study the use of such tools for finding softcorrespondences between points.

Our network takes as input two point clouds captured in the same scene at two consecutive instants t and t + 1. We extract deep features at each point using point cloud convolutions and use these features to compute a transport cost between the points at time t and t + 1. A small cost between two points indicates a likely correspondence between them. In the second step of the method, we exploit these soft-correspondences to obtain a first scene flow estimate by linear interpolation. This estimate is then refined using a residual network. The optimal transport and networks' parameters are learned by gradient descent under full supervision on synthetic datasets.

Our main contributions are: (a) an optimal transport module for scene ow estimation and the study of its performance; (b) a lightweight architecture that can perform as well as the best existing methods on synthetic and real-world datasets with much less parameters and without using multiscale analyses; (c) a simpler method FLOT 0 obtained for a particular choice of the OT parameters and which achieves competing results with respect to the state-of-the-art methods. We arrive at this simplified version by noticing that most of the performance in FLOT are explained by the learned transport cost. We also notice that the main module of FLOT 0 can be seen as an attention mechanism. Finally, we discuss, in the conclusion, some limitations of FLOT concerning the absence of explicit treatment of occlusions in the scene.

Related Works

Deep Scene Flow Estimation on Point Clouds. In [START_REF] Behl | PointFlowNet: Learning representations for rigid motion estimation from point clouds[END_REF], a deep network is trained end-to-end to estimate rigid motion of objects in LIDAR scans. The closest related works where no assumption of rigidity is made are [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF], [START_REF] Wang | Deep parametric continuous convolutional neural networks[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF]. In [START_REF] Wang | Deep parametric continuous convolutional neural networks[END_REF], a parametric continuous convolution that operates on data lying on irregular structures is proposed and its efficiency is demonstrated on segmentation tasks and scene flow estimation. The method [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF] relies on PointNet++ [START_REF] Qi | PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space[END_REF] and uses a new flow embedding layer that learns to mix the information of both point clouds to yield accurate flow estimates. In [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], a technique to perform sparse convolutions on a permutohedral lattice is proposed. This method allows the processing of large point clouds. Furthermore, it is proposed to fuse the information of both point clouds at several scales, unlike in [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF] where the information is fused once at a coarse scale. In contrast, our method fuse the information once at the finest scale. Let us highlight that our optimal transport module is independent of the type of point cloud convolution. We choose PointNet++ but other convolution could be used. In [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF], PWC-Net [START_REF] Sun | PWC-Net: CNNs for Optical Flow Using Pyramid, Warping, and Cost[END_REF] is adapted to work on point clouds. The flow is estimated in a coarse-to-fine scale fashion showing improvement over the previous method. Finally, let us mention that recent works [START_REF] Mittal | Go with the Flow: Self-Supervised Scene Flow Estimation[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF] address this topic using self-supervision. We however restrict ourselves to full supervision in this work.

Graph Matching by Optimal Transport. Our method is inspired by recent works on graphs comparison using optimal transport. In [START_REF] Maretic | GOT: An Optimal Transport framework for Graph comparison[END_REF], the graph Laplacian is used to map a graph to a multidimensional Gaussian distribution that represents the graph structure. The Wasserstein distance between these distributions is then used as a measure of graph similarity and permits one to match nodes between graphs. In [START_REF] Nikolentzos | Matching node embeddings for graph similarity[END_REF], each graph is represented as a bag-of-vectors (one vector per node) and the measure of similarity is the Wasserstein distance between these sets. In [START_REF] Peyr | Gromov-Wasserstein Averaging of Kernel and Distance Matrices[END_REF], a method building upon the Gromov-Wasserstein distance between metric-measure spaces [START_REF] Mémoli | Gromovwasserstein distances and the metric approach to object matching[END_REF] is proposed to compare similarity matrices. This method can be used to compare two graphs by, e.g., representing each of them with a matrix containing the geodesic distances between all pairs of nodes. In [START_REF] Titouan | Optimal Transport for structured data with application on graphs[END_REF], it is proposed to compare graphs by fusing the Gromov-Wassertsein distance with the Wasserstein distance. The former is used to compare the graph structures while the latter is used to take into account node features. In our work, we use the latter distance. A graph is constructed for each point cloud by connecting each point to its nearest neighbours. We then propose a method to train a network that extract deep features for each point and use these features to match points between point clouds in our optimal transport module.

Algorithm Unrolling. Our method is based on the algorithm unrolling technique which consists in taking an iterative algorithm, unrolling a fixed number of its iterations, and replacing part of the matrix multiplications/convolutions in these unrolled iterations by new ones trained specifically for the task to achieve. Several works build on this technique, such as [START_REF] Gregor | Learning fast approximations of sparse coding[END_REF], [START_REF] Mardani | Neural Proximal Gradient Descent for Compressive Imaging[END_REF], [START_REF] Metzler | Learned D-AMP: Principled Neural Network based Compressive Image Recovery[END_REF], [START_REF] Mousavi | Learning to invert: Signal recovery via deep convolutional networks[END_REF] to solve linear inverse problems, or [START_REF] Chen | Trainable Nonlinear Reaction Diffusion: A Flexible Framework for Fast and Effective Image Restoration[END_REF], [START_REF] Liu | RARE: Image Reconstruction using Deep Priors Learned without Ground Truth[END_REF], [START_REF] Meinhardt | Learning Proximal Operators: Using Denoising Networks for Regularizing Inverse Imaging Problems[END_REF], [START_REF] Wang | Proximal Deep Structured Models[END_REF] in for image denoising (where the denoiser is sometimes used to solve yet another inverse problem). In this work, we unroll few iterations of the Sinkhorn algorithm and train the cost matrix involved in it. This matrix is trained so that the resulting transport plan provides a good scene flow estimate. Let us mention that this algorithm is also unrolled, e.g., in [START_REF] Genevay | Learning generative models with sinkhorn divergences[END_REF] to train a deep generative network, and in [START_REF] Sarlin | SuperGlue: Learning Feature Matching with Graph Neural Networks[END_REF] for image feature assignments.

Method

Step 1: Finding Soft-Correspondences between Points

Let p, q ∈ R n×3 be two point clouds of the same scene at two consecutive instants t and t + 1. The vectors p i , q j ∈ R 3 are the xyz coordinates of the i th and j th points of p and q, respectively. The scene flow estimation problem on point clouds consists in estimating the scene flow f ∈ R n×3 where f i ∈ R 3 is the translation of p i from t to t + 1.

Fig. 1. The point clouds p and q go through g which outputs a feature for each input point. These features (black arrows) go in our proposed OT module where they are used to compute the pairwise similarities between each pair of points (pi, qj). The output of the OT module is a transport plan which informs us on the correspondences between the points of p and q. This information permits us to compute a first scene flow estimate f , which is refined by h to obtain fest. The convolution layers (conv) are based on PointNet++ [START_REF] Qi | PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space[END_REF] but the OT module could accept the output of any other point cloud convolution. The dashed-blue arrows indicate that the point coordinates are passed to each layer to be able to compute convolutions on points.

Perfect World. We construct FLOT starting in the perfect world where p+f = P q, with P ∈ {0, 1} n×n a permutation matrix. The role of FLOT is to estimate the permutation matrix P without the knowledge of f . In order to do so, we use tools from optimal transport. We interpret the motion of the points p i as a displacement of mass between time t and t + 1. Each point in the first point cloud p is attributed a mass which we fix to n -1 . Each point q j then receives the mass n -1 from p i if p i + f i = q j , or, equivalently, if P ij = 1. We propose to estimate the permutation matrix P by computing a transport plan T ∈ R n×n + from p to q which satisfies T ∈ argmin

U∈R n×n + n i,j=1 C ij U ij subject to U1 = 1n -1 and U 1 = 1n -1 , (1)
where 1 ∈ R n is the vector with all entries equal to 1, and C ij 0 is the displacement cost from point p i to point q j [START_REF] Peyré | Computational optimal transport: With applications to data science[END_REF]. Each scalar entry T ij 0 of the transport plan T represents the mass that is transported from p i to q j . The first constraint in [START_REF] Basha | Multi-view Scene Flow Estimation: A View Centered Variational Approach[END_REF] imposes that the mass of each point p i is entirely distributed over some of the points in q. The second constraint imposes that each

Input: cost matrix C; parameters K, λ, > 0. Output: transport plan T. a ← 1n -1 ; U ← exp(-C/ ); for k = 1, . . . , K do b ← [(1n -1 ) (U a)] λ/(λ+ ) ; a ← [(1n -1 ) (U b)] λ/(λ+ ) ; end T ← diag(a) U diag(b) ;
Algorithm 1: Optimal transport module. The symbol denote the elementwise division and multiplication, respectively. points q j receives exactly a mass n -1 from some of the points p. No mass is lost during the transfer. Note that in the hypothetical case where the cost matrix C would contain one zero entry per line and per column then the transport plan is null everywhere except on these entries and the mass constraints are immediately satisfied via a simple scaling of the transport plan. In this hypothetical situation, the mass constraints would be redundant for our application as it would have been enough to find the zero entries of C to estimate P. It is important to note the mass constraints play a role in the more realistic situation where "ambiguities" are present in C by ensuring that each point gives/receives a mass n -1 and that each point in p has a least one corresponding point in q and vice-versa.

We note that n -1 P satisfies the optimal transport constraints. We need now to construct C so that T = n -1 P.

Real World and Fast Estimation of T. In the real world, the equality p + f = P q does not hold because the surfaces are not sampled at the same physical locations at t and t + 1 and because objects can (dis)appear due to occlusions. A consequence of these imperfections is that the mass preservation in (1) does not hold exactly: mass can (dis)appear. One solution to circumvent this issue is to relax the constraints in [START_REF] Basha | Multi-view Scene Flow Estimation: A View Centered Variational Approach[END_REF]. Instead of solving (1), we propose to solve min

U∈R n×n +   n i,j=1 C ij U ij + U ij (log U ij -1)   + λ KL U1, 1 n + λ KL U 1, 1 n , (2)
where , λ 0, and KL denotes the KL-divergence. The term 2) is an entropic regularisation on the transport plan. Its main purpose, in our case, is to allow the use of an efficient algorithm to estimate the transport plan: the Sinkhorn algorithm [START_REF] Cuturi | Sinkhorn Distances: Lightspeed Computation of Optimal Transport[END_REF]. The version of this algorithm for the optimal transport problem (2) is derived in [START_REF] Chizat | Scaling algorithms for unbalanced transport problems[END_REF] and is presented in Alg. 1. The parameter controls the amount of entropic regularisation. The smaller is, the sparser the transport plan is, hence finding sparse correspondences between p and q. The regularisation parameter λ adjust how much the transported mass deviates from the uniform distribution, allowing mass variation. One could let λ → +∞ to impose strict mass preservation.

U ij (log U ij -1) in (
Note that the mass regularisation is controlled by the power λ/(λ + ) in Alg. 1. This power tends to 1 when λ → +∞ to impose strict mass preservation and reaches 0 in absence of any regularisation. Instead of fixing the parameters , λ in advance, we let these parameters free and learn them by gradient descent along with the other networks' parameters.

We would like to recall that, in the perfect world, it is not necessary for the power λ/(λ + ) to reach 1 to yield accurate results as the final quality is also driven by the quality of C. In a perfect situation where the cost would be perfectly trained with a bijective mapping already encoded in C by its zero entries, then any amount of mass regularisation is sufficient to reach accurate results. This follows from our remark at the end of the previous subsection but also from the discussion in the subsection below on the role of C and the mass regularisation. In a real situation, the cost is not perfectly trained and we expect the power λ/(λ + ) to vary in the range of (0, 1) after training, reaching values closer to 1 when trained in a perfect world setting and closer to 0 in presence of occlusions.

Learning the Transport Cost. An essential ingredient in ( 2) is the cost C ∈ R n×n where each entry C ij encodes the similarity between p i to point q j . An obvious choice could be to take the Euclidean distance between each pair of points (p i , q j ), i.e., C ij = p i -q j 2 , but this choice does not yield accurate results. In this work, we propose to learn the displacement costs by training a deep neural network g : R n×3 → R n×c that takes as input a point cloud and output a feature of size c for each input point. The entries of the cost matrix are then defined using the cosine distance between the features g(p) i , g(q) j ∈ R c at points p i and q j , respectively:

C ij = 1 - g(p) i g(q) j g(p) i 2 g(q) j 2 • i • 2 dmax (p i -q j ) . (3)
The more similar the features g(p) i and g(q) j are, the less the cost of transporting a unit mass from p i to q j is. The indicator function

i • 2 dmax (p i -q j ) = 1 if p i -q j 2 d max , +∞ otherwise, (4)
is used to prevent the algorithm to find correspondences between points too far away from each other. We set d max = 10 m. In order to train the network g, we adopt the same strategy as, e.g., in [START_REF] Genevay | Learning generative models with sinkhorn divergences[END_REF] to train generative models or in [START_REF] Sarlin | SuperGlue: Learning Feature Matching with Graph Neural Networks[END_REF] for matching image features. The strategy consists in unrolling K iterations of Alg. 1. This unrolled iterations constitute our OT module in Fig. 1. One can remark that the gradients can backpropagate through each step of this module and allow us to train g.

On the Role of C and of the Mass Regularisation. We gather in this paragraph the earlier discussions on the role of C and the mass regularisation.

For the sake of the explanation, we come back in the perfect-world setting and consider [START_REF] Basha | Multi-view Scene Flow Estimation: A View Centered Variational Approach[END_REF]. In this ideal situation, one could further dream that it is possible to train g perfectly such that C ij is null for matching points, i.e., when P ij = 1, and strictly positive otherwise. The transport plan would then satisfy T = n -1 P with a null transport cost. However, one should note that the solution T would entirely be encoded in C up to a global scaling factor: the non-zero entries of T are at the zero entries of C. In that case, the mass transport constraints only adjust the scale of the entries in T. Such a perfect scenario is unlikely to occur but these considerations highlight that the cost matrix C could be exploited alone and could maybe be sufficient to find the appropriate correspondences between p and q for scene flow estimation. The mass transport regularisation plays a role in the more realistic case where ambiguities appears in C. The regularisation enforces, whatever the quality of C and with a "strength" controlled by λ, that the mass is distributed as uniformly as possible over all points. This avoids that some points in p are left with no matching point in q, and vice-versa.

FLOT 0 . FLOT 0 is a version of FLOT where only the cost matrix C is exploited to find correspondences between p and q. This method is obtained when removing the mass transport regularisation in (2), i.e., by setting λ = 0. In this limit, the "transport plan" satisfies

T = exp(-C/ ). (5)
T is then used in the rest of the method as if it was the output of Alg. 1.

Step 2: Flow Estimation from Soft-Correspondences

We obtained, in the previous step, a transport plan T that gives correspondences between the points of p, q. Our goal now is to exploit these correspondences to estimate the flow. As before, it is convenient to start in the perfect world and consider [START_REF] Basha | Multi-view Scene Flow Estimation: A View Centered Variational Approach[END_REF]. In this setting, we have seen that f = Pqp and that, if g is well trained, we expect n -1 P = T. Therefore, an obvious estimate of the flow is fi =

n j=1 P ij q j -p i = 1 n -1 n j=1 T ij q j -p i = n j=1 T ij q j n j=1 T ij -p i , (6)
where we exploited the fact that n j=1 T ij = n -1 in the last equality. In the real world, the first equality in (6) does not hold. Yet, the last expression in (6) remains a sensible first estimation of the flow. Indeed, this computation is equivalent to computing, for each point p i , a corresponding virtual point that is a barycentre of some points in q. The larger the transported mass T ij from p i to q j is, the larger the contribution of q j to this virtual point is. The difference between this virtual point and p i gives an estimate of the flow f i . This virtual point is a "guess" on the location of p i + f i made knowing where the mass from p i is transported in q.

However, we remark that the flow f estimated in ( 6) is, necessarily, still imperfect as it is highly likely that some points in p + f cannot be expressed as barycentres of the found corresponding points q. Indeed, some portion of objects visible in p might not visible any more in q due to the finite resolution in point cloud sampling. The flow in these missing regions cannot be reconstructed from q but has to be reconstructed using structural information available in p, relying on neighbouring information from the well sampled regions. Therefore, we refine the flow using a residual network:

f est = f + h( f ), (7)
where h : R n×3 → R n×c takes as inputs the estimated flow f and uses convolutions defined on the point cloud p.

Let us finally conclude this section by highlighting the fact that, in the case of FLOT 0 , [START_REF] Chizat | Scaling algorithms for unbalanced transport problems[END_REF]

simplifies to fi = n j=1 exp(-C ij / ) (q j -p i ) n j=1 exp(-C ij / ) . ( 8
)
On can remark that the OT module essentially reduces to an attention mechanism [START_REF] Vaswani | Attention is All you Need[END_REF] in that case. The attention mechanism is thus a particular case of FLOT where the entropic regularisation plays the role of the softmax temperature. Let us mention that similar attention layers haved been showed effective in related problems such as rigid registration [START_REF] Wang | Learning Correspondence From the Cycle-Consistency of Time[END_REF][START_REF] Wang | Deep Closest Point: Learning Representations for Point Cloud Registration[END_REF][START_REF] Wang | PRNet: Self-Supervised Learning for Partial-to-Partial Registration[END_REF].

Training

The network's parameters, denoted by θ, and , γ are trained jointly under full supervision on annotated synthetic datasets of size L. Note that to enforce positivity of , γ, we learn their log values. A constant offset of 0.03 is applied to to avoid numerical instabilities in the exponential function during training.

The sole training loss is the 1 -norm between the ground truth flow f and the estimated flow f est :

min θ 1 3L L l=1 M (l) (f ( ) est -f ( ) ) 1 , (9)
where M (l) ∈ R n×n is a diagonal matrix encoding an annotated mask used to remove points where the flow is occluded. We use a batchsize of 4 at n = 2048 and a batchsize of 1 at n = 8192 using Adam [START_REF] Kingma | Adam : A method for stochastic optimization[END_REF] and a starting learning rate of 0.001. The learning rate is kept constant unless specified in Section 4.

Similarities and Differences with Existing Techniques

A first main difference between FLOT and [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF] is the number of parameters which is much smaller for FLOT (see Table 1). Another difference is that we do not use any downsampling and upsampling layers. Unlike [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF], we do not use any multiscale analysis to find the correspondences between points. The information between point clouds is mixed only once, as in [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF], but at the finest sampling resolution and without using skip connections between g and h.

We also notice that [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF] rely on a MLP or a convnet applied on the concatenated input features to mix the information between both point clouds. The mixing function is learned and thus not explicit. It is harder to find how the correspondences are effectively done, i.e., identify what input information is kept or not taken into consideration. In contrast, the mixing function in FLOT is explicit with only two scalars , λ adjusted to the training data and whose roles are clearly identified in the OT problem [START_REF] Battrawy | LiDAR-Flow: Dense Scene Flow Estimation from Sparse LiDAR and Stereo Images[END_REF]. The core of the OT module is a simple cross-correlation between input features, which is a module easy to interpret, study and visualise. Finally, among all the functions that the convnets/MLPs in [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF] can approximate, it is unlikely that the resulting mixing function actually approximates the Sinkhorn algorithm, or an attention layer, after learning without further guidance than those of the training data.

Experiments

Datasets

As in related works, we train our network under full supervision using Fly-ingThings3D [START_REF] Mayer | A Large Dataset to Train Convolutional Networks for Disparity, Optical Flow, and Scene Flow Estimation[END_REF] and test it on FlyingThings3D and KITTI Scene Flow [START_REF] Menze | Joint 3d estimation of vehicles and scene flow[END_REF][START_REF] Menze | Object scene flow[END_REF]. However, none of the datasets provide point clouds directly. This information needs to be extracted from the original data. There is at least two slightly different ways of extracting these 3D data, and we report results for both versions for a better assessment of the performance. The first version of the datasets are prepared 4 as in [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF]. No occluded point remains in the processed point clouds. We denote these datasets FT3D s and KITTI s . The second version of the datasets are the ones prepared5 by [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF] and denoted FT3D o and KITTI o . These datasets contains points where the flow is occluded. These points are present at the input and output of the networks but are not taken into account to compute the training loss (9) nor the performance metrics, like in [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF]. Further information about the datasets is in the supplementary material. Note that we keep aside 2000 examples from the original training sets of FT3D s and FT3D o as validation sets, which are used in Section 4.3.

Performance Metrics

We use the four metrics adopted in [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF]: the end point error EPE; two measures of accuracy, denoted by AS and AR, computed with different thresholds on the EPE; a percentage of outliers also computed using a threshold on the EPE. The definition of these metrics is recalled in the supplementary material.

Table 1. Performance of FLOT on the validation sets of FT3Dp, FT3Ds, and FT3Do (top). Performance of FLOT measured at the output of the OT module, i.e., before refinement by h, on FT3Dp and FT3Ds (bottom). The corresponding performance on FT3Do is in the supplementary material. We report average scores and, between parentheses, their standard deviations. Please refer to Section 4.3 for more details. Let us highlight that the performance reported on KITTI s and KITTI o are obtained by using the model trained on FT3D s and FT3D o , respectively without fine tuning. We do not adapt the model for any of the method. We nevertheless make sure that the xyz axes are in correspondence for all datasets.

Study of FLOT

We use FT3D s , FT3D o and FT3D p to check what values the OT parameters , λ reach after training, to study the effect of K on the FLOT's performance and compare it with that of FLOT 0 . FT3D p is exactly the same dataset as FT3D s except that we enforce p + f = Pq when sampling the point to simulate the perfect world setting. The sole role of this ideal dataset is to confirm that the OT model holds in the perfect world, the starting point of our design.

For these experiments, training is done at n = 2048 for 40 epochs and takes about 9 hours. Each model is trained 3 times starting from a different random draw of θ to take into account variations due to initialisation. Evaluation is performed at n = 2048 on the validation sets. Note that the n points are drawn at random also at validation time. To take into account this variability, validation is performed 5 different times with different draws of the points for each of the Fig. 2. Illustration of correspondences, found by FLOT (K = 1) trained on n = 8192 (see Section 4.4), between p and q in two different scenes of KITTIs. We isolated one car in each of the scenes for better visualisation. The point cloud p captured at time t is represented in orange. The lines show the correspondence between a query point pi and the corresponding point qj * in q on which most the mass is transported: j * = argmax j Tij. The colormap on q represents the values in Ti where yellow corresponds to 0 and blue indicates the maximum entry in Ti and show how the mass is concentrated around qj * . trained model. For each score and model, we thus have access to 15 values whose mean and standard deviation are reported in Table 1. We present the scores obtained before and after refinement by h.

First, we notice that = 0.03 for all model after training. We recall that we applied a constant offset of 0.03 to prevent numerical errors occurring in Alg. 1 in the exponential function when reaching to small value of . Hence, the entropic regularisation, or, equivalently, the temperature in FLOT 0 , reaches its smallest possible value. Such small values favour sparse transport plans T, yielding sparse correspondences between p and q. An illustration of these sparse correspondences is provided in Fig. 2. We observe that the correspondences are accurate and that the mass is well concentrated around the target points, especially when these points are near corners of the object.

Second, the power λ/(λ + ), which controls the mass regularisation, reaches higher values on FT3D p than FT3D o . This is the expected behaviour as FT3D p contains no imperfection and FT3D o contains occlusions. The values reached on FT3D s are in between those reached on FT3D p than FT3D o . This is also the expected behaviour as FT3D s is free of occlusions and the only imperfections are the different sampling of the scene as t and t + 1.

Third, on FT3D p , FLOT reduces by 2 the EPE compared to FLOT 0 , which nevertheless already yields good results. Increasing K from 1 to 3 further reduces the error and stabilises at K = 5. This validates the OT model in our the perfect world setting: the OT optimum and perfect world optimum coincide.

Fourth, on FT3D s and FT3D o , the average scores are better for FLOT than FLOT 0 , except for two metrics at K = 5 on FT3D s . The nevertheless good performance of FLOT 0 indicates that most of it is due to the trained transport Table 2. Performance on FT3Ds and KITTIs. The scores of FlowNet3D and HPLFlowNet are obtained from [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF]. We also report the scores of PointPWC-Net available in [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF], as well as those obtained using the official implementation † . Italic entries are for methods publicly available but not yet published at submission time. cost C. On FT3D s and FT3D o , changing K from 1 to 3 has less impact on the EPE than on FT3D p . We also detect a slight decrease of performance when increasing K from 3 to 5. The OT model (2) can only be an approximate model of the (simulated) real-world. The real-world optimum and OT optimum do not coincide. Increasing K brings us closer to the OT optimum but not necessarily always closer to the real-world optimum. K becomes an hyper-parameter that should be adjusted. In the following experiments, we use K = 1 or K = 3. Finally, the absence of h has no effect on the performance on FT3D p , with FLOT still performing better than FLOT 0 . This shows that OT module is able to estimate accurately the ideal permutation matrix P on its own and that the residual network h is not needed in this ideal setting. However, h plays a important role on the more realistic datasets FT3D s and FT3D o , with an EPE divided by around 2 when present.

Performance on FT3D s and KITTI s

We compare the performance achieved by FLOT and the alternative methods on FT3D s and KITTI s in Table 2. We train FLOT using n = 8192 points, as in [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF]. The learning rate is set to 0.001 for 50 epochs before dividing it by 10 and continue training for 10 more epochs.

The scores of FlowNet3D and HPLFlowNet are obtained directly from [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF]. We report the scores of PointPWC-net available in [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF], as well as the better scores we obtained using the associated code and pretrained model. 6 The model sizes are obtained from the supplementary material of [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF] for FlowNet3D, and from the pretrained models provided by [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF] and [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF]. HPLFlowNet, PointPWC-Net and FLOT contain 19 M, 7.7 M, and 0.11 M parameters, respectively. FLOT performs better than FlowNet3D and HPLFlowNet on both FT3D s and KITTI s . FLOT achieves a slightly better EPE than PointPWC-Net on KITTI s and a similar one on FT3D s . However, PointPWC-Net achieves better accuracy and has less outliers. FLOT is the method that uses the less trainable parameters (69 times less than PointPWC-Net).

We illustrate in Fig. 3 the quality of the scene flow estimation for two scenes of KITTI s . We notice that FLOT aligns correctly all the objects. We also remark that the flow f estimated at the output of the OT module is already of good quality, even though the performance scores are improved after refinement.

Performance on FT3D o and KITTI o

We present another comparison between FlowNet3D and FLOT using FT3D o and KITTI o , originally used in [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF]. We train FlowNet3D using the associated official implementation. We train FLOT and FLOT 0 on n = 2048 points using a learning rate of 0.001 for 340 epochs before dividing it by 10 and continue training for 60 more epochs.

The performance of both methods is reported in Table 3. We notice that FLOT and FLOT 0 achieve a better accuracy than FlowNet3D with an improvement of AS of 8.8 points on FT3D o and 17.7 on KITTI o . The numbers of outliers are reduced by the same amount. FLOT at K = 1 performs the best with FLOT 0 close behind. On KITTI o , the best performing model are those of FLOT 0 and FLOT at K = 3.

The reader can remark that the results of FlowNet3D are similar to those reported in [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF] but worse on KITTI o . The evaluation on KITTI o is done differently in [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF]: the scene is divided into chunks and the scene flow is estimated within each chunk before a global aggregation. In the present work, we keep the evaluation method consistent with that of Section 4.4 by following the same procedure as in [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF]: the trained model is evaluated by processing the full scene in one pass using n random points from the scene.

Inputs p (orange) and q (blue)

Ground truth p + f (orange) and input q (blue) Estimated p + f (orange) and input q (blue) Refined p + fest (orange) and input q (blue)

Inputs p (orange) and q (blue) Ground truth p + f (orange) and input q (blue) Estimated p + f (orange) and input q (blue) Refined p + fest (orange) and input q (blue) Fig. 3. Two scene from KITTIs with input point clouds p, q along with the ground truth p + f , estimated p + f and refined p + fest using FLOT (K = 1) at n = 8192.

Conclusion

We proposed and studied a method for scene flow estimation built using optimal transport tools. It can achieves similar performance to that of the best performing method while requiring much less parameters. We also showed that the learned transport cost is responsible for most of the performance. This yields a simpler method FLOT 0 , which performs nearly as well as FLOT.

We also noticed that the presence of occlusions affects the performance of FLOT negatively. The proposed relaxation of the mass constraints in Eq. (2) permits us to limit the impact of these occlusions on the performance but does not handle them explicitly. There is thus room for improvements by detecting, e.g., by analysing the effective transported mass, and treating occlusions explicitly.

A Networks architecture

The convolutions used in g and h are based on PointNet++ [START_REF] Qi | PointNet++: Deep Hierarchical Feature Learning on Point Sets in a Metric Space[END_REF] in our implementation. Each convolution layer takes as inputs the point cloud r ∈ R n×3 on which the convolution are performed and the features φ

( ) i ∈ R c , i = 1, .
. . , n, coming from the previous layer . Note that these features are simply the point coordinates r at the input of g and the estimated flow f at the input of h. For each point r i , the indices N (r i ) of the m = 32 nearest neighbors to r i in r are then computed to obtain m features at point r i , each one satisfying

φ ( ) j , r j -r i ∈ R c +3 , (10)
j ∈ N (r i ). These features are passed through a MLP : R c +3 → R c consisting of a series of fully connected layer, instance normalisation layer with affine correction [?], and leaky ReLu with a negative slope of 0.1, repeated 3 times in the same order. Finally, the new feature at point r i is obtained after passing through a final max pooling layer:

φ ( +1) i = max j∈N (p i ) MLP (φ ( ) j , r j -r i ) ∈ R c , (11)
where the max is computed independently for each of the c channels. These computations are repeated for each point r i of the point cloud using the same MLP. The networks g and h share the same architecture, which is given in Table 4. Note nevertheless that the weights are not shared between g and h.

B Datasets

The datasets FT3D s and KITTI s are prepared7 as in [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF]. No occluded point remains in the processed point clouds: one can always find a point q j in q such that q j = p i + f i at full sampling rate N . However, in practice, most of the points p i do not have a direct matching in q as both point clouds are randomly and independently sub-sampled to keep only n N points. This simulates different sampling of the scene. Nevertheless, no object appears or disappears because of occlusions between t and t + 1. FT3D s contains 19, 640 training examples, from which we keep 2, 000 aside for validation, and 3, 824 test examples. KITTI s contains 200 examples for which 142 are used for test, as in [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF]. We do not use the remaining KITTI examples. The ground points in KITTI s are removed using a threshold on the height. All points whose depth is larger than 35 m are removed in both datasets.

The datasets FT3D o and KITTI o are the prepared8 by [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF]. In FT3D o , masks where the flow is non valid, e.g., due to occlusions, are provided in used in the training loss, like in [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF]. These masks are also used to compute the scores only on valid points at test time for all methods. However, the points where the corresponding flow is non-valid are present at the input of all networks. No [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF]. All points whose depth is larger than 35 m are removed in both datasets.

C Performance metrics

We use the following four metrics adopted in [START_REF] Gu | HPLFlowNet: Hierarchical Permutohedral Lattice FlowNet for Scene Flow Estimation on Large-Scale Point Clouds[END_REF], [START_REF] Liu | FlowNet3D: Learning Scene Flow in 3D Point Clouds[END_REF], [START_REF] Wu | PointPWC-Net: A Coarse-to-Fine Network for Supervised and Self-Supervised Scene Flow Estimation on 3D Point Clouds[END_REF]:

-EPE i = (f est ) i -f i 2 : end point error, averaged over all i; -AS: percentage of points such that EPE i < 0.05 or EPE i / f i 2 < 0.05; -AR: percentage of points such that EPE i < 0.1 or EPE i / f i 2 < 0.1 -Out.: percentage of points such that EPE i > 0.3 or EPE i / f i 2 > 0.1.

The above metrics are computed as follows. The point clouds p, q are obtained by selecting n random points out of the N provided points in the datasets. The flow is estimated and compared to the ground truth flow f on these n selected points. The scores are averaged over the whole validation/test set.

D Additional experimental results

D.1 Study of FLOT

We report in Table 5 the performance of FLOT obtained at the output of the OT module on FT3D o . The corresponding performance with refinement are available in the core of the paper. As on FT3D s , we remark that the refinement permits to improve the EPE by around 2, confirming its utility in presence of occlusions.

D.2 Computation time in the OT module

At n = 2048, the computation time10 in the OT module is 1.4, 2.0 and 2.2 ms for FLOT 0 , FLOT K = 1, FLOT K = 3, respectively. At n = 8192, the computation time in the OT module is 13.1, 16.0, 17.9 ms for FLOT 0 , FLOT K = 1, FLOT K = 3, respectively. This represents at most 8% of the total computation time which is itself at most of 27.8 ms at n = 2048 and 346 ms at n = 8192. Most of the time, at least 67% at n = 2048 and 86% at n = 8192, is spent in the feature extractor g. This shows that the OT module is responsible for just a small fraction of the total computation time.

Note that the time spent in the OT module is independent of the type of convolution used. Replacing our implementation of PointNet++ with a faster one or choosing a faster convolution will directly improve the computation time spend in g and h. Our implementation of the OT module can also be made faster by avoiding to compute densely the cost matrix C by restricting the computation to points that are less than d max meters apart, as these points never contribute to T.

Dataset

Table 3 .

 3 Performance on FT3Do and KITTIo.

	Dataset	Method	EPE	AS	AR	Out.
		FlowNet3D [15]	0.160	25.4	58.5	78.9
	FT3Do	FLOT0 FLOT (K = 1)	0.160 0.156	33.8 34.3	63.8 64.3	70.5 70.0
		FLOT (K = 3)	0.161	32.3	62.7	71.7
		FlowNet3D [15]	0.173	27.6	60.9	64.9
	KITTIo	FLOT0 FLOT (K = 1)	0.106 0.110	45.3 41.9	73.7 72.1	46.7 48.6
		FLOT (K = 3)	0.107	45.1	74.0	46.3

Table 4 .

 4 Architecture of g and h where layer 4 ( * ) is linear and used in h only.

	Layer	1	2	3	4 ( * )
	MLP size	32 -32 -32	64 -64 -64	128 -128 -128	3

  mask is provided for KITTI o . FT3D o contains 19, 999 training examples, which we keep 2, 000 aside for validation, and 2, 003 test examples. 9 KITTI o contains 150 test examples. The ground points in KITTI o are removed by

Table 5 .

 5 Performance of FLOT measured at the output of the OT module, i.e., before refinement by h, on FT3Do. We report the average scores and their standard deviations between parentheses.

	Dataset	K	EPE	AS	AR	Out.
		FLOT0	0.3539 (0.0028)	6.98 (0.11)	22.05 (0.28)	88.76 (0.14)
	FT3Do	1 3	0.3412 (0.0042) 0.3426 (0.0028)	7.55 (0.17) 7.38 (0.04)	23.50 (0.40) 23.09 (0.05)	88.02 (0.22) 88.21 (0.03)
		5	0.3440 (0.0021)	7.32 (0.05)	22.94 (0.16)	88.34 (0.09)

Code and pretrained model available at https://github.com/laoreja/HPLFlowNet.

Code and datasets available at https://github.com/xingyul/flownet3d.

Code and pretrained model available at https://github.com/DylanWusee/PointPWC.

Code available at https://github.com/laoreja/HPLFlowNet.

Datasets available at https://github.com/xingyul/flownet3d.

We removed 8 examples with all points marked as occluded (7 in the training set and 4 in the test set). One example which contains a non valid value in the training dataset is also removed.

Computed on a Nvidia GeForce RTX 2080 Ti.


Stéphane Berger

Céline Cau

Dit Coumes

Patrick Le Bescop

Denis Damidot

Stabilization of ZnCl2-containing

come

Introduction

Cementitious materials intended for radioactive waste solidification and stabilization usually include substantial amounts of ordinary Portland cement (OPC) in their formulation. However, wastes produced by nuclear activities are very diverse and some of their components may chemically react with cement phases or mixing water, thus reducing the quality of the product. For instance, ashes resulting from the incineration of technological wastes with neoprene and polyvinylchloride may contain substantial amounts of soluble zinc chloride [START_REF]Treatment and Conditioning of Radioactive Incinerator Ashes[END_REF]. This compound is known to have deleterious effects on OPC hydration. Setting is strongly delayed, and can even be inhibited at high zinc loadings [START_REF] Arliguie | Etude par calorimétrie de l'hydratation du ciment Portland en présence de zinc[END_REF][START_REF] Arliguie | Study of cement hydration in presence of zinc -influence of gypsum content[END_REF], while hardening is slowed down [START_REF] Ortego | Solidification of hazardous substances -a TGA and FTIR study of Portland cement containing metal nitrates[END_REF][START_REF] Cullinane | An Assessment of Materials That Interfere with Stabilization/Solidification Processes[END_REF][START_REF] Fernandez Olmo | Influence of lead, zinc, iron(III) and chromium(III) oxides on the setting time and strength development of Portland cement[END_REF][START_REF] Hamilton | Encapsulation of steel foundry dusts in cement mortar[END_REF]. Moreover, zinc in its ionic form is an environmental pollutant. Acute and chronic effects of zinc have been widely described for different aquatic organisms and exposure routes [START_REF] Spear | Zinc in Aquatic Environment: Chemistry, Distribution and Toxicology[END_REF]. In humans, a prolonged and excessive intake of zinc may lead to toxic effects, such as carcinogenesis, mutagenesis and teratogenesis, as a result of its accumulation [START_REF] Goyer | Toxic effect of metals[END_REF].

The reactivity of Zn(II) in a cementitious system depends both on pH and concentration. At low Zn(II) concentrations (<1 mmol/L), and pH within the range 11.7-12.8, sorption of Zn(II) to calcium silicate hydrate (C-S-H) is observed [START_REF] Ziegler | Sorption mechanisms of zinc to calcium silicate hydrate: sorption and microscopic investigations[END_REF][START_REF] Moulin | Lead and zinc retention during hydration of tri-calcium silicate, a study by sorption isotherms and 29 Si NMR spectroscopy[END_REF][START_REF] Komarneni | Reactions of some calcium silicates with metal cations[END_REF][START_REF] Ziegler | Sorption mechanisms of zinc to calcium silicate hydrate: X-ray absorption fine structure (XAFS) investigation[END_REF][START_REF] Stumm | Incorporation of zinc into calcium silicate hydrates -part I -formation of C-S-H (I) with C/S = 2/3 and its isochemical counterpart gyrolite[END_REF]. At high Zn(II) concentrations, the precipitation of ␤ 2 -Zn(OH) 2 (pH < 12) or calcium zincate Zn 2 Ca(OH) [START_REF] Fernandez Olmo | Influence of lead, zinc, iron(III) and chromium(III) oxides on the setting time and strength development of Portland cement[END_REF] •2H 2 O (pH > 12) is observed. The preferential formation of the former [START_REF] Arliguie | Etude de l'effet retardateur du zinc sur l'hydratation de la pâte de ciment Portland[END_REF][START_REF] Arliguie | Influence de la composition d'un ciment Portland sur son hydratation en présence de zinc[END_REF] or latter phase [START_REF] Ortego | Leaching effects on silicate polymerization -an FTIR and 29Si NMR study of lead and zinc in Portland cement[END_REF][START_REF] Yousuf | The interfacial chemistry of solidification/stabilization of metals in cement and pozzolanic materials systems[END_REF][START_REF] Asavapisit | Solution chemistry during cement hydration in the presence of metal hydroxide wastes[END_REF] on the cement particles has been postulated to explain the delay in cement hydration. Ettringite may also be involved in the retention of Zn(II). By investigating the leaching of cement pastes prepared with a 2 g/L Zn(II) solution, Poon et al. [START_REF] Poon | Mechanisms of metal fixation and leaching by cement-based fixation processes[END_REF] noticed that zinc release and ettringite destabilization occurred simultaneously.

Two approaches may be considered to reduce adverse waste-cement interactions. The first one is to perform a chemical pre-treatment of the waste to convert interfering species to compounds that are stable in cement. Various treatments have been investigated, aiming at precipitating Zn(II) as a phosphate, silicate or calcium compound. The reactions with phosphates and silicates are slow at ambient temperature, and only calcium precipitation would meet industrial requirements [START_REF] Drouin | Enrobage de déchets Melox pauvres en plutonium dans une matrice de liants hydrauliques[END_REF]. However, the pre-treatment step increases the complexity and cost of the process. The second approach, which is investigated in this article, aims at selecting a binder having improved compatibility with the waste.

Calcium sulfoaluminate (CSA) cements can have highly variable compositions, but all of them contain ye'elimite, also called Klein's compound or tetracalcium trialuminate sulfate, in their clinker [START_REF] Klein | Studies of calcium sulfoaluminate admixture for expansive cements[END_REF][START_REF] Mehta | Investigation on the products in the system C4A3S-CaSO4-CaO-H2O[END_REF][START_REF] Odler | Special inorganic cements[END_REF][START_REF] Sui | Recent progress in special cements in China[END_REF]. In this article, we will consider only sulfoaluminate belite cements in which ye'elimite (C 4 A 3 S1 ) predominates over belite (C 2 S) [START_REF] Andac | Microstructure and microchemistry of calcium sulfoaluminate cement[END_REF]. A wide range of gypsum contents (typically from 10 to 25%) can be ground with CSA clinker to produce different CSA cements, ranging from rapid-hardening (at low gypsum content) to shrinkage-compensating, and eventually to self-stressing (at high gypsum content) [START_REF] Glasser | High performance cement matrices based on calcium sulfoaluminate-belite compositions[END_REF]. The hydration progress of CSA cement pastes occurs by the initial precipitation of ettringite and aluminum hydroxide, followed by the precipitation of calcium monosulfoaluminate hydrate once calcium sulfate has been depleted [START_REF] Zhang | Hydration of calcium sulfoaluminate cement at less than 24 h[END_REF][START_REF] Kasselouri | A study on the hydration products of a non-expansive sulfoaluminate cement[END_REF][START_REF] Winnefeld | Calorimetric and thermogravimetric study on the influence of calcium sulfate on the hydration of ye'elimite[END_REF]. The contents of ettringite and calcium monosulfoaluminate hydrate are very sensitive to the amount of added sulfate: the former dominates in a gypsum-rich environment, whereas the latter tends to increase in a gypsum-deficient system [START_REF] Glasser | Calculation of chemical water demand for hydration of calcium sulfoaluminate cement[END_REF]. Depending on the composition of the minor phases, other hydration products may also precipitate, such as C-S-H [START_REF] Zhang | Hydration of calcium sulfoaluminate cement at less than 24 h[END_REF][START_REF] Glasser | Reactions of aluminate cements with calcium sulfate[END_REF], strätlingite [START_REF] Andac | Pore solution composition of calcium sulfoaluminate cement[END_REF][START_REF] Winnefeld | Hydration of calcium sulfoaluminate cements -experimental findings and thermodynamic modelling[END_REF][START_REF] Martin-Sedeno | Aluminum-rich belite sulfoaluminate cements: clinkering and early age hydration[END_REF], siliceous hydrogarnet [START_REF] Winnefeld | Hydration of calcium sulfoaluminate cements -experimental findings and thermodynamic modelling[END_REF] and/or hemi-or monocarboaluminate [START_REF] Zhang | Investigation of the microstructure and carbonation of CSA-based concretes removed from service[END_REF]. CSA cements may present at least two advantages to stabilize ZnCl 2 -rich wastes. Their hydration is much less retarded by zinc chloride than that of OPC [START_REF] Berger | Hydration of calcium sulfoaluminate cement by a ZnCl2 solution: investigation at early age[END_REF]. Moreover, their two main hydrates, ettringite and calcium monosulfoaluminate hydrate, are expected to provide good Zn 2+ confinement due to their flexible structure [START_REF] Albino | Potential application of ettringite generating systems for hazardous waste stabilization[END_REF][START_REF] Berardi | Matrix stability and leaching behaviour in ettringite-based stabilization systems doped with heavy metals[END_REF][START_REF] Pera | Valorization of automotive shredder residue in building materials[END_REF][START_REF] Peysson | Immobilization of heavy metals by calcium sulfoaluminate cement[END_REF][START_REF] Gougar | Ettringite and C-S-H Portland cement phases for waste immobilization: a review[END_REF][START_REF] Mc Carthy | Synthesis, crystal chemistry and stability of ettringite, a material with potential applications in hazardous waste immobilization[END_REF][START_REF] Auer | Investigation on MSW fly ash treatment by reactive calcium aluminates and phases formed[END_REF].

This work aimed at assessing the potential of CSA cement to stabilize wastes with high contents of soluble zinc chloride. A cement matrix material intended for immobilisation has to meet a number of requirements. The cemented waste form should set within a reasonable period of time and remain a stable monolith thereafter. Excessive heat generation during hydration should be avoided, as well as segregation of water. Moreover, the pollutants from the waste should be insolubilized. This work had thus three main issues:

-supplement the data concerning hydration at early age of CSA cements by a ZnCl 2 solution by following their mineralogical evolution over one year, -assess the influence on hydration of a brief temperature rise and fall at early age, as it may occur in a 200 L drum filled with a cemented waste, -investigate the strength development and volume change of ZnCl 2 -rich mortars as a function of their gypsum content.

Experimental

Materials and specimen preparation

CSA cements were prepared by mixing a ground industrial CSA clinker (composition in Table 1; /g) for 15 min. In the clinker, ye'elimite predominated over belite and mayenite. The other minor constituents, mainly phases containing titanium and iron, could be regarded as hydraulically inactive. Both cement pastes and mortars were made with the same w/c ratio of 0.55 for an easier comparison of their hydration rate. The selected ratio (0.55) resulted from a compromise. It enabled the preparation of mortars with an acceptable workability, while the corresponding cement pastes did not exhibit any bleeding. Moreover, the water content was slightly higher than the chemical water demand of the binder comprising 80% clinker and 20% gypsum, as assessed in a previous work [START_REF] Berger | Physico-chemical evolution of calcium sulfoaluminate cements with variable gypsum contents during hydration. Influence of a thermal excursion at early age[END_REF] (water demand corresponding to a w/c ratio of 0.54). A blend of two siliceous sands (0.1-1.2 mm), with a sand to cement weight ratio of 3, was used to optimize the workability and limit the heat release of fresh mortars during hydration. The mixing solution was prepared by dissolving analytical grade salt into distilled water (ZnCl 2 0o r 0.5 mol/L, which was representative of the concentration released in mixing water by actual incinerator ashes). Mixing was performed in a standardized laboratory mixer (following European standard EN 196-1) at low speed for 3 min and at high speed for 2 min. Cement pastes were cast into airtight polypropylene boxes (7 mL of paste per box), and cured at 20 • C for one year, or submitted to a thermal treatment in an oven (Memmert UFP500) for 7 d before being cured at 20 • C. Mortars were cast into 4 cm × 4cm× 16 cm moulds and cured for 7 d at 20 ± 1 • C and 95 ± 5% R.H., or submitted to a thermal treatment. The specimens were then demoulded, weighed, measured, and kept at room temperature in sealed bag or immersed under water at 20 ± 1 • C. Mortars were also used for semi-adiabatic calorimetry investigation.

Shorthand notations were used to refer to the different investigated compositions, as summarized in Table 2.

Complementary experiments were performed on cement suspensions (w/c ratio = 10) stirred under nitrogen atmosphere at room temperature for 7 d. The objective was to reach higher degrees of hydration than in cement pastes.

Thermal cycles

Thermal cycles were applied on pastes and mortars just after mixing with the objective to reproduce the temperature rise and fall occurring in a massive mortar block. In a preliminary study, it was shown that the temperature evolution in the heart of a 200 L metallic drum filled with a cemented waste (mortar with typical w/c and s/c ratios of 0.55 and 3) could be reasonably well assessed by recording the temperature during hydration of 800 mL of the same mortar sample placed in a semi-adiabatic Langavant calorimeter. Such curves were thus recorded for each investigated cement composition (Fig. 1). Temperature profiles were then defined by interpolating the curves as closely as possible. Since cement pastes produced more heat than mortars, some corrections were implemented when necessary to keep similar temperature evolutions in the heart of mortars and their corresponding pastes with the same gypsum content.

Characterization methods

Hydration of mortars was followed by calorimetry according to the semi-adiabatic method (European standard . This latter consisted in introducing 1575 ± 1 g of fresh mortar into a cylindrical container, which was then placed into a calibrated Langavant calorimeter to determine the quantity of heat emitted versus the temperature evolution. The core temperature of pastes and mortars was measured with waterproof penetration probes (type K TC) and recorded with a Testo 735-2 thermometer.

Hydration was stopped after fixed periods of time (from 5 min to 1 year) by successively immersing the crushed pastes into isopropanol and drying them in a controlled humidity chamber (with 20% relative humidity at 22 ± 2 • C).

Crystallized phases were identified by X-ray diffraction (Siemens D8 -copper anode K␣1 = 1.54056 Å generated at 40 mA and 40 kV) on pastes and mortars ground to a particle size of less than 100 m. Concerning mortars, the samples were first crushed coarsely and a part of the sand grains was removed by sieving at 200 m before the grinding step to a particle size below 100 m. The acquisition range was from 5 • to 60 • 2 in 0.02 • 2 steps with integration at the rate of 50 s per step. The evolution of the amounts of reactants and products over time was qualitatively assessed from XRD patterns by measuring the areas of corresponding reflections using the EVA software (© 2005 Bruker AXS). Thermogravimetric analyses were carried out under nitrogen on 50 ± 2 mg of sample using a TGA/DSC Netzsch STA409 PC instrument at 10 Expansion under water was assessed on mortar bars placed into cells filled with 700 mL of demineralised water (one sample per cell). Their length change was measured with displacement gauges (linear variable differential transducers, measurement range ±1 mm, resolution 1 m). A sketch of the device is given in [START_REF] Benard | Dimensional stability under wet curing of mortars containing high amounts of nitrates and phosphates[END_REF]. Measurements were recorded every hour over approximately one year, which allowed an accurate monitoring of the samples evolution. Mass gain was assessed on additional specimens kept under water at room temperature after 7 d, 28 d, 90 d, 180 d and 360 d. Total water porosity ˚w was estimated by measuring the total water amount removed from water-saturated mortar samples after drying at 60 • C (to limit ettringite degradation) until stable mass loss (Eq. ( 1)).

˚w (%) = m a -m d m a -m w × 100 (1)
where m a and m w are the water-saturated sample mass values measured in air and under water, respectively, and m d the mass of the dried sample measured in air.

The pore solution composition of cement pastes was determined by extracting their interstitial solution using high pressure. A crushed sample (≈300 g) was placed in the cavity of the pore pressing device. Pressure was then applied to the piston at a rate of 20 MPa/min, with plateaux at 110, 225 and 340 MPa, until a maximum load pressure of 450 MPa (Walter Bai 102/3000-HK4). The pore solution was collected in a plastic tube maintained in slight depression. At the end of the experiment the sampling tube was transferred into a N 2 glovebox, and the collected solution was filtered at 0.2 m before analysis by ICP-AES.

Thermodynamic calculations were carried out using the CHESS software [START_REF] Van Der Lee | Thermodynamic and Mathematical Concepts of CHESS[END_REF]. The solubility constants of CSA cement hydrates were previously given in [START_REF] Berger | Physico-chemical evolution of calcium sulfoaluminate cements with variable gypsum contents during hydration. Influence of a thermal excursion at early age[END_REF], those of the Kuzel's and Friedel's salts were taken from [START_REF] Balonis | Impact of chloride on the mineralogy of hydrated Portland cement systems[END_REF]. The data relative to zinc-containing phases are summarized in Table 3.

Results

Rate of hydration

The rate of hydration of the cement pastes prepared with a 0.5 mol/L ZnCl 2 solution was investigated as a function of their gypsum content. The core temperature of the materials either cured at 20 • C or in a semi-adiabatic Langavant calorimeter was recorded versus time, and the residual ye'elimite content of the pastes was assessed from their XRD patterns (Fig. 2). Hydration of the gypsumfree cement at room temperature was retarded by almost 70 h compared with a reference prepared with pure water (Fig. 2a). After 1 d, only 18% of ye'elimite were depleted, versus 83% for the reference. Simulating a temperature rise up to 85 • C strongly reduced the hydration delay. The heat flux reached its maximum after 14.3 h, instead of 12.1 h for the reference with pure water cured under the same conditions, and ye'elimite was almost fully consumed after 24 h (residual of 2%) (Fig. 2b). Raising the gypsum content of the binder to 20% was another way to increase the rate of hydration. The maximum temperature was reached after 8.3 h in sample CZ2, instead of 79 h for sample CZ0 (Fig. 2a andc). Similarly, with a thermal cycle, the heat flux reached its maximum after 3.2 h in sample CZ2t instead of 14.3 h in sample CZ0t (Fig. 2d). With 20% gypsum, the retardation induced by zinc chloride was almost suppressed: pastes CE2 and CZ2 exhibited rather similar ye'elimite depletion rates (Fig. 2c). The origin of the retardation induced by ZnCl 2 on gypsum-free CSA cement was discussed in a previous work [START_REF] Berger | Hydration of calcium sulfoaluminate cement by a ZnCl2 solution: investigation at early age[END_REF]. Unlike what would be expected for OPC, the delay results from the

•7H2OZ n 2+ +SO4 2-+7H2O → ZnSO4•7H2O 1.8683 ZnSO4•6H2OZ n 2+ +SO4 2-+6H2O → ZnSO4•6H2O 1.6846 ZnSO4•H2OZ n 2+ +SO4 2-+H2O → ZnSO4•H2O 0.5383 ZnSO4 Zn 2+ +SO4 2-→ ZnSO4 -3.5425 Zn2SO4(OH)2 2Zn 2+ +SO4 2-+2H2O → Zn2SO4(OH)2 +2H + -7.5816 Zn3O(SO4)2 3Zn 2+ + 2SO4 2-+H2O → Zn3O(SO4)2 +2H + -19.1188 Zn4(OH)6SO4 4Zn 2+ +SO4 2-+6H2O → Zn4(OH)6SO4 +6H2O -28.4000
Data from the Minteq database [START_REF] Allison | MINTEQA2/PRODEF2, A Geochemical Assessment Model for Environmental Systems: Version 3.0 User's Manual[END_REF] and from [START_REF] Ziegler | The solubility of calcium zincate (CaZn2(OH)6•2H2O)[END_REF].

strong retardation caused by chloride anions, which is partly balanced by an accelerating effect due to zinc cations. Sulfates also strongly accelerate hydration and, when gypsum is added to the binder at a level of 20%, the delay is almost compensated.

Mineralogical evolution over one year

The mineralogical changes of the cement pastes with ongoing hydration were determined by XRD and TGA (Figs. 34567). Fig. 8 summarizes the evolution over time of the hydrate assemblage in the four investigated materials (CZ0, CZ0t, CZ2, CZ2t).

Paste CZ0

During the first 5 min of hydration, a rapid stiffening of the paste occurred simultaneously with the precipitation of gypsum and of an unidentified compound, subsequently referred to as "phase ", which was responsible for two diffraction peaks at 2 = 7.8 • (most intense) and 15.7 • , and for weight losses at 95 • C and 195 • C by TGA. SEM observations of the paste showed the formation of crystals with platelet morphology, which were too fine to be analysed by EDX (Fig. 9). Up to 24 h, only small amounts of hydrates precipitated, mainly ettringite, which replaced gypsum, phase , amorphous aluminum hydroxide (AH 3 ), and Friedel's salt, an AFm phase in which the positively

CAH 10 E E E E E E E E E+Y E+F E E E E E E Y+E+K K K K K+F K+F F F Y+F CAH
Y Y Y E E E+Y+P E E F E G E E E Y E E E E E E+Y G E Y E E Y E E C2S YE E Y E E E+Y E E E E+Y E+Y Y
F+Y F+Y E E E F G E+F E E E E E G E Y F F Y E E E E E G E F+G P+E Y E E F Y E FF E E E E E+Y E Y Fig. 6
. X-ray diffraction analysis of cement paste CZ2t cured at 20 age. To assess the long term evolution of paste CZ0, the cement was hydrated using the suspension technique (w/c = 10) with the same [ZnCl 2 ]/cement ratio as in the cement paste (the ZnCl 2 concentration in the solution was thus decreased to 0.0275 mol/L to take into account the dilution factor of the suspension). After one week of mixing, the reactive anhydrous phases of the clinker (ye'elimite and mayenite) were totally depleted. The water loss determined by TGA reached 32%, which corresponded to a w/c ratio of 0.47. The chemical water demand of the clinker was thus lower than the investigated w/c ratio (0.55). The phase assemblage comprised monosulfoaluminate and Kuzel's salt, ettringite, AH 3 and strätlingite (Fig. 10). Crystallized Zn-containing phases were not detected. In addition to the precipitation of Cl-AFm phases, the CSA clinker hydrated with a ZnCl 2 solution differed from a reference prepared with pure water by its higher ettringite content, and lower strätlingite content. As chloride ions partly replaced sulfates in the structure of the AFm phases, more sulfates were available for ettringite precipitation in CZ0 than in CE0. Precipitation of strätlingite is well predicted by thermodynamic calculations simulating the addition of belite to a phase assemblage resulting from the hydration of ye'elimite [START_REF] Winnefeld | Hydration of calcium sulfoaluminate cements -experimental findings and thermodynamic modelling[END_REF][START_REF] Berger | Physico-chemical evolution of calcium sulfoaluminate cements with variable gypsum contents during hydration. Influence of a thermal excursion at early age[END_REF]. Strätlingite is formed according to balance equation C 2 S+AH 3 +5H→ C 2 ASH 8 as long as AH 3 is present in the system. Precipitation of C-S-H requires an excess of belite over ye'elimite. Two assumptions may be considered to explain the low content of strätlingite in suspension CZ0:

-the local precipitation of C-S-H near C 2 S grains could not be excluded, -or more likely, belite was not fully reacted, its hydration being strongly delayed by zinc chloride.

Paste CZ0t

The temperature in paste CZ0t exceeded 70 • C from 14 to 26 h. As already observed for CSA cement pastes prepared with pure water [START_REF] Berger | Hydration of calcium sulfoaluminate cement by a ZnCl2 solution: investigation at early age[END_REF], high temperatures promoted the precipitation of monosulfoaluminate instead of ettringite, which had a smaller stability domain under these conditions [START_REF] Damidot | Thermodynamic Investigation of the CaO-Al2O3-CaSO4-H2O system at 50 • C and 85 • C[END_REF]. After 1 d, the amount of monosulfoaluminate tended to decrease, together with that of Friedel's salt, to form Kuzel's salt. This evolution was consistent with the results of Glasser et al. [START_REF] Glasser | Stability and solubility relationships in AFm phases: part I. Chloride, sulfate and hydroxide[END_REF] and Balonis et al. [START_REF] Balonis | Impact of chloride on the mineralogy of hydrated Portland cement systems[END_REF], showing that the binary monosulfoaluminate/Friedel's salt system is unstable and leads to the formation of Kuzel's salt and monosulfoaluminate (respectively Friedel's salt) if the [SO 4 ]/[Cl 2 ] ratio is above (respectively below) 1. The temperature rise also induced a faster consumption of phase , which could no longer be detected beyond 5 h (instead of 24 h for the paste cured at room temperature), and CAH 10 was never observed (whereas it persisted from 7 d to 1 year in paste CZ0).

Paste CZ2

When the CSA clinker was blended with 20% gypsum, precipitation of phase at early age increased. However, this compound could not be detected beyond 1 d. The main hydrates were then ettringite and AH 3 . The gypsum addition clearly promoted the precipitation of AFt instead of AFm phases as already observed for pastes prepared with pure water [START_REF] Berger | Physico-chemical evolution of calcium sulfoaluminate cements with variable gypsum contents during hydration. Influence of a thermal excursion at early age[END_REF]. Only small amounts of Friedel's salt were detected after 7 d, and increased slightly over one year, meaning that a significant fraction of chlorides should remain insolubilized. The pore solutions of 1 d, 7 d, and 28 d old cement pastes (w/c raised to 0.75 to collect enough solution) were extracted using pressure, and analysed (Table 4). As expected, their chloride concentrations were important, ranging from 150 to 250 mmol/L, and counterbalanced by high concentrations of calcium, sodium and potassium. Conversely, their zinc concentration always remained below the detection limit (<2 mol/L). The long-term evolution of cement paste CZ2 was assessed from the analysis of a cement suspension (w/c = 10, [ZnCl 2 ] = 0.0275 mol/L in the solution to maintain a constant [ZnCl 2 ] to [cement] ratio). After one week of stirring at room temperature, ye'elimite and mayenite were totally consumed. The precipitated hydrates were mainly ettringite and AH 3 , with smaller amounts of strätlingite, Friedel's and Kuzel's salts (Fig. 10). For comparison, the hydrate assemblage of a reference prepared with pure water contained ettringite, AH 3 , strätlingite and monosulfoaluminate which formed once gypsum was depleted. In the presence of ZnCl 2 , monosulfoaluminate was replaced by the Kuzel's salt given the instability of the monosulfoaluminate/Friedel's salt system.

Paste CZ2t

Paste CZ2t exhibited very rapid hydration. After only 5 h, gypsum was almost totally consumed and the residual ye'elimite content reached 7%. Phase briefly precipitated at early age, but was rapidly depleted: it was no longer detected after 2 h. The hydrates assemblage observed from 5 h to one year comprised ettringite, Friedel's salt and AH 3 . Friedel's salt was precipitated in much higher amounts than in the paste cured at 20 • C, while the ettringite content was slightly lower. With rising temperature, there was a drop in the thermodynamic stability of ettringite in favour of Friedel's salt. However, with the subsequent decrease in temperature, ettringite could form again at the expense of Friedel's salt: between 7 d and one year, the X-ray diffraction patterns showed a slight increase in the ettringite peaks, and a decrease in those corresponding to Friedel's salt.

Modelling of the mineralogical evolution

The chronological evolutions of the phases precipitated during hydration in pastes CZ0 and CZ2 were in fairly good agreement (excepting the Zn-containing phases) with thermodynamic calculations simulating the hydration of ye'elimite, or ye'elimite + gypsum, in a ZnCl 2 solution. Fig. 11a shows for instance the modelling of the progressive hydration of ye'elimite in sample CZ0 with a w/c ratio of 10 (corresponding to the suspension experiment). The calculation predicted the successive precipitation of AH 3 , ettringite (pH > 10), Friedel's salt (pH > 11.5), Kuzel's salt (pH > 11.8) with consumption of Friedel's salt, and finally monosulfoaluminate. The final phase assemblage (AH 3 , ettringite, Kuzel's salt and monosulfoaluminate) was in good agreement with the experiment (see Fig. 10). The same calculation performed at a lower 2+ , 55 mmol/L of Cl -and 116.2 mmol/L of gypsum (simulation of the progressive hydration of ye'elimite in sample CZ2 with a w/c ratio of 10). (c) Dissolution of ye'elimite (from 0 to 90 mmol/L) in a suspension containing initially 27.5 mmol/L of Zn 2+ , 55 mmol/L of Cl -, 116.2 mmol/L of gypsum and 5.5 mmol/L of C12A7 (simulation of the progressive hydration of ye'elimite in sample CZ2 with a w/c ratio of 10 -mayenite is considered as fully hydrated). The zinc-containing phases were omitted for better clarity. The model predicted the successive precipitation of simonkolleite (Zn5(OH)2Cl2) (pH ≤ 8.5), Zn(OH)5 (8.5 ≤ pH ≤ 11.7), and hydroxyzincate (CaZn2(OH)6) (pH ≥ 11.7). Zincite (ZnO) is more stable than zinc hydroxide, but is known to precipitate with a slower rate. It was thus excluded from the database. w/c ratio, such as in the cement paste, showed that, in the very first stages of hydration, the system was also oversaturated with respect to gypsum. Gypsum was actually observed in paste CZ0 5 min after the beginning of hydration. Simulating the complete hydration of ye'elimite in sample CZ2 at a w/c ratio of 10 led to the total consumption of gypsum, and to the precipitation of AH 3 , ettringite and Friedel's salt (Fig. 11b). In the suspension experiment, small amounts of Kuzel's salt were also noticed (Fig. 10). Precipitation of Kuzel's salt could be reproduced by the model by taking into account the full hydration of mayenite, in addition to ye'elimite (Fig. 11c).

For both systems (CZ0 and CZ2), the calculations overestimated the amount of AH 3 precipitated at the beginning of hydration. In the cement pastes, the latter may have been limited by the incorporation of aluminum in transient phase .

Compressive strength

The properties of hardened materials were investigated on heattreated mortars MZ0t and MZ2t to take into account the significant temperature rise occurring in actual cemented waste drums as a result of the heat generated by hydration. Fig. 12 shows the evolution with time of their compressive strength, which increased very rapidly. It already reached 89 ± 5% of the one-year strength after 1 d, compared with 79 ± 9% for mortars ME0t and ME2t prepared with pure water. Hardening was thus accelerated by zinc chloride. The compressive strength continued to increase at later age, but much more slowly. This result is consistent with the rapid hydration of the binders, which exhibited only small mineralogical evolutions beyond 1 d. Zinc chloride also improved the one-year strength of the mortars, especially when the cement contained gypsum (increase of 31 ± 7% for MZ2t compared to ME2t, and 13 ± 5% for MZ0t compared to ME0t). These results could not be simply explained by differences in the total water porosity of the samples. For instance, mortars MZ2t and ME2t had almost the same total porosity, but exhibited very different compressive strengths. Possible modifications of the ITZ might be involved, as well as differences in the pore distribution. Preliminary attempts to characterize this distribution using mercury intrusion porosimetry were not successful. The total porosities measured with this technique were unexpectedly high. We suspected that the high vacuum required by the method damaged ettringite due to a strong dehydration, and thus modified the microstructure.

Volume stability under water

The length change and mass gain of the mortars cured under water are summarized in Fig. 13. The samples were immersed after 7 d and exhibited a rapid mass increase which may have had different origins: water uptake due to capillary suction to compensate for water depleted by hydration, water penetration due to osmosis (the interstitial solution being more concentrated than the curing solution), and continued hydration. The mass gain was rapid during the first 28 d and tended to stabilize after 90 d for samples ME2t and MZ2t, but not for the gypsum-free mortars which also exhibited higher water uptake.

MZ0t

Swelling under water was also highly dependent on the initial gypsum content of the binder and on the ZnCl 2 concentration in the mixing solution. Mortar MZ2t exhibited the same behaviour as reference ME2t, with a small length change which remained below 400 m/m after one year. On the contrary, the expansion of mortar MZ0t (+4100 m/m at 1 year) was almost twice that of mortar ME0t (+2000 m/m), which was itself characterized by high swelling compared with gypsum-containing materials. This significant expansion did not induce any cracking of the samples at the macroscopic scale. However, the wet curing decreased the compressive strength of mortar MZ0t (24 MPa) by 42% and increased its water porosity (15.8 ± 0.2%) by 12% compared with curing in a sealed bag.

In order to understand the origin of the volume instability of gypsum-free materials, one-year-old mortars MZ0t and MZ2t were characterized by X-ray diffraction after their curing under water, and their mineralogy was compared to similar samples cured in sealed bags (Fig. 14). Mortar MZ0t exhibited significant mineralogical changes: under wet curing, precipitation of strätlingite, ettringite and monosulfoaluminate was observed, whereas the amount of chloro-AFm phases (Friedel's and Kuzel's salt) tended to decrease. This could result from the continuation of hydration, but also from the leaching of chlorides. Their concentration in the curing solution (750 mL for a 4 cm × 4cm× 16 cm specimen) after one year reached indeed 19 mmol/L. Three main processes could contribute to the volume change:

-the retarded ettringite formation, due to the restart of hydration and/or to the reprecipitation of primary ettringite decomposed by the thermal excursion, -the precipitation of strätlingite from C 2 S and AH 3 ( V/V = +3.5%), -the transformation of chloro-AFm phases into monosulfoaluminate, the Friedel's salt (268 mL/mol) and Kuzel's salt (289 mL/mol) having a smaller molar volume than monosulfoaluminate (309 mL/mol).

By contrast, the mineralogy of sample MZ2t was less dependent on the curing conditions. The ongoing hydration induced by wet curing led to the precipitation of small amounts of strätlingite and Kuzel's salt, while Friedel's salt was partly depleted. The amount of ettringite did not exhibit noticeable variations. The leaching of chlorides was reduced (11 mmol/L in the curing solution). Under wet curing, the porosity of mortar MZ2t (12.2 ± 0.2%) decreased by 10%, and its compressive strength (53 MPa) slightly increased (by 8%), as compared with curing in a sealed bag.

Zinc confinement by the cement matrix

The CSA cement matrix provided very good Zn 2+ confinement, whatever its gypsum content.

(i) The zinc concentration in the pore solution extracted from paste CZ2t aged of 1 d, 7 d and 28 d always remained below the detection limit of the analytical method (2 mol/L). (ii) Mortars MZ0t and MZ2t were cured under water for one year to investigate their volume stability. At the end of the experiments, the solutions were analysed and were found free of zinc.

Conclusion

The purpose of this work was to assess the potential of CSA cements for ZnCl 2 stabilization/solidification. The main conclusions can be summarized as follows.

1. CSA cements were interesting candidates. Their setting was never inhibited, even at high ZnCl 2 (0.5 mol/L) in the mixing water, and zinc was readily insolubilized. Blending the CSA clinker with 20% gypsum was recommended for several reasons. (i) The hydration delay observed for a gypsum-free binder was suppressed. The strong retardation caused by chloride anions was indeed offset by the cumulative accelerating effects of zinc and sulfate ions. (ii) The temperature rise and cumulative heat produced during hydration were reduced. (iii) The compressive strength of the hardened materials was improved and their expansion under wet curing strongly limited. (iv) Their mineralogy was less dependent on the thermal history at early age. 2. When the CSA cements were hydrated with a ZnCl 2 solution, chloro-AFm precipitated. Fully hydrated materials contained ettringite, amorphous aluminum hydroxide, strätlingite and Kuzel's salt irrespective of the gypsum content. In addition, monosulfoaluminate was detected when a gypsum-free cement was used, while Friedel's salt precipitated when the cement initially contained 20% gypsum. Transient phases also formed with ongoing hydration: an unidentified compound named phase and gypsum (binders with 0% or 20% gypsum), together with Friedel's salt and CAH 10 (binder with 0% gypsum). The latter was however only observed when hydration occurred at ambient temperature. 3. Hydration of CSA cement is more exothermic than that of OPC.

Since a significant amount of heat is released within the first 12 h, large-volume drums of cemented waste forms may exhibit substantial temperature rise. With CSA cements, it is most important, for laboratory studies on small scale samples, to take into account this thermal evolution at early age in order to understand how actual cemented waste forms will perform. Applying a cycle reproducing the temperature rise (up to 80-85 • C) and fall in a massive mortar block accelerated the rate of hydration of the cement-waste grout, especially in the absence of gypsum. Moreover, the hydrate assemblage was modified. When gypsum-free cement was used, high temperatures promoted the precipitation of monosulfoaluminate instead of ettringite, and CAH 10 was no longer formed. When the cement contained 20% gypsum, the mineralogy was less dependent on the curing conditions and only minor evolutions were observed (increased precipitation of Friedel's salt, slight decrease in the ettringite content).

Future work will be focussed on the behaviour under leaching of a ZnCl 2 -rich waste stabilized with CSA cement, with two main objectives:

-assess the degradation rates and the mineralogical evolutions involved, -determine the mechanisms of zinc retention by the solid matrix, and the nature of phase formed at early age.

  d 10 = 2.67 m, d 50 = 17.6 m, d 90 = 50.8 m, BET specific surface area = 1.3 m 2 /g) with the appropriate amount of analytical grade gypsum (from 0 to 20% by weight of cement; d 10 = 5.4 m, d 50 = 19.6 m, d 90 = 50.3 m, BET specific surface area = 0.4 m

Fig. 1 .

 1 Fig.1. Thermal cycles applied to pastes and mortars as a function of the initial gypsum content of the cement (0, 0% gypsum; 2, 20% gypsum) and zinc concentration (E, 0 mol/L; Z, 0.5 mol/L) in the mixing solution.

Fig. 2 .

 2 Fig. 2. Influence of the composition of the mixing water, gypsum content of the binder and curing conditions on the hydration rate of CSA cements (dots, ye'elimite content; curves, temperature). (a) Gypsum = 0%; curing at 20 • C; mixing solution = water or ZnCl2 0.5 mol/L. (b) Gypsum = 0%; curing at 20 • C or thermal treatment; mixing solution = ZnCl2 0.5 mol/L. (c) Gypsum = 20%; curing at 20 • C; mixing solution = water or ZnCl2 0.5 mol/L. (d) Gypsum = 0% or 20%; thermal treatment; mixing solution = ZnCl2 0.5 mol/L.

Fig. 3 .

 3 Fig.3. X-ray diffraction analysis of cement paste CZ0 cured at 20 • C after 5 min, 1 h, 5 h, 24 h, 7 d, and one year of hydration. E, ettringite; F, Friedel's salt; K, Kuzel's salt; Y, ye'elimite; P, perovskite; G, gypsum.

Fig. 4 .Fig. 5 .

 45 Fig.4. X-ray diffraction analysis of cement paste CZ2 cured at 20 • C after 5 min, 1 h, 2 h, 5 h, 24 h, 7 d, and one year of hydration. E, ettringite; F, Friedel's salt; Y, ye'elimite; P, perovskite; G, gypsum.

Fig. 7 .

 7 Fig. 7. Thermogravimetry analysis of cement pastes CZ0 (a), CZ2 (b), CZ0t (c) and CZ2t (d) after increasing periods of hydration. E, ettringite; G, gypsum; A, aluminum hydroxide; M, calcium monosulfoaluminate hydrate; K, Kuzel's salt; F, Friedel's salt.

Fig. 8 .

 8 Fig. 8. Comparison of the hydrated phase assemblage in samples CZ0, CZ0t, CZ2 and CZ2t with ongoing hydration (curing at 20 • C or with a thermal treatment (cycle); advanced hydration obtained by hydration with excess water (w/c = 10) under stirring at 20 • C for 7 d).

Fig. 9 .

 9 Fig. 9. SEM observation of phase in paste CZ0 after 5 min of hydration.

Fig. 10 .

 10 Fig.10. X-ray diffraction and thermogravimetry analysis of cement suspensions prepared from CZ0 and CZ2 (w/c ratio increased to 10, constant Zn/c ratio) after one week of stirring at 20 • C under nitrogen atmosphere. E, ettringite; F, Friedel's salt; K, Kuzel's salt; M, calcium monosulfoaluminate hydrate; S, strätlingite; A, AH3.

Fig. 11 .

 11 Fig. 11. Thermodynamic modelling of the hydrates assemblage with ongoing hydration. (a) Dissolution of ye'elimite (from 0 to 113 mmol/L) in a solution containing initially 27.5 mmol/L of Zn 2+ and 55 mmol/L of Cl -(simulation of the progressive hydration of ye'elimite in sample CZ0 with a w/c ratio of 10). (b) Dissolution of ye'elimite (from 0 to 90 mmol/L) in a suspension containing initially 27.5 mmol/L of Zn 2+ , 55 mmol/L of Cl -and 116.2 mmol/L of gypsum (simulation of the progressive hydration of ye'elimite in sample CZ2 with a w/c ratio of 10).(c) Dissolution of ye'elimite (from 0 to 90 mmol/L) in a suspension containing initially 27.5 mmol/L of Zn 2+ , 55 mmol/L of Cl -, 116.2 mmol/L of gypsum and 5.5 mmol/L of C12A7 (simulation of the progressive hydration of ye'elimite in sample CZ2 with a w/c ratio of 10 -mayenite is considered as fully hydrated). The zinc-containing phases were omitted for better clarity. The model predicted the successive precipitation of simonkolleite (Zn5(OH)2Cl2) (pH ≤ 8.5), Zn(OH)5 (8.5 ≤ pH ≤ 11.7), and hydroxyzincate (CaZn2(OH)6) (pH ≥ 11.7). Zincite (ZnO) is more stable than zinc hydroxide, but is known to precipitate with a slower rate. It was thus excluded from the database.

Fig. 12 .

 12 Fig.[START_REF] Komarneni | Reactions of some calcium silicates with metal cations[END_REF]. Compressive strength and water porosity of 4 cm × 4cm× 16 cm mortar specimens submitted to a thermal treatment at early age, and subsequently cured in sealed bag at room temperature.

Fig. 13 .

 13 Fig. 13. Length change (a) and mass gain (b) of 4 cm × 4cm× 16 cm mortar specimens submitted to a thermal treatment at early age, and subsequently cured under water.

Fig. 14 .

 14 Fig. 14. X-ray diffraction patterns of one-year old mortars MZ0t and MZ2t cured under water or in sealed bag.

Table 1

 1 Mineralogical composition of the investigated CSA clinker (KTS 100 provided by Belitex).

	Minerals	C4A3S	C2SC 12 A7	CT	Periclase	CS	Quartz	Others a
	wt%	68.5	15.9	9.5	2.9	1.5	0.5	0.5	2.4

a Include 1.2% of iron oxide.

  2

Table 2

 2 Shorthand notations of the investigated compositions.

	Gypsum content (% by	[ZnCl2] in mixing water	Paste		Mortar
	weight of cement)	(mol/L)
			Curing at 20 • C	Thermal treatment	Curing at 20 • C	Thermal treatment
				at early age		at early age
	0	0 0.5	CE0 CZ0	CE0t CZ0t	ME0 MZ0	ME0t MZ0t
	20	0 0.5	CE2 CZ2	CE2t CZ2t	ME2 MZ2	ME2t MZ2t

Table 3

 3 Solubility data (T =25 • C, 1 bar) of the zinc-containing phases considered for thermodynamic modelling.

	Mineral	Formation reaction	Log K
	CaZn2(OH)6	Ca 2+ + 2Zn 2+ +6H2O → CaZn2(OH)6 +6H +	-44.56
	Zn2(OH)3Cl	2Zn 2+ +Cl -+3H2O → Zn2(OH)3Cl + 3H +	-15.2921
	Zn5(OH)8Cl2	5Zn 2+ + 2Cl -+8H2O → Zn5(OH)8Cl2 +8H +	-38.5000
	ZnCl2	Zn 2+ + 2Cl -→ ZnCl2	-7.088
	Zincite	Zn 2+ +H2O → ZnO+2H +	-11.2087
	Zn(OH)2 (beta)	Zn 2+ +2H2O → Zn(OH) 2 beta +2H +	-11.9341
	Zn(OH)2 (epsilon)	Zn 2+ +2H2O → Zn(OH) 2 epsilon +2H +	-11.6625
	Zn(OH)2 (gamma)	Zn 2+ +2H2O → Zn(OH)2 gamma +2H +	-11.8832
	ZnSO4

  main layers are balanced by the insertion of chloride anions in the interlayer (C 3 A•CaCl 2 •10H 2 O). After 7 d, phase was no longer detected and the phase assemblage had significantly evolved. The main hydrates were ettringite and Kuzel's salt, an AFm-structured compound containing ordered chloride and sulfate anions (C 3 A•1/2CaSO 4 •1/2CaCl 2 •10H 2 O). Smaller amounts of CAH 10 , monosulfoaluminate and Friedel's salt were also observed. At later age, from 7 d to 1 year, the paste exhibited only minor mineralogical evolutions. The residual amount of ye'elimite slightly decreased (from 13% to 7%) while the amount of Kuzel's salt tended to increase at the expense of Friedel's salt. CAH 10 is usually known to be formed mainly at low temperature (below 15 • C) during the hydration of calcium aluminate cement. However, its formation has already been reported at 20-25 • C during the hydration of CSA clinker[START_REF] Berger | Hydration of calcium sulfoaluminate cement by a ZnCl2 solution: investigation at early age[END_REF][START_REF] Peysson | Contribution à l'Etude de la Stabilisation de Déchets par du Ciment Sulfo-alumineux[END_REF]. Nevertheless, CAH 10 is a metastable phase at ambient temperature and is expected to be transformed at later

• C after 5 min, 1 h, 2 h, 5 h, 24 h, 7 d, and one year of hydration. E, ettringite; F, Friedel's salt; Y, ye'elimite; P, perovskite; G, gypsum. charged

Table 4

 4 Composition of the pore solutions extracted from pastes CE2 and CZ2 (w/c = 0.75) cured for 1 d, 7 d and 28 d at 20 • C and 95% R.H. (total concentrations in mmol/L, conductivity in mS).

	CE2

Shorthand cement notations are used in this article: C = CaO, S = SiO2,S=SO3, A=Al2O3,H=H2O, T = TiO2.