Clément Ciszak

Iman Abdallah

Ioana Popa

Jean-Michel Brossard

Vande Put

Daniel Monceau

Sébastien Chevalier

Degradation mechanism of Ti-6Al-2Sn-4Zr-2Mo-Si alloy exposed to solid NaCl deposit at high temperature

Keywords:

This study focuses on the corrosion behaviour of Ti-6Al-2Sn-4Zr-2Mo-Si alloy in presence of NaCl deposit in air at 560 °C. The active oxidation mechanism at the origin of the corrosion phenomenon enhancement in presence of solid NaCl is thought to be connected to the formation of both external and internal thick oxidation areas. Thermodynamic calculations allowed showing the role played by the different alloying elements in the formation of the external oxide and detailed TEM characterisations brought new insights regarding the nature and origin of the internal oxidation area.

Introduction

Active oxidation is a severe degradation process. It is known to occur in different fields such as waste-to-energy conversion, materials recycling and aeronautics. Many works have been dedicated to the study of active oxidation of steels [START_REF] Grabke | The effects of chlorides, hydrogen chloride, and sulfur dioxide in the oxidation of steels below deposits[END_REF] and Ni-based alloys [START_REF] Kawahara | High temperature corrosion mechanisms and effect of alloying elements for materials used in waste incineration environment[END_REF], in relation to their use in waste-to-energy facilities. These studies especially identified the role of the different metallic elements (Fe, Ni, Cr, Mo, Mn …) on the overall active oxidation process. Much less studies have been performed on Ti alloys, which can also be subjected to active oxidation when used in high temperature aeronautical applications. Similarly to steels and Ni-based alloys, Ti has been alloyed with several elements (such as Al, Nb, Zr …) to improve the behaviour of its alloys at high temperature [3][START_REF] Champin | Oxydation des alliages de titane au voisinage des températures d'utilisation dans les turbomoteurs[END_REF][START_REF] Gurrappa | Mechanism of degradation of titanium alloy IMI 834 and its protection under hot corrosion conditions[END_REF], including their oxidation resistance.

High temperature oxidation of Ti and Ti-based alloys in classic conditions (e.g. in air or oxygen without any deposit) has been widely studied. Titanium has a high affinity for oxygen and oxidizes by forming an external scale composed mainly of rutile TiO 2 , which grows by anionic diffusion. In case of Ti-based alloys containing Al, such as Ti-6Al-4 V or Ti-6Al-2Sn-4Zr-2Mo-Si, the outer part of the oxide layer often contains Al 2 O 3 [START_REF] Siab | Effect of an electrodeposited yttrium containing thin film on the high-temperature oxidation behaviour of TA6V alloy[END_REF][START_REF] Du | High-temperature corrosion of Ti and Ti-6Al-4V alloy[END_REF][START_REF] Guleryuz | Oxidation of Ti-6Al-4V alloy[END_REF][START_REF] Du | Air oxidation behaviour of Ti-6Al-4V alloy between 650 and 850 °C[END_REF][START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF][START_REF] Dupressoire | Effect of nitrogen on the kinetics of oxide scale growth and of oxygen dissolution in the Ti6242S titanium-based alloy[END_REF][START_REF] Casadebaigt | Influence of microstructure and surface roughness on oxidation kinetics at 500-600 °C of Ti-6Al-4V alloy fabricated by additive manufacturing[END_REF]. Furthermore, Ti and Ti-based alloys can dissolve large quantities of oxygen, up to 33 at. % for pure α-Ti. Oxygen can diffuse deep inside the metallic substrate, forming an α-Ti(O) solid solution which leads to the hardening and embrittlement of the affected region [START_REF] Guleryuz | Oxidation of Ti-6Al-4V alloy[END_REF][START_REF] Guleryuz | Surface modification of a Ti-6Al-4V alloy by thermal oxidation[END_REF][START_REF] Poquillon | Oxidation and Oxygen Diffusion in Ti-6al-4V Alloy: Improving Measurements During Sims Analysis by Rotating the Sample[END_REF]. A few number of studies have evaluated the thickness of the oxygen affected zone (OAZ) in case of Ti-6Al-2Sn-4Zr-2Mo alloy. For instance, OAZ thicknesses of around 9 μm, 15 μm and 30 μm were reported for oxidations of 100 h at 650 °C [START_REF] Dupressoire | Effect of nitrogen on the kinetics of oxide scale growth and of oxygen dissolution in the Ti6242S titanium-based alloy[END_REF] and 500 h at 538 °C [START_REF] Mcreynolds | A study on alpha-case depth in Ti-6Al-2Sn-4Zr-2Mo[END_REF] and 593 °C [START_REF] Mcreynolds | A study on alpha-case depth in Ti-6Al-2Sn-4Zr-2Mo[END_REF][START_REF] Gaddam | Oxidation and alpha-case formation in Ti-6Al-2Sn-4Zr-2Mo alloy[END_REF], respectively. These results, coupled with those obtained by Berthaud et al. [START_REF] Berthaud | Study of titanium alloy Ti6242S oxidation behaviour in air at 560 °C: effect of oxygen dissolution on lattice parameters[END_REF], tend to indicate that OAZ thickness essentially depends on both time and temperature, which is confirmed by analyses of experimental data in a recent review [START_REF] Vaché | Oxygen diffusion modeling in titanium alloys: new elements on the analysis of microhardness profiles[END_REF].

