Using AstroBEAR for Lab Experiments

AstroBEAR needs more physics in order to make it more applicable to lab experiments. I've been toying with this idea, and I don't think I'm going to get very far because it is quite complicated. However, I have been somewhat successful at hard-coding some 0th order approximations into a separate problem module (not usable by the rest of the code). Even the act of attempting to implement these things has forced me to learn about new physics, yay!


Laser Deposition

A simple dump of some fraction of laser energy onto a target surface (resonance absorption). Target heats up and the thermal pressure gradient launches a plume of plasma.

One of the tricky things here was the directional nature of the laser heating. Once the laser hits some critical density, it is only absorbed to a certain depth. Thus far, my code only works with single proc and a fixed grid.

A more clever implementation could make use of multiple processors and AMR. And to do laser deposition more accurately, you'd need ray tracing.

Now, the fun MHD stuff…


Biermann Battery

In ideal MHD, we have the induction equation:

.

In resistive MHD, the induction equation becomes:

This is in some version of the code thanks to Shule. There are other MHD terms that can be important depending on the context of the problem. Here is the induction equation with the Biermann term:

The Biermann term makes self-generated B-fields possible. In other words, you don't need an initial B to generate more B. This is also in my new problem module, and could someday be implemented into AstroBEAR for general use. This formulation assumes the plasma is fully ionized (i.e. ).


Nernst Effect

Lastly, we have the Nernst term. Here's how the induction equation becomes even more complicated:

This is the Nernst velocity, and it can be written as:

where is the heat flux and is the thermal conductivity. is technically a tensor since it is different in different directions (anisotropic). We can simplify the tensor and write as follows:

where is a unit vector in the direction of . The first two terms are implemented somewhere in the code for conduction, but the third term is missing. Furthermore, I believe the conduction implementation in the code is strictly for transporting heat; in other words, there is no magnetic field generation.

This is something that I haven't implemented yet. There should be a way to add the Nernst velocity to the fluxes within the code, but I think I will first try to separate in the induction equation and treat it as a source term.

Comments

No comments.