1 minute read

3.6 WP6, Software Infrastructure

5. Writing bindings (python as a syntactic glue)

6. Include discussions on tools and tricks/hints that the software developers can use in their everyday workflows

Advertisement

7. Image processing and computer vision.

It is important to highlight that most of these topics have been integrated into our programme of events. Associated lectures were stored on our online training portal.

WP6 is concerned with coding standards and their documentation, the development of interfaces from code to hardware, the implementation of low-level libraries, and the provision of the software tools of the CoE. These efforts have been described in deliverables from this WP, with D6.7: E-CAM Software Platform V [16] being the last iteration of the series of deliverables from WP6.

This WP provided general development assistance to the software modules created by the postdoctoral fellows of ECAM, the attendees of the ESDWs and the scientists within E-CAM. E-CAM software is documented in our Software Library, deployed by WP6, which is divided into individual repositories for each of the current focal areas. In the table below we provide direct links to the rendered documentation websites for each of the scientific areas. A snapshot of the software library is in Fig. 4.

Scientific area Link to online documentation

Classical MD Online documentation Electronic Structure Online documentation Quantum Dynamics Online documentation Meso- and Multi-scale Modelling Online documentation

Figure 4: Snapshot of the E-CAM Software Library.

A software module for E-CAM is any piece of software that could be of use to the E-CAM community and that encapsulates some additional functionality, enhanced performance or improved usability for people performing computational simulations in the domain areas of interest to us.

A final E-CAM module adheres to current best-practice programming style conventions, is well documented and comes with either regression or unit tests (and any necessary associated data). E-CAM modules are written in such a way that they can potentially take advantage of anticipated hardware developments in the near future. The E-CAM programmers oversee and implement the different stages of software development, under the supervision of the Software Manager.

In addition, WP6 has contributed to the creation of EESSI, it’s integration in Magic Castle (a cloud-based HPC training environment), and it’s availability as a GitHub Action2 (for continuous integration).

2GitHub Actions allow you to automate, customize, and execute your software development workflows in your GitHub repository

This article is from: