pyMOR - Sustainable Software for Model Order Reduction
The main goal of this project is the development of infrastructures to support the sustainable development and deployment of pyMOR and related research software.
First, we will develop and deploy a research oriented cloud service which will offer a unified development, continuous delivery and deployment workflow based on application containers. Research software will be delivered by this service for various use cases, such as continuous integration, software demonstration, teaching or large-scale research applications.
Second, we will develop guidelines for unit testing of research software in the field of scientific computing. These guidelines will help developers to systematically write comprehensive unit tests for their software, assuring the quality and long-term maintainability of their product. Based on these infrastructural measures, we will improve pyMOR’s usability to establish our software as a universal MOR tool for various PDE-based scientific computing applications.
This project is a joint effort of the CSC group together with two institutes at the University of Münster (WWU). The Workgroup for Numerical Analysis & Scientific Computing at the Institute for applied Mathematics in Münster (AMM) hosts the core development team of pyMOR. The "Zentrum für Informationsverarbeitung" (ZIV) is the WWU's service and competence center for IT-infrastructure, for communication and media technology and for the transfer of media competence.
The work programme is designed to tackle three main objectives with varying contributions from the thre groups.
- Sustainable research software in the cloud
- Sustainable unit testing and deployment of scientific computing software
- Increasing pyMOR's user community.
We have defined five work packages assigend to the work groups to address these main goals.
- Cloud computing (AMM, ZIV -> Objective 1)
- Interactive cloud-based scientific computing (AMM -> Objective 1)
- Unit testing/quality ensurance of scientific computing software (AMM, MPI -> Objective 2)
- Measures to improve usability for non-experts (AMM, MPI -> Objective 3)
- Broadening the field of applications (MPI -> Objective 3)