Jawad El Ghazouani

Mohamed Saidoun

Frédéric Tort

Jean-Luc Daridon
email: jean-luc.daridon@univ-pau.fr

Experimental evaluation method of asphaltene deposition inhibitor's efficacity at atmospheric pressure using a fully immersed Quartz Crystal Resonator, centrifugation and optical microscopy techniques

Keywords: Asphaltenes, Quartz Cristal Resonator, Centrifugation, Inhibitors, Oil, Destabilization, Deposition

The objective of this paper is to propose a multi-scale method to evaluate the effect of additives on the destabilization and deposition of asphaltenes under conditions of non-diluted crude oil samples. This study shows results of probing asphaltene deposition in presence of a chemical additive using a quartz crystal resonator fully immersed in a dead oil while n-heptane is continuously added. The results obtained show that destabilization is slightly delayed and deposited amount is significantly decreased at concentrations above 3000 ppm of asphaltene deposition inhibitors. The amount of deposited asphaltenes decreases while the inhibitor concentration is increased. In addition, the effect of the chemical is further studied by centrifugation technique to evaluate the concentration of unstable asphaltenes aggregates and the kinetic of aggregation is investigated under optical microscopy observation. Results support the results obtained by quartz crystal resonator and to rule on the evolution of the size/shape of the aggregates.

INTRODUCTION

Asphaltenes are compounds that have attracted a lot of attention in the oil industry, particularly because of the problems they cause during oil extraction, production and transportation [START_REF] Adams | Asphaltene Adsorption, a Literature Review[END_REF] .

Naturally occurring in crude oil in the form of suspending nanoaggregates 2 their destabilization is initiated by the effect of oil composition, pressure or temperature variations, followed by an aggregation process. Aggregates containing unstable asphaltene molecules, identified as the source of deposits [START_REF] Katz | Nature of Asphaltic Substances[END_REF] , have a complex chemical structure and follow a complex destabilization mechanisms that involve multi-scale aggregation phenomena from few nanometer to hundreds of micrometers [START_REF] Hoepfner | The Fractal Aggregation of Asphaltenes[END_REF] .

Asphaltenes are the heaviest and most polar fraction of crude oils. They contains heteroatoms (N,O,S) and heavy metals such as nickel and vanadium [START_REF] Ancheyta | Changes in Asphaltene Properties during Hydrotreating of Heavy Crudes[END_REF] , which undeniably have an effect on the polarity of asphaltenes and can influence their solubility [START_REF] Kaminski | Classification of Asphaltenes via Fractionation and the Effect of Heteroatom Content on Dissolution Kinetics[END_REF] . Asphaltene molecules contains both c c c w h 4-10 c h h c ch w h h ranging from 3 to 7 carbon [START_REF] Groenzin | Asphaltene Molecular Size and Weight by Time-Resolved Fluorescence Depolarization[END_REF] .

Numerous techniques have been used to characterize the size and shape of nanoaggregates such as centrifugation [START_REF] Mostowfi | Asphaltene Nanoaggregates Studied by Centrifugation[END_REF][START_REF] Goual | On the Formation and Properties of Asphaltene Nanoaggregates and Clusters by DC-Conductivity and Centrifugation[END_REF] , static light scattering [START_REF] Eyssautier | Structure and Dynamic Properties of Colloidal Asphaltene Aggregates[END_REF] , direct-current conductivity [START_REF] Goual | On the Formation and Properties of Asphaltene Nanoaggregates and Clusters by DC-Conductivity and Centrifugation[END_REF][START_REF] Goual | Impedance Spectroscopy of Petroleum Fluids at Low Frequency[END_REF][START_REF] Zeng | Critical Nanoaggregate Concentration of Asphaltenes by Direct-Current (DC) Electrical Conductivity[END_REF] , nuclear magnetic resonance (NMR) [START_REF] Sheremata | Quantitative Molecular Representation and Sequential Optimization of Athabasca Asphaltenes[END_REF][START_REF] Lisitza | Study of Asphaltene Nanoaggregation by Nuclear Magnetic Resonance (NMR)[END_REF] , small angle X-ray scattering and neutron scattering (SAXS/SANS) [START_REF] Sheu | Self-Association of Asphaltenes[END_REF][START_REF] Eyssautier | Structure and Dynamic Properties of Colloidal Asphaltene Aggregates[END_REF][START_REF] Hoepfner | Multiscale Scattering Investigations of Asphaltene Cluster Breakup, Nanoaggregate Dissociation, and Molecular Ordering[END_REF] . These studies have converged towards an organization of polydisperse asphaltene nanoaggregates described as a stack, with an average diameter of 1-2 nm [START_REF] Mullins | Advances in Asphaltene Science and the Yen-Mullins Model[END_REF] , composed of 5 to 9 asphaltenes molecules [START_REF] Schneider | Asphaltene Molecular Size by Fluorescence Correlation Spectroscopy[END_REF][START_REF] Tanaka | Characterization of Asphaltene Aggregates Using X-Ray Diffraction and Small-Angle X-Ray Scattering[END_REF][START_REF] Wu | Laser-Based Mass Spectrometric Determination of Aggregation Numbers for Petroleum-and Coal-Derived Asphaltenes[END_REF] created by the interaction of the aromatic cores and limited by the steric repulsion generated by the peripheral alkyl chains.

A second level of aggregation was observed at higher asphaltene concentrations in toluene described as clusters that consist of less than 12 nanoaggregates and have an average diameter of 5-10 nm [START_REF] Simon | Relation between Solution and Interfacial Properties of Asphaltene Aggregates[END_REF] . The growth of self-associated asphaltene is limited to the nanoscale in good solvents, leaving them in suspension subject to Brownian motion and to hydrodynamic forces. Further flocculation of clusters is synonym to a commencing destabilization of asphaltenes.

One of the most used solutions to prevent asphaltene deposits on pipeline is to perform continuous or batch injection of chemicals. Their selection is usually performed through laboratory tests to measure their capacity to disperse unstable asphaltenes from crude oils under diluted conditions. There are many methods to measure the dispersing capacity of additives such as Asphaltene Dispersion Test (ADT) [START_REF] Juyal | Reversibility of Asphaltene Flocculation with Chemicals[END_REF][START_REF] Hashmi | Polymeric Dispersants Delay Sedimentation in Colloidal Asphaltene Suspensions[END_REF] , turbidity test [START_REF] Shadman | Effect of Dispersants on the Kinetics of Asphaltene Settling Using Turbidity Measurement Method[END_REF][START_REF] Kraiwattanawong | Effect of Asphaltene Dispersants on Aggregate Size Distribution and Growth[END_REF] , ambient pressure near-infrared (NIR) spectroscopy test [START_REF] Melendez-Alvarez | On the Evaluation of the Performance of Asphaltene Dispersants[END_REF] or centrifugation test [START_REF] Jennings | Asphaltene Inhibitor Testing: Comparison between a High Pressure Live-Fluid Deposition and Ambient Pressure Dead-Oil Asphaltene Stability Method[END_REF][START_REF] Balestrin | Direct Assessment of Inhibitor and Solvent Effects on the Deposition Mechanism of Asphaltenes in a Brazilian Crude Oil[END_REF] . The ADT and turbidity tests are performed with diluted crude oils (1-5% volume of crude oil to n-heptane) under static conditions, as opposed to undiluted and flowing oil in industrial conditions. Some other tests are focused on the deposition of unstable asphaltenes like the coupon deposition test [START_REF] Bae | Advantages of Applying a Multifaceted Approach to Asphaltene Inhibitor Selection[END_REF] , electrodeposition test [START_REF] Mena-Cervantes | Tin and Silicon Phthalocyanines Molecularly Engineered as Traceable Stabilizers of Asphaltenes[END_REF] , packed bed apparatus [START_REF] Vilas Bôas Fávero | Mechanistic Investigation of Asphaltene Deposition[END_REF] , capillary test [START_REF] Vilas Bôas Fávero | Revisiting the Flocculation Kinetics of Destabilized Asphaltenes[END_REF] or Quartz Crystal Resonator (QCR) [START_REF] Enayat | Review of the Current Laboratory Methods To Select Asphaltene Inhibitors[END_REF][START_REF] Ekholm | A Quartz Crystal Microbalance Study of the Adsorption of Asphaltenes and Resins onto a Hydrophilic Surface[END_REF] . Using piezoelectric properties of quartz, QCR disk sensors allow to evaluate mass deposition on its surfaces [START_REF]Use of the Vibrating Quartz for Thin Film Weighing and Microweighing[END_REF] in the nanometer range. For this reason, it is also commonly referred to as a QCM (quartz crystal microbalance). However, its applications are not restricted to micro weighting as quartz sensors are sensitive to any change in its surrounding fluid when it is in contact with a fluid [START_REF] Keiji Kanazawa | The Oscillation Frequency of a Quartz Resonator in Contact with Liquid[END_REF] or fully immersed in a liquid [START_REF] Cassiède | Evaluation of the Influence of a Chemical Inhibitor on Asphaltene Destabilization and Deposition Mechanisms under Atmospheric and Oil Production Conditions Using QCM and AFM Techniques[END_REF] . Therefore, it appeared to be particularly well suited to probe asphaltene destabilization by sensing both asphaltene mass deposition and bulk property changes [START_REF] Daridon | Probing Asphaltene Flocculation by a Quartz Crystal Resonator[END_REF] .

The main objective of this work is to propose a multi-scale set of laboratory tests for an efficient selection of chemical additives for asphaltene deposition reduction. For this purpose, a dead oil supplied by TotalEnergies was studied in the presence or not of a commercial asphaltene deposition inhibitors provided by TotalEnergies Additives & Fuels Solutions. A quartz crystal disk fully immersed in the oil was used to probe asphaltene deposition during n-C 7 titration and the inhibition of deposition in the presence of additive was evaluated at the nanoscale. In addition, a centrifugation technique was used to evaluate the effect of the inhibitor on aggregation. Finally, detection time of the appearance of aggregates larger than 500 nm on microscopy and optical microscope equipped with SWIR (Short Wave InfraRed) camera allows to complete the results obtained by quartz crystal resonator.

