380 likes | 395 Views
Explore libnucnet toolkit for advanced nuclear reaction network calculations and data management, paving the way for next-generation nuclear theory development. Learn about xml data structures and how libnucnet revolutionizes nucleosynthesis code.
E N D
Nuclear Reaction Network Calculations: The Next Generation Brad Meyer Clemson University
Outline • Brief introduction to reaction networks and nuclear data needs • libnucnet as an example of a next generation nuclear network • Concern: nuclear database • Proposal: nuclear theory HUB
www.webnucleo.org/home/movies/alpha_rich/mpg/abundance_histogram.mpgwww.webnucleo.org/home/movies/alpha_rich/mpg/abundance_histogram.mpg
The full network • >4000 nuclear species • 73364 in the current JINA reaclib database (excluding any other special reactions)
www.webnucleo.org/home/movies/r_process/mpg/abund_rprocess.mpgwww.webnucleo.org/home/movies/r_process/mpg/abund_rprocess.mpg
www.webnucleo.org/home/movies/r_process/mpg/qse_rprocess.mpg
libnucnet as an example of the next generation of reaction networks
What is libnucnet? • A C toolkit for storing and managing nuclear reaction network. • Built on top of libxml (the gnome XML parser and toolkit) and gsl (the GNU scientific library). • Released under the GNU General Public License. • Available at http://www.webnucleo.org
History of libnucnet • Original goal—online nucleosynthesis tool • Problem—input over the web • Solution—XML (eXtensible Markup Language) • Libxml as input and output • Libxml has powerful built-in data structures (lists, hashes, trees, etc.)—build new nucleosynthesis code on top of libxml • Hashes provide easy access to data—particularly useful for experimentalists
Features of libnucnet • Intrinsically 3-d • Easily handles an arbitrary nuclear network (bbn to r-process), including (any number of) isomeric states • Reactions are handled the way humans think about them: “c12 + he4 o16 + gamma” or “o15 n15 + positron + neutrino_e” • Hierarchically structured • Naturally uses xml as input (allows for schemas, stylesheets, xpath selection, etc.) • Read and validate data across the web • Allows for user-supplied screening, NSE correction factor functions, and rate fit functions.
Structure of libnucnet • Libnucnet__Nuc.c/h: a collection of nuclei • Libnucnet__Species: a species • Libnucnet__Nuc: a collection of species • Libnucnet__Reac.c/h: a collection of nuclear reactions • Libnucnet__Reaction: a reaction • Libnucnet__Reac: a collection of reactions • Libnucnet.c/h: a network and a collection of zones • Libnucnet__Net: a Libnucnet__Nuc + Libnucnet__Reac • Libnucnet__Zone: a physical zone • Libnucnet: a network plus a collection of zones
XML Data for the nuclear collection <nuclear_data> <!--n--> <nuclide> <z>0</z> <a>1</a> <source>Tuli (2000)</source> <mass_excess>8.071</mass_excess> <spin>0.5</spin> <partf_table> <point> <t9>0.01</t9> <log10_partf>0</log10_partf> </point> <point> <t9>0.15</t9> <log10_partf>0</log10_partf> </point> </partf_table> </nuclide> … </nuclear_data>
XML Data for the nuclear collection (with states) <!--al26--> <nuclide> <z>13</z> <a>26</a> <states> <state id="g"> <source>Tuli (2000) + Gupta and Meyer (2001)</source> <mass>-12.21</mass> <spin>5</spin> <partf_table> ... </partf_table> </state> <state id="m"> <source>Tuli (2000) + Gupta and Meyer (2001)</source> <mass>-11.982</mass> <spin>0</spin> <partf_table> ,,, </partf_table> </state> </states> </nuclide>
XML Data for Reactions—a rate table <reaction_data> <!-- h1 + n -> h2 + gamma --> <reaction> <source>Smith et al. (1993)</source> <reactant>h1</reactant><reactant>n</reactant> <product>h2</product><product>gamma</product> <rate_table> <point> <t9>0.001</t9> <rate>4.6168E+04</rate> <sef>1.000</sef> </point> … </rate_table> </reaction> …. </reaction_data>
XML Data for Reactions—a single rate <!-- o19 -> f19 + electron + anti-neutrino_e --> <reaction> <source>Nuclear Data tables</source> <reactant>o19</reactant> <product>f19</product> <product>electron</product> <product>anti-neutrino_e</product> <single_rate>1.6251e-01</single_rate> </reaction>
XML Data for Reactions—a non-smoker fit • <!– ne15 + n -> ne16 + gamma -> • <reaction> • <source>ADNDT (2001) 75, 1 (non-smoker)</source> • <reactant>ne15</reactant> <reactant>n</reactant> • <product>ne16</product> <product>gamma</product> • <non_smoker_fit> • <Zt> 10</Zt> • <At> 15</At> • <Zf> 10</Zf> • <Af> 16</Af> • <Q> 8.071000</Q> • <spint> 0.0000</spint> • <spinf> 0.0000</spinf> • <TlowHf>-1.0000</TlowHf> • <Tlowfit> 0.0100</Tlowfit> • <acc> 1.900000e-06</acc> • <a1> 6.225343e+00</a1> • <a2> 1.023384e-02</a2> • <a3>-1.272184e+00</a3> • <a4> 3.920127e+00</a4> • <a5>-1.966720e-01</a5> • <a6> 1.394263e-02</a6> • <a7>-1.389816e+00</a7> • <a8> 2.983430e+01</a8> • </non_smoker_fit> • </reaction>
Zone data <zone_data> <zone label1="x1" label2="y1" label3="z1"> <nuclide> <z>0</z> <a>1</a> <x>0.5</x> </nuclide> <nuclide name=“h1”> <x>0.5</x> </nuclide> </zone> … </zone_data>
26Mg(alpha,n)29Si rate x 3 Hoppe, BSM, et al. (2009)
Future of nuclear data for reaction network calculations • Reaction data—JINA reaclib database in libnucnet xml format • Nuclear data????
Where I’m headed • Study nuclear network equilibria (NSE, QSE, etc.)libnuceq • Build a multi-zone Galactic chemical evolution network on top of libnucnet.
HUBzero http://hubzero.org/tour
Deploying a Tool http://nanohub.org/resources/3863
Outline • Brief introduction to reaction networks and nuclear data needs • libnucnet as an example of a next generation nuclear network • Concern: nuclear database • Proposal: nuclear theory HUB