OPUS-Contrib. This is the main way in which features are supposed to be provided by the community. Most of restricting rules proper to to the -Lib level have been released. The main points to note are:
  • Contributions at this level can be written in any of the following supported languages: C++, Python, R, Scilab, Matlab/Octave;
  • The contribution’s quality is the contributor’s responsibility: it is up to him/her to ensure the quality of the code, the respect of the programming rules as well as the mathematical correctness;
  • Different kinds of OPUS-Contrib contribution types exist, differentiated with respect to the integration with the others:
    • Integration: the package is created using the OPUS module system, basically a C++ module with the corresponding Python layer, and written according to the relevant rules; however, the contributor chooses not to aim at OPUS-Lib for a variety of reasons (e.g. releasing some constraints due to programming quality).
    • Compatibility: the package is compatible with the rest of OPUS, i.e. written using a language or formalism allowing it to directly interact with OPUS. This means either:
      • 1. a C++ code, which can use all -Lib and C++ -Contrib features. The code may be contributed with or without the corresponding Python layer;
      • 2. a Python script, which can use all of the Lib and all installed Python features, C++/Python features and Opus-style modules from -Contrib:
      • 3. a Scilab script using OPUS features;
    • Interoperability: the package is not usable directly with OPUS, but can interact with it, e.g. via text files;
    • Other: the package is not usable with OPUS at all, but has relevancy for uncertainty studies, or adds value to OPUS in any other way.

Last Updated (Monday, 26 September 2011 00:19)