MATERIALS AND METHODS

Chemicals

The study was carried out with a dead oil, called oil X, provided by TotalEnergies from a field located in West Africa and already put in production. The oil was free from contamination of water, solid particles, production additives or drilling fluids. Standard properties as well as SARA analysis of the dead oil are summarized in Table 1. To conduct this analysis, a sample of dead oil was obtained directly from the bottom tank and flashed in a cold trap. The dead oil was then topped at 323 K and 20 mbar to remove light ends (C15-). The residue was diluted in dichloromethane at a concentration of 15 mg/ml, and an Iatroscan instrument was used to measure saturates, aromatics, and polar fractions (resin + asphaltenes). Saturates were eluted using n-heptane, while aromatics were eluted using a solvent composed of 25 vol% dichloromethane and 75 vol% n-heptane. The content of asphaltenes was determined by precipitation, using n-pentane as an antisolvent with a weight/volume ratio of 1:40. Before each experiment, the oil was previously heated at 60°C which is above the wax appearance temperature (WAT) of the crude when the oil sample is taken.

QCR Experiment

The technique considered here to study asphaltene destabilization and deposition using a thickness shear mode acoustic sensor is based on a titration method. The titration system, which was presented previously [START_REF] Daridon | Probing Asphaltene Flocculation by a Quartz Crystal Resonator[END_REF][START_REF] Saidoun | Revisiting Asphaltenes Instability Predictions by Probing Destabiliztion Using a Fully Immersed Quartz Crystal Resonator[END_REF][START_REF] Acevedo | Understanding Asphaltene Fraction Behavior through Combined Quartz Crystal Resonator Sensor[END_REF] is mainly composed of a stirred batch reactor working at varying volume with an inserted injection system. A schematic diagram of the full experimental setup is presented in Figure 1. The temperature-controlled titration cell is a conical glass vessel to achieve an antisolvent injection reaching concentrations between 0 and 90 % in a single run. The antisolvent used in this study is >99% pure grade n-heptane supplied by Sigma Aldrich. Antisolvent is added into the vessel at constant flow rate discharged by a peristaltic pump at constant rate chosen to avoid any local over concentration. The titrant is withdrawn from a container that has been placed on a balance. The mass change in the container is continuously recorded, allowing a direct calculation of the composition of studied system as a function of time. To avoid radial or axial gradients in composition and temperature, the mixture is continuously stirred at a fixed speed of 470 rpm.

The stirring speed is maximized while ensuring that the quartz remains fully immersed during the titration. The magnetic stirring bar is 25 mm long and has a diameter of 0.5 mm. Two electrical feedthroughs are used to plug and hold the acoustic sensor immersed in oil during the entire experiment at the bottom of the cell. The acoustic sensor is a highly polished AT-cut quartz having a fundamental frequency of 3 MHz and a diameter of 13.6 mm with gold electrodes of 6.7 mm in diameter deposited on both sides. QCR sensors are highly sensitive to their thickness, as well as to the thickness of the electrode, and particularly to their surface quality. It is completely impossible to manufacture two sensors with identical properties and therefore with the same resonance properties in air. Thus, it is preferable to use the same QCR for comparative studies. If, unfortunately, the sensor breaks during a lengthy study, it would be necessary to characterize the untreated dead oil using the new sensor before continuing the study. In case of full immersion within a Newtonian fluid, a simplified model can be used to correlate changes in resonant frequency (eq 1) and half-band half-width (eq 2) of the sensor with the properties of the surrounding system [START_REF] Johannsmann | Viscoelastic Analysis of Organic Thin Films on Quartz Resonators[END_REF][START_REF] Lucklum | Role of Mass Accumulation and Viscoelastic Film Properties for the Response of Acoustic-Wave-Based Chemical Sensors[END_REF][START_REF] Daridon | Probing Asphaltene Flocculation by a Quartz Crystal Resonator[END_REF] :

( In this work, each of the studied solutions were prepared as follows with a rigorously identical protocol to compare results with or without asphaltene deposition inhibitors (AI): i) 25 cm 3 of the studied mixture is poured into the cell.

ii) The crude + additive mixture is left under stirring at the working temperature for 1 hour to achieve equilibrium between quartz sensor surface and the surrounding oil.

iii) The heptane is injected at constant mass flow rate of 0.25 g/min.

For the interpretation of recorded data, the shift in resonant frequency and half-band half-width are calculated and plotted as a function of either time or volume fraction of n-heptane in the mixture expressed as a function of the volume of each component:

(

h j f h z wh f " " f as 3)
the intersect of the opposed slopes before and after the observed inflexion point of the resonance frequency (Figure 2). At this point, resonant behavior deviates from the simple dilution Kanazawa law. In practice, frequency signal of quartz crystal resonator appeared predominantly affected by mass deposition of asphaltenes, if any, explaining the major change of slope of the frequency [START_REF] Daridon | Measurement of Phase Changes in Live Crude Oil Using an Acoustic Wave Sensor: Asphaltene Instability Envelope[END_REF] . Consequently, the shift in frequency plot was prefeed to estimate the onset. Finally, the change of deposited mass was estimated by plotting as a function of and calculating its slope according to equation 1.

Figure 2. Determination of "onset" from resonance frequency measurements.

Centrifugation Experiment

The content of unstable asphaltenes per unit volume of crude oil at specific aging time C A (t)

was measured here by the time-resolved centrifugation method reported by Maqbool et al [START_REF] Maqbool | Revisiting Asphaltene Precipitation from Crude Oils: A Case of Neglected Kinetic Effects[END_REF] . The samples were prepared following the same protocol as presented for QCR experiments. Mixtures of non-treated oil and oil + additive A at 3000 ppm (in volume) were prepared with a content in heptane of 51.1% and 51.2% in volume respectively. After their preparation the samples with the desired heptane composition were sealed and maintained under stirring at 470 rpm and 60°C during aging process. Aliquots of 1.5 ml were taken over time and centrifuged with the Rotina 380R from Hettich at 15,000 rpm. Centrifugation times, was fixed at 14 minutes to reach a separation efficiency cut-off size of 200 nm. The calculation method used is the one proposed by Saidoun [START_REF] Saidoun | Investigations into Asphaltenes Destabilization[END_REF] .

In this method, the supernatant is drained and recovered centrifuged pellets are collected as "wet" cakes containing unstable asphaltenes and trapped liquid solution. Pellets are washed with heptane several times, re-dispersed and re-centrifuged until the supernatant remains transparent.

Finally, the mass of dried cake is used to calculate the concentration of unstable asphaltenes aggregates larger than the cut-off size per unit volume of initial crude oil. The concentration of separated unstable asphaltenes aggregates C A (t) is plotted as a function of the aging time for different oil-heptane blend systems for the interpretation. C A (t) is expected to increase with the aging time for a fixed mixture and eventually tends to an equilibrium (plateau region).

SWIR microscopy experiment

Because of the darkness of the oil, it is difficult to observe the shape and size of aggregates using a standard microscope with a high magnification. Instead, a short-wave infrared (SWIR) camera coupled to a microscope was used at wavelengths where the absorption of light by heavy hydrocarbons is reduced. A custom optical assembly was used, it was developed around video microscope unit (VMU mitutoyo) [START_REF] Daridon | Combined Investigations of Fluid Phase Equilibria and Fluid-Solid Phase Equilibria in Complex CO2-Crude Oil Systems under High Pressure[END_REF] paired with a x50 to x100 objectives with a long working distance and correction for infrared wavelengths. A camera using an InGaAs sensor was h VM f h f w h f 0.9 1.7 μ .

sample of the oil X + additive A mixture at different additive concentrations was taken at 83 vol% of titrant and placed in a two polished windows cell with a path length of 1mm for immediately observation under a microscope with X50 magnification.

Detection Time Experiment

Following the procedure introduced by Maqbool et al. [START_REF] Maqbool | Revisiting Asphaltene Precipitation from Crude Oils: A Case of Neglected Kinetic Effects[END_REF] , the detection time of unstable asphaltenes in oil-heptane mixtures was measured with and without addition of additive.

Solutions were prepared with the same protocol described in earlier sections. When the desired volume fraction of heptane in the oil-heptane mixture was reached, the flask was sealed, and the mixture was kept in this condition at 60°C under constant stirring (at 470 rpm) for the time necessary to achieve the full study. Aliquots of each sample were taken at controlled aging times using a capillary and observed under a microscope with a magnification of x20.

Turbidity experiment

In addition, absorbance measurements were carried out to compare the results obtain with other techniques. Asphaltenes were precipitated by adding 100 µL of crude oil sample with (or without) additive to 3 mL of n-heptane in a vial. The mixture was manually homogenized, and the absorbance evolution of the blend was measured as a function of time.

The turbidity measurements were obtained using a Cary 60 UV-Vis Spectrophotometer from Agilent using a near-infrared light source of 800 nm.

RESULTS AND DISSCUSION

The role of an asphaltene h c h ck build-up period. However, the addition of an additive does not systematically lead to a positive effect for preventing asphaltene deposition. Moreover, Barcenas et al. demonstrated that increasing the amount of additives injected does not always results in a higher interaction with asphaltenes 50 . To evaluate the efficacy of an additive, laboratory tests were conducted to identify the working concentration that shows a positive effect on asphaltene destabilization and on diffusion deposition process trying to replicate driving forces of asphaltene destabilization in industrial operating conditions. The results of these tests were summarized below.

Turbidity experiment

