[FLASH-USERS] Problems Simulating Partially Ionized Plasma with USM

Patrick Rieser patrick.rieser at uibk.ac.at
Thu May 24 10:30:22 EDT 2012


Please forget my question! I am really sorry, but there seems to be 
quite some error in the Simulation Block Initialization. Things should 
work as expected when fixed. I am truly sorry that I did bother you with 
such a stupid mistake!

Patrick

> Am 11.05.2012 03:33, schrieb Klaus Weide:
>> Patrick,
>>
>> Below I have added various comments. These may or may not help you
>> directly, and I am not addressing any aspects of your problem 
>> specific to
>> the MHD solver.  Read references to "Hydro" below as "Hydro or MHD
>> implementation".
>>
>> On Thu, 10 May 2012, Patrick Rieser wrote:
>>
>>> So I am using a little bit modified Flash 3.3 to do simulations on 
>>> galaxy
>>> cluster for my master thesis. We have got a MHD setup using USM. By 
>>> now there
>>> are two species defined, H and He and the calculations are done with 
>>> the
>>> assumption of full ionization. So now my part is to extend the 
>>> simulation that
>>> a partially ionized gas can be calculated with neutral parts H and 
>>> He, and
>>> ionized parts H+, He+ and He++. After each time step the ionization 
>>> of those
>>> particles should be recalculated. My plan has been to modify the USM 
>>> solver. I
>>> thought of integrating two different densities, one for the neutral 
>>> and one
>>> for the ionized particles.
>> Note that when you have species defined, the Hydro and MHD solvers 
>> should
>> in effect already integrate several densities, without any further 
>> effort:
>> namely, partial densities for the various species as well as the usual
>> total density.  (This is basically done by advecting the mass 
>> fractions.)
>>
>>> Then add source terms to the flow vectors of the
>>> USM solver. To get those source terms I would have to modify EOS 
>>> equations.
>>>
>>> Even though I did quite some reading about multifluid MHD and spend 
>>> quite some
>>> time playing with flash and it's source code I can't get my head 
>>> around some
>>> thing:
>>>
>>> 1) I recently stumbled over the Ionization module in flash. But I am 
>>> not quite
>>> sure if I can use it to do what I want and would not have to modify 
>>> the EOS
>>> and USM modules, but change the setup of our simulation. This is 
>>> because of 2)
>> In principle, you should be able to use the Ionize unit; if not in its
>> current form (with the existing sets of species and rates) then at least
>> some modification that does essentially the same things.  (There are 
>> some
>> things going on in the existing implementation that I don't properly
>> understand - like how mass fractions for hydrogen and electrons are
>> determined, and why there is a mass fraction for the electrons at all -
>> and they may not be appropriate for your application.  Note that 
>> according
>> to the Users Guide (16.2.1), "the source term in the NEI unit
>> implementation is adequate to solve the problem for optically thin 
>> plasma
>> in the ``coronal'' approximation; just collisional ionization,
>> auto-ionization, radiative recombination, and dielectronic recombination
>> are considered.")
>>
>> Above you wrote: "After each time step the ionization of those particles
>> should be recalculated." This gives the impression that you want the
>> ionization levels to adapt to the updated state (incl. temperature)
>> instantaneously after Hydro or MHD has moved the fluid around. That 
>> would
>> be just the "Eqi" implementation of the Ionize unit. You would use the
>> "Nei" implementation if you wanted to take account of non-equilibrium
>> ionization instead.
>>
>>> 2) I read the PhD thesis from Dongwook Lee describing the Unsplit 
>>> scheme for
>>> multidimensional MHD and tried to pick apart the USM source code but 
>>> I can't
>>> really find out how flash handles (multi) species, density and 
>>> Ionization in
>>> the USM solver. Does USM work with the Ionization module? If so, can 
>>> USM
>>> handle neutral species and the partially ionized plasma? Do I just 
>>> have to
>>> implement the Ionized module in the simulation then?
>> For comparison and for reference, here is how variable ionization is
>> represented in FLASH in 3T (three temperature) mode, in contrast to the
>> approach taken in the Ionize unit. I don't mean to imply that you should
>> use FLASH in this mode, just to present an alternative approach that is
>> actually being used.
>>
>>    * No need to use the Ionize unit; as it is, it wouldn't work right 
>> with
>>      3T mode anyway.
>>
>>    * Electrons are not represented as a FLASH "species"; the number
>>      density of electrons is computed by the 3T Eos implementation
>>      instead, and is (usually) an output from Eos calls.
>>      The Zfree (number of free electron per ion) used in these 3T Eos
>>      implementations can be a fixed property of a material or based
>>      on a (T_ele,rho) table and/or a combination of contributions
>>      from different species.
>>
>>    * Each FLASH "species" represents the mass fraction of one "material"
>>      (i.e. here, one element), not of one ionization level of one 
>> element.
>>      In your simulations you would have only two species, H_SPEC and
>>      HE_SPEC.
>>
>>    * The code keeps track of specific internal energy of the electron 
>> component
>>      of the fluid, or equivalently electron temperature T_ele (in 
>> addition
>>      to T_ion, T_rad), in addition to combined (total) energy.
>>      Since Zfree depends on T_ele, ionization is currently assumed
>>      in equilibrium with electron thermal energy (but electrons and ion
>>      thermal energy need not be in equilibrium).
>>
>>
>> I hope this is of some use.
>>
>> Klaus
>




More information about the flash-users mailing list