Very few studies reported a degradation of the oxidation resistance of Ti-6Al-2Sn-4Zr-2Mo-Si alloy or close-composition alloys under solid NaCl deposits [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Shu | Corrosion behavior of Ti60 alloy coated with a solid NaCl deposit in O 2 plus water vapor at 500-700 °C[END_REF][START_REF] Dumas | NaCl-induced accelerated oxidation of a titanium alloy[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF][START_REF] Berthaud | Étude Du Comportement De l'alliage De Titane Ti6242S à Haute Température Sous Atmosphères Complexes : Applications Aéronautiques[END_REF]. None of them proposed a clear mechanism. They only showed parabolic-like [START_REF] Dumas | NaCl-induced accelerated oxidation of a titanium alloy[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF] or parabolic-then-linear [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF] oxidation kinetics, whose weight gains appeared, in the first case, 6-10 times larger than those observed in dry air. In each case, damaged corrosion scales (porous, cracked and non-adherent) were observed. Corrosion scales also appeared layered, composed of a rather dense inner part and a rather porous outer part [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Shu | Corrosion behavior of Ti60 alloy coated with a solid NaCl deposit in O 2 plus water vapor at 500-700 °C[END_REF][START_REF] Dumas | NaCl-induced accelerated oxidation of a titanium alloy[END_REF]. The external part of the corrosion scales was reported to be generally composed of rutile TiO 2 , surmounted by a mixed Na-,Ti-rich oxide (Na 4 Ti 5 O 12 [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF][START_REF] Berthaud | Étude Du Comportement De l'alliage De Titane Ti6242S à Haute Température Sous Atmosphères Complexes : Applications Aéronautiques[END_REF][START_REF] Fan | Corrosion behavior of pure Ti under a solid NaCl deposit in a wet oxygen flow at 600 °C[END_REF][START_REF] Ciszak | NaCl-induced hightemperature corrosion of β21S Ti alloy[END_REF][START_REF] Zhang | Effects Ti/TiAlN composite multilayer coatings on corrosion resistance of titanium alloy in solid NaCl-H 2 O-O 2 at 600 °C[END_REF], Na 2 Ti 6 O 13 [START_REF] Berthaud | Étude Du Comportement De l'alliage De Titane Ti6242S à Haute Température Sous Atmosphères Complexes : Applications Aéronautiques[END_REF], Na 2 TiO 4 [START_REF] Yao | NaCl-induced hot corrosion of a titanium aluminide alloy[END_REF], Na 2 TiO 3 [START_REF] Gurrappa | Mechanism of degradation of titanium alloy IMI 834 and its protection under hot corrosion conditions[END_REF][START_REF] Shu | Corrosion behavior of Ti60 alloy coated with a solid NaCl deposit in O 2 plus water vapor at 500-700 °C[END_REF][START_REF] Joseph | The mechanisms of hot salt stress corrosion cracking in titanium alloy Ti-6Al-2Sn-4Zr-6Mo[END_REF][START_REF] Zheng | The influence of TiAlN and enamel coatings on the corrosion behavior of Ti6Al4V alloy in the presence of solid NaCl deposit and water vapor at 450 °C[END_REF], NaTiO 2 [START_REF] Xiong | Synergistic corrosion behavior of coated Ti60 alloys with NaCl deposit in moist air at elevated temperature[END_REF]), whereas its internal part also included oxides of certain alloying elements (Al 2 O 3 , ZrO 2 and SnO 2 ) [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF]. Formation of these corrosion products were often hypothesized to result from active corrosion mechanisms involving volatile chlorides [START_REF] Gurrappa | Mechanism of degradation of titanium alloy IMI 834 and its protection under hot corrosion conditions[END_REF][START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF][START_REF] Shu | Corrosion behavior of Ti60 alloy coated with a solid NaCl deposit in O 2 plus water vapor at 500-700 °C[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF][START_REF] Berthaud | Étude Du Comportement De l'alliage De Titane Ti6242S à Haute Température Sous Atmosphères Complexes : Applications Aéronautiques[END_REF][START_REF] Fan | Corrosion behavior of pure Ti under a solid NaCl deposit in a wet oxygen flow at 600 °C[END_REF][START_REF] Ciszak | NaCl-induced hightemperature corrosion of β21S Ti alloy[END_REF][START_REF] Zhang | Effects Ti/TiAlN composite multilayer coatings on corrosion resistance of titanium alloy in solid NaCl-H 2 O-O 2 at 600 °C[END_REF][START_REF] Joseph | The mechanisms of hot salt stress corrosion cracking in titanium alloy Ti-6Al-2Sn-4Zr-6Mo[END_REF][START_REF] Zheng | The influence of TiAlN and enamel coatings on the corrosion behavior of Ti6Al4V alloy in the presence of solid NaCl deposit and water vapor at 450 °C[END_REF][START_REF] Xiong | Synergistic corrosion behavior of coated Ti60 alloys with NaCl deposit in moist air at elevated temperature[END_REF][START_REF] Anuwar | A study on the hot corrosion behavior of Ti-6Al-4V alloy[END_REF] and, more rarely, chloride ions [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF]. These metallic chlorides are supposed to form at the alloy|oxide interface, then to diffuse outward, reacting with O 2 to form oxides of the different elements present in the alloy and release gaseous Cl 2 . This later gas release might justify the presence of blisters and pores. Furthermore, the presence of salts on the material surface was found to strongly influence the formation of the OAZ, which is replaced in this case by an internal oxidation area [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF][START_REF] Shu | Corrosion behavior of Ti60 alloy coated with a solid NaCl deposit in O 2 plus water vapor at 500-700 °C[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF][START_REF] Berthaud | Étude Du Comportement De l'alliage De Titane Ti6242S à Haute Température Sous Atmosphères Complexes : Applications Aéronautiques[END_REF][START_REF] Fan | Corrosion behavior of pure Ti under a solid NaCl deposit in a wet oxygen flow at 600 °C[END_REF][START_REF] Ciszak | NaCl-induced hightemperature corrosion of β21S Ti alloy[END_REF][START_REF] Joseph | The mechanisms of hot salt stress corrosion cracking in titanium alloy Ti-6Al-2Sn-4Zr-6Mo[END_REF].

Such internal oxidation area, unusual for Ti and Ti-based alloys, seems to first develop along grain boundaries of the metallic matrix, before expanding inside the grains [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Shu | Corrosion behavior of Ti60 alloy coated with a solid NaCl deposit in O 2 plus water vapor at 500-700 °C[END_REF][START_REF] Berthaud | Étude Du Comportement De l'alliage De Titane Ti6242S à Haute Température Sous Atmosphères Complexes : Applications Aéronautiques[END_REF][START_REF] Ciszak | NaCl-induced hightemperature corrosion of β21S Ti alloy[END_REF][START_REF] Joseph | The mechanisms of hot salt stress corrosion cracking in titanium alloy Ti-6Al-2Sn-4Zr-6Mo[END_REF][START_REF] Zheng | The influence of TiAlN and enamel coatings on the corrosion behavior of Ti6Al4V alloy in the presence of solid NaCl deposit and water vapor at 450 °C[END_REF][START_REF] Xiong | Synergistic corrosion behavior of coated Ti60 alloys with NaCl deposit in moist air at elevated temperature[END_REF]. In some cases, this expansion inside the metallic grains appears inhomogeneous and directional, looking like spaced oxide fingers growing in parallel directions [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF][START_REF] Berthaud | Étude Du Comportement De l'alliage De Titane Ti6242S à Haute Température Sous Atmosphères Complexes : Applications Aéronautiques[END_REF]. Fan et al. [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF] reported this internal oxidation area to be composed of TiO 2 and Ti 2 O.

In our previous study dedicated to Ti-6Al-4 V alloy [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF], a mechanism for the active oxidation of Ti alone was proposed. This mechanism involved the formation of a reaction intermediate in the form of gaseous TiCl 4 , achieving transport of Ti from the metallic matrix to the oxide scale and its subsequent oxidation as soon as a critical oxygen partial pressure is reached. However, contrary to what has been done for steels [START_REF] Grabke | The effects of chlorides, hydrogen chloride, and sulfur dioxide in the oxidation of steels below deposits[END_REF] and Ni-alloys [START_REF] Kawahara | High temperature corrosion mechanisms and effect of alloying elements for materials used in waste incineration environment[END_REF], the behaviour of alloying elements were not considered.

The aim of the present study is therefore to better understand the influence of NaCl deposit on the high-temperature oxidation behaviour of the Ti-6Al-2Sn-4Zr-2Mo-Si alloy, with a particular focus on the role played by the alloying elements and the formation of the internal oxidation area. Samples were analysed by means of X-ray diffraction (XRD) and scanning electron microscopy (SEM) coupled to energy dispersive X-ray spectroscopy (EDS). Oxygen dissolution areas were investigated through hardness and EDS measurements. A specific transmission electron microscopy (TEM) characterisation campaign involving TEM-EDS, electron energy loss spectroscopy (EELS), selected area electron diffraction (SAED) and high magnification imaging, was finally dedicated to the study of the internal oxidation area.

Material and methods

Ti-6Al-2Sn-4Zr-2Mo-Si alloy used in this study is a Ti-based alloy, containing 6 wt. % Al, 2 wt. % Sn, 4 wt. % Zr, 2 wt. % Mo and 0.1 wt. % Si (Table 1). It has an equiaxed microstructure composed of α (HCP) phase and β (BCC) phase. Square samples measure approximately 7 mm x 7 mm and are 4 mm thick. All the specimens were mechanically ground using SiC papers up to P600 grit [START_REF] Dumas | NaCl-induced accelerated oxidation of a titanium alloy[END_REF][START_REF] Xiong | Synergistic corrosion behavior of coated Ti60 alloys with NaCl deposit in moist air at elevated temperature[END_REF][START_REF] Anuwar | A study on the hot corrosion behavior of Ti-6Al-4V alloy[END_REF][START_REF] Béguin | Improvement of Salt Corrosion Resistance of Titanium Alloys by PVD and CVD Coatings[END_REF] and were then cleaned in ethanol.

NaCl deposits were performed by spraying a saturated NaCl solution at the surface of the samples. The detailed spraying procedure was exposed previously in reference [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF]. This method allows to obtain fully covering deposits of approximately 3-4 mg.cm -2 of NaCl [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF]. Samples exposed to laboratory air without and with NaCl deposit, named A and NA respectively, were oxidised in Carbolite CWF 1300 muffle furnaces at 560 °C during 600 h. Both samples were analysed through two successive steps. Surfaces were first characterized, followed by analyses of polished cross-sections. Cross-section preparation was previously described in reference [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF].

Surface and cross-section analyses were performed by scanning electron microscopy (SEM) using JEOL JSM-7600 F set-up in backscattered electron (BSE) and secondary electron (SE) contrasts. The elementary composition of corrosion products was analysed with energy dispersive X-ray spectroscopy (EDS). The crystalline structure of the corrosion products was determined by X-ray diffraction (XRD) using an Inel CPS 120 diffractometer and the Cu Kα (λ =0.154 nm) radiation with fixed incidence angles ranging from 1°to 12°(depending on corrosion scale thickness). Vickers micro-hardness measurements were performed using a BUEHLER 1600-6100 apparatus. 10 g loads were applied, leading to indents with a diagonal lying between 5 and 10 μm. Indentations were performed over the whole thickness of the metallic material, every 10 μm near the surface (for the first 100 μm), then every 100 μm up to 500 μm and then every 500 μm until reaching the middle of the sample.

For further understanding of the internal corrosion area, a fine characterisation was performed. A cross-sectional 10 × 10 μm 2 transmission electron microscopy (TEM) lamellae of the internal oxidation area region was prepared using focused-ion beam (FIB) FEI HELIOS 600i apparatus. A systematic analysis was sequenced as follows: firstly, a general description of the observed region was done with EDS semiquantitative analysis of selected areas, secondly electron energy loss spectroscopy (EELS) line scan probe was acquired near EDS areas for quantitative analysis of light elements such as oxygen in particular. Finally, selected area electron diffraction (SAED) patterns were recorded to identify the crystalline structure of the different compounds. Elemental and chemical characterisations (EDS and EELS respectively) were performed using JEOL cold-FEG JEM ARM 200 F apparatus operated at 200 kV equipped with Cs corrector probe of 0.078 nm spatial resolution. EELS spectra were recorded using GIF Quantum ER imaging filter with collection and convergence semi angles equal to 19.4 and 14.8 mrad, respectively. The collected spectra were acquired each 4 nm with an energy resolution of 0.5 eV determined by the full width half maximum (FWHM) of the recorded zero-loss peak. An energy dispersion of 0.1 eV/channel was chosen to acquire Ti-L 2,3 and O-K energy loss near edges spectra (ELNES). Low magnification, electron diffraction (ED) and high magnification TEM images were acquired using field emission gun FEG-TEM JEOL JEM 2100 F operated at 200 kV. Factsage 6.4™ was used to perform thermodynamic calculations, in order to identify the role of different alloying elements on the active oxidation mechanism proposed in a previous study [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF].

Results

Weight gains per unit area

The sample oxidised for 600 h at 560 °C in laboratory air (sample A) presents a small mass gain per unit area, of 0.28 ± 0.10 mg.cm -2 . This result is consistent with results obtained by McReynolds and Tamirisakandala in similar conditions of exposure [START_REF] Mcreynolds | A study on alpha-case depth in Ti-6Al-2Sn-4Zr-2Mo[END_REF].

The NaCl-coated sample (NA) exposed to laboratory air for 600 h at 560 °C shows a mass gain per unit area 12 times higher (3.41 ± 0.12 mg.cm -2 ) than that of the sample without any deposit exposed to laboratory air under the same conditions.

Oxidation test in laboratory air without NaCl deposit (sample A)

Surface observations of the sample exposed to laboratory air at 560 °C for 600 h show a homogeneous aspect (Fig. 1a). In Fig. 1a, light regions (enriched in Mo and locally in Zr) and dark regions (enriched in Al), can be associated with the underlying β-and α-phases of the Ti-6Al-2Sn-4Zr-2Mo-Si alloy respectively. The observation of the initial alloy microstructure suggests the presence of a very thin oxide layer at the surface of the sample.

The global EDS surface analysis is presented in Table 2. It indicates the presence of Ti and O predominantly and of low quantities of Al, Zr, Sn and Mo. These results, coupled with XRD analysis (Fig. 2), indicate that in the present conditions, the material oxidation leads to the formation of TiO 2 rutile and anatase mainly (ICDD n°00-021-1276 and ICDD n°03-065-5714 respectively). The presence of strong signals Cross-section observation (Fig. 1b) confirms the previous results by revealing the presence of a very thin ( 200 nm), dense and adherent oxide layer.

Fig. 3 presents the micro-hardness profile versus the distance from the alloy|oxide interface. Oxygen EDS profile is also depicted. Indeed, it is well known that in Ti-based alloys oxygen dissolution leads to surface hardening. Comparing micro-hardness with oxygen profile near the alloy surface is therefore a common method to determine OAZ thickness [START_REF] Baillieux | Relationship between the volume of the unit cell of hexagonal-close-packed Ti, hardness and oxygen content after α-case formation in Ti-6Al-2Sn-4Zr-2Mo-0.1Si alloy[END_REF], although micro-hardness is more sensitive to low O contents (below 1 at. %) than EDS and EPMA [START_REF] Vaché | Oxygen diffusion modeling in titanium alloys: new elements on the analysis of microhardness profiles[END_REF].

A high hardness value of 530 HV 0.01 was measured in the external part of the substrate close to the alloy|oxide interface. Then the hardness value quickly decreases with the distance from the alloy|oxide interface. At around 25 μm, it reaches the average value measured for the Ti-6Al-2Sn-4Zr-2Mo-Si bulk alloy (325 HV 0.01 ). In parallel, the O content also decreases from 32 at. % at the interface, to 2 at. % at 10 μm from the interface. It should be noted here that because of O surface pollution (native oxide), the O contents measured by EDS are over-estimated by a few at. %. Therefore, the values mentioned above should not be considered quantitatively accurate.

Oxidation under NaCl deposit in laboratory air (sample NA)

Surface and cross-section analyses

Surface observations of the sample with a NaCl deposit exposed to laboratory air (NA) for 600 h at 560 °C (Fig. 4) reveal a heterogeneous aspect with blisters and cracked corrosion products.

Results of EDS surface analyses are presented in Table 3. They indicate the presence of Ti and O predominantly and a small amount of Na.

Fig. 5 presents XRD analysis performed on the corrosion scale of the sample NA. For this purpose, the scale present on one side of the sample was completely removed and crushed into powder. Combining EDS non-quantitative surface chemical composition with XRD results (Fig. 5), allow to stipulate that corrosion products are mainly composed of rutile TiO 2 (ICDD n°01-070-7347), with small amounts of Na 4 Ti 5 O 12 sodium-titanium mixed oxide (ICDD n°00-052-1814). XRD pattern also indicates the presence of a zirconia-type phase (ZrO 2 (ICDD n°01-070-2491)), doped by metallic elements of the alloy, like Al and Ti. A small amount of γ-Al 2 O 3 (ICDD n°00-047-1292) was also found.

Cross-section examination (Fig. 6a) indicates the presence of a thick (about 50 μm), cracked, porous and non-adherent oxide scale on the material surface.

EDS elementary X-ray maps (Fig. 6b-j) show that the oxide scale is composed of four different layers. The outermost part is a thin mixed sodium-titanium oxide which, according to XRD and EDS surface analyses, should correspond to hexagonal Na 4 Ti 5 O 12 . Just below this layer, there is a very thick layer of rutile TiO 2 according to XRD results. Then, elementary X-ray maps and XRD indicate the presence of monoclinic ZrO 2 -type oxide, followed by a layer of cubic γ-Al 2 O 3 .

Micrograph in BSE contrast (Fig. 6a) also reveals the presence of two internal corrosion areas confirmed by EDS elementary X-ray maps (Fig. 6b-j). The thickness of these internal corrosion areas reaches up to 45 μm from the alloy|oxide interface. The upper half part corresponds to a highly cracked and fully oxidised area. A small amount of Cl can be noticed at this specific location. This first zone is then followed by a partially oxidised area, depleted in Ti (as shown in Fig. 6c), which ends with large cracks and grain ravelling deep inside the metallic matrix. Fig. 7 presents the micro-hardness profile and the relative O content versus the distance from the alloy|oxide interface. The oxygen profile appears to be constant -at an average of around 75 at. % -, along the first 25 μm, confirming the internal oxidation. Oxygen content then quickly decreases and stabilizes to around 5 at. % at approximately 50 μm from the alloy|oxide interface. Again, due to O surface pollution, the O contents measured by EDS are certainly over-estimated by a few at. %.

Unlike the previous cases of sample A, values of micro-hardness strongly decrease here when approaching the alloy|oxide interface. Micro-hardness progressively decreases from the average value of 325 HV 0.01 (for the bulk material) at 35 μm, down to 120 HV 0.01 at the al-loy|oxide interface. These very low values of micro-hardness are obviously related to the cracking and grain ravelling present in this area.

Fig. 8 presents detailed micrographs in BSE and SE contrasts of the internal oxidation area in sample NA.

In agreement with O contents shown in Fig. 7, this internal oxidation area appears to be composed of a fully oxidised outer area, followed by a partially oxidised inner area. In the fully oxidised area, the equiaxed microstructure of the initial metallic matrix seems to be preserved after oxidation into TiO 2 , according to Fig. 6a. This fully oxidised area also appears highly damaged: it presents many cracks and grain ravelling. Furthermore, oxidation of α grains appears to be directional, leading to a lathlike structure, as already observed by Fan et al. [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF] in Ti60 alloys after exposure to NaCl solid deposit in moist air for 20 h at 600 °C. Fig. 8b and Fig. 8c, present respectively the BSE and SE images of a same grain. The absence of strong topological variations in the SE micrograph (Fig. 8c) shows that BSE contrast of the lath-like structure (observed in Fig. 8b) does not correspond to voids created by the previously mentioned loss of Ti, but rather to intra-granular chemical heterogeneity.

In the partially oxidised area, this lath-like structure appears to be more or less present in the α-grains, depending on the oxidation progress. Only a part of each grain has this lath-like structure, while the rest exhibits the metallic aspect that can be seen in the lower part of Fig. 8a. This microstructure suggests that the grains located in the partially oxidised area are composed of both fully oxidised parts and metallic parts. The relative evolution of the oxygen profile acquired in the partially oxidised area (Fig. 7), can also be discussed. Indeed, since the grains composing it are partially oxidised, the high O contents found -which would normally indicate the presence of an oxygen dissolution area -might also result from an average between the O content of both oxidised and un-oxidised regions. Thus, it is rather difficult to exclude or confirm the presence of oxygen dissolution areas.

TEM detailed characterisation of the internal oxidation area

In order to get more information concerning the specific and unusual microstructure of the internal oxidation area, a detailed TEM analysis was performed.

Fig. 9a shows a SEM micrograph in BSE contrast of the internal oxidation area. Two different oxide morphologies can be noticed on this micrograph: intragranular oxides (represented by equiaxed partially oxidised grains) followed by a region of intergranular oxidation (with oxidised grain boundaries). The selected area for FIB TEM lamellae sample preparation is denoted by the light blue rectangle that contains the different regions of interest (ROI). Two ROI were investigated denoted as region 1 and region 2. Fig. 9b presents a low magnification image of the TEM lamellae observed in Scanning TEM (STEM) bright field (BF) mode with the two ROI that were investigated.

Region 1: intragranular oxidation area.

A high magnification TEM bright field (TEM-BF) image of region 1 is shown in Fig. 10. This region of the sample consists of laths (grey areas) formed in the metal matrix (black areas) with some voids (white areas). Regions where EDS (yellow), EELS (green) and ED (orange) analyses were performed are also reported in Fig. 10.

Fig. 11a was obtained using high-angle annular dark field STEM-HAADF imaging mode. Using this mode, the image contrast depends on the atomic number (Z) where the brighter and darker regions correspond to higher and lower Z, respectively. These results are confirmed by EELS analyses, whose ELNES spectra are presented in Fig. 11c. In 3d transition metals, such as Ti, ELNES spectra are identified by L 3 and L 2 white lines that represent the spinorbit splitting of 2p core hole and transition to 3d states (L 3 from 2p 3/2 → 3d and L 2 from 2p 1/2 → 3d) [START_REF] Egerton | Electron Energy-Loss Spectroscopy in the Electron Microscope[END_REF][START_REF] Leapman | Study of the L 2,3 edges in the 3d transition metals and their oxides by electron-energy-loss spectroscopy with comparisons to theory[END_REF]. Metallic Ti-L 3 and L 2 white lines are usually detected at 457 and 462.5 eV [START_REF] Terada | Chemical shift of Electron energy-Loss near-edge structure on the nitrogen K-Edge and titanium L 3 -Edge at TiN/Ti interface[END_REF][START_REF] Abdallah | STEM-EELS identification of TiO X N Y , TiN, Ti 2 N and O, N dissolution in the Ti2642S alloy oxidized in synthetic air at 650 °C[END_REF]. Ti bonding with O to form oxides, leads to a split in the L 2 and L 3 white lines and four peaks are detected instead of two. This is because of the octahedral coordination of Ti with O, splitting the degenerated unoccupied 3d states to lower t 2g and higher e g bands [START_REF] Brydson | Electron energy-loss spectroscopy (EELS) and the electronic structure of titanium dioxide[END_REF][START_REF] Hofer | Electron energy loss near edge structure on the nitrogen K-edge in vanadium nitrides[END_REF][START_REF] Potapov | Measuring the absolute position of EELS ionisation edges in a TEM[END_REF][START_REF] Gloter | Electronic structure of titaniabased nanotubes investigated by EELS spectroscopy[END_REF]. As the line profile passes from bright to dark regions in Fig. 11a, the intensity and ELNES position of Ti-L 3 and L 2 edges change along with a decrease in intensity and profile change of O-K edge. This change corresponds to an alternation between metallic and oxidised Ti. For example, ELNES spectrum 9 reflects the metallic characteristic of Ti-L 2,3 white lines with no detection of O-K edge. However, in ELNES spectrum 8, the Ti-L 2,3 edges is shifted to higher energy loss values where L 2 and L 3 white lines split to lower t 2g and higher e g bands denoted by 'a' and 'b'. This change in ELNES spectrum of Ti is accompanied by an increase in O-K edge intensity. Similarly to EDS results, neither Na nor Cl were detected by EELS.

To get more information on the formation of the oxidised laths, SA EDS analyses have been done at the end tale of one lath denoted by small circles in Fig. 10 and summarized in Table 4. If position 10 EDS spectrum confirms the presence of Ti oxide, spectra acquired along the lath growth direction and on each side of this direction do not put in evidence any noticeable composition difference between both zones.

EELS technique can also give access to the oxidation state of the analysed elements, through the fingerprint approach based on the fine structure. The positions of Ti-L 2,3 edges were then compared with values obtained in previous studies [START_REF] Potapov | Measuring the absolute position of EELS ionisation edges in a TEM[END_REF][START_REF] Stoyanov | The effect of valence state and site geometry on Ti L 3,2 and O-K electron energy-loss spectra of Ti x O y phases[END_REF][START_REF] Ngnekou | Structural characterization of the scale formed on a Ti-46Al-8Nb alloy oxidised in air at 700 °C[END_REF]. On EELS spectrum 8 (Fig. 11c), Ti-L 2,3 edges are compared with a previous study on Ti-6Al-2Sn-4Zr-2Mo-Si oxidised in synthetic air, where a rutile TiO 2 scale grew on the alloy and was identified by EELS and SAED techniques [START_REF] Abdallah | STEM-EELS identification of TiO X N Y , TiN, Ti 2 N and O, N dissolution in the Ti2642S alloy oxidized in synthetic air at 650 °C[END_REF]. The comparison of Ti-L 2,3 ELNES fine structure of spectrum 8 with the work of Abdallah et al. [START_REF] Abdallah | STEM-EELS identification of TiO X N Y , TiN, Ti 2 N and O, N dissolution in the Ti2642S alloy oxidized in synthetic air at 650 °C[END_REF] revealed that the oxide has an anatase structure due to a difference in shape and to a change in position to slightly lower energy loss value of 'b' peak [START_REF] Potapov | Measuring the absolute position of EELS ionisation edges in a TEM[END_REF].

Presence of metallic Ti and anatase TiO 2 is confirmed by SAED whose patterns are presented in Fig. 12a andb respectively. ED1 and ED2 patterns were observed using nano-diffraction method. ED1 corresponds to HCP-Ti structure along [1, 2, 1, 0] zone axis (ZA) with measured interplanar distances. ED2 obtained inside a lath shows a polycrystalline structure of anatase TiO 2 (JCPDS n°00-021-1272).

The interface between metallic Ti (dark) and a TiO 2 lath (light grey) is presented in a high magnification TEM image (Fig. 13). The α-Ti matrix appears, at this scale of a grain, to be monocrystalline. However, the TiO 2 lath seems to be composed of several small crystallites of 7 nm diameter in average, according to the small coherence domains denoted by the colored circles. Moreover, the TiO 2 lath obviously appears to follow a specific growth direction within the α-Ti matrix, parallel to (001) planes, according to the measured interplanar distance of 4.7 Å. However, any orientation relationship between the α-Ti matrix and the TiO 2 lath crystallites cannot be clearly evidenced.

Region 2: intergranular oxidation area.

This second region was located deeper in the metallic matrix, just beneath region 1. Fig. 14 presents a low magnification STEM-HAADF image that highlights the regions of ED, EDS and EELS line profile analyses.

A zoom on the EDS region is shown in Fig. 15a, where five areas were selected for the analysis. According to EDS results (Fig. 15b), the small precipitate analysed in EDS spectrum 15 reflects a composition close to Ti 3 Al, known to be a brittle phase. EDS spectra 16 and 18 give the elementary composition inside the grain boundary, where high concentration of O is detected (around 60 at. %) reflecting TiO 2 composition, whereas EDS spectra 17 and 19 give the elementary compositions of the α-Ti matrix. Fig. 16 presents the ELNES spectra at Ti-L 2,3 and O-K edges acquired from the alloy towards the grain boundary. In the alloy (ELNES spectra 10 and 17), metallic Ti-L 2,3 edges are present with no detection of O-K edge. Inside the grain boundary (ELNES spectra 13 and 14), along with an O-K edge, Ti-L 2,3 white lines split to have in total four peaks, the same signature as TiO 2 presented in region 1. At the interface the alloy and grain boundary (ELNES spectra 12, 15 and 16), a change in shape and position of Ti-L 2,3 edges can be also noticed, showing the transition between metallic Ti and TiO 2 . ELNES spectrum 11 corresponding to the precipitate that was identified as Ti 3 Al has a signature similar to metallic Ti.

Additionally, ED was performed in the alloy (ED3 region in Fig. 14) and the grain boundary (ED4 region in Fig. 14), of which diffraction patterns are shown in Fig. 17. The α-Ti structure is shown in Fig. 17a along [0,1, 1, 2] ZA. Again, polycrystalline structure of anatase TiO 2 is identified in Fig. 17b overlayered with HCP matrix spots. All results obtained on both samples A and NA are summarized in Table . 5.

Discussion

Oxidation in absence of NaCl deposit

In laboratory air (sample A), oxidation of Ti-6Al-2Sn-4Zr-2Mo-Si alloy for 600 h at 560 °C led to a weight gain per unit area of 0.28 ± 0.10 mg.cm -2 . This slight mass increase is consistent with the parabolic rate kinetics reported by Dupressoire et al. [START_REF] Dupressoire | Effect of nitrogen on the kinetics of oxide scale growth and of oxygen dissolution in the Ti6242S titanium-based alloy[END_REF]. Corrosion products were mainly rutile and anatase TiO 2 , in agreement with previous observations [START_REF] Dupressoire | Effect of nitrogen on the kinetics of oxide scale growth and of oxygen dissolution in the Ti6242S titanium-based alloy[END_REF]. However, Dupressoire et al. [START_REF] Dupressoire | Effect of nitrogen on the kinetics of oxide scale growth and of oxygen dissolution in the Ti6242S titanium-based alloy[END_REF] also reported the of Al 2 O 3 after 100 h oxidation at 650 °C using fluorescence spectroscopy, although, it was not detectable by XRD, like in the present study. This is certainly due to its relatively low content as compared to that of TiO 2 phase. Similarly, Berthaud et al. [START_REF] Berthaud | Study of titanium alloy Ti6242S oxidation behaviour in air at 560 °C: effect of oxygen dissolution on lattice parameters[END_REF] also reported by XPS analysis the presence of Al 2 O 3 at the top of the oxide scale formed on a sample oxidised 100 h at 560 °C. Finally, our results regarding oxide scale thickness (approximately 0.2 μm) and oxygen dissolution area (OAZ) thickness (approximately 10 μm by EDS and approximately 25 μm by micro-hardness) are consistent with previous results obtained by McReynolds and Tamirisakandala [START_REF] Mcreynolds | A study on alpha-case depth in Ti-6Al-2Sn-4Zr-2Mo[END_REF]. Their EDS results, obtained on a sample oxidised 500 h at 649 °C, suggest that the oxide scale would be mainly composed of Ti-oxide with small amounts of Al-and Zr-oxides.

Corrosion in presence of NaCl deposit: formation of an external corrosion scale

The presence of a NaCl deposit was shown to be extremely harmful for the material in laboratory air (NA) at 560 °C; the weight gain per unit area (3.41 ± 0.12 mg.cm -2 ) being 12 times higher than for NaClfree sample (A). This detrimental effect of NaCl deposit on the oxidation resistance of pure Ti and Ti-alloys has already been reported in several studies [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF][START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Shu | Corrosion behavior of Ti60 alloy coated with a solid NaCl deposit in O 2 plus water vapor at 500-700 °C[END_REF][START_REF] Dumas | NaCl-induced accelerated oxidation of a titanium alloy[END_REF][START_REF] Fan | Corrosion behavior of pure Ti under a solid NaCl deposit in a wet oxygen flow at 600 °C[END_REF][START_REF] Ciszak | NaCl-induced hightemperature corrosion of β21S Ti alloy[END_REF]. The loss in corrosion resistance in presence of NaCl deposit is thought to be related to an active corrosion mechanism. This mechanism would rely on the initial reaction of native TiO 2 with NaCl to form a mixed sodium-titanium oxide and volatile chlorine, which would then diffuse trough the scale and react with the metallic substrate to form volatile Ti chlorides that will be thereafter oxidised to form Ti oxides [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF][START_REF] Shu | Corrosion behavior of Ti60 alloy coated with a solid NaCl deposit in O 2 plus water vapor at 500-700 °C[END_REF][START_REF] Fan | Corrosion behavior of pure Ti under a solid NaCl deposit in a wet oxygen flow at 600 °C[END_REF][START_REF] Ciszak | NaCl-induced hightemperature corrosion of β21S Ti alloy[END_REF][START_REF] Xiong | Synergistic corrosion behavior of coated Ti60 alloys with NaCl deposit in moist air at elevated temperature[END_REF]. The huge depletion of Ti in the internal oxidation area would attest to such an active oxidation process. Thermodynamic calculations performed in a previous study [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF] showed that this mechanism can be activated because of the high vapour pressure of the NaCl (g) ↔ NaCl (s) equilibrium at high temperature, which can reach 3 × 10 -7 bar at 560 °C [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF][START_REF] Zimm | Vapor Pressures, Heats of Vaporization, and Entropies of Some Alkali Halides[END_REF][START_REF] Ewing | Equilibrium vaporization rates and vapor pressures of solid and liquid sodium chloride, potassium chloride, potassium bromide, cesium iodide, and lithium fluoride[END_REF].

The as-described active corrosion mechanism allows explaining the formation of thick TiO 2 layers during high temperature exposure in presence of NaCl. Nevertheless, in the case of Ti-6Al-2Sn4Zr-2Mo-Si alloy, the corrosion scale equally contains Zr and Al-based oxides. It is obvious that the mechanism needs to be adapted in order to take into account Zr and Al contributions. Since Sn, Mo and Si oxides are not present in the external oxide layer (as shown in Fig. 6 for Sn and Mo), the reactions involving Sn, Mo and Si are not taken into account in the mechanism. Thus, based on the present experimental results and on the mechanisms previously proposed for other Ti-based alloys, the corrosion of Ti-6Al-2Sn-4Zr-2Mo-Si alloy in laboratory air with NaCl deposit (NA) would be based on the following series of reactions, supported by thermodynamics calculations presented in Table 6.

The first step would be initiated by the reaction of the NaCl (g) vapour with the native TiO 2 in presence of O 2 (g) (Eq. ( 1)).

+ + + NaCl O TiO Na Ti O Cl 4 5 2 g g s s g ( ) 2 ( ) 2 ( ) 4 5 12 ( ) 2 ( ) (1)
The Cl 2 (g) formed would then migrate through the damaged oxide scale, down to the alloy|oxide interface, and react with the alloying elements to form the corresponding metal chlorides, as described in Eq.

(2), Eq. (3) and Eq. ( 4) below and in Table 6.

+ Ti Cl TiCl 1 2 1 2 s g ( ) 2 4 ( ) (2)
+ Al Cl AlCl 2 3 2 3 s g g ( ) 2 ( ) 3 ( ) (3)
+ Zr Cl ZrCl 1 2 1 2 s g g ( ) 2 ( ) 4 ( ) (4)
The as formed metal chlorides will then diffuse throughout the oxide scale and will be oxidised in locations where the oxygen partial pressure P(O 2 ) reaches a critical value inducing chloride oxidation. Chloride oxidation reactions are presented in Eq. ( 9), Eq. ( 10) and Eq. ( 11) below.

+ + TiCl O TiO Cl 2 g g s g 4 ( ) 2 ( ) 2 ( ) 2 ( ) (9)
+ + AlCl O Al O Cl 4 3 2 3 2 g g s g 3 ( ) 2 ( ) 2 3 ( ) 2 ( ) (10)
+ + ZrCl O ZrO Cl 2 g g s g 4 ( ) 2 ( ) 2 ( ) 2 ( )
As all the reactants of Eq. ( 9), Eq. ( 10) and Eq. ( 11) are in gaseous state, it is important to mention that because of the heterogeneous nucleation principle, these reactions of chloride oxidation will preferentially take place on any defect (i.e. material surface, pore surface or crack surface) that would favour them energetically, similarly to what occurs in chemical vapour deposition (CVD) processes. They should therefore lead to the formation of massive products such as oxide layers instead of powders.

Furthermore, depending on local oxygen partial pressure P(O 2 ) and chlorine partial pressure P(Cl 2 ), each metal chloride will be oxidised when specific critical values of P(O 2 ) will be reached. These specific critical values of P(O 2 ) depend on the equilibrium P(O 2 ) of each chloride oxidation reaction (for a given P(Cl 2 )). Thus, respective oxides will form at different locations of the oxide scale, leading to its stratification as a function of respective equilibrium P(O 2 ) values of each chloride oxidation reaction. Based on this mechanism, the initial layer of Na 4 Ti 5 O 12 that composes the surface of the oxide scale would be followed by a TiO 2 scale representing the main part of the oxide scale, then followed by an intermediate layer of ZrO 2 and a final layer of Al 2 O 3 in the innermost part of the oxide scale. Fig. 18 presents an overlay of the theoretical predominance diagrams of all the alloying elements (Ti, Al, Sn, Zr, Mo and Si) calculated for pure constituents at 833 K. Knowing that the activity of alloying elements is lower than 1, all horizontal and vertical equilibrium lines of the predominance diagram should be shifted respectively upward and rightward. However, diagonal equilibrium lines should not be significantly shifted as they do not directly depend on the activity of their respective metallic element. The present predominance diagram, especially the sequence of diagonal equilibrium lines, should therefore be suitable for predicting the sequence of oxides precipitation in the present system.

According to Fig. 18

Corrosion in presence of NaCl deposit: formation of an internal corrosion area

Despite the fact that internal oxidation of Ti is usually unexpected, the similarity between the microstructure shown Fig. 10a and the initial metallic matrix suggests that metallic grains are converted into oxide grains through a direct oxidation process and do not result from the oxidation of metal-chlorides, as explained above to occur for the external oxide scale formation. Additionally, it can be supposed that α-grains oxidize preferentially as compared to β-grains, due to the higher solubility of O in the α-phase.

In agreement with Fan et al. [START_REF] Fan | Corrosion behavior of Ti60 alloy under a solid NaCl deposit in wet oxygen flow at 600[END_REF][START_REF] Fan | Effect of streaming water vapor on the corrosion behavior of Ti60 alloy under a solid NaCl deposit in water vapor at 600 °C[END_REF], the internal oxidation area was found to be composed of TiO 2 and α-Ti matrix more or less enriched in O. However, SAED analyses performed in the present work revealed that Ti oxide was actually nanocrystalline anatase TiO 2 rather than rutile TiO 2 . As a rutile to anatase transition can occur if the grain size drops down below 17 nm [START_REF] Da Silva | Surface energy effects on the stability of anatase and rutile nanocrystals: a predictive diagram for Nb 2 O 5 -doped-TiO 2[END_REF], the TiO 2 crystallites size, which was found to be lower than 10 nm, might explain the stability of anatase instead of rutile.

Based on the relative stability of each alloying elements oxide (Fig. 18), the TiO 2 composing the internal oxidation area (that forms beneath ZrO 2 and Al 2 O 3 layers of the external oxidation scale) should not be the most stable at this location. The anatase structure of TiO 2 might be an explanation for its unexpected stability at this location.

Furthermore, EDS and EELS analyses revealed that, if O dissolves in the metallic parts remaining between the TiO 2 laths, no sign of O dissolution was found downstream of the laths growing-front. This result would attest on the preponderance of the active oxidation kinetics over that of oxygen dissolution and inward diffusion. However, O content obviously appears to be important enough to allow the oxidation of the grain boundaries and of the matrix depleted in metallic elements. Indeed, because of the active oxidation loop, Ti, Al and Zr would be consumed in the grain boundaries first, followed by the α-grains, leading to a significant decrease in their activity inside the depleted regions. However, if alloying elements are assumed to be transported outward under a gaseous form (metal chloride), the present EDS and EELS results do not allow to identify whether Cl is carried inward through gaseous diffusion (Cl 2 (g) ) or solid-state diffusion (Cl -). Due to the inward O flow (arriving through the numerous cracks and short circuit diffusion paths present in both external and internal oxide areas), the local O activity appears to become sufficient to induce the oxidation of the remaining metallic elements. The formation of nanocrystalline anatase TiO 2 might be due to a fast oxidation process, promoted by the fast consumption of metallic elements by the active oxidation process at the upper part of the alloy, in relation to their very important depletion at this location. Fig. 20 presents a schematic representation of formation of the internal oxidation area.

If the preferential oxidation of grain boundaries seems rather obvious, the explanation for the unusual directional growth of TiO 2 laths within the α-grains appears unclear. The high magnification TEM image of the TiO 2 lath apex (Fig. 13) revealed that the growth direction of these laths is parallel to the basal planes of α-Ti. However, EDS analyses downstream and on each side of a TiO 2 lath apex did not allow to evidence any chemical heterogeneity within a same α-grain that might explain such a reactivity difference between the oxidised and unoxidised regions. Moreover, this inhomogeneous and directional internal oxidation appears to be not systematic. Indeed, it did not seem to be observed on pure Ti [START_REF] Fan | Corrosion behavior of pure Ti under a solid NaCl deposit in a wet oxygen flow at 600 °C[END_REF], or some other Ti alloys [START_REF] Ciszak | NaCl induced corrosion of Ti-6Al-4V alloy at high temperature[END_REF][START_REF] Ciszak | NaCl-induced hightemperature corrosion of β21S Ti alloy[END_REF]. However, it is surprisingly similar to formation and growth of α-phase grain boundaries and Widmanstätten laths encountered in a β-Ti matrix [START_REF] Furuhara | Crystallography of grain boundary α precipitates in a β titanium alloy[END_REF]. The present inhomogeneous internal oxidation phenomenon might therefore be due to some structural heterogeneities, inherited from the thermo-mechanical history of the sample, and fortuitously revealed by the active oxidation process.

Conclusion

A large increase in high-temperature corrosion rate was observed for Ti-6Al-2Sn-4Zr-2Mo-Si alloy in presence of solid NaCl deposit. This enhancement is attributed to the presence of Cl 2 (g) coming from NaCl decomposition, which creates an active oxidation loop. In these conditions, corrosion of the material leads to the formation of both external and internal oxidation areas, which is unusual for Ti and Ti alloys.

In the case of Ti-6Al-2Sn-4Zr-2Mo-Si alloy, containing several alloying elements, the active oxidation loop leads to a stratification of the oxide scale. Overlaying the predominance diagrams of each pure alloying element allows, in a first approximation, to predict the stratification of the oxide scale. However, the highly restrained evaluation of the partial pressure of each gaseous species, due to oxide scale cracking, may strongly limit the accuracy of these predictions. Such predictions might be improved by correcting each predominance diagram with the actual activity of each alloying element. Despite the simple and rough nature of the present thermodynamic approximations, quite an accurate prediction was obtained regarding the stratification of the external oxide scale.

Detailed SEM and TEM analyses reveal a two steps formation process for the internal oxidation area. Firstly, grain boundaries of the metallic matrix would be attacked by Cl 2 (g) involved in the active oxidation loop, leading to the oxidation of these grain boundaries. Secondly, Cl 2 (g) attack would extend to α-grains, leading to the formation of Widmanstätten-like TiO 2 laths within the α-grains. EELS and SAED reveal that these Widmanstätten-like TiO 2 laths are composed of nanocrystalline anatase TiO 2 surrounded by O-enriched α-Ti matrix. However, the present results do not allow to identify if the origins of such a heterogeneous internal oxidation phenomenon is of chemical and/or structural nature.

Data availability

The raw data required to reproduce these findings cannot be shared at this time as the data also forms part of an ongoing study. The processed data required to reproduce these findings cannot be shared at this time as the data also forms part of an ongoing study.

Fig. 1 .

 1 Fig. 1. Surface micrograph in SE contrast (a) and cross-section micrograph in BSE contrast (b) of sample A oxidised 600 h at 560 °C in laboratory air.

Fig. 2 .

 2 Fig. 2. Diffraction pattern of the XRD analysis performed on sample A after 600 h at 560 °C in laboratory air.

Fig. 3 .

 3 Fig. 3. Micro-hardness (◆) and relative oxygen content (○) (obtained by EDS) profiles versus distance from the alloy|oxide interface of sample A after 600 h at 560 °C in laboratory air.

Fig. 4 .

 4 Fig. 4. Surface micrograph in SE contrast of sample NA oxidised 600 h at 560 °C in laboratory air with NaCl deposit.

Fig. 5 .

 5 Fig. 5. Diffraction pattern of the XRD analysis performed on sample NA oxidised 600 h at 560 °C in laboratory air with NaCl deposit.

Fig. 6 .

 6 Fig. 6. Cross-section micrograph of sample NA oxidised 600 h at 560 °C in laboratory air with NaCl deposit, (a) in BSE contrast and corresponding X-ray maps of O (b), Ti (c), Al (d), Zr (e), Mo (f), Sn (g), Na (h), Cl (i) and Cu (j) elements.

Fig. 7 .

 7 Fig. 7. Micro-hardness (◆) and relative oxygen content (○) (obtained by EDS) profiles versus distance from the alloy|oxide interface of sample NA, oxidised 600 h at 560 °C in laboratory air with NaCl deposit.

Fig. 8 .

 8 Fig. 8. Global SEM micrograph in BSE contrast of the first stages of internal oxidation in sample NA (a), and zoom on an α-phase grain partially oxidised in BSE (b) and SE (c) contrasts.

Fig. 9 .

 9 Fig. 9. SEM micrograph of the sample surface showing in light blue the selected area for a cross sectional TEM lift out lamellae prepared by FIB (a), and low magnification STEM-BF micrograph showing the two regions to be analysed (b). (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article).

Fig. 10 .

 10 Fig. 10. Low magnification of region 1 where the different zones of EDS (yellow rectangle and circles), EELS (green line), ED (orange circles) and HR (white rectangle) analyses are denoted. (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article).

Fig. 11 .

 11 Fig. 11. STEM-HAADF micrograph of the ROI in Fig. 10 with the yellow rectangular boxes indicating the EDS regions and the green dashed line the EELS line profile location. (a) Corresponding elementary EDS compositions and (b) ELNES spectra of Ti-L 3,2 and O-K edges. (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article).

Fig. 12 .

 12 Fig. 12. Electron diffraction (ED1) of α-Ti along [1, 2, 1, 0] ZA (a) and ED2 of anatase TiO 2 .

Fig. 13 .

 13 Fig. 13. High magnification TEM image of a TiO 2 lath apex surrounded the α-Ti matrix.

Fig. 14 .

 14 Fig. 14. Low magnification STEM-HAADF micrograph of region 2, where EDS/ EELS and ED analyses were performed.

Fig. 15 .

 15 Fig. 15. STEM-HAADF micrograph of the ROI in Fig. 14 with the yellow rectangular boxes indicating the EDS regions in (a) and the elementary compositions in (b). (For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article).

Fig. 16 .

 16 Fig. 16. STEM-HAADF micrograph of the EELS line profile (a) and its corresponding ELNES spectra (b).

Fig. 17 .

 17 Fig. 17. Electron diffraction in an α-Ti grain (ED3) for HCP Ti along [0,1, 1, 2] ZA (a) and ED4 in the neighboring grain boundary showing anatase TiO 2 polycrystalline structure, overlayered with ED spots of α-Ti matrix.

Fig. 18 .

 18 Fig. 18. Overlay of the theoretical predominance diagrams of the Ti, Al, Sn, Zr, Mo and Si elements established for pure constituents at 833 K for 1 atm pressure using FactSage 6.4 from thermodynamic database FactPS / Elem / FT Oxid. Intermediate titanium oxides between Ti 3 O 5 and TiO 2 are deliberately not shown for clarity purposes.

Fig. 19 .

 19 Fig. 19. Diagram of the reaction scheme proposed for the stratification of the external oxide scale formed on sample NA.

Fig. 20 .

 20 Fig. 20. Schematic representation of formation of the internal oxidation area. (a) Initial state of the metallic matrix. (b) Preferential oxidation of grain boundaries. (c) Growth of oxide laths in the α-grains and formation of crack leading to partially oxidised grains. (d) Growth of the oxide laths leading to the conversion of partially oxidised α-grains into fully oxidised ones and extension to un-oxidised α-grains.

Table 1

 1 Average chemical composition of the as received Ti-6Al-2Sn-4Zr-2Mo-Si alloy, obtained by EDS analysis.

	Elements		Ti	Al	Sn	Zr	Mo	Si
	Chemical composition	wt. %	Bal.	5.8	2.4	4.8	2.5	0.1
		at. %	Bal.	10.3	1.0	2.5	1.3	0.2

Table 2

 2 Surface EDS analyses performed on sample A.

	Sample	Content (at. %)
		Ti	O	Al	Zr	Sn	Mo	Si
	A	33.4	60.5	4.2	1.0	0.4	0.4	0.1

Table 3

 3 Results of surface EDS analyses performed on sample NA.

	Sample	Content (at. %)
		Ti	O	Na
	NA	21.2	69.9	8.9

Table 4

 4 Atomic composition of the SA EDS points in Fig.10.

	Position	Content (at. %)
		O	Al	Si	Ti	Zr	Mo	Sn
	10	44.4	9.5	0.6	43.7	0.2	1.0	0.6
	11	7.0	11.2	0.4	78.5	1.5	0.7	0.8
	12	7.5	11.0	0.5	77.9	1.6	0.7	0.8
	13	8.2	10.8	0.6	77.7	1.2	0.7	0.8
	14	6.4	10.6	0.6	79.0	1.9	0.7	0.7

Table 5

 5 Summary of the results obtained for the different oxidation conditions at 560 °C after 600 h exposures.

				Air	Air + NaCl
				(sample A)	deposit
					(sample NA)
			Weight	0.28 ± 0.10	3.41 ± 0.12
			gain per
			unit area (mg.cm -2 )
	External oxide		Thickness (μm)	0.2	50
			Composition	TiO 2	Na 4 Ti 5 O 12
				(rutile + anatase)	TiO 2 (rutile)
					Ti-doped ZrO 2
					Al 2 O 3
			Morphology	dense	porous
					blistered
					cracked
	Internal oxide	Fully	Thickness (μm)	/	25
		oxidised	Composition	/	TiO 2 (anatase)
		area	Morphology	/	cracked
					with grain
					ravelling
		Partially	Thickness (μm)	/	35
		oxidised	Composition	/	TiO 2 (anatase)
		area	Morphology	/	cracked
	OAZ		Thickness (μm)	10 (EDS)	/
				25 (HV 0.01 )

Table 6

 6 Reactions proposed for the active corrosion mechanisms and their corresponding calculated values of standard free enthalpy (calculated with FactSage 6.4 using reaction module and FactPS / FT Oxid and FTSalt databases).

	No.	Equilibrium equation	ΔG 0 833K (kJ. mol -1 )
	(1)	4	NaCl	g ( )	+	O	g 2 ( )	+	5	TiO	s 2 ( )	Na Ti O 4 5 12 ( ) s	+	2	Cl 2 ( ) g	/
	(2)	1 2	Ti	s ( )	+	Cl 2 ( ) g	1 2	TiCl	g 4 ( )	-331.26
	(3)	2 3	Al	s ( )	+	Cl 2 ( ) g	2 3	AlCl 3 ( ) g	-362.05
	(4)	1 2	Zr	s ( )	+	Cl 2 ( ) g	1 2	ZrCl	g 4 ( )	-387.03
	(5)	Sn	s ( )	+	Cl 2 ( ) g	SnCl 2 ( ) g	-219.81
	(6)	1 2	Sn	s ( )		+	Cl 2 ( ) g	1 2	SnCl	g 4 ( )	-190.68
	(7)	1 2	Mo	s ( )	+	Cl 2 ( ) g	1 2	MoCl	g 4 ( )	-150.68
	(8)	1 2	Si	s ( )	+		Cl 2 ( ) g	1 2	SiCl	g 4 ( )	-276.25
	(9)	TiCl	g 4 ( )	+	O	g 2 ( )	TiO	s 2 ( )	+	2	Cl 2 ( ) g	-129.86
	(10)	4 3	AlCl 3 ( ) g	+	O	g 2 ( )	2 3	Al O 2 3 ( ) s	+	2	Cl 2 ( ) g	-219.01
	(11)	ZrCl	g 4 ( )	+	O	g 2 ( )	ZrO	s 2 ( )	+	2	Cl 2 ( ) g	-164.59
	(12)	SnCl 2 ( ) g	+	O	g 2 ( )	SnO	s 2 ( )	+	Cl 2 ( ) g	-187.19
	(13)	SnCl	g 4 ( )	+	O	g 2 ( )	SnO	s 2 ( )	+	2	Cl 2 ( ) g	-25.63
	(14)	2 3	MoCl	g 4 ( )	+	O	g 2 ( )	2 3	MoO	s 3 ( )	+	Cl 3 2 ( ) g 4	-155.21
	(15)	SiCl	g 4 ( )	+	O	g 2 ( )	SiO	s 2 ( )	+	2	Cl 2 ( ) g	-201.30

Acknowledgements

This work was financially supported by ICB and CIRIMAT laboratories. Authors thank the 'Fondation de la Maison de la Chimie' for the post-doctorate grant of Iman Abdallah. The authors would also like to thank Frédéric HERBST (SEM/EDS analyses), Nicolas GEOFFROY (XRD analyses) and Nathalie ROUDERGUES (technical support) from the ICB laboratory and Alessandro PUGLIARA (TEM/EDS analyses), Claudie JOSSE (FIB TEM lamellae sample preparation) and Teresa HUNGRIA (TEM/EELS analyses) from the Raimond CASTAING micro-characterisation centre.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Appendix A. Supplementary data

Supplementary material related to this article can be found, in the online version, at doi:https://doi.org/10.1016/j.corsci.2020.108611.


Benjamin Matuszewski
email: benjamin.matuszewski@ircam.fr

A Web-Based Framework for Distributed Music System Research and Creation

This paper presents soundworks, a framework dedicated to prototyping and developing distributed multimedia applications using Web technologies. Since its first release in 2015, the framework has been used in numerous artistic and research projects such as concerts, installations, workshops, teaching or experimental setups. We first present how this diversity of contexts and objectives permitted to identify a set of patterns able to support recurring needs of expert users in exploratory tasks. We then detail new developments that have been achieved to provide better support to these patterns. More particularly, we describe the novel distributed state management system dedicated at simplifying the implementation of remote control and monitoring interfaces and, the plug-in system implemented to improve the extensibility of the framework and foster composition of dedicated functionalities. We believe that these new developments can provide a solid ground to further research and artistic practices in the area of distributed music systems.

INTRODUCTION

The specification and development of the WebAudio API [START_REF]WebAudio API Specification[END_REF][START_REF] Choi | AudioWorklet : The future of web audio[END_REF]-alongside Application Programming Interfaces (API) such as WebSockets [START_REF]The WebSocket Protocol[END_REF] or WebGL [START_REF]WebGL Specification[END_REF] and the possibilities offered by a full-featured scripting language such as JavaScript [START_REF] Wirfs-Brock | JavaScript : the first 20 years[END_REF]-has permitted to envision the Web platform [START_REF] Berners-Lee | World-Wide Web : The Information Universe[END_REF] as a viable technical platform for artistic creation and more precisely for computer music practices [START_REF] Wyse | The viability of the web browser as a computer music platform[END_REF]. Furthermore, the recent developments of ubiquitous and pervasive computing [START_REF] Weiser | The Computer for the 21st Century[END_REF], with the democratization of smartphones and large spread of nanocomputers, led to consider Web technologies as a possible solution for recurring integration and interoperability issues [START_REF] Guinard | Towards the Web of Things : Web Mashups for Embedded Devices[END_REF]. These two complementary aspects therefore authorize to consider the Web as an interesting environment in the development of Networked Music Systems [10, ?, 11]. Moreover, this novel approach could unfold novel possibilities in related areas such as multi-source electro-acoustic music [START_REF] Bayle | Space, and more[END_REF][START_REF] Taylor | A History of the Audience as a Speaker Array[END_REF] or interfaces for musical expression [START_REF] Poupyrev | New Interfaces for Musical Expression[END_REF][START_REF] Matuszewski | Designing Movement Driven Audio Applications Using a Web-Based Interactive Machine Learning Toolkit[END_REF]. In this context, the development of a dedicated framework, designed to support both the specificities of the web platform and of computer music research and practices seems essential.

Indeed, computer music is a field that spans across multiple disciplines-from scientific to artistic through social sciences and humanities-and thus gather a great diversity of goals, skills and methodologies (e.g. experimental studies, practices-based research). It appears that a common ground for the support of this diversity can be found in the concept of experimental systems-as systems composed of epistemic things and technical objects in constant evolution and reconfiguration-developed by Rheinberger [START_REF] Reinberger | Experimental Systems : Historiality, Narration, and Deconstruction[END_REF][START_REF] Rheinberger | Consistency from the perspective of an experimental systems approach to the sciences and their epistemic objects[END_REF] and pursued by Schwab in the context of artistic research [START_REF] Schwab | Experimental Systems : Future Knowledge in Artistic Research[END_REF]. We postulate that such epistemological ground can lead to the implementation of particular patterns [START_REF] Alexander | Notes on the Synthesis of Form[END_REF] in order to support this diversity of research practices effectively.

soundworks [START_REF]Soundworks Repository[END_REF]-initiated by S. Robaszkiewicz and N. Schnell [START_REF] Robaszkiewicz | Soundworks -a playground for artists and developers to create collaborative mobile web performances[END_REF] in 2015-is a framework dedicated to the development of distributed multimedia applications on the web. It has known two major revisions (in 2016 and 2017) and has been used in numerous artistic and research projects (e.g. concerts, installations, workshops, pedagogical or experimental setups) [START_REF] Schnell | Collective Loops : Multimodal Interactions Through Co-located Mobile Devices and Synchronized Audiovisual Rendering Based on Web Standards[END_REF][START_REF] Matuszewski | Interaction Topologies in Mobile-Based Situated Networked Music Systems[END_REF][START_REF] Matuszewski | Toward a Web of Audio Things[END_REF]. While these achievements tended to validate the efficacy of the framework considered as an experimental platform, they also permitted to highlight some inherent and recurring difficulties. The third version of soundworks-initiated in 2019 [START_REF] Matuszewski | Soundworks A Framework for Networked Music Systems on the Web[END_REF]-presented in this paper aims to address some of these difficulties, as well as to provide solid foundations upon which environments facilitating the inclusion and agency of non-expert developers users can be built.

After a short review of the related works (cf. Section 1), we describe in Section 2 different contexts in which our framework has been successfully used in last two years, and which informs us about recurring and important needs our framework must support. In Section 3, we present an overview of the framework architecture, philosophy and basic functionalities. Finally, in Sections 4 and 5, we detail new features dedicated at supporting patterns-namely remote monitoring and control, composability and extensibility-that we consider of primary importance to provide an effective experimental platform supporting distributed music systems research and creation.

RELATED WORKS

Max/MSP or Pure Data [START_REF] Puckette | Combining Event and Signal Processing in the MAX Graphical Programming Environment[END_REF][START_REF] Puckette | A case study in software for artists : Max/MSP and Pd[END_REF] are well established environments used since many years by artists and researchers in a wide range of contexts. The success of these visual programming environments lies in part in their successful implementation of certain patterns that permitted users to create and compose their own application in a very interactive fashion [START_REF] Matuszewski | Toward a Web of Audio Things[END_REF]. However, the environments also come with their drawbacks in our context. First, there are not primarily oriented toward distributed applications and are difficult to operate in large and dynamic networks of computers. Second, they necessitate the installation of a software, making applications difficult to distribute and thus to deploy in large collective settings, precluding new forms of public and collective participation.

On the Web platform, attempts have been made to implement equivalent environments [START_REF]WebAudio-Patcher[END_REF]. However, while interesting, these tools are far for from being as mature as the original ones. Also, they tends to neglect one of the most interesting aspects of using the Web platform, namely the network. Finally, some frameworks dedicated to network music systems, such as Rhizome [START_REF] Lartigaud | Rhizome[END_REF] or Nexus, [START_REF] Allison | NEXUS : Collaborative Performance for the Masses, Handling Instrument Interface Distribution through the Web[END_REF] have been proposed. While similar to soundworks in their scope, these tools do not seem to be maintained or in active development.

CONTEXTS

In this section we review different contexts in which we deployed web-based distributed systems implemented using our framework. Each of these contexts will be illustrated with a particular project that have been developed in the last years. Note that while these 3 applications have been designed and developed with the previous version of soundworks, two of them (i.e. Playground and CoMo) have already been ported to the novel version. These rewritings permitted to simplify the code base, and moreover, enabled new artistic and research possibilities, assessing thus the concepts and design decisions presented in this paper.

Concerts and Performances

Playground is an application that allows a composer / performer to remotely distribute and control audio materials rendered on the smartphones of the audience. The application expose several dynamic control interfaces, optimized for touch interfaces such as tablets (see Figure 1), that can be jointly used :

-The first one allows for triggering sound files on a given smartphone represented on the screen as a colored square. -The second one allows for controlling granular synthesis among subsets of the audience's smartphones. -The third one is dedicated at controlling the spatial rendering of audio files synchronized among all smartphones. -Finally, the fourth one is dedicated at managing all presets and configuration variables as well as at assigning particular sound banks to the other control interfaces.

In this application, a number of strategies are implemented to provide the composer and performer a dynamic environment in which they can test sonic material and configure many aspect of the synthesis (e.g. dynamic update of sound files, creation of presets) in the studio, but also have useful feedback on the state of audience's smartphones (e.g. loading states, position in concert hall) during the performance.

Playground has been designed together with the composer Garth Paine and implemented for the creation of Future Perfect, an immersive 3D audio visual performance 1 . Since then, the application has been used for the creation of several pieces-by the composer himself or other composers-, as well as in workshops and pedagogical situations.

Installations

The context of an installation comes with different constraints and requirements than the ones of perfor-1. Future Perfect has been composed and realized during a research / creation residency that took place in 2018 between Ircam and ZKM.

mances. In such contexts, the usage of so-called nanocomputers is interesting for several reasons [START_REF] Matuszewski | Toward a Web of Audio Things[END_REF], the most important one being the simplicity they offer in term of orchestration and tasks automations compared to smartphones. For example, Biotope [START_REF]Biotope Presentation[END_REF], composed by Jean-Luc Hervé 2 , is a generative and interactive installation that features 27 Raspberry Pi nanocomputers running Node.js soundworks clients. The audio synthesis is achieved using a Node.js wrapper on top of the libpd library [START_REF] Brinkmann | Embedding Pure Data with libpd[END_REF][START_REF]Node-libpd Repository[END_REF].

In this system, a number of strategies have been implemented to provide a dynamic and testable environment to the composer and to the computer music designer. Among them, we have implemented a centralized controller dedicated at controlling and monitoring the state and parameters of each agent in real-time. For example, each square in Figure 2 right, represents a musical agent in its relative position in the exhibition space, the different colors giving an overview of their state in real-time.

Scientific Settings and Measurements

A third important context of computer music researches relates to scientific experimental research. In this context, some the characteristics of our framework such as clock synchronization [START_REF] Lambert | Synchronisation for Distributed Audio Rendering over Heterogeneous Devices[END_REF] enabled novel possibilities in scientific experimentations.

For example, the project EmoDemos [START_REF]Emodemos Website[END_REF] included an experiment dedicated at measuring precision and synchronization of the movement in groups of children practicing music (see Figure 2, right). This experimental setup has been developed on top of CoMo-an application dedicated at creating movement-based distributed Interactive Machine Learning scenarios- [START_REF] Matuszewski | Designing Movement Driven Audio Applications Using a Web-Based Interactive Machine Learning Toolkit[END_REF], and allowed to record the motion sensors of smartphones tagged with synchronized timestamps. The portability and simplicity of deployment of the system permitted us to measure almost 200 children, divided by groups of 10 to 15.

Once again, the system exposes a dedicated client to control and monitor the state of the application, allowing the experimenters to prototype and refine the protocol as well as to ensure smooth measurements in a very constrained timeline and environment. CoMo has also been used in different settings such as music, design and dance researches, artworks [START_REF]Constella(c)tions -Residency[END_REF] and workshops.

Common Requirements and Patterns

These different examples show the large diversity of contexts a framework dedicated at computer music research and creation must support. Furthermore, they all implied intertwined periods of research, development, composition and tests in the laboratory or the studio (possibly with musicians and performers), that deepen further the diversity of spaces and temporalities involved.

To adapt to these different contexts and their inherent constraints, the technological system must thus be easily developed, modified or extended. This leads us to consider that two design aspects are of primary importance in the development of our framework.

First, the importance for remote monitoring and control that allows a single user in working situation (e.g. composer, researcher) to operate the distributed system-possibly composed of hundreds of devices-as a "single coherent system" [START_REF] Van Steen | A brief introduction to distributed systems[END_REF]. We will describe in Section 4 how our framework proposes to support and facilitate the implementation of such functionality.

Second, the importance of being able to easily reuse existing functionalities but also to extend the framework with novel and dedicated components, to support exploratory workflows. Such problems can be addressed by introducing and supporting composability and extensibility in the system. We will describe in Section 5 how we propose to promote such aspects in soundworks.

ARCHITECTURE OVERVIEW

In this section, we present some high-level and general aspects of the soundworks framework. We present first the general architecture and scope of the framework, and second, a formalization of its most basic functionalities.

General Principles

Since its inception, soundworks has been dedicated to simplifying the development of web-based and distributed real-time musical systems. Applications created using soundworks follow a star network topology centered around a server written using Node.js (see Figure 3). In these applications, clients can have multiple responsibilities (e.g. audio rendering, visual rendering, control) and be of different kinds (e.g. mobile, desktop, nanocomputers).

In previous versions, the framework was mainly focused on mobile applications and therefore privileged certain characteristics of these platforms (e.g. graphical user interface, usability). However, to support more diverse applications and use-cases, it must evolve toward more modularity and extensibility considering both software (e.g. integration of third party components and libraries) and hardware (e.g. integration of IoT elements). In this objective, the scope of the framework has been refined and narro- wed down to focus only on four key aspects : initialization, communications, distributed state management and plug-in host for external and dedicated functionalities. As a consequence, a number of functionalities (e.g. templating, graphical and audio rendering) have been removed from the core of the framework and delegated to external and specialized libraries. These developments also permitted to reduce the API surface area of the framework, the number of dependencies, and finally improved its maintainability and learnability.

Initialization and Communications

The most basic functionality exposed by the framework, is to easily bootstrap an application by taking care of initializing processes and communications. Figure 4 summarizes the initialization process common to all soundworks clients :

-The init step consists in connecting two WebSockets to the server, one dedicated to JSON compliant string data and a second one to binary data. The API of both sockets is similar and exposes a simple publish / subscribe interface. -Once sockets are connected, the plug-ins initialization can start. To support dependencies between plug-ins, soundworks can create a dependency graph start each plug-in accordingly. -Finally, when all plug-ins are in a ready state the application specific code (called Experience in soundworks' terminology) can start. Figure 4 also illustrates a novel feature of the framework that enables the seamless implementation of soundworks clients in the two main JavaScript environments : browsers and Node.js. Indeed, while this approach has already been tested and deployed in a production setting (cf. 2.2), the novel version the framework properly integrates it by making most of the code compatible to both platforms. This novel feature should foster IoT approaches [START_REF] Turchet | Internet of Musical Things : Vision and Challenges[END_REF][START_REF] Matuszewski | Toward a Web of Audio Things[END_REF] by simplifying the creation of applications composed of diverse type of clients (e.g. smartphones, nanocomputers).

DISTRIBUTED STATE MANAGEMENT

An important novel feature of soundworks is the integration of a distributed state management system. This component is dedicated to support and simplify the implementation of remote control and monitoring functionalities.

Since the introduction of the Flux pattern proposed by Facebook [START_REF]Flux Pattern[END_REF], usage of libraries that enforce unidirectional and circular data flow in the application is considered a good practice among the JavaScript community. In our case, using such pattern that consider rendering as a pure function of the state, could therefore be very interesting, as the state of any node could be modified from a remote control interface in a transparent way for the node itself. However, existing libraries are not firstly designed for distributed applications and are difficult to adapt to our specific context for two main reasons. First, they do not formalize nor integrate the notion of discrete and volatile events very common in our applications (e.g. triggering a sound). Second, they do not provide a simple way to synchronize states across several nodes in the network. To tackle these issues, we designed a novel component implementing such unidirectional and circular data flow approach, and adapted to the particular requirements of our applications.

Concepts and Requirements

In our contexts, the application of such an unidirectional and circular pattern presents certain particularities illustrated in Figure 5. First, the state of every client has to be kept synchronized server-side. The rationale for this design strategy stands in the importance of being able to remotely monitor and control any client of the system from a centralized point. Indeed, the possibility to dynamically interact with any node of the network, and the rapid feedback loop it enables, is of primary importance in working situations. Furthermore, it appears to be crucial in exploratory contexts (such as artistic and research activities) where the final application cannot be specified beforehand and emerges from an iterative process.

Second, Figure 5 highlights the need of a certain granularity in the definition and synchronization of the states. More precisely, while some variables and parameters (named globals in Figure 5) needs to be accessible to every client (e.g. master volume, mute), the particular state a client (clients [START_REF] Choi | AudioWorklet : The future of web audio[END_REF] in Figure 5) should not be shared with all its peers. It only needs to be monitored or controlled by particular types of clients dedicated to authoring and / or performance situations.

Protocol and API

To fulfill these requirement while preserving the idea of unidirectional and circular flow between actions, data and rendering, we designed a simple protocol and implemented a new component. The main principles of the protocol we propose are :

-Allow any node to create a new state from a declared schema. -Allow to keep the state synchronized with the server.

-Allow any node to observe new states created on the network. -Allow any node to attach to a state created by another node.

Figure 6 illustrates a generic scenario enabled by this protocol. A client (named controller) observes the server and attach to the state created by another client (named player). Once attached, the controller receives a notification each time the state is updated by its creator (or any other attached node), enabling remote monitoring. The controller can also update values of the attached state, enabling remote control. At any moment, the controller can detach from the state and stop receiving update notifications 3 .

The protocol is abstracted behind a reduced API illustrated in the pseudo-code example of Figure 7. This simple example also highlights two interesting aspects of the component :

-The complete abstraction of network communications, allowing users to focus on the application logic rather than routing of network messages. -The possibility to use schemas declarations to generate controls and monitoring interfaces, simplifying fast prototyping and testing of ideas as well as implementation of dynamic and complex interfaces.

3. Note that no particular guard has been implemented to prevent race conditions, therefore the last event received wins. The simplicity of these synchronized data structures also enables more advanced uses of dynamic composition of states or distributed hierarchical state machines.

A HOST FOR PLUG-INS

Another important evolution of soundworks lies in its ability to act as a plug-in host for extending its basic functionalities. We believe this feature will also to enhance modularity, allowing to combine predefined components for a specific application, but also to simplify maintenance and evolutions of both the framework and the applications. A number of plug-ins dedicated at synchronizing clocks, recording data, parsing and watching the file system, to name a few, are already available.

In this section, we first present a technical overview of the implementation and registration of a soundworks plug-in. Second, we illustrate this feature with two novel components dedicated at runtime distributed scripting and logging of arbitrary data.

Implementing and Registering Plug-ins

Thanks to the dynamic nature of the JavaScript language, the implementation of a new plug-in is relatively simple. Figure 8 illustrates several important aspects of the implementation of a new plug-in. First, the module exports a factory function that itself returns the plug-in class definition. This simple pattern allows soundworks to dynamically pass the AbstractPlugin parent class to the plug-in factory function and thus avoid hard-coded and circular dependencies between the plug-in and the host. Second, it shows (cf. start method) the different states that the plug-in must report to the host. Indeed, reporting these steps are important to be able to deal with all the different asynchronous tasks that has to be performed (e.g. network communication, particular GUI and user interactions) during the initialization of the application. Figure 9 illustrates how a plug-in is registered into soundworks (while Figure 9 shows the process serverside, similar code would be written client-side) as well as two other possibilities. First, the possibility for a given plug-in factory to be used several times by registering it with a different identifier (e.g. delay-1 and delay-2). For example, this capacity could be used to synchronize different clocks (e.g. audio clock and high precision clock) on the same client. Second, it shows how dependencies between several plug-ins can be declared, enabling the possibility of implementing higher-order plug-ins on top of the functionalities offered by lower-level ones.

Examples

To illustrate the kind of functionalities the plug-in host system enable, we present two plug-ins we created for the novel version of the CoMo application (cf. Section 2.3). While designed and implemented with this specific use-case in mind, these two examples stands to be good examples of how this architecture facilitate the creation of modular and reusable components.

Runtime Distributed Scripting

The first plug-in we present, illustrated in Figure 10 is dedicated at the scripting of focused parts of the application at runtime 4 . As such, the plug-in seeks to simplify the test of ideas and strategies (e.g. mappings, audio synthesis) in a very efficient manner : without having to reload the whole application-server and / or clients-nor having to implement each time a dedicated control interface. Additionally, we think this plug-in can play an important pedagogical role by providing to users without expert programming knowledge (e.g. researcher, composers), a focused entry point where they can work within their own domain of expertise without having to understand the whole code base and architecture.

We believe this functionality may turn out as an important addition to the tools our framework provide to support rapid prototyping, exploration and testing of ideas.

Logging and Data Recording

The second component we present is dedicated to logging and storing on the server, arbitrary data produced by any node of the network 5 . Indeed, simplifying access to such functionality to record and analyze data is obviously central to many scientific and research practices.

However, we believe that the simplicity of usage illustrated in the Figure 11 will also help to develop usages in other directions. For example, for auditing the system, testing components or benchmarking concurrent implemen- tations in real-world situations, or, for recording and replaying examples of interactions (e.g. sensor data) to work on mappings and audio synthesis in the studio.

CONCLUSION AND FUTURE WORKS

In this paper, we have presented the motivations, design and implementation aspects of the novel version of soundworks, a framework dedicated at developing distributed multimedia applications on the web. First, we have presented the different contexts such a framework should support, and illustrated these contexts with three projects we developed last few years. These different contexts allowed us to show that supporting particular patterns is important for exploratory tasks. We then presented the general architecture and two novel features of our framework : 1. the distributed state management system, dedicated at simplifying the implementation of remote control and monitoring, and 2. its capacity to host external plug-ins, to foster composability and extensibility.

While we think this novel version of soundworks provides solid foundations to further explore the possibilities of the web platform in the area of distributed music systems, it also opens new questions and large areas for new developments. An important aspect that needs to be reconsidered and solved is the interoperability between the framework and other tools, such as graphical or audio libraries. In this regard, we think that while the schema format used for the state management component could provide a good basis in that direction, it is for now insufficiently specified. Another important limitation and direction of improvement is the lack of support for collections in the state management system, such addition would facilitate the implementation of advanced features such as presets or sound banks. Finally, to further simplify and fasten the implementation of new applications, a Command Line Interface for scaffolding components, clients or plug-ins would be an important addition. We believe that the addition of these features could foster further research and artistic practices and maybe provide a common ground for pluralistic approaches in the area of distributed music systems.

ACKNOWLEDGMENT

The presented work has been initiated in the CoSiMa research project funded by the French National Research Agency (ANR, ANR-13-CORD-0010) and further developed in the framework of the Rapid-Mix Project from the European Union's Horizon 2020 research and innovation program (H2020-ICT-2014-1, Project ID 644862). It has also been supported by the Ircam project BeCoMe, which is featured in the Constella(c)tions residency of the STARTS program of the European Commission.

We would like to thank our projects partners and our colleagues at IRCAM for their precious contributions to the project.

FIGURE 1 .

 1 FIGURE 1. On the left, Garth Paine performing Future Perfect. On the right, screenshots of two of the four control interfaces of the Playground application.

FIGURE 2 .

 2 FIGURE 2. On the left, screenshot of the centralized controller developed for the installation Biotope composed by Jean-Luc Hervé. On the right, session of measurement during the EmoDemos research project.

2 .

 2 Biotope has been realized at Ircam and created at the Centre Georges Pompidou, Paris in the context of the exhibition "La fabrique du vivant"

FIGURE 3 .

 3 FIGURE 3. Overview of the architecture of a typical soundworks application.

FIGURE 4 .

 4 FIGURE 4. Initialization steps of a soundworks client, mobile browser or Node.js process running on embedded hardware.

FIGURE 5 .

 5 FIGURE 5. Conceptual overview of a state management system enforcing unidirectional and circular data flow in a distributed context.

FIGURE 6 .FIGURE 7 .

 67 FIGURE 6. Overview of the protocol designed for the soundworks state management system.

FIGURE 8 .

 8 FIGURE 8. Pseudo-code -Main aspects of the implementation of a soundworks plug-in.

FIGURE 9 .

 9 FIGURE 9. Pseudo-code -Server-side configuration and registration of a plug-in into soundworks.

FIGURE 10 .

 10 FIGURE 10. Screenshot of the runtime distributed scripting interfaces. The function written on the editor (right) is dynamically executed on the two other clients (left) when updated.

1 import { Server } from '@soundworks/core/server'; 2 import delayPluginFactory from '@soundworks/plugin-delay/server';

	3
	4	const server = new Server();
	5	// override the default delay option
	6	server.registerPlugin('delay-1', delayPluginFactory, { delay: 2 });
	7	// declare that 'delay-2' must wait for 'delay-1'
	8	// to be ready before starting itself
	9	server.registerPlugin('delay-2', delayPluginFactory, {}, ['delay-1']);

  FIGURE 11. Pseudo-code -Creation of a 'csv' log file and writing of arbitrary data using the logger plug-in.

	1	const pathname = ${date}-${uuid}/${username}.csv ;
	2	const log = await loggerPlugin.create(pathname);
	3
	4	// later
	5	log.write( ${time}; ${x}; ${y}; );

4. https://github.com/collective-soundworks/ soundworks-plugin-scripting 5. https://github.com/collective-soundworks/ soundworks-plugin-logger

J. Audio Eng. Sco., Vol. 68, No. 10, author's prepint, 2020 October