RAPIDS: RAdio Propagation Integrated Database System Alain Rogister(1), D. Mertens(2), D. Vanhoenacker-Janvier(2), Antonio Martellucci(3), Bertram Arbesser-Rastburg(3) (1)
Ubiquity s.a. Rue de Haerne, 42, B-1040 Bruxelles, Belgium Email:
[email protected] (2)
Université catholique de Louvain, Microwave laboratory Place du Levant 3, Maxwell Building, B-1348 Louvain la Neuve, Belgium Email:
[email protected],
[email protected] (3)
European Space Agency, ESTEC, TOS-EEP Keplerlaan 1, PB 299, NL-2200 AG Noordwijk, The Netherlands Email:
[email protected],
[email protected] 1.
INTRODUCTION
The presence of the atmosphere and weather conditions may have a significant detrimental effect on the transmission performance of earth-satellite links operating in the millimetre wavelength range. To attain a fine frequency planning of operating or future satcom systems, the predictive analysis of propagation effects should be performed with payload in the suitable orbit slot and, for the earth-segment, with the antenna characteristics and meteorological parameters being specific to the station site. In line with this methodology, the RAPIDS software system developed for the European Space Agency (ESA/ESTEC) provides the engineer with a Web-based interface for building earth-space communications scenarios and a comprehensive suite of prediction models for assessing atmospheric propagation impairments. It includes support for selective access to the integrated datasets of climatological and radiometeorological data. 2.
PROBLEM DESCRIPTION
The performance of complex wave propagation prediction tasks requires propagation engineers to use a significant number of mathematical models and data sets for estimating the various effects of interest to them, such as attenuation by rain, by clouds, scintillation, etc [1]. Although the models are formally described in the literature and standardized e.g. by the ITU-R, there is no easy-to-use, integrated and fully tested implementation of all the relevant models, on a common platform. On the contrary, the models have usually been implemented by various parties using different tools and languages such as MATLAB, IDL, PV-Wave, C/C++ and FORTRAN. It is often necessary to have a good understanding of a model’s implementation in order to use it correctly, otherwise it may produce errors or, worse, wrong results when supplied with parameters outside of an expected validity range. Some models only support scalar values as inputs while others accept vectors or matrices of values, e.g. for performing a calculation over a whole region as opposed to a discrete point. These issues worsen whenever the engineer wishes to combine several models, which is necessary for most prediction tasks. In addition, assessing the validity of results produced by the combination of multiple models is also a complex issue, especially when their implementation originates from various parties. Finally, as no common user interface is supported, the combination of models requires tedious manipulations and transformations of model inputs and outputs. RAPIDS tackles all these issues by providing a Web interface supporting the collection of input parameters to a prediction task, execution of this task and visualization of its results. Numerous models have been implemented from scratch in MATLAB in such a way that they can be integrated into a so-called RAPIDS schema, also in MATLAB, which supports the full range of prediction tasks for geo and non-geo satellites. This process is described in section 4. The Web application then provides a task-oriented abstraction on top of this integrated MATLAB schema, supporting the selection of a specific usage scenario (interface) of the RAPIDS schema and the collection of its expected input parameters in the proper format. The user interacts with the system through a sequence of screens supporting the selection of satellite(s), site(s) or region, the input of statistical parameters, the choice of effects and models to be
calculated, the triggering of the calculation and the download or visualization of results. Section 3 describes the functions of the system in more details and provides a description of the Web site’s structure. 3.
FUNCTIONAL DESCRIPTION
From the end user’s viewpoint, RAPIDS is a Web application that is accessible from his Web browser and supports two modes of operation: satellite calculation mode and single-site calculation mode. The user may select a single-site calculation mode to consider the influence of link geometry and radio transmission parameters on signal degradations with a tight control on the statistical parameters relating to the activity of atmospheric factors in the surroundings of the ground station. The single-site mode interface offers a set of handy link parameter tables through which any conceivable pattern of slant-path connections from a common earth-station site can be defined. The motion of a single non-geostationary (NGEO) satellite or a satellite constellation relative to some earthstation site is specified on a statistical basis, by means of a local distribution of elevation angle. The link-parameters interface page includes a user-held list of probability distributions, defined during previous sessions and stored there for subsequent reuse. The potential satellite communication scenarios include single- or multi-frequency transmissions routed by one or many spacecrafts orbiting in line-of-sight constellation. In the satellite calculation mode, the RAPIDS interface integrates a twofold approach to the analysis of atmospheric propagation issues in satellite communications networks: • The first option consists in connecting a single receiving ground station to many earth-orbiting satellites to form a star-configured collection of radio links, based on satellite diversity. To achieve this, the user is granted access to a database of experimental and commercial satellites, and can also enrich the database with new data. The sitespecific propagation conditions over the atmospheric satellite channel are extracted from the stored meteorological data, or alternatively replaced by user-defined data. • Alternatively, the selection of a single satellite can be combined with an arbitrary number of earth stations. Site data and a topographic database are available for support. For broadcasting applications specifically, the propagation capability of the downlink satellite channel can be examined over any geographical region within the overall satellite coverage area. Thorough access to orbit elements is provided to tailor the calculation to any specific in-orbit space mission. For a satellite orbiting aside from the geostationary (GEO) circle, propagation models are applied over the swing of look angle allotted for transmissions with the satellite. In addition to general specifications of the satellite-borne payload, a radiation pattern with carrier-specific beamwidth values is specified for the antenna, together with the boresight control policy assigned to it. The overall path loss is then weighted by the gain of the radiation pattern of satellite antenna in the propagation path direction. After the calculations have been performed, the user is able to store the input parameters of the calculation and the numerical and graphical results into the system’s database, where they can be accessed at any later point in time. He may also download the results in MATLAB’s MAT file format or in ASCII format for processing them locally with MATLAB or with a spreadsheet. Finally, the system supports a number of features reserved to the site administrators: • broadcast a message by email to all users • set the message displayed upon user login • manage users and groups: this enables the administrators to create new users, accept a new user who requested access, suspend users temporarily or delete them, change their access rights, etc. The Web site’s structure is illustrated in Fig. 1. The single-site mode and satellites mode calculations are the two main courses of action in the Web site, and they make use of a set of common pages whose contents is dynamically adapted to the context of the calculation in progress.
Fig. 1 – RAPIDS web site structure diagram 4.
IMPLEMENTATION OF MODELS
Processing a propagation prediction task is a lot like assembling models mutually into a rather complex tree graph where each model may rely on one or many other lower-level models, then executing the models by successive layers of node-points till end results are produced as outputs of the main calculation schema. A model embedded in this structure, although being called in different radio-propagation contexts, may frequently receive unchanged values for some parameters of its argument list. Thus, it seemed beneficial to develop a model implementation that applies to different parameter types for the same general action. In adopting MATLAB as programming language for implementing propagation models, the inherent MATLAB' s ability to perform matrix computations has been exploited at all the calculation levels by overloading model functions through interfaces [1], each interface defining a particular combination of input parameters types. Every in-house subroutine quoted inside a model algorithm is adequately defined in terms of the type of input parameters it supports. The model in turn is built in such a way that the function output can be processed in a consistent and error-free manner, and each variable returned by the model has the expected MATLAB object format. The intended outcome is that model functions are safely executed with different combinations of scalars, vectors, matrices or multi-dimensional arrays as arguments. Furthermore, the interface mechanism allows the same function to operate on a common data abstraction but with multiple operands types, and relieves the programmer of the complexity of assigning specific names to functions that perform the same model for different legitimate use cases of parameter sets.
To illustrate this, let us consider the ITU-R model for estimating long-term statistics of hydrometeor-induced crosspolarization [2]. The model accepts the following input parameters: • p : percentage of time • f : the radio frequency • θ : elevation angle • τ : polarization angle relative to the horizontal • Ar : the rain fade level exceeded for the required percentage of time p It generates as output the amount of cross-polar discrimination, XPD, not exceeded for p % of the year. Table 1 lists the parameter interfaces that exemplify the overloading process in four use cases. The symbols S, V and M denote three categories of MATLAB objects of type real double: a scalar value, vectors and matrices respectively. Both interfaces i1 and i2 enforce parameter passing for predicting depolarization on geostationary point-to-point links operating at a given frequency and wave polarisation and subtending invariably the same elevation angle. The in-excess degradation of cross-polar discrimination can be calculated for several probability levels by specifying the statistics of rain attenuation exceeded for p % of the time. This is indicated in the second list of parameters by the distinctive label V within the corresponding columns of parameters p and Ar. To perform XPD calculation over multiple carrier/polarised channels from a single ground station, it is legitimate to overload the model function with vectors for the parameters relating to the frequency, the polarisation and the attenuation by rain (interface i3). The elevation angle is taken as single-valued or vector whether the space segment comprises either a single or multiple GEO satellites. The last combination of parameter types is representative of propagation parameters within the coverage area of a satellite beam. Table 1 – Interface description in the ITU-R model for XPD prediction interface i1 i2 i3 i4
p S V S S
f S S V S
θ S S S M
τ S S V M
Ar S V V M
XPD S V V M
A comprehensive set of interfaces can be formalised by examining all possible 2-ways link configurations between one or several GEO/NGEO satellites, and a single or many ground station sites. Each model is required to make checks at runtime in order to verify that it is been called with a valid set of parameters corresponding to one supported interface. Range constraints are also enforced on parameters whenever applicable. This description technique has been used consistently in order to make it feasible to integrate a large number of models in a predictable and reliable way. The RAPIDS schema itself also uses the same technique for specifying the various interfaces available to the Web application. Each interface corresponds to a certain use case in the Web interface, such as “single non-geo satellite link” or “multiple geo and non-geo satellites and frequencies”, with associated parameters. 5.
TECHNICAL OVERVIEW
RAPIDS supports a fully Web-based architecture. The RAPIDS server is deployed at ESTEC. The calculation models are run on this server, not on end-users’ machines. This allows the support of a single release of all models and data sets at any single point in time, avoiding intricate model version management issues that are bound to happen whenever model implementations are broadly disseminated without central control. Only a Web browser is required for interacting with the system. If the user has a local copy of MATLAB, he may download results in MAT file format too. However, this is unnecessary if the user is solely interested in viewing results in graphical form, since all the most relevant graphs are generated automatically without extra user intervention upon completion of the calculation. The RAPIDS Web interface has been developed in the Java programming language and the calculation models have been implemented in MATLAB. Data is stored in a PointBase embedded database and in MATLAB so-called MAT files. The deployment platform is RedHat Linux on Intel hardware. The WebLogic Express application server hosts the Web interface and application control logic. Model execution is performed under the control of the Sun Grid Engine workload management system.
The RAPIDS schema and models are translated from MATLAB into C++ code by the MATLAB Compiler and then transformed into a native executable file, which is linked at runtime with MATLAB’ s C/C++ numerical and graphical libraries. Whenever a user initiates a calculation request, the Java application generates a parameters MAT file (schema inputs) and invokes the execution of the compiled schema through the Sun Grid Engine. When it is scheduled for execution, the compiled schema reads its parameters MAT file, analyzes its contents in order to determine its course of action (which effects should be calculated, with which models and data sets), performs a set a calculations and then stores the numerical results in another MAT file. It also generally produces a set of graph files for results visualization. After notification of the job execution completion by the Grid engine, the WebLogic Java application processes the results, stores them in the database and makes them available to the user in various forms: display of graphs; display of results tables; download of archive containing MAT files, GIF images and textual description of the calculation context. Should the workload increase beyond the current system capabilities, additional Grid engine execution hosts may be set up on a cluster of machines for sharing the load in a way that remains transparent to the Java application. MAT file generation and manipulation is performed through the Java Native Interface (JNI), Java’ s interface to C/C++ code. The JNI-based wrapper uses MATLAB’ s C/C++ application programming interface for manipulating the contents of MAT files. The orbit generator was developed in C++, integrated with the calculation schema through MATLAB’ s MEX interface, then compiled and linked with the rest of the MATLAB code by the MATLAB Compiler. 6.
CONCLUSION
The document has outlined the design features and specifications of RAPIDS, an integrated database system for radio propagation prediction on slant paths. The software tool achieves the integration of propagation models and radiometeorological datasets and provides support for the analysis of tropospheric effects on a large variety of earth-space link scenarios. The actual value of the RAPIDS software application can be reckoned by the functionality of the WEB interface, its efficiency in performing advanced model calculations and the content of results being returned. Additional capabilities of RAPIDS include: • the global access to ground site data • the definition of local site data within alterable meteorological parameter fields of user interface. • the calculation of propagation statistics for point-to-multipoint satellite communications, upon specification of the ground site location and the orbit elements of the space-segment • the coherent combination of fade (or XPD) components issued from the models that the user can freely select • the inclusion of an antenna axis control module to simulate the off-pointing angle variations and evaluate transmission loss. 7.
REFERENCES
[1] A. Rogister, R. Fisset, D. Vanhoenacker-Janvier, H. Vasseur, E. Salonen, J.P.V. Poiares Baptista, "RAPIDS, an innovative database application for radio propagation prediction," Proc. of the 8th URSI Commission F Triennial Open Symposium on Wave Propagation and Remote Sensing, Aveiro, September 1998, pp. 20-23 [2] "Propagation data and prediction methods required for the design of Earth-space telecommunication systems," Recommendation ITU-R P.618-7, International Telecommunications Union, ITU-R, 2001. [3] D. Vanhoenacker-Janvier, D. Mertens, A. Rogister, E. Salonen, "Development of an intelligent database management system for propagation prediction," IDBMS, Final report of the activity under ESA (ESTEC) contract nr. 11246/94/NL/NB, November 2001.