Skip to content
0:00 / 0:00

#julia#modelingtoolkit#simulink

Jonathan Diegelman - Modeling Spacecraft Separation Dynamics in Julia

The Julia Programming Language

91K subscribers • 17 videos on Hallway

YouTube

Intermediate. Assumes working knowledge.

12K views5 years ago2 recommendations

Programming languagesSystems programmingPerformance and optimization

Jonathan Diegelman explains how NASA migrated spacecraft separation dynamics simulations from Simulink to Julia, achieving a massive performance increase.

Modeling Spacecraft Separation Dynamics in Julia Jonathan Diegelman, NASA Launch Services Program and A.I. Solutions Abstract: A common requirement for commercially launched NASA science missions is that the launch vehicle imparts low enough rotational velocity to the spacecraft to avoid pointing sensitive equipment toward the sun while keeping high enough separation velocity to preclude re-contact between the vehicles. To assess compliance with this requirement, engineers in the Guidance, Navigation, and Control group in NASA’s Launch Services Program run high-fidelity simulations of the separation event. In the past, the GN&C group has favoured high-level modeling languages in order to reduce development time. Unfortunately, these simulations tend to be slow in comparison to direct implementations in low-level languages such as C++ or Fortran, making it difficult to iterate on analyses and build intuition about the system. In this presentation, a new spacecraft separation simulation written in Julia’s SciML suite of tools is shown to outperform the legacy tools by orders of magnitude while providing even greater flexibility. Additionally, the new simulation takes advantage of the key feature of the SciML tools: composability with the rest of the Julia ecosystem of packages. This allows features such as automatic differentiation/local sensitivity analysis, physical units, uncertainty propagation, interactive notebooks, and 3D visualization. Beyond the aerospace industry, this presentation is a case study in how better tooling can improve the way engineers think about complex systems. For more information on the SciML Open Source Scientific Machine Learning Software Ecosystem, see sciml.ai/ For more info on the Julia Programming Language, follow us on Twitter: twitter.com/JuliaLanguage Contents Welcome! Overview: A case study in tooling for engineering simulations Spacecraft Separation: Problem description and modelling Current Separation Analysis Tool: Flexibility, complexity and efficiency issues RECURSAT: Design, requirements and capabilities RECURSAT Demo: The ballast placement problem S/O to github.com/pitmonticone for the video timestamps! Want to help add timestamps to our YouTube videos to help with discoverability? Find out more here: github.com/JuliaCommunity/YouTubeVideoTimestamps Interested in improving the auto generated captions? Get involved here: github.com/JuliaCommunity/YouTubeVideoSubtitles

Why it's here

2 people recommend this

What people say. Recommended as a striking case study of migrating from Simulink to Julia's ModelingToolkit, resulting in a 15,000x performance improvement.

NicolasL-Son Hacker News • Recommends

On “From Common Lisp to Julia”

You should check out this case study of migrating Simulink to Julia at NASA: link to this video From Simulink to Julia, his code went from 1000 lines to 50 lines and ran 15,000x faster.

eggyon Hacker News • Recommends

On “GNU Octave”

<<was given at a SIAM conference and the recording can be found here: link to this video >> At 14:00, the interactive slider exploration due to the speed is amazing. Over 500 Monte Carlo simulations in less than 60ms.

snicker7on Hacker News • Mentions

On “Julia Computing raises $24M Series A”

For satellite seperation dynamics modeling, NASA switched from MATLAB (Simulink) to Julia and got a 15,000x performance boost. link to this video

amkkmaon Hacker News • Mentions

On “Growing open source from Torch to PyTorch”

Sure! NASA: link to this video Moderna: link link There are many many more. These unique and sought after capability are what got Julia Computing its 24 mil series A ( link )

snicker7on Hacker News • Mentions

On “Fortran Web Framework”

NASA switched from SIMULINK to ModelingToolkit (Julia) for modeling spacecraft dynamics 0. They found that the latter was much easier and gave a 15,000x (!!!) performance improvement. 0: link to this video

ChrisRackauckason Hacker News • Mentions

On “Composability in Julia: Implementing Deep Equilibrium Models via Neural ODEs”

Lots to say here. First of all, the community growth has been pretty tremendous and I couldn't really ask for more. We're seeing tens of thousands of visitors to the documentation of various packages, and have some high profile users. For example, NASA showing a 15,000x acceleration ( link to this video ) and the Head of Clinical Pharmacology at Moderna saying SciML-based Pumas "has emerged as our 'go-to' tool for most of our analyses in recent months" in 2020 (see link ). We try to keep a showcase ( link ) but at this point it's hard to stay on top of the growth. I think anyone would be excited to see an open source side project reach that level of use. Since we tend to focus on core numerical iss…

ChrisRackauckason Hacker News • Mentions

On “GNU Octave”

ModelingToolkit.jl, a comparison is given here: link . A showcase from one of the library's users, demonstrating a 15,000x acceleration, was given at a SIAM conference and the recording can be found here: link to this video

ChrisRackauckason Hacker News • Mentions

On “Can Fortran survive another 15 years?”

…Launch Services engineers claiming Julia's ModelingToolkit simulations outperformed Simulink by 15,000x? That claim was of course not made by Julia Computing or anyone affiliated by Julia Computing, which is pretty clear because the person who makes the claim very clearly describes his affiliation at the beginning of the video. The source is here: link to this video , at 12:55. You did watch the whole video to understand the application and the caveats etc. instead of just reading the headline and immediately coming to a conclusion, right?…

NicolasL-Son Hacker News • Mentions

On “Julia 1.9 Highlights”

I would be cautious saying Simulink has no Julia equivalent. This NASA engineer switched from Simulink to SciML and obtained a 15,000x speed up while his code went from 1000 lines to 50 lines long: link to this video