The turbidity test is one of the most common approach used in laboratory for evaluating the effectiveness of additives based on the dispersion efficiency of asphaltenes in presence of chemicals. This method evaluates the ability of an additive to keep destabilized asphaltenes in suspension. The higher the absorbance, the more dispersed the asphaltenes are. The results of absorbance measurements with concentrations ranging from 10 ppm to 3000 ppm (in volume) of additives in oil/n-heptane mixtures are shown in Figure 3. From 100 ppm the absorbance is maintained at a higher value than for the untreated reference oil. The unstable asphaltene aggregates are therefore maintained in suspension in the presence of the additive over this period of one hour. The effect of the concentration above 300 ppm appears negligible. With this type of technique where the destabilizing precipitant/oil ratios have to be higher than 90% in volume and the medium remains static during the measurement, the question of representativeness with field conditions can be asked. Hence the need to resort to experiments with more realistic destabilizing precipitant/oil ratio conditions and focusing on scales of measures that enable to more clearly discriminate the effectiveness of additives. From 3000 ppm the destabilization is slightly shifted towards higher compositions and this effect is more marked as the additive concentration is important. For 3000 ppm we observe a shift in destabilization of +2.2 % in volume fraction compared to the reference measurement (pure crude oil) and +8.5% and +11.4% for 10 000 ppm and 20 000 ppm respectively. These results show that more than 1000 ppm of additive A is required to shift the destabilization of asphaltenes to a higher antisolvent composition. In addition, the onset shift is greater as the concentration of additive is increased but appears to reach a plateau value near 20 000 ppm. For all samples, titration curves first decrease because of the reduction in viscosity caused by the addition of heptane (dominating dilution effect). Then the increase in dissipation is related to the destabilization of the asphaltenes and the growth of asphaltene aggregates suspended around the sensor. The quartz disk therefore detects larger and/or more objects close to its surface. This increase in dissipation is shifted towards higher heptane compositions as the AI concentration is increased. Furthermore, the amplitude of the dissipation peak increases as the additive concentration in solution is increased.

From these measurements and from equation 1 and 2 it is possible to extract the mass deposited on the quartz surface as well as the change in density viscosity product of the fluid in contact with the sensor. The apparent viscosity is calculated according to the following equation:

Where here is as a function of the square root of 3 (eq 2). Only the 3 rd harmonic was used for several reasons. Firstly, it appears that the first harmonic is particularly affected by intrinsic properties of quartz crystals such as piezoelectric stiffening and edge effects [START_REF] Cassiède | Electrical Behaviour of AT-Cut Quartz Crystal Resonators as a Function of Overtone Number[END_REF] , which means that it behaves differently from other harmonics and cannot be used. For the largest harmonics, it has been shown that inharmonic resonances interfere with the main resonance peaks [START_REF] Cassiède | Characterization of the Behaviour of a Quartz Crystal Resonator Fully Immersed in a Newtonian Liquid by Impedance Analysis[END_REF] . Finally, the 3 rd harmonic has the greatest penetration length of the acoustic wave in the contacting media (eq. 5). The ratio is proportional to , which makes it possible to estimate the bulk viscosity-density product from 3rd harmonic peak with less impact from the properties of the deposited layer than with higher harmonics.

(

) 5
The density is calculated using the molar mass/molar volume ratio of the mixture during continuous addition of heptane. Theoretical viscosity change with addition of heptane was calculated using the Grunberg-Nissan type of equation [START_REF] Grunberg | Mixture Law for Viscosity[END_REF] (eq 6) assuming a binary mixture composed of crude oil + heptane.

In this expression, the Grunberg-Nissan parameter G was adjusted to match the apparent viscosity measured by QCR before asphaltenes destabilization.

Results in Figure 6 indicate that the aggregation of asphaltenes after heptane addition promotes a slight increase of the viscosity. A shift in the increase in dissipation is observed in presence of additive and it is proportional to the additive concentration. The deposited mass can be evaluated by expressing equation 1 in terms of as a function and by calculating the slope of the obtained straight line [START_REF] Daridon | Probing Asphaltene Flocculation by a Quartz Crystal Resonator[END_REF] . The values obtained by this method during the titration were displayed in Figure 7. Starting from a concentration of 1000 ppm of additive A, a clear decrease of the deposit compared to non-treated oil is shown.

For the purpose to evaluate and compare the positive additive effect on deposition reduction, the deposition inhibition efficiency in the presence of additive A at a volume concentration of 80 vol% was calculated according to the following equation:

The results are reported in Table 3. As it can be inferred from this Table 3 very Equilibrium plateau values are reached at aging times higher than 500h; about 1.9 kg/m 3 oil in the presence of additive A compared to 7.2 kg/m 3 oil for the untreated oil.

SWIR microscopy

The titration tests carried out with the quartz crystal sensor indicated a delayed destabilization of asphaltenes, reduced mass deposition on quartz surfaces, and an increased dissipation of the signal in presence of additive. This increase in dissipation (proportional to an apparent viscosity) can reflect a change in the morphology of the flocs formed far from the onset of destabilization.

To observe this change in floc structures in the micrometer range SWIR microscopy observations were performed at the end of the titration. To make these observations comparable, a sample of titrated oil was taken instantaneously after the titration experiment and directly transferred to the glass cell of the microscope. All the samples investigated corresponded to a heptane volume fraction of 0.83. The results are shown in Figure 9. Without additive, the aggregates have a size between 25 and 45 micrometers in diameter and have a globular-like shape in this condition of sampling (Figure 9. A). A clear decrease in aggregate size is observed above 3000 ppm (Figure 9. C, D, E and F) in the same conditions of sampling. From 10 000ppm the size of aggregates does not seem to decrease anymore. Moreover, as the concentration of additive A is increased, the aggregates are less and less spherical and some aggregates with needle shapes are observed.

The reduction of the size of the aggregates observed in presence of chemical additive at this micrometer scale is very likely related to the stabilization of aggregates by amphiphilic properties of additive. Indeed, it was reported in the literature that amphiphiles with their polar head will react with the active sites of asphaltenes [START_REF] González | Peptization of Asphaltene by Various Oil Soluble Amphiphiles[END_REF][START_REF] Chang | Stabilization of Asphaltenes in Aliphatic Solvents Using Alkylbenzene-Derived Amphiphiles. 1. Effect of the Chemical Structure of Amphiphiles on Asphaltene Stabilization[END_REF][START_REF] Chang | Stabilization of Asphaltenes in Aliphatic Solvents Using Alkylbenzene-Derived Amphiphiles. 2. Study of the Asphaltene-Amphiphile Interactions and Structures Using Fourier Transform Infrared Spectroscopy and Small-Angle X-Ray Scattering Techniques[END_REF] . Once attached to the asphaltenes, the hydrophobic tail of the amphiphiles will generate a steric repulsion and thus limit the size of the asphaltene aggregates [START_REF] Chang | Stabilization of Asphaltenes in Aliphatic Solvents Using Alkylbenzene-Derived Amphiphiles. 1. Effect of the Chemical Structure of Amphiphiles on Asphaltene Stabilization[END_REF][START_REF] León | Study of the Adsorption of Alkyl Benzene-Derived Amphiphiles on Asphaltene Particles[END_REF] . The detection time curves are shown in Figure 10 for Oil X as pure reference crude oil and the same oil treated by additive A at 3000 ppm in volume. The instantaneous microscopy detection of asphaltene aggregates in Oil X + heptane was observed at 58 vol% of heptane and 61 vol% for oil treated with additive A. This result is consistent with observed minimum shift in frequency (-f) of the resonating immersed sensor; i.e. at 55.2 vol% of heptane in Oil X and 57.4 vol% of heptane treated oil X with 3000 ppm of additive A (refer to Figure 4). This way, the larger sensitivity of the quartz resonator compared to microscopy is also verified, as expected.

Indeed, the microscope observations describe the appearance of aggregates larger than 500 nm while the quartz allows the detection of nanometer level. Nevertheless, both techniques show a delay of the same order of magnitude in the observation destabilization of asphaltenes in the presence of additive at nanoscale and microscale.

The presence of additive A in crude oil delays the observation of asphaltene aggregates by 1 to 2 orders of magnitudes at heptane fractions inferior to 60 vol% in oil X. Results suggest that Additive A stabilizes asphaltene aggregates by keeping them in suspension.

CONCLUSION

Raw and processed data obtained from the QCR sensor were used to compare asphaltenes destabilization and deposition during a titration of pure crude oil and crude oil with additive. It allowed to evaluate the efficacy of an AI through measurements in the nanometer scale. Results

show that additive A shifted the destabilization towards higher antisolvent compositions with an increased effect as the concentration of additive in solution is increased. From 1000 ppm onwards a decrease of the deposit with an increase of the AI concentration was observed. This effect seems to be limited between 10,000 ppm and 20,000 ppm, and it can be assumed that there is a threshold above which the increase in AI concentration no longer has a significant impact on deposition. Excessive AI increase did not negatively impact the amount of deposition and no AI self-assembly effect was observed. Moreover, the results obtained in QCR were supported by the results obtained in centrifugation where a clear decrease in concentration of destabilized particles larger than 200 nm was observed in the presence of additive. The effect of the additive on the aggregation kinetics was also highlighted by the detection time measurements with a delay in appearance of unstable asphaltenes aggregates larger than 500 nm.

These observations are consistent with the results obtained by the QCR and the effect of additives on the response of quartz to dissipation. Indeed, it has been described previously that the increase in dissipation is linked to an increase in the viscosity of the crude-heptane mixture, which is itself linked to the appearance of flocs in the environment close to the quartz disk.

Absorbance measurements showed the capacity of the additive to maintain these particles in suspension and thus to limit their size.

Increasing the concentration of additive A showed a shift in the increase of viscosity compared to the pure crude oil which is consistent with the shift in the appearance of aggregates under the microscope and shows the effect of the additive in delaying the destabilization towards higher antisolvent compositions.

This research aims at providing solutions to the industry, confronted to problems related to the accumulation of asphaltene deposits on the walls of pipelines but also to the accumulation of sedimented particles under static conditions. Hence, results of this manuscript show that evaluating effectiveness of an additive in laboratories must study the deposition as well as the aggregation kinetics. In addition, the study of viscosity is interesting especially for the evaluation f h ff c f "f w " .

Immersed resonating sensors and centrifugation (or microscopy) methods are showed to be complementary techniques for the screening of asphaltene inhibitors.

Figure 1 .

 1 Figure 1. Atmospheric pressure experimental titration QCR set-up.

  The same quartz disk was reused in this work to allow a reliable comparison of all experiments carried out. It was cleaned between each experiment by consecutive immersions in toluene vials located in an ultrasonic cleaner. Any direct contact of the quartz surface and a solid material is avoided during the washing and drying as well as the storage of the sensor between successive experiments to limit the risk of scratching and consequently changing the resonant properties of the resonator. Cleaning quality is verified by measuring the resonant properties of the unload quartz disk at the same temperature before each new experiment. The cleanliness of quartz surfaces is validated only if the resonance frequency change does not exceed 10Hz / 9 MHz.The fundamental resonance frequency as well as the geometry of the quartz was selected to allow the sensor to be operational in an extended overtone range (from 3 to 7) in full immersion in viscous oils. A network analyser was used to apply a radio frequency voltage to the quartz sensor and to measure the input port voltage reflection coefficient S 11 which is used to calculate the conductance of the quartz over the frequency range from fundamental to 7 th overtone. The resonance frequency of each overtone correspond to the maximum of a conductance peak in the conductance spectrum. The resonance frequencies are estimated with an uncertainty of 4 Hz whereas the resonance half-band half-width (related to resonator dissipation) is determined with a maximum error of 5 Hz. The unloaded reference values and are obtained by applying unload measurements (air) prior to each experiment. Reference frequencies and dissipation are respectively used to calculate the shift in resonant properties caused by fluid immersion and .

  number, is the fundamental resonance frequency of the crystal, is the theoretical adsorbed or deposited mass on the quartz surface, is the density-viscosity product of the surrounding fluid and is an empirical correction term for the viscous friction of the fluid on rough surfaces of the sensor. Extension of this simple model to asphaltene systems by considering as the sum of surface effect and asphaltene deposition makes it possible to estimate changes in both asphaltene deposited mass (per unit area) and viscosity-density product in the fluid surrounding the sensor.

  The detection time corresponds to the aging time after which asphaltene flocs are first observed and confirmed to further grow by microscopy. The experiment was repeated for multiple volume fractions of antisolvent with and without additive. A plot of the detection time as a function of the volume fraction of heptane was obtained as a result the experiments. This plot is referred to as the detection time curve. It ranges from few minutes for large antisolvent fraction up to a hundred of hours for low antisolvent fraction. The lowest concentrations of antisolvent for which the detection-time is less than 5 minutes is considered as the instantaneous detection condition by microscopy.

Figure 3 .

 3 Figure 3. Relative absorbance of Oil X in presence of additive A at different concentrations:

Figure 4 .

 4 Figure 4. Shift of resonance frequency (3 rd harmonic) recorded during experimental titration of

Figure 5 .

 5 Figure 5. Shift of dissipation (3 rd harmonic) recorded during experimental titration of crude oil X

Figure 6 .

 6 Figure 6. Apparent viscosity of the surrounding fluid calculated during experimental titration of

  few effects were observed at low concentration of additive (300 ppm). At excessive concentrations of AI (>10 000ppm) the effects seem to tend towards an inhibition efficiency of 90% at a volume composition of 80% in antisolvent. The subsequent working concentration was set at 3000 ppm for further evaluation of the additive because at this concentration the deposition inhibition efficiency is sufficiently clear, and the concentration is not excessive in relation to the real use conditions in the industry.

Figure 7 .

 7 Figure 7. Deposited mass calculated during experimental titration of crude oil X + additive A at

Figure 8 .

 8 Figure 8. Concentration of unstable asphaltenes larger than 200 nm separated by centrifugation

Figure 9 .

 9 Figure 9. SWIR camera capture at X50 magnification of crude Oil X + additive A samples at 83

Figure 10 :

 10 Figure 10 : Necessary aging time to detect particles by visual microscopy observations as function of the volume fraction of heptane in heptane-oil blends: (red ) non-treated Oil X, (orange ) Oil X + additive A at 3000ppmv.

Table 2 .

 2 Properties of Additive A

	Property	Value	Technique/Apparatus
	Density (kg/m 3 ) @ 15 °C	930	Viscometer Stabinger SVM
			3000 -ASTM D7042
	Refractive Index @ 60 °C	1.504	Mettler Toledo RM40
	2.2 Experimental Methods

Table 3 .

 3 Deposition inhibition efficiency of oil treated by additive A at 80 vol% heptane

	composition.
	Additive A concentration (ppm)	Deposition inhibition efficiency
	300	-5.91 %
	1000	32.84 %
	3000	60.96 %

ACKNOWLEDGMENTS

We would like to acknowledge the following people who have contributed to this project and and for the fruitful discussions: Nelson Acevedo, Nicolas Passade-Boupat and Moussa Kane.

The authors would also like to thank TotalEnergies for providing the oil sample and TotalEnergies Additives & Fuels Solutions for supplying the chemical additive.

AUTHOR INFORMATION

Corresponding Author

*Jean-Luc Daridon -

TotalEnergies,

, 64000 Pau, France;

orcid.org/0000-0002-0522-0075.

E-mail : jean-luc.daridon@univ-pau.fr.

Notes

The authors declare no competing financial interest.


Yvonne Jansen

Her Ph.D. thesis focused on physical data representations, and her

Digital production changed the practice of physical data representations tremendously. The first section of this book includes works which relied on manual crafting which requires mastery of "traditional" tools, such as chisels to do woodcarving (like Adrien Segal's Snow Water Equivalent), or machines such as pipe benders or various saws, to bend and cut materials into the needed shape (like Loren Madsen's Endings). This section shows how the emergence of digital production shifted mastery from tools to the software controlling the machines. Included is a selection of five works which relied to different degrees on digital production mechanisms to produce the desired physical artifacts.

While one may be tempted to think that not much mastery is required when machines do all the work, creating physical data representations using digital production is not as straightforward as it may seem. Yes, machines do the actual carving, bending, or cutting, and in many cases probably more accurately than a human would be able to, but telling a machine what to do requires a different kind of ingenuity: one has to generate the unique code that can tell a machine how to make the specific data physicalization one has in mind. And in most cases there is not an app for that. Sometimes, even the machine is not something one can just buy in a store. For example, Figure 1 shows a printed 3D model of a mathematical object (a D2 dihedral symmetry group) created with a home-built custom 3D printer which uses sugar as printing material and was dubbed CandyFab4000 by its inventors. Finally, there is more than one way to go about physicalizing particular data and often many paths need to be explored and many decisions made until finally an object emerges. Due to the intrinsic physics of a desired geometry and a chosen fabrication process, the resulting artifact does not necessarily come out as one expected (as Stephen Barrass discusses in his chapter on the Chemo Singing Bowl). In most cases, some additional manual intervention is needed, most commonly to assemble or paint what comes out of a machine. The five chapters in this section all rely on digital production, and each one tells a different story combining different levels of manual and digital craft. A high level of manual craft is involved in pieces where machines cut from dozens to hundreds or sometimes even thousands of components into a particular shape which then need to be (often manually) assembled. Machines can produce very accurately an abundant number of pieces which then need to be put together to make sense and show the actual data, which can be a very painstaking process. Ekene Ijeona's chapter introducing his Wage Islands sculpture is an example of such an approach, and the artist details the minutious effort that went into it. Volker Schweisfurth also describes how he cut, assembled, and glued 3D printed elements to create Data That Feels Gravity. Another example is the Emoto data sculpture created by Moritz Stefaner (whose Perpetual Plastic project appears later in the book), Drew Hemment and Studio NAND which shows timelines of Twitter sentiments captured during the Olympic summer games in 2012. Figure 2 shows a closeup of the sculpture and the detailed peaks which represent the volume of tweets about the 2014 Olympics grouped into columns for each day and separated into rows by the level of positivity of the sentiment expressed in a Tweet (positive to negative). A CNC machine made sure that the sculpture accurately showed the data, but much preparatory work went into the collection and processing of the data, the editing of the 3D design files, and the final assembly of the different pieces. A differently laborious process involving many different steps and combinations of support structures and data-encoding parts is described in detail in the MINN_LAB Design Collective's chapter detailing their Orbacles project.

The above are very specific examples, where a particular type of physicalization was thought up explicitly for a specific dataset. On the other extreme, one can find examples where the digital production process is almost entirely automated such that anyone, without prior experience in digital design or fabrication, could insert their data, for example, from their personal activity tracker, and get a 3D printed artifact at the end, whose shape is entirely defined by their own data. Figure 3 shows multiple examples of pre-defined designs, which are parameterized such that someone's data determines specific features, like the length or width of spikes. The motivation behind these is to make physicalizations accessible to anyone who would like to see their data in physical form, for instance, as a memento.

Physicalizations can also simply serve personal curiosity, such as the ones shown in Figure 4, made by Nathan Yau, who generated physical charts from shot position data of key players of the NBA in 2018. He wrote code to transform NBA data from a player into a physical shape and-similar to the physicalizations of personal data above-ran the same code for different players to generate different physicalizations that can be physically organized and compared. While many physicalizations primarily encode data solely in their geometrical shape, as shown in the above figures, some take on the additional aim to encode data in non-visual properties of the final physical object. For instance, Stephen Barrass' chapter describing his Chemo Singing Bowl sculpture examines how objects can sonify data. The result is meant to be played like an instrument so that it makes the encoded data perceivable. Many different kinds of physical properties can be adjusted based on the data used to generate the object, including properties such as mass, floatability and even taste. For instance, in their chapter Data Seeds, Nick Dulake and Ian Gwilt detail how adjusting the shape and mass of artificial seeds results in objects falling down at different speeds. The relationship between shape and speed to fall is complex and being able to encode data in such ways depends very much on the availability of mathematical models to transform the data. Realizing such data physicalizations would not be possible without the support of digital production.

