We are happy to announce the initial release of the SINDRI Toolbox V0.1. Thank you to all parties and individuals involved who made this possible. The SINDRI Toolbox is a strategic deliverable from the SINDRI Partnership, and aims to enable and demonstrate the benefits of a data centric approach to structural integrity analysis.
By the end of the prosperity partnership, the SINDRI Toolbox aims to enable users to carry out a workflow, as illustrated by Figure 1. Users will be able to perform the following tasks:
- Entry into service predictions of critical component microstructure, e.g. welds
- In-service degradation assessments on a material meso-scale
- Probabilistic structural integrity assessments on a component scale
By adopting targeted use of machine learning (ML) or artificial intelligence (AI) techniques, users will be able to pass data across length scales.
Anyone who is interested to take a look at the tools is invited to request access to the repository via this link.
What is in the current release?
The SINDRI Toolbox now comprises of the following modules:
- Phase field module: for entry into service predictions
- EBSD to CPFE module: for in-service degradation predictions
- Welding Workbench module: For component scale structural assessments
The first module enables users to apply phase-field methodologies developed at the University of Manchester. They can be used to predict microstructure arising from welding processes (Figure 2).
The second module enables users to generate crystal plasticity based finite element (CPFE) models from electron microscopy based characterisation techniques. It can be used to understand the through life material properties on a meso-scale, accounting for grain size and morpohology (Figure 3).
The third module enables users to generate macro-scale weld simulations rapidly. It can be used to obtain residual stress predictions in austenitic and ferritic stainless steel weldments, following academic and industry best practices and guidance (Figure 4).
What is the underlying philosophy?
The SINDRI Toolbox has been designed with end users in mind, with an ambition of supporting the upskilling of researchers in software development best practices. Experience shows that research lives and dies with individual academics, which leads to a slower pace in developing knowledge. Moreover, research that is embodied as code is often hard to run, buggy, and not readily deployable by the individuals who developed it.
Combined, these issues stifle the flow of knowledge from academia into industry. The SINDRI Toolbox is developed with the software lifecycle in mind, as illustrated by Figure 5.
The SINDRI Toolbox is more than a repository of code and tools – it is a forum for communication and education between industry and academia. A set of working principles and support tools have been setup to support every stage of the lifecycle. This includes:
- Managed repository to plan, release, monitor, and maintain source code
- Structured architecture that promotes code quality
- Open source tools for automatic machine configuration and build for user code
- Open source tools for automated testing paired with a test server applying continuous integration / deployment principles
- Open source tools to containerise software pre-requisites that enable deployment cross platform and on high performance clusters
In addition, regular developer meetings give contributors transparency on developments. They are opportunities for knowledge exchange and training. This open sharing and development practice is rare for the UK on these types projects and is a great way for industry and academia to interact directly from a technical perspective.
Our strategy for industrial uptake of these tools has been well received across the business units within EDF group in the UK and France. Moreover, we have received interest from academic institutes outside of the SINDRI project.
How it works under the hood?
The repository is organised with the architecture illustrated in Figure 6. Everything is hosted and managed in an open and transparent way within the GitLab repository. The software pre-requisites are flexible and non-prescribed. They are containerised using Singularity, strategically chosen to enable deployment across platforms. The SINDRI Toolbox pre-requisites have been tested and run on Windows, Linux, and on the University of Manchester cluster.
Individual modules are integrated using python (waf) and allows automatic configuration and build of the modules on individual machines. The waf tool will scan your system, install missing pre-requisites, and then build each module automatically. This lowers the barriers to getting started with research software.
Each module has a common architecture and features documentation and unit testing. Coupled with the automated testing server, you can be sure of the quality of the developments and you can catch bugs and any unintended impact early on in the development process.
What is coming in the next release?
From the architecture diagram, we intend to focus on the development of transverse methods. These are generic cross-cutting methodologies that can be used by any of the individual modules. Surrogate modelling using Gaussian process regression or optimisation techniques are examples of the types of method we are integrating within the SINDRI Toolbox.
Having made the initial release, we are working with a number of academic testers in order to assess user experience, gain feed back, and identify bugs. At the same time, we have a strategy for industrial uptake which targets various business units within EDF (UK and in France). We are sure that there will be a few teething issues with the initial release but we are confident in the quality and basic functionality of our tools.
How do I get started?
We welcome anyone interested to obtain access via this link. If you are interested to contribute, please don’t hesitate to get in touch and come along to our regular developer meetings. We aim to support you to integrate modules, so we will be available to guide you through and support the process.