[FLASH-USERS] value of Ye for single species runs

Klaus Weide klaus at flash.uchicago.edu
Fri Oct 2 16:59:23 EDT 2015


On Fri, 2 Oct 2015, John ZuHone wrote:

> Just for reference, Jon and I have been discussing this off-list. The 
> single-species gamma-law EOS only has a stub for this subroutine. 

Hi John,

That's not correct if with "this routine" you mean Eos_getAbarZbar.F90. 
The implementation of this routine (shared by the single-species gamma-law 
EOS implementation and other EOS implementations) is in
  physics/Eos/EosMain/Eos_getAbarZbar.F90 .
There are various #ifdef's, but in Jon's case as I understand it (no 
FLASH_MULTISPECIES defined, and SUMY_MSCALAR and YE_MSCALAR not both 
defined) the returned values should simply be what is set by the
following lines:
  if (present(abar)) abar = eos_singleSpeciesA
  if (present(zbar)) zbar = eos_singleSpeciesZ
  if (present(sumY)) sumY = 1.0/eos_singleSpeciesA
  if (present(Ye))   Ye   = eos_singleSpeciesZ/eos_singleSpeciesA

> I suggested copying the Eos_getAbarZbar stub to the simulation directory 
> and changing it to set the quantities to whatever he needs, 

That should also work, but why not just set runtime parameters 
eos_singleSpeciesZ / eos_singleSpeciesA appropriately.

> but as I am 
> not familiar with this particular diffusion module I think someone with 
> more knowledge should comment if this is the right way to go.

The source file physics/Diffuse/DiffuseMain/Unsplit/diff_advanceTherm.F90 
has mainly been developed for 3T situations; it is also supposed to work 
in a 1T context, but I don't know how appropriate the flux limiter is in 
that case.

Klaus



More information about the flash-users mailing list