◀

  Figure 1 A 3D model called Sugar Soliton created by Windell Oskay after the original model by Batsheba Grossman printed using sugar which turned partially into caramel giving it an appearance of a coral | Credit: CC-BY 2.0 Windell H. Oskay, ww.evilmadscientist.com. ▼ Figure 2 Emoto data sculpture showing timelines of Twitter sentiments during the Olympic games in 2012. It consisted of 17 plates milled with a CNC machine. | Credit: Moritz Stefaner, Drew Hemment, and Studio NAND. www.emoto2012.org

▲

  Figure 5 Nathan Yau's physical charts showing per-player NBA shot selection data. | Credit: Nathan Yau.


Genoveva Vargas-Solar
email: genoveva.vargas-solar@liris.cnrs.fr

Javier A Espinosa-Oviedo
email: javier.espinosa-oviedo@univ-lyon2.fr

H-STREAM: Composing Microservices for Enacting Stream and Histories Analytics Pipelines

Keywords: Stream processing, Cloud, microservices

This paper introduces H-STREAM, a stream/data histories processing pipelines enactment engine. H-STREAM is a framework that proposes microservices to support the analytics of streams produced by systems collecting data stemming from IoT (Internet of Things) environments. Microservices implement operators that can be composed for implementing specific analytics pipelines as queries using a declarative language. Queries (i.e., microservices compositions) can synchronise online streams and histories to provide a continuous and evolving understanding of the environments they come from. H-STREAM microservices can be deployed on top of stream processing systems and data storage backends, tuned according to the number of things producing streams, the pace at which they produce them, and the physical computing resources available for continuously processing and delivering them to consumers. The paper summarises results of an experimental setting for studying H-STREAM scale-up possibilities according to the number of thins and production rate. Then it shows a proof of concept of H-STREAM in a smart cities scenario.

Introduction

The Internet of Things (IoT) is the network of physical devices enabling objects to connect and exchange data. IoT enables the construction of smart environments (grids, homes, and cities) where streams are produced at different paces. The status of these environments can be observed, archived and analysed online, managing and processing streams. To have a thorough understanding, modelling and predicting smart environments behaviour, processing, and analytics tasks must combine streams and persistent historical data. For example, at "9:00, start computing the average number of people entering a shopping mall every morning and identify points of interest in the mall according to peoples flow in the last month". Answering this query is challenging because it is necessary to determine: (i) the streams that must be discarded or persist into histories (do we store the average/hour or every event representing a person entering the mall? or the person visiting an area in the mall?); (ii) how to properly combine histories with streams within analytics tasks (do we combine the whole history with the average observation/hour? do we compute POIs of the last month and correlate them with new computed POIs observed online?). Existing stream platforms provide efficient solutions for collecting and processing streams with parallel execution backends for example Apache Flink3 , Kafka 4 and message-based infrastructures like Rabbit MQ 5 . Programmers rely on these platforms to define stream processing operations that consume "mini"-batches of streams observed through temporal windows thanks to query engines like Elasticsearch, Amazon Athena, Amazon Redshift and Cassandra. These engines use a list of passive queries to analyze and sequence data for storage or use by other processors. The focus has been oriented to ensure performance since streams can be massive and analytics computationally costly. The processing operations can be rather complex and ad-hoc to target application requirements. Analytics-based applications must build ad-hoc programs that process postmortem data and streams to perform online analytics tasks. Since programs are ad-hoc and queries are passive, the use of specific processing operations (e.g., clustering, windowing, aggregation) are (hard)coded, and they should be modified and calibrated if new requirements come up.

Current advances in data processing and data analytics have shown that it is possible to propose general operations as functions or operators that can be called, similar to queries within databases applications (e.g. Spark programs). Still, the stream/data processing operations remain embedded within programs, and this approach hinders data-program independence that can imply high maintenance costs. Addressing this requirement often implies integrating data processing systems and programming this kind of hybrid solution. We believe that platforms with processing and analytics operators that can be agnostic to processing streams and stored data histories are still to come. The challenge is defining a platform that can wrap operators as self-contained services and compose them into pipelines of analytics tasks as queries that can continuously deliver aggregated streams/historical data to target applications. This paper introduces H-STREAM 6 an analytics pipelines' enactment engine. It provides stream processing microservices for supporting the analysis and exploration of streams in IoT environments. A microservice is a software development technique that structures an application as a collection of loosely coupled services. H-STREAM combines stream processing and data storage techniques tuned depending on the number of things producing streams, the pace at which they produce them, and the physical computing resources available for processing them online and delivering them to consumers. H-STREAM deploys stream operators pipelines, called stream queries, on message queues (Rabbit MQ) and data processing platforms (Spark) to provide a performant execution environment.

The paper summarises results of an experimental setting for studying H-STREAM scale-up possibilities according to the number of thins and production rate. Then it shows a proof of concept of H-STREAM in a smart cities scenario.

Accordingly, the remainder of the paper is organised as follows. Section 2 introduces related work regarding stream processing. The section discusses some limitations and underlines how our work intends to overcome certain limitations concerning those solutions. Section 3 describes the general architecture of H-STREAM with operators as microservices that are deployed on high-performance underlying infrastructures. It also introduces the microservices composition language for defining stream processing pipelines as queries. Section 4 introduces the core of our contribution, a stream processing microservice. It also describes the experimental scenario that applies series of microservices to evaluate scale up in terms of the number of things and volume of streams. Section 5 introduces a proof of concept use case for analysing connection logs in cities and show how to define queries that have to synchronise histories with streams to analyse them online using H-STREAM query language. Section 6 concludes the paper.

Related work

Streams can result from a fine-grained continuous reading of phenomena within different environments. Observations are done in different conditions and with different devices. Therefore, streams must be processed for extracting useful information. Stream processing refers to data processing in motion or computing on data directly as it is produced or received. In the early 2000s, academic and commercial approaches proposed stream operators for defining continuous queries (windows, joins, aggregation) that dealt with streams [START_REF] Fragkoulis | A survey on the evolution of stream processing systems[END_REF][START_REF] Rao | The big data system, components, tools, and technologies: a survey[END_REF]. These operators were integrated as extensions of database management systems. Streams were often stored in a database, a file system, or other forms of mass storage. Applications would query the data or compute over the data as needed. These solutions evolved towards stream processors that receive and send the data streams and execute the application or analytics logic. A stream processor ensures that data flows efficiently and the computation scales and is fault-tolerant. Many stream processors adopt stateful stream processing [START_REF] Cardellini | Elastic stateful stream processing in storm[END_REF][START_REF] Carbone | State management in apache flink®: consistent stateful distributed stream processing[END_REF][START_REF] Alaasam | Stateful stream processing for digital twins: Microservice-based kafka stream dsl[END_REF][START_REF] To | A survey of state management in big data processing systems[END_REF] that maintains contextual state used to store information derived from the previously-seen events.

We analyse stream processing systems that emerged to process (i.e., query) streams from continuous data providers (e.g. sensors, things). These systems are designed to address scalability including (i) streams produced at a high pace and from millions of providers; (ii) computationally costly processing tasks (analytics operations); (iii) online consumption requirements. Apache Storm 7 is a distributed stream processing computation framework that is distributed, faulttolerant and guarantees data processing. A Storm application is designed as a "topology" in the shape of a directed acyclic graph (DAG) with spouts and bolts acting as the graph vertices. Edges on the graph represent named streams flows and direct data from one node to another. Together, the topology acts as a data transformation pipeline. Apache Flink is an open-source stateful stream processing framework. Stateful stream processing integrates the database and the event-driven/reactive application or analytics logic into one tightly integrated entity. With Flink, streams from many sources can be ingested, processed, and distributed across various nodes. Flink can handle graph processing, machine learning, and other complex event processing. Apache Kafka is an open-source publish and subscribe messaging solution. Services publishing (writing) events to Kafka topics are asynchronously connected to other services consuming (reading) events from Kafka -all in real-time. Kafka Streams lacks point-to-point queues and falls short in terms of analytics. Spring Cloud Data Flow8 is a microservicebased streaming and batch processing platform. It provides tools to create data pipelines for target use cases. Spring Cloud Data Flows has an intuitive graphic editor that makes building data pipelines interactive for developers. Amazon Kinesis Streams9 is a service to collect, process, and analyse streaming data in real-time, designed to get important information needed to make decisions on time. Cloud Dataflow10 is a serverless processing platform designed to execute data processing pipelines. It uses the Apache Beam SDK for MapReduce operations and accuracy control for batch and streaming data. Apache Pulsar is a cloud-native, distributed messaging and streaming platform. Apache Pulsar11 is a high-performance cloud-native, distributed messaging and streaming platform that provides server-to-server messaging and geo-replication of messages across clusters. IBM Streams12 proposes a Streams Processing Language (SPL). It powers a Stream Analytics service that allows to ingest and analyse millions of events per second. Queries can be expressed to retrieve specific data and create filters to refine the data on your dashboard to dive deeper.Source 13 . Event stream query engines like Elasticsearch, Amazon Athena, Amazon Redshift, Cassandra define queries to analyze and sequence data for storage or use by other processors. They rely on "classic" ETL (extraction, transformation and loading) processes and use query engines to execute online search and aggregation, for example, in social media contexts (e.g., Elastichsearch) and SQL like queries on streams (e.g. Amazon Athena, Redshift and Cassandra). Discussion. The real-time stream processing engines rely on distributed processing models, where unbounded data streams are processed. Much data are of no interest, and they can be filtered and compressed by orders of magnitude [START_REF] Lyman | How much information 2003?[END_REF][START_REF] Woo | What's the big deal about big data[END_REF][START_REF] Zikopoulos | Understanding big data: Analytics for enterprise class hadoop and streaming data[END_REF]. Stream querying and analytics are often performed after the complete scanning of representative data sets. This strategy is inconvenient for real-time processing. Windowing mechanisms have emerged for processing data stream in a predefined topology with a fixed number of operations such as join, aggregate, filter, etc. The challenge is to define these filters in such a way that they do not discard information and that process streams produced at high pace to fulfill consumers requirements. Furthermore, online analysis techniques must process streams on the fly and combine them with historical data to provide past and current analytics of observed environments. Despite solid stream processing platforms and query engines, solutions do not let programmers design their analytics pipelines without considering the conditions in which streams are collected and eventually stored. H-STREAM has been designed as a stream processing and analytics cartridge for defining stream analytics pipelines and enacting them by composing microservices that hide the underlying platforms dealing with lowlevel tasks for collecting and storing streams.

