LINKing Multiphysics Models
Galois’s LINK project, part of DARPA’s COMPMods program, aims to make it easier for scientists to build multiphysics models with an end-to-end, automatic, and portable solution. Galois’s approach is to empower scientists to define their problem and trust LINK to automate the rest.
Multiphysics models help analyze weather events to the inner workings of mobile phones. Multiphysics analyzes different laws of physics – from electromagnetic energy to thermodynamics to atmospheric conditions.
Unfortunately, multiphysics models are difficult to create, customize, and reuse. Even then, the end result is code that combines what the scientist wants to solve with how to solve it. This result is not translatable to other types of physics.
Galois is designing a new approach called LINK to solve this problem. The LINK project is part of DARPA’s Computable Models (COMPMods) program. Galois’s goal is to deeply understand the workflow, current tools, and challenges faced by domain scientists, with the intention to make computing multiphysics models easier. Galois is not committed to a specific physics domain, technique, interface, or existing tools. This objectivity gives Galois an opportunity to improve the entire multiphysics modeling toolchain.
Astrophysics makes a compelling example of what LINK seeks to achieve. For instance, NASA is currently interested in designing vehicles with increased payloads suitable for launching advanced robotic and human missions to Mars.
The payload requirements for these missions exceed current capabilities using traditional parachutes to decelerate. A potential solution is aerobraking and retropropulsion to decelerate the vehicle for entry, descent, and landing. NASA wants to model how the thermal protection material is affected by the retropropulsion system during descent. This multiphysics problem entails multiple physics – fluid flow, thermodynamics, and solid mechanics. And yet, models for each physics component are created independently and manually and they all use different solvers. There is no unified system to address the missing features.
Making Connections for Domain Experts
LINK is intended to allow domain scientists to separate what they want to compute from how they want to compute it. In the hypothetical NASA scenario, LINK could provide NASA scientists with domain-specific languages (DSLs) that use terminologies familiar to each scientist’s domain. This is intended to make it easier for scientists to build models quickly and accurately. LINK would have several DSLs, giving domain experts the freedom to prototype for a particular type of physics.
This includes writing a problem definition and coupling in DSLs, a compatibility check for the independent models, and the generation of high-performance code.
The compatibility check will be particularly useful to domain scientists. Results would either be a new model in an intermediate representation that simulates the multiphysics model composed by the scientist, or it will notify the scientist of an error that indicates an incompatibility between the models.
All models in the intermediate representation would be compiled automatically to multiple back-end targets. Scientists would have the ability to specify hardware, software, libraries, and architectures based on the intermediate representation’s definitions.
LINK’s planned primary goal is to provide clear abstractions for users within their specific domains, as well as domain-specific tools to define domain problems. The hope is that this will not only be a better solution than general programming languages but that it would also result in more reliable and efficient code.
For more information about LINK, please see our blog post.
Acknowledgment: “This material is based upon work supported by the Defense Advanced Research Projects Agency (DARPA) under Agreement No. HR00112090064.”