Function adas.run_adas310
def run_adas310(adf01=None, adf18=None, izimp=[0], amimp=[0.0], frimp=[0.0], te=[0.0], tp=[0.0], dens=[0.0], denp=[0.0], bmeng=[0.0], files=None, tref=0.0, dref=0.0, bref=0.0, iz0=1, iz1=1, bsim=1.0, ts=8617.0, wdil=0.0, cion=1.0, cpy=1.0, wdpi=1e-08, nip=2, intd=3, iprs=1, ilow=True, ionip=True, nionip=2, ilprs=1, ivdisp=True, nmin=1, nmax=110, nrep=[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 15, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110], bdens=10000000000.0, no_ion=False, no_cx=False)
-
Runs the adas310 beam stopping generation code.
Parameters
adf01
:str
- full name of ADAS adf01 charge exchange cross section file
adf18
:str
- full name of ADAS adf18 expansion file
izimp
:int, array
- impurity atomic number
amimp
:float, array
- impurity atomic mass number
frimp
:float, array
- impurity fraction - values between 0-1.0
te
:float, array
- requested electron temperatures (eV)
tp
:float, array
- requested ion temperatures (eV)
dens
:float, array
- requested electron densities (cm-3)
denp
:float, array
- requested ion densities (cm-3)
bmeng
:float, array
- requested beam energies (eV/amu)
files
:dictionary
- names of the output files
'adf21' - stopping coefficient 'adf26' - population dataset 'crmat' - collisional-radiative matrix 'repmap' - mapping between n-representations 'logfile' - summary of the runtref : float
dref
:float
, optional- reference density (electron) (cm-3), defaults to middle value of te
bref
:float
, optional- reference beam energy (eV/amu), defaults to middle value of bmeng
iz0
:int
, optional- nuclear charge of beam species (default =1)
iz1
:int
, optional- beam species recombining ion charge, ie beam charge + 1 (default = 1)
bsim
:float
, optional- beam species isotope mass (default = 1.0)
ts
:float
, optional- radiation field temperature (default = 8617eV)
wdil
:float
, optional- external radiation field dilution factor (default = 0.0)
cion
:float
, optional- multiplier of ground level e-impact ionisation rate (default = 1.0)
cpy
:float
, optional- multiplier of ground level e-impact excitation rate (default = 1.0)
wdpi
:float
, optional- external radiation field dilution factor for photo-ionisation (default = 1.0e-8)
nip
:int
, optional- range of delta n for impact parameter cross sections (default = 2)
intd
:int
, optional- order of Maxwell quadrature for cross sections (default = 3)
iprs
:int
, optional- above nip, iprs=0 use van Regemorter or Percival-Richards for iprs=1
ilow
:boolean
, optional- if True access special low level data (default = True)
ionip
:boolean
, optional- if True include ion impact collisions (default = True)
nionip
:int
, optional- Delta n for ion impact excitation cross sections (default = 2)
ilprs
:int
, optional- for ilprs=0 Vainshtein for ion impact (default) but use Lodge-Percival-Richards when ilprs=1
ivdisp
:boolean
, optional- if True use beam energy in calculation of cross section (default = True)
nmin
:int
, optional- minimum representative shell (default = 1)
nmax
:int
, optional- maximunm representative shell (default = 110)
nrep
:int, array
, optional- representative n-shells (default as above)
bdens
:float
, optional- beam density (cm-3)
no_ion
:boolean
, optional- if True switch OFF the ion impact contribution (default is False)
no_cx
:boolean
, optional- if True switch OFF CX contribution (default is False)
Returns
code
:int
- success code
Notes
There are a lot of inputs, with most of the control parameters having sensible defaults. The choice of target elements and plasma conditions are set to 0.0 and must be supplied for the routine to work properly.
The output of the routine is the set of files.
Calls a fortran executable code and communicates via a bi-directional pipe connected to stdout.
References
ADAS manual description of adas310: http://www.adas.ac.uk/man/chap3-10.pdf
Version History
- Martin O'Mullane, 16-04-2019
- First version