H-STREAM for building querying pipelines for analysing streams

We propose H-STREAM, an analytics' pipelines enactment engine with microservices that can be composed for processing streams (see figure 1). H-STREAM operators implement aggregation, descriptive statistics, filtering, clustering, and visualisation wrapped as microservices. Microservices can be composed to define pipelines as queries that apply a series of analytics operations to streams collected by stream processing systems and stream histories. H-STREAM relies on (i) message queues for collecting streams online from IoT farms; and (ii) a backend execution environment that provides a high-performance computing infrastructure (e.g., a virtual data centre [START_REF] Akoglu | Putting data science pipelines on the edge[END_REF], a cloud) with resources allocation strategies necessary for executing costly processes.

Composing microservices. Microservices can work alone or be composed to implement simple or complex analytics pipelines (e.g., fetch, sliding window, average, etc.). A query is implemented by composing microservices. For example, consider observing download and upload speed variations within users' connections when working on different networks. Assume that observations are monitored online but that previous observations are also stored before the query is issued.

A network analyst willing to determine if she obtains the expected bandwidth according to her subscription to a provider can ask every two minutes give me the fastest download speed of the last 8 minutes (see a) in Figure 2). Figure 2 b) shows the composition implementing this query example that starts calling a Fetch, and a Filter operators that retrieve respectively the streams produced online with a history filtering the download speed collected the last 8 minutes.

Results produced by these services are integrated by the operator MAX that synchronises the streams with the history to look for the maximum speed. The result is stored by a service Sink that contacts Grafana. This query is executed every two minutes by an operator window. The operator Fetch interacts with a RabbitMQ service that collects streams from devices and with a service that con- tacts InfluxDB to store the streams for building a history. Finally, an operator window triggers the execution of the query every two minutes. The approach for composing microservices is based on a composition operation that connects them by expressing a data flow (IN/OUT data). We currently compose aggregation services (min, max, mean) with temporal windowing services (landmark, sliding) that receive input data from storage support or a continuous data producer. We propose connectors, namely Fetch and Sink mi-croservices that determine the way microservices exchange data from/to things, storage systems, or other microservices. Stream Processing Pipelines Query Language. We proposed a simple query language with the syntax presented in figure 3, used to express:

-The frequency in which data will be consumed (EVERY(number:Integer, time-Unit:{minutes, seconds, hours})).

-The aggregation function applies to an attribute of the input tuples (min, max, mean). -The observation window on top of which aggregation functions will perform.

The window can involve only streams produced online (the last 5 seconds) or include historical data (the last 120 days).

Fig. 3. Taxonomy of queries that can be processed by composing microservices.

The observation can be done starting from a given instance in the past (starting(number:Integer, timeUnit:{minutes, seconds, hours})) until something happens. For example, from the instant in which the execution starts until the consumer is disconnected. This corresponds to a landmark window [START_REF] Golab | Data stream management[END_REF]. It can also be done continuously starting from a moving "current instant" to several {minutes, seconds, hours} before. This case corresponds to a sliding window. The expression includes the logic names of the data producers that can be a store (Influx, Cassandra) and/or a streaming queue provided by a message-oriented middleware (e.g., RabbitMQ). A query expression is processed to generate a query-workflow that implements it (see figure 2). Activities represent calls to microservices; they are connected according to a control flow that defines the order they should be executed (i.e., in sequence or parallel). The control flow respects a data flow that defines data Input/Output dependencies. H-STREAM enacts the queryworkflow coordinating the execution of microservices, retrieving partial output that serves as input or a result (see figure 2).

Stream processing microservice

Figure 4 shows the general architecture of a stream microservice. A microservice consists of three main components, Buffer Manager, Fetch and Sink, and Operator-Logic. The microservice logic is based on a scheduler that ensures the recurrence rate in which the analytics operation implemented by the microservice is executed. Stream processing is based on "unlimited" consumption of data ensured by the component Fetch that works if a producer notifies streams. This specification is contained in the logic of the components OperatorLogic and Fetch. As shown in the figure, a microservice communicates asynchronously with other microservices using a message-oriented middleware. As data is produced, the microservice fetches and copies the data to an internal buffer. Then, depending on its logic, it applies a processing algorithm and sends it to the microservices connected to it. The microservices adopt the tuple oriented data model as a stream exchange model among the IoT environment producing streams and the microservices. A stream is a series of attribute-value couples where values are atomic (integer, string, char, float) from a microservice point of view. The general architecture of a microservice is specialised in concrete microservices processing streams using well-known window-based stream processing strategies: tumbling, sliding and landmark [START_REF] Krämer | Semantics and implementation of continuous sliding window queries over data streams[END_REF][START_REF] Golab | Data stream management[END_REF]. Microservices can also combine stream histories with continuous flows of streams of the same type (the average number of connections to the Internet by Bob of the last month until the next hour).

Since RAM assigned to a microservice might be limited, and in consequence, its buffer, every microservice implements a data management strategy by collaborating with the communication middleware to exploit buffer space, avoiding losing data and generating results on time. A microservice communicates asynchronously with other microservices using a message-oriented middleware. As data is produced, the microservice fetches and copies the data to an internal buffer. Then, depending on its logic, it applies a processing algorithm and sends it to the microservices connected to it. There are possibilities: (i) on-line processing using tree window-based strategies [START_REF] Krämer | Semantics and implementation of continuous sliding window queries over data streams[END_REF][START_REF] Golab | Data stream management[END_REF] (tumbling, sliding and landmark) well known in the stream processing systems domain; (ii) combine stream histories with continuous flows of streams of the same type (the average number of connections to the Internet by Bob of the last month until the next hour).

Interval oriented storage support for consuming streams

A microservice that aggregates historical data and streams includes a component named HistoricFetch. This component is responsible for performing a oneshot query for retrieving stored data according to an input query (for example, by a user or application). As described above, we have implemented a general/abstract microservice that contains a Fetch and Sink microservices. The historical fetch component has been specialized to interact with two stores: In-fluxDB14 and Cassandra15 . The microservice HistoricFetch exports the following interface:

def queryToHistoric(function: String, value: String, startTimeInMillis: Long, endTimeInMillis: Long, groupByTimeNumber: Int, groupByTimeTimeUnit: String) :

List[List[Object]]
The method queryToHistoric(), shown in the code above, implements the connection to a data store or DBMS, sends queries and retrieves data. It returns the results packaged in the Scala structure List[ List [Row] ] objects, where Row is a tuple of three elements:

-Timestamp: Long, a timestamp in the format epoch; -Count: Double, the number of tuples (rows) that were grouped; -Result: Double, the result of the aggregation function.

As shown in the following code, a component HistoricFetch is created by the microservice specifying the name of the store (historicProvider), the name of the database managing the stream history (dbName.series) and the execution context. The current version of our microservice runs on Spark, so the execution context represents a Spark Context (sc).

val hf : HistoricFetch = new HistoricFetch(historicProvider,dbName,series,sc)

The component HistoricFetch of the microservice creates an object HistoricProvider (step 1) that is used as a proxy for interacting with a specific store (i.e., InfluxDB or Cassandra). The store synchronously creates an object Connection (step 2). The Connection object will remain open once the query has been executed and results received by HistoricFetch. Then, the component HistoricalFetch will use it for sending a temporal query using its method queryToHistoric() (step 3). The result is then received in the variable Result that is then processed (i.e., transformed to the internal structure of the operator see below) and shared with the other components through the Buffer of the microservice (step 4).

Consider the query introduced previously every two minutes give me the fastest download speed of the last 8 minutes. It combines the history of observations of the last 8 minutes with those produced continuously and this every two minutes. A particular situation to consider is how to synchronise the observations stored in the history with those fetched online. Figure 5 shows the general principle of the functional logic of a microservice (MAX) dealing with the streams harvested before the execution of the current query. The challenge is double, first retrieve batches of historical data according to different temporal filters. For example, the temporal filter for data produced the last 8 minutes observed from time t 1 is [t 1 -8, t 1 ] whereas for time

t 1 + i is [t 1 + i-8, t 1 + i].
Second, successively combine these batches with incoming flows arriving at time t 1 , .. t 1 + i every 2 minutes (as stated in the query). In technical terms, the query implies looking for the maximum down load speed by defining windows of 8 minutes for observing the downlaod speed in the connections. To get the fastest speed every 2 minutes (as stated in the query), we divide the 8 minutes into buckets of 2 minutes (see Figure 5 (1)) and look within the window for the max value, that is, the fastest download speed (i.e., the fastest speed within the 2 minutes buckets), and keep it as the "local" maximum speed. We combine every bucket with the historical data filtered according to the corresponding time interval (see Figure 5 (2)). This strategy is valid only if the production timeliness of the stream producers and the operator microservice are synchronised. Finally, the global max will be the maximum of all this set of local maximum speeds that will be the fastest download speed in the last 8 minutes.

Microservices execution

Microservices are executed on top of a Spark infrastructure deployed on a virtual machine provided by the cloud provider Microsoft Azure (see Figure 6). As shown in the Figure, a microservice exports two interfaces: the operator interface as a SpepsIoT Component with methods to manage it (e.g., start/stop, bind/unbind) and to produce results in a push/pull mode; the DB interface (queryToHistorc in the upper part of the Figure ) to connect and send temporal queries to a temporal database management system (e.g., Cassandra, InfluxDB). The microservice wraps the logic of a data processing operator that consumes time-stamped stream collections represented as series of tuples. We assume that it is possible to navigate through the tuple structure for accessing attribute values where one of the tuple attributes corresponds to its time-stamp. The time-stamp represents the arrival time of the stream to the communication infrastructure (i.e., rabbitMQ queue). The operator logic is implemented as a Spark program. Spark performs its parallel execution. Produced results can be collected by interacting with the operator through its interface; it can be connected to another microservice (e.g., the operator sink) as shown in the left part of the figure. A microservice running on top of the Spark platform processes streams considering the following hypothesis:

