{"id":15620774,"url":"https://github.com/nschloe/maelstrom","last_synced_at":"2025-04-28T17:01:21.822Z","repository":{"id":16992225,"uuid":"19755272","full_name":"nschloe/maelstrom","owner":"nschloe","description":"Numerical simulation of magnetohydrodynamics.","archived":false,"fork":false,"pushed_at":"2021-03-19T09:46:06.000Z","size":7794,"stargazers_count":31,"open_issues_count":3,"forks_count":6,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-03-30T11:32:49.050Z","etag":null,"topics":["fenics","mathematics","navier-stokes","physics","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nschloe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-05-13T20:46:36.000Z","updated_at":"2024-12-15T21:38:59.000Z","dependencies_parsed_at":"2022-09-24T12:01:28.206Z","dependency_job_id":null,"html_url":"https://github.com/nschloe/maelstrom","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nschloe%2Fmaelstrom","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nschloe%2Fmaelstrom/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nschloe%2Fmaelstrom/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nschloe%2Fmaelstrom/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nschloe","download_url":"https://codeload.github.com/nschloe/maelstrom/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251352199,"owners_count":21575858,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fenics","mathematics","navier-stokes","physics","python"],"created_at":"2024-10-03T09:02:30.409Z","updated_at":"2025-04-28T17:01:21.795Z","avatar_url":"https://github.com/nschloe.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# maelstrom\n\n[![CircleCI](https://img.shields.io/circleci/project/github/nschloe/maelstrom/master.svg)](https://circleci.com/gh/nschloe/maelstrom/tree/master)\n[![codecov](https://img.shields.io/codecov/c/github/nschloe/maelstrom.svg)](https://codecov.io/gh/nschloe/maelstrom)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\n[![Documentation Status](https://readthedocs.org/projects/maelstrom/badge/?version=master)](https://maelstrom.readthedocs.io/en/master/)\n\nmaelstrom is a numerical software tool for the solution of magnetohydrodynamics\nproblems in cylindrical coordinates.\nAs such, maelstrom includes time integrators for the heat equation, for the\nNavier--Stokes equations, and a stationary solver for the Maxwell equations,\neach in cylindrial coordinates.\n\n### Some details on the problem\n\nThe goal is to compute the flux of a liquid metal under the influence of a\nmagnetic field, modeled by\n\n  * the heat equation,\n  * Maxwell's equations, and\n  * the Navier-Stokes equations.\n\nHeat and Navier-Stokes are coupled by buoyancy, heat and Maxwell by the Joule\neffect, and Maxwell and Navier-Stokes by current induction and the Lorentz\nforce.\n\nTo simplify matters, it is assumed that the effect of the material flux does\nnot influence the electric and magnetic fields, i.e., the current induction\nfrom moving molten metal in a magnetic field is neglected. This decouples\nMaxwell's equations from the other two. Essentially, the task breaks down to\n\n * computing Joule heating and Lorentz force, given a voltage distribution in\n   coils, and given those two quantities\n * computing the the resulting material flux inside a container.\n\n### Solving Maxwell's equations\n\nDerivation of the involved formulas is best taken from [the\ndocumentation](https://maelstrom.readthedocs.io/en/master/maelstrom.maxwell.html).\n\n##### Some visualizations\n\n![](https://nschloe.github.io/maelstrom/magnetic-field.gif)\n\nA typical cylindrical problem: A crucible with a liquid on the left, surrounded\nby a number of electric coils (the squares). The arrows indicate the magnetic\nfield produced by current in those coils. Note that the actual domain where\nMaxwell's equations are solved is much larger.\n\n![](https://nschloe.github.io/maelstrom/lorentz-joule.png)\n\nThe Joule heat source (blue/red) and the Lorentz force (arrows) generated from\nthe above magnetic field.\n\n\n![](https://nschloe.github.io/maelstrom/full.gif)\n\nThe temperature in the first 60 seconds of the full simulation. The Maxwell\nequations are solved first, from this one gets the above Joule heat source and\nthe Lorentz force. These are added as external fources to the Boussinesq\nsimulation that we see here.\n\n\n### Testing\n\nTo run the voropy unit tests, check out this repository and type\n```\npytest\n```\n\n### License\n\nmaelstrom is published under the MIT license. See the file LICENSE for detailed\ninformation.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnschloe%2Fmaelstrom","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnschloe%2Fmaelstrom","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnschloe%2Fmaelstrom/lists"}