[FLASH-USERS] [EXT] How to add an implicit solver of magnetic diffusion process

Eddie Hansen ehansen at pas.rochester.edu
Wed Dec 9 09:36:44 EST 2020


Hi Zhang,

This is something that I'm actively working on. It will be put into a new
version of FLASH, but I can't say when it will ultimately be released.

If you want, you can follow the example of thermal diffusion and try to
write your own magnetic diffusion solver, but it is in fact more
complicated if you want to solve the full equation dB/dt = curl(eta*J). You
can of course make simplifications and assumptions to instead solve the
equation dB/dt = Laplacian(eta*B), but it's not the same as the full
equation. The full equation introduces the complication of the B-field
components being coupled to each other because of the curl operators. If
you expand curl(eta*J), where J = curl(B) you'll see what I mean.

In the meantime, you might be stuck using the explicit solver. A few things
you can do to ease time step restrictions would be to set a maximum
resistivity, increase the temperature, and/or try super time-stepping.


On Wed, Dec 9, 2020 at 2:09 AM Zhang Daoyuan <zdy0903 at stu.xjtu.edu.cn>
wrote:

> Hi!
>
>
>
> I want to ask that how to add an implicit solver of magnetic diffusion in
> FLASH. FLASH use an explicit solver of magnetic diffusion. However, it is
> not very good because we need to set an extremely high resistivity for
> vacuum in simulation so that the time step will be very small. We need an
> implicit solver of magnetic diffusion if there is the magnetic field and
> vacuum in simulation.
>
>
>
> It seems that there is a general implicit solver and the implicit solver
> for thermal conduction and radiation diffusion. I think it is not difficult
> for FLASH because the implicit solver for magnetic diffusion is very
> similar to thermal conduction if we ignore the Hall effect and Biemann
> Battery. And in previous answer, Ryan Faber has mentioned that:
>
>
>
> “In addition to guaranteeing stability with modifications to the timestep
> limiter, you can try using a non-explicit solver. The Townsend solver is
> pretty easy to implement and quite stable:
> https://iopscience.iop.org/article/10.1088/0067-0049/181/2/391/meta
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__iopscience.iop.org_article_10.1088_0067-2D0049_181_2_391_meta&d=DwMGaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=6F-TMED_bsUqKfX7XKE7kRK41M2Ogti8WJdx1GwNjkQ&m=Qgohxc9OKmcXWNI5ftOlyswvY5AuCi73f_UPI8mH4xQ&s=DOt6FQ8LjuwaWB-KapvalvRn_NxLWmtSGf65ivezNUo&e=>
>>
>
>
> It seems that we can add an implicit solver in FLASH.
>
>
>
> Is there anybody told me what should I do if I want to add an implicit
> solver for magnetic diffusion?  Thank you very much!
>
>
>
> Yours
>
> Zhang
>


-- 
Eddie Hansen, PhD
Postdoctoral Associate
University of Rochester
607-341-6126 | Flash Center
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://flash.rochester.edu/pipermail/flash-users/attachments/20201209/f8378f49/attachment.htm>


More information about the flash-users mailing list