-There is a global time model for synchronizing different timelines (batch and stream). -We use the Spark timeline as a global reference in the implementation, and we execute aggregations recurrently according to "time buckets". The size of the time bucket is determined by a query that defines an interval of observation (e.g. the average number of connections of the last 5 hours) and a moving temporal reference (e.g., every 5 minutes, until "now" if "now" is a moving temporal reference).

Experimental validation

We conducted experiments for validating the use of our microservices. For deploying our experiment, we built an IoT farm using our Azure Grant As shown in figure 7, in this experiment, microservices and testbeds were running on separate VMs. This experiment leads to several cases scaling up to several machines hosting until 800 things with a clustered version of Rabbit using several nodes and queues that could consume millions of messages produced at rates in the order of milliseconds see Figure 8).

Observations in figure 9 showed the behaviour of the IoT environment regarding the message-based communication middleware when the number of things increased, when the production rate varies and when it uses one or several queues for each consuming microservice. We also observed the behaviour of the IoT environment when several microservices were consuming and processing the data. Of course, the most agile behaviour is when nodes and virtual machines increase independently of the number of things. Indeed, note that the performance of 800 things against 3 things does not change a lot by increasing nodes, machines and queues. Note also that devoting one queue per thing does not lead to essential changes in performance. For our experiments, we varied the settings of the IoT environment according to the properties characterising different scenarios. We used fewer things and queues, and more nodes to achieve data processing in an agile way. In this scenario, we assumed that there were few connected things with a high production rate. This scenario concerns an experiment conducted in the Neuroscience Laboratory at CINVESTAV Mexico (details can be found in [START_REF] Arriaga-Varela | Supporting real-time visual analytics in neuroscience[END_REF]). Regarding connectivity in cities (see Section 5), with many people willing to connect devices in different networks available in different urban spaces, we configured more things and queues and nodes for the second one.

RabbitMQ queue neubotspeed

The result of an H-STREAM query as a microservices composition can be seen in the right lower part of Figure 2. It corresponds to a visualisation of the data sunk on Grafana. One of the functions not directly integrated into existing stream processing systems is the possibility of synchronising long-term historical data (stored streams) with streams. The use case provides queries that combine long histories with online streams for the complete validation of H-STREAM. Through queries implemented by H-STREAM queries, we prove that it is possible to provide a hybrid post-mortem and online analytics. The microservices query data histories stored as post-mortem collections, and they also connect to online producers observing their connections according to the observation window size. Figure 11 compares the execution time of these queries according to two settings: (1 in the figure) 800 things producing streams through 3 queues: (2 in the figure 800 things and 1 queue deployed on one node). The good news is that H-STREAM microservices can deal with farms with many stream producers connected to few queues. The combination of streams produced at recurrent paces combined with long histories is done in a "reasonable" execution time in the order of seconds. The query execution cost depends on its recurrence and the history size. The overhead implied by the streams' production pace is delegated to the message passing middleware.

Conclusions and Future Work

This paper proposes H-STREAM that composes microservices deployed on highperformance computing backends (e.g., cloud, HPC) to process data produced by farms of things producing streams at different paces. Microservices compositions can correlate online produced streams with post-mortem time series. This synchronisation of past and present enables the discovery and model of phenomena or behaviour patterns within intelligent environments. The advantage of this approach is that there is no need for full-fledged data management services; microservices compositions can tailor data processing functions personalised to the requirements of the applications and IoT environments.

Future work consists of developing a microservices composition language that can be used for expressing the data processing workflows that can be weaved within target application logics [START_REF] Akoglu | Putting data science pipelines on the edge[END_REF]. We are working on two urban computing projects regarding the modelling and management of crowds and smart energy management in urban clusters.

Fig. 1 .

 1 Fig. 1. H-STREAM General Architecture.

Fig. 2 .

 2 Fig. 2. Microservices Composition Example.

Fig. 4 .

 4 Fig. 4. Architecture of a stream processing microservice for processing data streams.

Fig. 5 .

 5 Fig. 5. Synchronizing stream windows with historic data for computing aggregations.

Fig. 6 .

 6 Fig. 6. Microservice execution.

  16 and implemented a distributed version of the IoT environment to test a clustered version of Rabbit MQ. Therefore, we address the scaling-up problem regarding the number of data producers (things) for our microservices. Using Azure Virtual Machines (VM), we implemented a realistic scenario for testing scalability in terms of: (i) Initial MOM (RabbitMQ) installed in the VM 2 in figure7. (ii) Producers (Things) installed in the VM 1 in figure7. (iii) microservices installed in the VM 3 in figure7.

Fig. 7 .

 7 Fig. 7. General setting deployed on Windows Azure.

Fig. 8 .Fig. 9 .

 89 Fig. 8. Scale up scenarios

  EVERY 60 seconds compute the max value of download_speed of the last 3 minutes FROM cassandra database neubot series speedtests and streaming rabbitmq queue neubotspeed EVERY 30 seconds compute the mean value of upload_speed starting 10 days ago FROM cassandra database neubot series speedtests and streaming rabbitmq queue neubotspeed EVERY 5 minutes compute the mean of the download_speed of the last 120 days FROM cassandra database neubot series speedtests and streaming rabbitmq queue neubotspeed

Fig. 11 .

 11 Fig. 11. Queries execution time vs. deployment setting and history length.

https://flink.apache.org

https://kafka.apache.org/intro

https://www.rabbitmq.com

Here the Github address and a Youtube address of a demonstration of the system.

https://storm.apache.org

https://spring.io/projects/spring-cloud-dataflow

http://aws.amazon.com/kinesis/data-streams/

https://cloud.google.com/dataflow

https://pulsar.apache.org/

https://www.ibm.com/cloud/streaming-analytics

https://deepsource.io

