dataesr/scientific-paragraphs-categorization huggingface dataset:
Conclusion In this paper, we introduced a novel methodology, called IoT Application Verification Framework (IoTAV), for the systematic assessment of IoT applications w. r. t. a set of given security properties. We applied such a methodology to the assessment of software updates in the IoT ecosystem. We proved the viability of our proposal experimentally by carrying out automatic analyses of RIOT applications on an actual deployment based on the SUIT update pipeline. The results yielded the identification of 26 security policy violations in 31 real-world RIOT applications. As future work, we will deal with the limitations described in Section 4, at first. Then, the next step of our research will be to test the methodology on other IoT architectures, OSes and firmware update workflows. Finally, although we defined a set of policies based on the OWASP IoT Top 10 security risks, we argue that novel and more comprehensive security policies should be investigated and defined.
2) to the IoTAV Server, which stores the firmware update in a database (Firmware Storage). Then, an application extraction procedure is applied to the firmware image (B. 0) to extract only the application part (B. 1). If the verification succeeds (B. 7 → YES), IoTAV server executes a packaging procedure for the firmware (B. 8). Finally, it bundles the system update following the regular SUIT publish procedure and notifies the IoT Firmware Update Server. Otherwise (B. 7 → NO), IoTAV Server notifies the IoT Software Maintainer and discards the update. The notification contains the results of the verification process (i. e. , which parts of the model violates the security policy and why).
2) to the IoTAV Server, which stores the firmware update in a database (Firmware Storage). Then, an application extraction procedure is applied to the firmware image (B. 0) to extract only the application part (B. 1). If the verification succeeds (B. 7 → YES), IoTAV server executes a packaging procedure for the firmware (B. 8). Finally, it bundles the system update following the regular SUIT publish procedure and notifies the IoT Firmware Update Server. Otherwise (B. 7 → NO), IoTAV Server notifies the IoT Software Maintainer and discards the update. The notification contains the results of the verification process (i. e. , which parts of the model violates the security policy and why). After that, the application executable goes through a modeling phase (B. 2) that outputs the corresponding application model (B.
This technical report introduces the HydrOlOgical Prediction LAboratory (HOOPLA) developed at Université Laval for ensemble lumped hydrological modelling. HOOPLA includes functionalities to perform calibration, simulation, and forecast for multiple hydrological models and various time steps. It includes a range of hydrometeorological tools such as calibration algorithms, data assimilation techniques, potential evapotranspiration formulas and a snow accounting routine. HOOPLA is a flexible framework coded in MATLAB that allows easy integration of user-defined hydrometeorological tools. This report also illustrates HOOPLA's functionalities using a set of 31 Canadian catchments.
By resolutely adopting a probabilistic approach to handle the various sources of uncertainty, HOOPLA is an attempt to produce accurate and reliable streamflow predictions without resorting to post-processing techniques  (Thiboult et al. , 2016). The toolbox was subsequently recoded for a better user experience, more flexibility, and to allow an easy integration of additional hydrometeorological tools. The scope of this paper is to present HOOPLA's main functionalities and to illustrate its performance on a set of 31 Canadian catchments. Therefore, the paper does not aim at providing the user with the knowledge to run computations with HOOPLA. Interested readers are referred instead to the user manual for complete guideline regarding the usage of HOOPLA  (Thiboult et al. , 2018). The manual and the HOOPLA software are freely available under the BSD 2-Clause License at: https://github.
Toolbox development philosophy HOOPLA has been designed to fulfill three major requirements: to provide a user-friendly environment, to be flexible regarding user's modeling preferences, and to allow easy integration of tools created by the user for testing or development purposes. To ensure an easy start, a comprehensive manual (provided as supplementary material) comes along with the toolbox. The manual provides all the necessary information to implement HOOPLA. In particular, it provides workflows for the different uses, lists data requirements, and describes input and output formats as well as all the options that can be accessed from the main script. The toolbox also includes a set of demo data to get familiar and can be run as is. -User-friendly environment: HOOPLA can be easily controlled from a master script named launch_HOOPLA.
m located at the root of the toolbox. This is the only file that needs to be edited and executed by the user for traditional applications. All modeling options can be accessed by specifying the different fields of the structure named "Switch". For instance, the user may specify to run HOOPLA in calibration, with the root-mean-square error as objective function, to choose a three-hour time step, to export the calibrated parameters, and to loop over all catchments and models by solely editing the corresponding launch_HOOPLA. m script lines. This file is thoroughly documented and can be intuitively modified. A snippet of the master file is provided in the Appendix A. Therefore, users need only little knowledge about hydrology and programming for typical use. -A large number of options: HOOPLA provides a broad array of hydrometeorological tools (hydrological models, potential evapotranspiration formulas, data assimilation schemes, calibration algorithms) that can be selected by the users to meet their needs.
These functionalities are documented below in this section. These tools can be used in several modes, i. e. calibration, simulation, or forecast with a flexible time step. Additionally, several of these tools possess options for fine-tuning (management of the different types of uncertainties, criteria for convergence, etc. ) -A flexible framework: The toolbox is developed in a way that allows easy integration of additional tools, providing that users possess an intermediate MATLAB knowledge. Since HOOPLA was developed as a framework that connects many modules (hydrological tools), users need to perform only three tasks to add a new feature: 1) respect input and output conventions that are inherent to the feature type, 2) drop the function file in the appropriate directory, and 3) edit the appropriate configuration file to inform HOOPLA that a new feature is available.
It can be, for example, used for short-range forecasting, data assimilation, or multimodel studies. Because HOOPLA was not conceived for a specific application, it only includes basic functions for result visualization in order not to orient users toward a certain interpretation of the results. As a counterpart, the format of the input and outputs are heavily documented in the user manual. Finally, to address the different sources of uncertainty located along the modelling hydrometeorological chain, HOOPLA adopts an approach based on ensembles. Because ensembles can be computationally expensive, a parallel computing feature that allows to run simultaneously several models and catchments has been implemented (see Appendix B).
Data assimilation schemes Data assimilation aims at integrating information contained in observations to improve simulation accuracy while accounting for uncertainties in the measurements and model. More precisely, data assimilation schemes typically adjust the model states based on the latest available observations to provide better initial conditions for the next modelling step. Two probabilistic, sequential data assimilation schemes are provided in HOOPLA: -The Sequential Importance Resampling filter (SIR). It belongs to the class of particle filters (PF) and is also referred to as Sequential Monte Carlo or Bootstrap filter. More details about Bayesian inference and the PF derivation can be found in  Arulampalam et al. (2002). The latter was the main inspiration for the SIR code implemented in HOOPLA.
-The Ensemble Kalman Filter (EnKF). A sound description of the EnKF is presented in  Evensen (2003)  and the EnKF code in HOOPLA was written according to  Mandel (2006)  recommendations. These two sequential data assimilation schemes were selected to be included in HOOPLA because they have been extensively tested in hydrological sciences and proved to be efficient, which is reflected by their frequent use in the literature  (Liu and Gupta, 2007). Even if both the PF and the EnKF adopt a Monte Carlo estimation method, they use a different approach and resort to different approximations.
Potential evapotranspiration formulas Potential evapotranspiration is used to quantify the atmospheric demand in water vapour and constitutes one of the hydrological model inputs (along precipitation). A large number of potential evapotranspiration formula exist. Only three were implemented in HOOPLA (see Table  2 ) because hydrological models usually express little sensitivity towards the PET input  (Seiller and Anctil, 2016). Kharrufa and Oudin are parsimonious formulas in the sense that they both rely on an energy balance rationale that only requires mean air temperature as input while the Penman formula is more complex and uses a combinational approach (energy balance and aerodynamic) that necessitates more data. sur le milieu atmosphérique  (Bergeron, 2016)  and ECMWF meteorological forecast were extracted from the TIGGE database  (Bourgeault et al.
, 2010). Note that catchment 14 dataset is provided along the HOOPLA toolbox. Calibration, simulation, and forecast are performed over the years  1997-2007, 2007-2015, and 2015-2017, respectively. Because the watersheds undergo a nival influence, CemaNeige, the snow accounting routine included in HOOPLA, is activated. The Oudin formula  (Oudin et al. , 2005)  is chosen among the available potential evapotranspiration formulas because of its low requirement of input data and known good performance when combined with the 20 aforementioned hydrological models at those sites. Finally, all 20 hydrological models provided with HOOPLA are used.
Simulation Simulation is carried out in combination with one of the data assimilation techniques provided in HOOPLA, namely the Ensemble Kalman Filter. HOOPLA parameters are defined in order to issue 50 members and to update the hydrological models every eight time steps, i. e. once a day. Following  Thiboult et al. (2016) , the EnKF hyperparameters are defined so that the temperature uncertainty is assumed Gaussian with a standard deviation equal to 2 o C, the precipitation uncertainty is approximated by a Gamma distribution, which standard deviation is equal to 50 % of the observed precipitation, and the streamflow uncertainty is assumed Gaussian as well, with a standard deviation equal to 10 % of the observed streamflow. These hyperparameters are shared by every model and catchment. Figure  2  confirms that HOOPLA provides a high level of performance over the catchments with an overall median KGE' greater than 0.
We would like to thank the Ministère du Développement durable, de l'Environnement et de la Lutte contre les changements climatiques and more precisely the Direction de l'Expertise Hydrique du Québec and the Direction de l'Information sur le Milieu Atmosphérique for their collaboration and for allowing the diffusion of the demo hydrometeorological observation dataset provided with HOOPLA. We are also thankful to the TIGGE initiative for granting us permission to distribute a subset of their meteorological forecast database as demo forcing in HOOPLA. Finally, we express our great appreciation to the IRSTEA Antony (HYCAR team), and in particular Charles Perrin, for sharing over the years, their extensive knowledge about the hydrological models.
Electrochemical model In our study, the well-known pseudo-two dimensional (p2D) electrochemical-thermal model  [1]  has been used which is parameterized and validated at various temperatures and current loads for an 18650 nickelrich, silicon-graphite lithium-ion cell of 3. 35 Ah as presented in the work of Sturm et al. [2]. The p2D model used here simulates potentials and concentrations in the active materials and the electrolyte based on porous electrode theory and concentrated solution theory combined via electrode kinetics throughout the thickness of a single electrochemical cell unit containing anode, separator and cathode  [1]. Model reduction and implementation into MATLAB 2018a were applied to the p2D model used in this work according to previous works  [3]. The Parabolic Profile approximation  [4]  for the approximation of the particle domain was used together with finite difference method (FDM) for the remaining spatial discretization of the differential algebraic equation system.
Reduced-order electro-thermal model Several types of simplified models, which are real-time compatible, are available to represent the electrothermal behavior of the battery (e. g. , equivalent circuit model  [7] [8]  [9] [10], black box model  [11] ). In our study, an equivalent circuit model is chosen because it is simple, with a good compromise of accuracy/simplicity and has already been implemented in Simcenter Amesim  [12] , which is a multi-physical simulation software of Siemens.
To evaluate the performance of the BMS before hardware implementation in the eVan, a real-time compatible battery pack model is needed for the SiL and HiL tests. By using the reduced order cell model descripted in Section 3, a battery pack model has been built in Simcenter Amesim. Figure  12  shows the simulation sketch of the electric vehicle including the battery pack model. The battery pack model includes 16 modules in series as the real pack. However, not every single cell is represented in each module of the battery pack model. To limit the number of components in the sketch, each module includes only 4 battery models in series. Each battery model is used to represent 3 groups of cells, which means 60 cells (20P3S) in total. All these 60 cells are considered to be identical, so only one battery model is enough to represent all of them by configuring the architecture of the battery model in Simcenter Amesim to be 20 in parallel and 3 in series (20P3S).
By doing so, the battery pack is split into 48 battery models, which allows to have access to, for example, 48 temperatures at different places in the battery pack. The battery pack casing is also modeled. The casing is divided into 16 parts and each part is represented by a thermal mass element. The thermal mass of each part of the casing is connected to the nearby module. The battery pack model is connected to the vehicle model of the Voltia eVan via the electric powertrain. Furthermore, a functional BMS is implemented in the simulation sketch to control the active air cooling of the battery pack via its casing. This functional BMS will be replaced by the real BMS function in the SiL environment and by the real BMS in the HiL environment.
, a L ), with (a 1 ,. , a L ) being an aligned amino-acid sequence. This probabilistic model is typically parameterized as P(a 1 ,. , a L ) / exp{∑ i<j J ij (a i , a j ) + h i (a i )} via biases (or fields) h i (a i ) representing site-specificities in aminoacid usage (i. e. patterns of amino-acid conservation), and via statistical couplings J ij (a i , a j ), which represent coevolutionary constraints and cause correlated amino-acid usage in positions i and j  [18]. In most cases, the parameters of these models are inferred by (approximate) maximumlikelihood, under the assumption that the sequences in the MSA are (almost) independently and identically distributed according to P(a 1 ,. , a L ). On one hand, this assumption is needed to make model inference from MSA technically feasible. On the other hand, it is in obvious contradiction to the fact that sequences in homologous protein families share common ancestry in evolution, and therefore typically show considerable phylogenetic correlations, which can be used to infer this unknown ancestry from data  [19].
Phylogeny induces highly non-trivial correlations between MSA columns  [20] , which however do not represent any functional relationship. Disentangling correlations induced by functional or structural couplings from phylogenycaused correlations turns out to be a highly non-trivial task  [20] [21] [22]. Simple statistical corrections have been proposed, like down-weighting similar sequences when determining statistical correlations  [3] , or the average-product correction (APC)  [23]  applied to the final coevolutionary coupling scores. While sequence weighting has initially been reported to significantly improve contact prediction, recent works show little effect  [24] , probably due to the fact that, e. g. , Pfam  [25]  is now based on reference proteomes and therefore less redundant than databases used to be about a decade ago.
More precisely, our observations are quantitatively compatible with the idea, that already the first false-positive contact prediction are caused by not correctly treating phylogeny in DCA. This shows also that methods properly dissecting phylogenetic and functional correlations in sequence data have a high potential to substantially extend the contact predictions beyond current methods. The paper is organized as follows. After this introduction, we provide the Materials and Methods, with a short review of DCA, but most importantly with the presentation of three null models. The Results section compares the spectral properties of the residue-residue covariance matrix of the real data with those of MSA generated by the null models, followed by an assessment of the couplings inferred by DCA and their relation to residue-residue contacts.
Protein families, sequence alignments and Direct Coupling Analysis Coevolutionary analysis is mostly applied to families of homologous proteins (or protein domains), as provided by the Pfam database  [25]. Multiple sequence alignments (MSA) can be downloaded in the form of rectangular arrays D ¼ fa m i j i ¼ 1;. ; L; m ¼ 1;. ; Mg of width L (aligned sequence length) and depth M (number of aligned sequences). The entries a m i 2 fÀ ; A; C;. ; Yg are either one of the 20 standard amino acids, or alignment gaps represented as "-". Note that insertions are not aligned in Pfam alignments, and are therefore typical removed from the MSA before statistical model learning. Here L describes the sequence length after removal of insertions. For the structural analysis, the Pfam MSA is mapped to experimentally resolved PDB protein structures  [27] , and distances are measured as minimum distances between heavy atoms.
Following established standards in the coevolutionary literature, we use a cutoff of 8Å for residue-residue contacts. For our work, we have selected three datasets: • DS1: Detailed results are given for 9 Pfam protein families, with not too long sequences (L < 250), not too large MSA (M < 10, 000 after removing duplicate sequences) and available PDB structures, see details in Table  A  in S1 Text. • DS2: Statistical results are given for 60 Pfam protein families belonging to the PSICOV benchmark set  [28]. Only families with M < 12, 000 pairwise distinct sequences were considered, cf. Table B in S1 Text. • DS3: We have also compiled and dataset of 20 smaller Pfam protein families with known PDB structures, to study the influence of finite MSA depth on our findings, cf. Global coevolutionary models, as those constructed by DCA, describe the sequence variability between the members of a protein family, i.
Phylogeny by itself leads to a non-trivial correlation structure between different residue positions with a power-law spectrum  [20] , and this leads to non-zero but also non-functional residue-residue couplings when using DCA. These may interfere with the functional couplings, which are e. g. used for residue-residue contact prediction from MSA data, and thereby negatively impact prediction accuracy. It is notoriously hard to disentangle the two, cf. [21, 22]. The problem is that evolution is a non-equilibrium stochastic process, whose dynamics in principle depends on the evolutionary constraints represented, e. g. , by the couplings and fields in the DCA model. Global model inference from phylogenetically correlated data remains an open questions. Here we follow a different route. We define different null models, which take residue conservation and in part also phylogeny into account, but do not show any intrinsic amino-acid covariation.
The null models allow us to create large numbers of suitably randomized sequence ensembles, on which standard DCA can be run. The couplings resulting from randomized data can be used to assess the statistical significance of the couplings resulting from the real MSA D, and therefore to discard purely phylogeny-caused couplings. While, to the best of our knowledge, this has never been done in the context of protein families and DCA, somehow similar techniques have been proposed in the context of phylogenetic profiling  [30] , but applied to correlations rather than couplings.
The latter two miss in particular the strong tail for large values; their supports being much more concentrated. For large MSA (DS2), the phylogeny-aware Null model II generates larger couplings than the phylogenyunaware Null model I, i. e. they go beyond what is to be expected from finite-sample effects alone. This latter difference almost vanishes for smaller MSA (DS3), where the coupling histograms for Null models I and II almost coincide. Interestingly, the phylogenetic couplings of Null model II are almost invariant with respect to family size, while finite-size effects (Null model I) decrease with family size, and the tail of large couplings resulting from natural sequences grows with family size. It is very interesting that, while the spectra are similar for natural data and phylogenyaware null models, the dominant residue-residue couplings are neither explainable by phylogeny nor by finite sample size.
Residue-residue contact predictions are moderately impacted by phylogenetic effects This observation becomes even more interesting, when we compare the couplings of residueresidue contacts and non-contacts. In Fig  4A , we show normalized coupling histograms for the two subsets of residue pairs in dataset DS2. The tail of large couplings is present only in the contacts, explaining why DCA and the closely related GREMLIN accurately predict contacts when couplings are high enough  [38, 39] , cf. also the positive predictive value (PPV) in function of the coupling in We see that the two histograms for contacts and non-contacts get almost identical to each other; due to the larger number of noncontacts the largest couplings are therefore dominated by non-contacts across all studied protein families.
Most interestingly, when we compare the non-contact histograms in both panels of  Fig 4,  they are extremely similar. It appears that the strength of the non-contact couplings in the natural data is mostly consistent with the phylogeny-induced spurious couplings in Null model II. The differences between these histograms translates into differences between PPV-curves as shown in Fig 5. The upper panels show the results for the union of all predictions, i. e. the largest DCA-couplings scores F APC of all families come first, for the dataset DS2 of large MSA (Panel A) and the DS3 of smaller MSA (Panel B). We see that the largest couplings derived from the natural MSA are contacts in both cases, but much more contacts are found in the larger MSA. However, in the lower panels we see that for smaller MSA only about 60% of the considered families have such large scores, leading to an initial average PPV (each family For the protein families under study, we show the histograms of DCA coupling scores F APC (APC corrected Frobenius norm of couplings, the standard output of plmDCA), for the natural MSA and samples of Null models I and II.