All Projects → nschloe → maelstrom

nschloe / maelstrom

Licence: MIT license
Numerical simulation of magnetohydrodynamics.

Programming Languages

python
139335 projects - #7 most used programming language
Jupyter Notebook
11667 projects

Projects that are alternatives of or similar to maelstrom

My NoteBook
サイエンス、テクノロジー、エンジニアリング関連の情報を記載したノート(忘備録)です。
Stars: ✭ 104 (+271.43%)
Mutual labels:  physics, mathematics
Imagine Old
Modeling and simulations using computational graphs
Stars: ✭ 25 (-10.71%)
Mutual labels:  physics, mathematics
Qilin App
Fully hackable text editor developed for exact sciences with built-in KaTeX and AsciiMath support. Extensible via plugins and themes. Exportable as HTML, PDF and GFM.
Stars: ✭ 336 (+1100%)
Mutual labels:  physics, mathematics
continuum mechanics
Utilities for doing calculations in continuum mechanics.
Stars: ✭ 18 (-35.71%)
Mutual labels:  physics, mathematics
Cadabra2
A field-theory motivated approach to computer algebra.
Stars: ✭ 112 (+300%)
Mutual labels:  physics, mathematics
Optimesh
Mesh optimization, mesh smoothing.
Stars: ✭ 261 (+832.14%)
Mutual labels:  physics, mathematics
Awesome Scientific Computing
😎 Curated list of awesome software for numerical analysis and scientific computing
Stars: ✭ 476 (+1600%)
Mutual labels:  physics, mathematics
fundamental
Software to look for interrelationships between constants and find formulas for number sequences
Stars: ✭ 14 (-50%)
Mutual labels:  physics, mathematics
Root
The official repository for ROOT: analyzing, storing and visualizing big data, scientifically
Stars: ✭ 1,377 (+4817.86%)
Mutual labels:  physics, mathematics
Computer Science Resources
A list of resources in different fields of Computer Science (multiple languages)
Stars: ✭ 1,316 (+4600%)
Mutual labels:  physics, mathematics
FastExpm.jl
Implementation of a fast exponential matrix for large matrices (full and sparse)
Stars: ✭ 22 (-21.43%)
Mutual labels:  physics, mathematics
spicyphysics
Sup bois, here's my work
Stars: ✭ 22 (-21.43%)
Mutual labels:  physics, mathematics
Dynamicalsystems.jl
Award winning software library for nonlinear dynamics
Stars: ✭ 381 (+1260.71%)
Mutual labels:  physics, mathematics
Orthopy
Orthogonal polynomials in all shapes and sizes.
Stars: ✭ 75 (+167.86%)
Mutual labels:  physics, mathematics
cplot
Function plotter
Stars: ✭ 27 (-3.57%)
Mutual labels:  physics, mathematics
creative-coding-notebooks
🎨 An authorial collection of fundamental recipes on Creative Coding and Recreational Programming.
Stars: ✭ 17 (-39.29%)
Mutual labels:  physics, mathematics
lumin
LUMIN - a deep learning and data science ecosystem for high-energy physics.
Stars: ✭ 45 (+60.71%)
Mutual labels:  physics
chaotic-maps
Simple implementations of chaotic maps in Processing
Stars: ✭ 18 (-35.71%)
Mutual labels:  mathematics
GooFit
Code repository for the massively-parallel framework for maximum-likelihood fits, implemented in CUDA/OpenMP
Stars: ✭ 112 (+300%)
Mutual labels:  physics
pacopy
📐 Numerical parameter continuation in Python.
Stars: ✭ 33 (+17.86%)
Mutual labels:  mathematics

maelstrom

CircleCI codecov Code style: black Documentation Status

maelstrom is a numerical software tool for the solution of magnetohydrodynamics problems in cylindrical coordinates. As such, maelstrom includes time integrators for the heat equation, for the Navier--Stokes equations, and a stationary solver for the Maxwell equations, each in cylindrial coordinates.

Some details on the problem

The goal is to compute the flux of a liquid metal under the influence of a magnetic field, modeled by

  • the heat equation,
  • Maxwell's equations, and
  • the Navier-Stokes equations.

Heat and Navier-Stokes are coupled by buoyancy, heat and Maxwell by the Joule effect, and Maxwell and Navier-Stokes by current induction and the Lorentz force.

To simplify matters, it is assumed that the effect of the material flux does not influence the electric and magnetic fields, i.e., the current induction from moving molten metal in a magnetic field is neglected. This decouples Maxwell's equations from the other two. Essentially, the task breaks down to

  • computing Joule heating and Lorentz force, given a voltage distribution in coils, and given those two quantities
  • computing the the resulting material flux inside a container.

Solving Maxwell's equations

Derivation of the involved formulas is best taken from the documentation.

Some visualizations

A typical cylindrical problem: A crucible with a liquid on the left, surrounded by a number of electric coils (the squares). The arrows indicate the magnetic field produced by current in those coils. Note that the actual domain where Maxwell's equations are solved is much larger.

The Joule heat source (blue/red) and the Lorentz force (arrows) generated from the above magnetic field.

The temperature in the first 60 seconds of the full simulation. The Maxwell equations are solved first, from this one gets the above Joule heat source and the Lorentz force. These are added as external fources to the Boussinesq simulation that we see here.

Testing

To run the voropy unit tests, check out this repository and type

pytest

License

maelstrom is published under the MIT license. See the file LICENSE for detailed information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].