[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