PyNE C++
Functions | Variables
decaygen Namespace Reference

Functions

def genfiles (nucs, short=1e-16, small=1e-16, sf=False, dummy=False, debug=False)
 
def genchains (chains, sf=False)
 
def almost_stable (hl_i, k_i)
 
def almost_stable_mask (hl, k)
 
def k_from_hl_stable (hl, gamma, outerdiff, outerzeros)
 
def k_almost_stable (hl, a, gamma, asmask)
 
def k_from_hl_unstable (hl, gamma, outerdiff, outerzeros)
 
def k_almost_unstable (hl, a, gamma, asmask)
 
def k_filter (k, t_term, small=1e-16)
 
def hl_filter (hl, short=1e-16)
 
def hl_degeneracy (hl, k, a, outerzeros)
 
def k_a_from_hl (chain, short=1e-16, small=1e-16)
 
def kbexpr (k, b)
 
def ensure_cse (a_i, b, cse)
 
def b_from_a (cse, a_i)
 
def chainexpr (chain, cse, b, bt, short=1e-16, small=1e-16)
 
def gencase (nuc, idx, b, short=1e-16, small=1e-16, sf=False, debug=False)
 
def elems (nucs)
 
def gencases (nucs, debug=False)
 
def genelemfuncs (nucs, short=1e-16, small=1e-16, sf=False, debug=False)
 
def load_default_nucs ()
 
def build_tarfile (ns)
 
def write_if_diff (filename, contents)
 
def build (hdr='decay.h', src='decay.cpp', nucs=None, short=1e-16, small=1e-16, sf=False, dummy=False, debug=False)
 
def assemble (ns, compiler, toolchain)
 
def main ()
 

Variables

 ENV = jinja2.Environment(undefined=jinja2.StrictUndefined)
 
string autogenwarn
 
 HEADER = ENV.from_string(.strip())
 
 SOURCE = ENV.from_string(.strip())
 
 ELEM_FUNC = ENV.from_string(.strip())
 
string BREAK = ' break;'
 
string CHAIN_STMT = ' out[{0}] += {1};'
 
string CHAIN_EXPR = '(it->second) * ({0})'
 
string EXP_EXPR = 'exp2({a:.17e}*t)'
 
string KEXP_EXPR = '{k:.17e}*' + EXP_EXPR
 
string B_STMT = 'double b{b} = {exp};'
 
string B_EXPR = 'b{b}'
 
string KB_EXPR = '{k:.17e}*' + B_EXPR
 

Detailed Description

This file generates a static C++ decayer function for use with PyNE.
It is suppossed to be fast.

Function Documentation

◆ almost_stable()

def decaygen.almost_stable (   hl_i,
  k_i 
)
Tells whether a nuclide is almost stable

◆ almost_stable_mask()

def decaygen.almost_stable_mask (   hl,
  k 
)
Elementwise mask for whether a nuclide is almost stable

◆ assemble()

def decaygen.assemble (   ns,
  compiler,
  toolchain 
)
Assembles the solver. Returns the filename that was generated.

◆ hl_degeneracy()

def decaygen.hl_degeneracy (   hl,
  k,
  a,
  outerzeros 
)
Handles degeneracys in half-lives.

◆ write_if_diff()

def decaygen.write_if_diff (   filename,
  contents 
)
Only writes the file if it is different. This prevents touching the file needlessly.

Variable Documentation

◆ autogenwarn

string decaygen.autogenwarn
Initial value:
1 = """
2 // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
3 // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
4 // WARNING
5 // This file has been auto generated
6 // Do not modify directly. You have
7 // been warned. This is that warning
8 // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
9 // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
10 """.strip()