[FLASH-USERS] Calculation of gamc from tabulated EOS tables
Klaus Weide
klaus at flash.uchicago.edu
Thu May 14 20:02:19 EDT 2020
On Fri, 8 May 2020, Acharya, Nitish wrote:
> How is gamc calculated from the tabulated EOS in FLASH? I figured gamc
> has pretty low values ~ 1.5 for most of the ionmix EOS tables i used (I
> plotted it in Visit).
To have something concrete in mind, assume that Eos is called with a mode
of MODE_DENS_TEMP_GATHER or MODE_DENS_EI_GATHER.
The value of gamc is computed by combining (effectively weighted averaging)
a value from the ion component (gamIon) and a value from the electron
component (gamCEle). To simplify, I assume a (temperature,density)
regime where the radiation contribution can be ignored.
The combining is done in
physics/Eos/EosMain/multiTemp/Multitype/Eos.F90 ,
specifically 'subroutine setCombinedGamc' in that file.
The gamIon and gamCEle in Eos.F90 have been obtained in Eos.F90 by
separate calls (directly or indirectly) to eos_multiTypeByTemp.
The latter, implemented in
physics/Eos/EosMain/multiTemp/Multitype/eos_multiTypeByTemp.F90 ,
combines values from different species (i.e., materials), again basically
by weighted averaging based on partial pressures.
So where do these per-component, per-material gamc values come from?
* For a material that is handled as eos_gam, from the constant
properties for that material.
* Otherwise, they are derived from the energy and pressure tables for the
material.
In the case if IONMIX4 tables, e per-component, per-material is
ultimately computed in
physics/Eos/EosMain/Tabulated/eos_tabIonmix4.F90
by lines
eosData(gamc+i) = eosData(tempToUse+i)/eosData(dens+i) * &
eosData(dpt+i)**2 / eosData(det+i) &
+ eosData(dens+i) * eosData(dpd+i)
where dpt represent d Pres / d T, det represents d E / d T, and dpd
represents d Pres / d rho. Each of those derivative terms in computed
from finite differences of values from Pres(T,rho) and E(T,rho) tables.
> I am trying to model a stiff sphere inside Laserslab. I was thinking may
> be I can increase gamc to reduce compressibility of sphere material i.e
> increase thermal sound speed. Is there a way to modify gamc for
> tabulated EOS materials in FLASH?
As you might conclude from the description above, the gamc values returned
by Eos calls (for table-based implementations) are closely connected to the
behavior of the pressure and energy functions as expressed (approximated)
in the tables. You might find a way to substitute a gamc value more to
your liking for the one that the Eos() wants to return, but who knows what
that would actually mean... I am pretty sure it would give you something
that is inconsistent with other quantities provided by the Eos.
Some weeks ago you asked about using an eos_gam Eos (for some material) in
order to simulate some stiffness. I suspect that would be a more promising
approach than trying to manipulate gamc directly.
Klaus
More information about the flash-users
mailing list