InfluxDB is a time series system accepting temporal queries, useful for computing time tagged tuples (https://www.influxdata.comis)

Cassandra is a key-value store that provides non-temporal read/write operations that might be interesting for storing huge quantities of data (http://cassandra.apache.org)

The MS Azure Grant was associated with a project to perform data analytics on crowds flows in cities. It consisted of credits for using cloud resources for performing high-performance data processing.

Use Case: Analysing the behaviour of network services

The use case scenario gives insight into the way microservices can be composed to answer continuous queries. For deploying our experiment, we used the IoT farm on Azure (see Section 4) that we implemented to address the scaling-up problem in terms of several data producers (things) to be consumed by our microservices.

The experimental scenario aims at analyzing the connectivity of the connected society. The data set used for the use case has been produced in the context of the Neubot project 17 . It consists of network tests (e.g., download/upload speed over HTTP) realized by different users in different locations using an application that measures the network service quality delivered by different Internet connection types 18 The idea is that people install the Neubot application on their computers and devices. Every time they connect to the Internet using difnetworks (4G, Ethernet, etc.), the application computes network quality metrics. The data is used then to answer queries such as: -Am I receiving the network speed I am paying for all the time?; -Which are the periods of the day in which I can upload/download files at the highest speed using different network providers? A first simple example of the queries we tested is the following.

EVERY 2 minutes compute the max value of download_speed of the last 8 minutes FROM influxdb database neubot series speedtest and streaming 17 Neubot is a project devoted to measuring Internet from the edges by the Nexa Center for Internet and Society at Politecnico di Torino (https://www.neubot.org/). 18 Here is the reference to the project that produced the dataset. We omit this information to respect double-blinded evaluation requirements.


P F Morlat

H Parvery

G Villemaud

X Xin

J Verdier

J M Gorce

Global System Evaluation Scheme for Multiple Antennas Adaptive Receivers

Keywords: Adaptive arrays, System analysis and design, Phase noise, MIMO systems

This paper describes a global system approach to easily develop, simulate and validate a multi-antennas receiver structure. Our aim is to offer a rapid evaluation for future wireless systems, including promising techniques such as SIMO or MIMO, Software Defined Radio (SDR), OFDM and Interference Cancellation. A particular focus is on the impact of RF front-ends characteristics on the effective performances of a receiver in a realistic environment. A complete connected solution based on Agilent Technologies tools is presented, combining simulations and measurements with realistic conditions. This testbed allows a direct evaluation of all parts of a wireless link with multiple antennas. For instance IQ imbalance and phase noise influence on a four antennas 802.11g receiver is herein exposed.

I. INTRODUCTION

In the field of high data rate wireless systems, a very promising issue is to combine the most recent techniques in the same architecture dealing with numerous communication standards. For instance, this combination could be an OFDM signal associated with multiple antennas reconfigurable transceivers with a Zero-IF Software Defined Radio (SDR) structure [START_REF] Rykaczewski | Signal Path Optimization in Software-Defined Radio Systems[END_REF].

In order to properly design such a transmission scheme, a complete and precise study based on both simulations and measurements is essential. This works aims to propose such a system-level evaluation by the use of a 2x2 MIMO radio platform connected to the Advanced Design System (ADS) software from Agilent Technologies [2]. This connected solution allows us to simulate and measure all parts of a wireless link, from the global system level down to the particular model of RF components or fading channels.

In part II, we discuss the key points of RF front-end limitations which strongly decrease receiver efficiency. Part III presents the system-level evaluation tools used in part IV describing a particular example of a 4 antennas 802.1lg receiver. In this example, we show some interesting results for the joint compensation of fading effects and IQ imbalance. Finally, the influence of the power amplifier nonlinearity and oscillator phase noise is reported in this paper.

II. ON MULTIPLE ANTENNA RECONFIGURABLE

RECEIVER PROBLEMS To properly balance subsystem performance, the digital signal processing engineer must be aware of the limitations of the analog RF front-end so that some compensation can be made via digital signal processing [START_REF] Tubbax | Joint Compensation of IQ Imbalance, Frequency Offset and Phase Noise in OFDM Receivers[END_REF]. In most systems, the receiver tends to be more complex than the transmitter. The main challenge for designing receivers is the Dynamic Range. The RF front-end of a receiver must separate a desired signal typically from -130 dBm to -70 dBm, from a background RF environment that may be in the relative range of-20 dB up to 0 dB. In many systems, the RF front-end also sets the system signal to noise ratio and should be designed to add minimal noise. Thus the overall system must have a considerable dynamic range to accommodate both the high-power background signals and the lowest-power desired signal. Dynamic range is limited at the bottom of the range by noise that enters the system through thermal effects of the components or through non-idealities of the ADC, such as quantization noise or sampling aperture jitter. Low level signals can be masked by this noise. Dynamic range is limited at the high-end by interference. The source of this interference could be co-channel, adjacent channel, or self induced by the transceiver. High levels of interference may cause the receiver to become more non-linear and introduce cross products (spurious components), which may inhibit the detection of low-level signals or reduce the desired signal bit error rate (BER). Simply attenuating the high-level signal before they drive the receiver into a non-linear operating region is insufficient since low-level desired signals also present will be attenuated until masked by system induced noise and thus will fall below the sensitivity of the receiver.

For the transmitter part, power-efficiency is a particularly challenging problem: power is consumed at a much higher level in the talk mode than in the stand-by mode. For a mobile unit, power control is commonly used at the mobile transmitter to reduce power consumption and to help improve capacity of the cellular system. The accuracy and linearity of the RF transmit chain is important to ensure that the desired signal is transmitted with no spurious signals or noise. Finally, noise and distortion are the limiting factor in the RF circuit performance, thus it is necessary to quantify them. Generally, several items are discussed in detail such as the noise figure of the receiver, the transmitter's noise floor, IQ gain imbalance, IQ orthogonality phase imbalance, phase noise, voltage noise of power supply, linear phase and amplitude distortion. Therefore, in a global system approach, both transmitter and receiver RF performances will impact the overall link budget. For instance, in the field of emerging high rate wireless systems, OFDM is a very popular modulation technique because of its performances in hard multi-path environments. Moreover Wireless LAN generally deal with such Rice or Rayleigh fading channels and so multiple antennas techniques appear an essential way of increasing throughput. At the same time, considerable effort is being made to develop reconfigurable receivers using more or less Software Defined Radio (SDR) principles. Thus multiple standards could elegantly cohabit in the same simple architecture with good processing capabilities.

Then a global approach combining multiple antennas, OFDM technique and SDR principles appears really promising particularly for future broadband wireless systems. Unfortunately, this combination is not so evident: multiple antenna algorithms and SDR are resource-expensive and OFDM technique is sensitive to RF front-end performances. Moreover, the impact of RF impairments on a receiver depends on RF front end topologies [START_REF] Brandolini | Toward Multistandard Mobile Terminals -Fully Integrated Receivers Requirements and Architectures[END_REF]. The direct conversion receivers often referred to as zero intermediate-frequency (Zero-IF) receivers have become very popular in wireless mobiles. Nevertheless, the RF impairments are much more critical in this case, as compared to super-heterodyne receivers for instance. In addition, a potential method is to sample a much larger bandwidth to deal with efficient interference cancellation or multi-channel capabilities. By the way, trying to enlarge the acquired bandwidth naturally degrades the RF performances.

III. GLOBAL SYSTEM EVALUATION APPROACH

The radiocom platform (Fig. 1) is an analysis tool which allows arranging the most advanced techniques in conception, modelling and test for radiocommunication systems. This platform is made of high technology equipments developed by Agilent Technologies: the ADS software, and measurement hardwares which are two arbitrary waveform generators (ESG 4438C) and a vector spectrum analyzer (VSA89641) with two RF inputs [2]. With this platform it is possible to extend measurements up to 6 GHz, with a received bandwidth analysis of 36 MHz. The arbitrary waveform generator by itself is able to generate any complex signal which it is then possible to analyze after propagation with the vector spectrum analyzer. The vectorial analysis software can demodulate this signal and offers visualisation options to show spectrum, constellations, BER, EVM... in order to accurately estimate the transmission system quality. With this connected solution a software/hardware interaction allows us to test and conceive very complex and realistic systems. Indeed the modelled signal with ADS can be loaded in the internal memory of the ESG, then the signal measured by the VSA can be recorded and transferred to the software. This interaction can take place at any part of the chain (baseband, RE...). ADS permits us to model the complete system, from the component to the whole architecture. With the Ptolemy tool, analogical and digital signal live together, it allows us to study all the fields bound to telecommunications by making them act mutually.

We can therefore estimate the impact of the different noise sources of the RF front end (phase noise, distortion, IQ imbalance...), and also the propagation environment (fading...). All component toolboxes (receiver, transmitter, channel) are customizable and models more or less elaborated can be add to them. A very realistic modelling of the system can be simulated taking into account the characteristic of the channel, and the physical properties of the front end. Fig. 2 presents an ADS schematic which evaluate the simulated and measured BER performance of an 802.1 lb system versus the SNR.

For example, a part of the standard receiver and transmitter can be replaced by a specific component (VCO, LNA...) with their appropriate characteristics to evaluate their performance (Fig. 3). Finally, this platform permits the validation of channel models with direct comparison with signal recorded by the VSA in any typical environment. With the twice RF input of the VSA it is also possible to analyze and evaluate the performance of SIMO or MIMO systems or to characterize multi-channel models. In this part, we will show via quantitative analysis that the SIMO configuration also helps to reduce the impact of non- ideal characteristics of the RF front-end on OFDM receivers alongside mitigating the effects of fading. Our objective is to simulate a very realistic transmission system and to have a better estimation of the advantage of the Sample Matrix Inversion (SMI) smart antennas algorithm [START_REF] Gupta | SMI adaptive antenna arrays for weak interfering signals[END_REF].

A complete 802.1lg transmission system was modelled with the ADS software, using different types of channel (average white Gaussian noise or various multipath models). Fig. 4 presents the BER obtained with the four arms SMI receiver compared to a single antenna receiver with a 36 Mbps transmission rate (16QAM). Fig. 5 compares simulated and measured BER performance.

A. IQ Imbalance in A WGN and Multipath Channel Multiple antennas techniques are known to be efficient for signal-to-noise ratio improvement or interference rejection.

By the way, RF impairments such as IQ imbalance could be considered as additional interference [START_REF] Tubbax | Joint Compensation of IQ Imbalance, Frequency Offset and Phase Noise in OFDM Receivers[END_REF]. So minimisation techniques used for smart antennas applied on digital baseband signal allow a global compensation of channel effects and RF non-idealities. Thus a first evaluation of the SMI gain is presented in figures 6 and 7. These results present the relative BER (zero gain imbalance BER value taken for reference) compared for a single antenna Fig. 7 Relative BER vs. IQ gain imbalance in multipath channel receiver and a four antennas receiver in different channels and for gain or phase IQ imbalance, showing the potential of such a technique for joint fading/RF impairments mitigation.

B. Influence ofPowerAmplifier with Nonlinear Gain Compression It's very interesting to study the effects of harmonic [START_REF] Gregorio | The performance of OFDM-SDMA systems with power amplifier non-linearities[END_REF] distortion and intermodulation distortion. Indeed, a linear PA is needed in the case of non-constant envelope signals. The linearity of a PA is a key parameter as it is closely related to power consumption and to distortion, hence BER. All gain compression characteristics are modeled (with ADS software) using a polynomial expression up to the saturation. Fig. 8 shows characterization parameters for nonlinear elements. In Fig. 9, the effects of the 1-dB compression point and the intermodulation intercept point (IP) associated with the third- order products on BER performances (for Eb/No=lOdB) are reported for a multipath channel. Compared with the case of a AWGN channel (not reported), the SMI gain seems to be very interesting. Of course, measurements have to be performed to confirm these encouraging simulation results. -0 -: -90 dBc/Hz at I kHz offset -O --60 dBc/Hzat 1 kHz offset -V-: Spurs at ± 100 kHz is -30 dBc (with phase noise: -0 -) -* -: Spurs at ± 100 kHz is -60 dBc (with phase noise: -0 -)

C. Influence ofOscillators Phase Noise

The same approach was used to study the influence of phase noise spectrum of local oscillators [START_REF] Wu | Performance analysis on the effect of phase noise in OFDM systems[END_REF] and to evaluate the improvement of the traditional Sample Matrix Inversion.

Any phase noise model is easy to design and to implement in the ADS software. For instance, it is possible to analyse the impact of flicker frequency noise (a classical model for the phase noise in free running oscillators) and PLL spurious on BER curves vs. signal to noise ratio (spurious response or spur is a generic problem associated with fractional-N synthesizers [START_REF] Razavi | Phase locking in high performance systems From Devices to Architectures[END_REF]), see Fig. 10.

V. CONCLUSION

Today' s wireless communications systems are built by multidisciplinary teams that include experts in signal processing, RF engineering and other disciplines. Our global system approach permits to easily develop, simulate and validate a wireless system even with a multi-antennas receiver structure (SIMO OFDM system). The efficiency of a complete connected solution based on Agilent Technologies tools, combining simulations and measurements under true operating conditions (correlated channels and antenna coupling) is clearly demonstrated. The IQ imbalance influence on a four antennas 802.1lg receiver has been presented, and the efficiency of the SMI algorithm for BER reduction has been clearly shown. We have also presented the compensation of phase noise thanks a SIMO receiver, and the impact of non-linear distortion of amplifiers on OFDM receiver performances.

Fig. 2 .

 2 Fig. 2. Example of a schematic design for 802.1 lb BER evaluation

  OF A FOUR ANTENNAS 802.1 I G RECEIVER WITH RF IMPAIRMENTS

Fig. 1 .

 1 Fig.1. The platform structure for a lxl transmission

Fig. 4 .Fig. 6 .Fig. 5 .

 465 Fig. 4. BER vs. Eb/No in multipath channel

Fig. 9

 9 Fig. 8 Nonlinear element characterization for nonlinear models