diff options
author | Karl Berry <karl@freefriends.org> | 2016-01-08 00:03:11 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2016-01-08 00:03:11 +0000 |
commit | e6cd0f91db8da2a477425aeeac70568b3702c6c0 (patch) | |
tree | 416f793db33a7a2a0e40e0e339b6bbfa8f82c76f | |
parent | 42af20fa9b4836de5fd19cb86d1ac6cc125b8480 (diff) |
nucleardata (7jan16)
git-svn-id: svn://tug.org/texlive/trunk@39306 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/nucleardata/README. | 17 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/nucleardata/nuccommandtest.pdf | bin | 0 -> 91168 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/nucleardata/nuccommandtest.tex | 65 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/nucleardata/nucleardata.pdf | bin | 285048 -> 285082 bytes | |||
-rw-r--r-- | Master/texmf-dist/source/latex/nucleardata/nucleardata.dtx | 23 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/nucleardata/nucleardata.ins | 12 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/nucleardata/nucleardata.pytxcode | 9 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/nucleardata/nucleardata.sty | 19 |
8 files changed, 117 insertions, 28 deletions
diff --git a/Master/texmf-dist/doc/latex/nucleardata/README. b/Master/texmf-dist/doc/latex/nucleardata/README. new file mode 100644 index 00000000000..db1647ccd4b --- /dev/null +++ b/Master/texmf-dist/doc/latex/nucleardata/README. @@ -0,0 +1,17 @@ +---------------------------------------------------------------- + +nucleardata --- Getting info about nuclides into LaTeX documents + +E-mail: bnettles@uu.edu + +Released under the LaTeX Project Public License v1.3c or later + +See http://www.latex-project.org/lppl.txt + +---------------------------------------------------------------- + +This package provides data and commands for including nuclear and atomic mass and energy data in LaTeX documents. It uses the PythonTeX package and requires pythontex.exe to be called with the tex file as the argument. + +It reads data from two different csv files: elementlist.csv and massdata.csv which are normally stored in the same folder as the nucleardata.sty file (dist/tex/latex/nucleardata). + +The massdata.csv file was created from ENSDF data files and the file mass.mas03round from ``The Ame2003 atomic mass evaluation (II)'' by G.Audi, A.H.Wapstra and C.Thibault, _Nuclear Physics_ A729 p. 337-676, December 22, 2003. diff --git a/Master/texmf-dist/doc/latex/nucleardata/nuccommandtest.pdf b/Master/texmf-dist/doc/latex/nucleardata/nuccommandtest.pdf Binary files differnew file mode 100644 index 00000000000..2c9c2fa1712 --- /dev/null +++ b/Master/texmf-dist/doc/latex/nucleardata/nuccommandtest.pdf diff --git a/Master/texmf-dist/doc/latex/nucleardata/nuccommandtest.tex b/Master/texmf-dist/doc/latex/nucleardata/nuccommandtest.tex new file mode 100644 index 00000000000..34605c8ef4f --- /dev/null +++ b/Master/texmf-dist/doc/latex/nucleardata/nuccommandtest.tex @@ -0,0 +1,65 @@ +\documentclass{article} +\usepackage{geometry} +\geometry{margin=0.75in} +\usepackage{nucleardata} +\usepackage{booktabs} +\usepackage{nopageno} +\begin{document} +\centering +Example and Test File for \texttt{nucleardata} Package + +$^{~184}$Au Halflife Data + + \begin{tabular}{cc} + \toprule + Unit & Value \\ + \midrule + ns & \nuchalflife[ns]{Au}{184}\\ + \midrule + us & \nuchalflife[us]{Au}{184}\\ + \midrule + ms & \nuchalflife[ms]{Au}{184}\\ + \midrule + s & \nuchalflife[s]{Au}{184}\\ + \midrule + min & \nuchalflife[min]{Au}{184}\\ + \midrule + hr & \nuchalflife[hr]{Au}{184}\\ + \midrule + d & \nuchalflife[d]{Au}{184}\\ + \midrule + y & \nuchalflife[y]{Au}{184}\\ + \midrule + My & \nuchalflife[My]{Au}{184}\\ +% ev & \nuchalflife[ev]{Au}{184}\\ +% kev & \nuchalflife[kev]{Au}{184}\\ +% Mev & \nuchalflife[mev]{Au}{184}\\ + \bottomrule\\ + \end{tabular} + + Other commands applied to $^{~40}$Ca + + \begin{tabular}{cc} +\toprule symbol & \nucsymbol{20} \\ +\midrule Z & \nucz{calcium}\\ +\midrule name & \nucname{20}\\ +\midrule Name & \nucName{20}\\ +\midrule Spin/parity & \nucspin{20}{41}\\ +\midrule mass excess & \nucexcess{20}{41}\\ +\midrule atomic mass (u) & \nucamassu{20}{41}\\ +\midrule atomic mass (u) & \nucamassu[2]{20}{41}\\ +\midrule atomic mass (keV) & \nucamasskev{20}{41}\\ +\midrule atomic mass (keV) & \nucamasskev[2]{20}{41}\\ +\midrule atomic mass (MeV) & \nucamassmev{20}{41}\\ +\midrule atomic mass (MeV) & \nucamassmev[5]{20}{41}\\ +\midrule nuclear mass (u) & \nuclearmassu{20}{41}\\ +\midrule nuclear mass (keV) & \nuclearmasskev[1]{20}{41}\\ +\midrule nuclear mass (MeV) & \nuclearmassmev{20}{41}\\ +\midrule BE/A & \nucbea{20}{41} MeV\\ +\midrule Q$_{\alpha}$ & \nucQalpha{20}{41} MeV\\ +\midrule Q$_{\beta^-}$ & \nucQbeta{20}{41} MeV\\ +\midrule Q$_{\beta^+}$ & \nucQposi{20}{41} MeV\\ +\midrule Q$_{\epsilon}$ & \nucQec{20}{41} MeV\\ +\bottomrule + \end{tabular} +\end{document}
\ No newline at end of file diff --git a/Master/texmf-dist/doc/latex/nucleardata/nucleardata.pdf b/Master/texmf-dist/doc/latex/nucleardata/nucleardata.pdf Binary files differindex 5c01c6c0a7e..d953efb53a2 100644 --- a/Master/texmf-dist/doc/latex/nucleardata/nucleardata.pdf +++ b/Master/texmf-dist/doc/latex/nucleardata/nucleardata.pdf diff --git a/Master/texmf-dist/source/latex/nucleardata/nucleardata.dtx b/Master/texmf-dist/source/latex/nucleardata/nucleardata.dtx index ff41d194079..ac26399822d 100644 --- a/Master/texmf-dist/source/latex/nucleardata/nucleardata.dtx +++ b/Master/texmf-dist/source/latex/nucleardata/nucleardata.dtx @@ -48,7 +48,7 @@ See http://www.latex-project.org/lppl.txt ---------------------------------------------------------------- \endpreamble \postamble -Copyright (C) 2015 by Bill Nettles <bnettles@uu.edu> +Copyright (C) 2015-2016 by Bill Nettles <bnettles@uu.edu> This work may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either @@ -65,7 +65,9 @@ and the derived files nucleardata.ins, nucleardata.pdf, nucleardata.sty, elementlist.csv, - massdata.csv + massdata.csv, + nuccommandtest.tex, + nuccommandtext.pdf \endpostamble \usedir{./} \generate{ @@ -95,7 +97,7 @@ and the derived files nucleardata.ins, % %<*package> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{nucleardata}[2015/11/18 v1.01 LaTeX package for providing basic nuclear properties to documents efficiently] +\ProvidesPackage{nucleardata}[2015/01/06 v1.01b LaTeX package for providing basic nuclear properties to documents efficiently] \RequirePackage{pythontex} \RequirePackage{siunitx} %</package> @@ -132,7 +134,9 @@ and the derived files nucleardata.ins, % %\maketitle % -%\changes{v1.01}{2015/11/18}{getIsotopes returns an integer list; getHalfLifeValue returns an unformatted float} +%\changes{v1.00}{2015/11/15}{Initial Public Release} +%\changes{v1.01}{2015/11/18}{getIsotopes() returns an integer list; getHalfLifeValue returns a float} +%\changes{v1.01b}{2016/01/06}{getIsotopes() bug fix; calls to timeenergy(), time_dict, units_dict bug fixes} % % The |nucleardata| package provides a method for quickly accessing information about atomic nuclides (isotopes of elements) by referring to the chemical symbol and mass number (A) or to the atomic number (Z) and mass number (A). This information can be inserted and typeset without the user having to search an outside source. The information available in the current version includes chemical symbol or name given Z, Z given the chemical symbol or name, atomic mass, nuclear mass, Q-values for radioactive decay, half-life of ground states, binding energy, mass excess, and list of known isotopes of an element. \par %~ @@ -348,7 +352,7 @@ class Nucdata(object): "Gy":1e-9} def timeenergy(self,ene): - return hbarev*0.69315/ene/time_dict.get("s") + return hbarev*0.69315/ene/self.time_dict.get("s") def getNuclide(self,EL,A): res=[v for v in nucleardata if v.get('SYM').strip().upper()== EL.upper() and v.get('A') == A] @@ -432,7 +436,7 @@ class Nucdata(object): unit = value[1].strip() if newunit: # user wants to change the unit if unit in ['ev','kev','mev']: - number=timeenergy(number) + number=self.timeenergy(number) if unit=='kev': number=number/1.e3 elif unit=='mev': @@ -465,7 +469,7 @@ class Nucdata(object): unit = value[1].strip() if newunit: # user wants to change the unit if unit in ['ev','kev','mev']: - number=timeenergy(number) + number=self.timeenergy(number) if unit=='kev': number=number/1.e3 elif unit=='mev': @@ -583,8 +587,7 @@ class Nucdata(object): isotopes=[] for v in res: isotopes.append(int(v.get('A'))) - isostring=str(isotopes)[1:-1] - return isostring + return isotopes def getZ(self,name): res=[v for v in elementdata if v.get('SYM').strip().upper()== name.upper() or v.get('NAME').strip().upper()== name.upper()] @@ -796,7 +799,7 @@ nuc=Nucdata() %\begin{macro}{\nucisotopes} % \begin{macrocode} -\newcommand{\nucisotopes}[1]{\py{nuc.getIsotopes('#1')}} +\newcommand{\nucisotopes}[1]{\py{str(nuc.getIsotopes('#1'))[1:-1]}} % \end{macrocode} %\end{macro} diff --git a/Master/texmf-dist/source/latex/nucleardata/nucleardata.ins b/Master/texmf-dist/source/latex/nucleardata/nucleardata.ins index d70b7146d0d..8fd793b7b11 100644 --- a/Master/texmf-dist/source/latex/nucleardata/nucleardata.ins +++ b/Master/texmf-dist/source/latex/nucleardata/nucleardata.ins @@ -33,7 +33,7 @@ See http://www.latex-project.org/lppl.txt ---------------------------------------------------------------- \endpreamble \postamble -Copyright (C) 2015 by Bill Nettles <bnettles@uu.edu> +Copyright (C) 2015-2016 by Bill Nettles <bnettles@uu.edu> This work may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either @@ -50,14 +50,16 @@ and the derived files nucleardata.ins, nucleardata.pdf, nucleardata.sty, elementlist.csv, - massdata.csv + massdata.csv, + nuccommandtest.tex, + nuccommandtext.pdf \endpostamble \usedir{./} \generate{ \file{\jobname.sty}{\from{\jobname.dtx}{package}} } \endbatchfile -%% Copyright (C) 2015 by Bill Nettles <bnettles@uu.edu> +%% Copyright (C) 2015-2016 by Bill Nettles <bnettles@uu.edu> %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License (LPPL), either @@ -74,6 +76,8 @@ and the derived files nucleardata.ins, %% nucleardata.pdf, %% nucleardata.sty, %% elementlist.csv, -%% massdata.csv +%% massdata.csv, +%% nuccommandtest.tex, +%% nuccommandtext.pdf %% %% End of file `nucleardata.ins'. diff --git a/Master/texmf-dist/tex/latex/nucleardata/nucleardata.pytxcode b/Master/texmf-dist/tex/latex/nucleardata/nucleardata.pytxcode index 8febc57a607..29f15e528d7 100644 --- a/Master/texmf-dist/tex/latex/nucleardata/nucleardata.pytxcode +++ b/Master/texmf-dist/tex/latex/nucleardata/nucleardata.pytxcode @@ -58,7 +58,7 @@ class Nucdata(object): "Gy":1e-9} def timeenergy(self,ene): - return hbarev*0.69315/ene/time_dict.get("s") + return hbarev*0.69315/ene/self.time_dict.get("s") def getNuclide(self,EL,A): res=[v for v in nucleardata if v.get('SYM').strip().upper()== EL.upper() and v.get('A') == A] @@ -142,7 +142,7 @@ class Nucdata(object): unit = value[1].strip() if newunit: # user wants to change the unit if unit in ['ev','kev','mev']: - number=timeenergy(number) + number=self.timeenergy(number) if unit=='kev': number=number/1.e3 elif unit=='mev': @@ -175,7 +175,7 @@ class Nucdata(object): unit = value[1].strip() if newunit: # user wants to change the unit if unit in ['ev','kev','mev']: - number=timeenergy(number) + number=self.timeenergy(number) if unit=='kev': number=number/1.e3 elif unit=='mev': @@ -293,8 +293,7 @@ class Nucdata(object): isotopes=[] for v in res: isotopes.append(int(v.get('A'))) - isostring=str(isotopes)[1:-1] - return isostring + return isotopes def getZ(self,name): res=[v for v in elementdata if v.get('SYM').strip().upper()== name.upper() or v.get('NAME').strip().upper()== name.upper()] diff --git a/Master/texmf-dist/tex/latex/nucleardata/nucleardata.sty b/Master/texmf-dist/tex/latex/nucleardata/nucleardata.sty index af4fab435e7..28b811e8755 100644 --- a/Master/texmf-dist/tex/latex/nucleardata/nucleardata.sty +++ b/Master/texmf-dist/tex/latex/nucleardata/nucleardata.sty @@ -17,7 +17,7 @@ %% %% ---------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{nucleardata}[2015/11/18 v1.01 LaTeX package for providing basic nuclear properties to documents efficiently] +\ProvidesPackage{nucleardata}[2015/01/06 v1.01b LaTeX package for providing basic nuclear properties to documents efficiently] \RequirePackage{pythontex} \RequirePackage{siunitx} @@ -81,7 +81,7 @@ class Nucdata(object): "Gy":1e-9} def timeenergy(self,ene): - return hbarev*0.69315/ene/time_dict.get("s") + return hbarev*0.69315/ene/self.time_dict.get("s") def getNuclide(self,EL,A): res=[v for v in nucleardata if v.get('SYM').strip().upper()== EL.upper() and v.get('A') == A] @@ -165,7 +165,7 @@ class Nucdata(object): unit = value[1].strip() if newunit: # user wants to change the unit if unit in ['ev','kev','mev']: - number=timeenergy(number) + number=self.timeenergy(number) if unit=='kev': number=number/1.e3 elif unit=='mev': @@ -198,7 +198,7 @@ class Nucdata(object): unit = value[1].strip() if newunit: # user wants to change the unit if unit in ['ev','kev','mev']: - number=timeenergy(number) + number=self.timeenergy(number) if unit=='kev': number=number/1.e3 elif unit=='mev': @@ -316,8 +316,7 @@ class Nucdata(object): isotopes=[] for v in res: isotopes.append(int(v.get('A'))) - isostring=str(isotopes)[1:-1] - return isostring + return isotopes def getZ(self,name): res=[v for v in elementdata if v.get('SYM').strip().upper()== name.upper() or v.get('NAME').strip().upper()== name.upper()] @@ -430,7 +429,7 @@ nuc=Nucdata() \newcommand{\nucbea}[3][3]{\py{round(nuc.getBea('#2',#3)/1000.,#1)}} -\newcommand{\nucisotopes}[1]{\py{nuc.getIsotopes('#1')}} +\newcommand{\nucisotopes}[1]{\py{str(nuc.getIsotopes('#1'))[1:-1]}} \newcommand{\nucreactionqu}[9][3]{\py{round(nuc.getReaction_u('#2',#3,'#4',#5,'#6',#7,'#8',#9),#1)}} @@ -438,7 +437,7 @@ nuc=Nucdata() \newcommand{\nucreactionqkev}[9][3]{\py{round(nuc.getReaction_kev('#2',#3,'#4',#5,'#6',#7,'#8',#9),#1)}} \endinput -%% Copyright (C) 2015 by Bill Nettles <bnettles@uu.edu> +%% Copyright (C) 2015-2016 by Bill Nettles <bnettles@uu.edu> %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License (LPPL), either @@ -455,6 +454,8 @@ nuc=Nucdata() %% nucleardata.pdf, %% nucleardata.sty, %% elementlist.csv, -%% massdata.csv +%% massdata.csv, +%% nuccommandtest.tex, +%% nuccommandtext.pdf %% %% End of file `nucleardata.sty'. |