Class reaction_lib (o2scl)

O2scl : Class List

class reaction_lib

Simple reaction library.

This class is very experimental.

Units:

  • Chapters 1,2,3, and 11: 1/s

  • Chapters 4,5,6, and 7: cm^3/g/s

  • Chapter 8 and 9: cm^6/g^2/s

  • Chapter 10: cm^9/g^3/s

Chapters:

  • 1: nuc1 -> nuc2

  • 2: nuc1 -> nuc2 + nuc3

  • 3: nuc1 -> nuc2 + nuc3 + nuc4

  • 4: nuc1 + nuc2 -> nuc3

  • 5: nuc1 + nuc2 -> nuc3 + nuc4

  • 6: nuc1 + nuc2 -> nuc3 + nuc4 + nuc5

  • 7: nuc1 + nuc2 -> nuc3 + nuc4 + nuc5 + nuc6

  • 8: nuc1 + nuc2 + nuc3 -> nuc4

  • 9: nuc1 + nuc2 + nuc3 -> nuc4 + nuc5

  • 10: nuc1 + nuc2 + nuc3 + nuc4 -> nuc5 + num6

  • 11: nuc1 -> nuc2 + nuc3 + nuc4 + nuc5

Original FORTRAN format:

FORMAT(i1,4x,6a5,8x,a4,a1,a1,3x,1pe12.5) 
FORMAT(4e13.6) 
FORMAT(3e13.6)

Storage for the find function

int fN[6]
int fZ[6]
int fA[6]
size_t fi
bool matches(size_t ul, size_t ri)

Test if entry ul in the arrays matches the library reaction.

Public Functions

int read_file_reaclib2(std::string fname)

Read from a file in the REACLIB2 format.

Note

This function does not check that the chapter numbers are correct for the subsequent reaction.

int find_in_chap(std::vector<nuclear_reaction> &nrl, size_t chap, std::string nuc1, std::string nuc2 = "", std::string nuc3 = "", std::string nuc4 = "", std::string nuc5 = "", std::string nuc6 = "")

Find a set of nuclear reactions in a specified chapter.

Public Members

std::vector<nuclear_reaction> lib

The library.