diff options
author | Karl Berry <karl@freefriends.org> | 2013-11-05 23:20:52 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-11-05 23:20:52 +0000 |
commit | 716054507cf3c82578fca00f234f742a74ed6b07 (patch) | |
tree | b69b6d0feeeff3e72121ead07f562b96ca0ccaeb | |
parent | b5ba601a229f163d52b5f8b68a297e92e675b401 (diff) |
bohr (5nov13)
git-svn-id: svn://tug.org/texlive/trunk@32083 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/bohr/README | 11 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/bohr/bohr_en.pdf | bin | 103404 -> 429030 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/bohr/bohr_en.tex | 425 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/bohr/bohr.sty | 433 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/bohr/bohr_elements_english.def | 4 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/bohr/bohr_elements_french.def | 114 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/bohr/bohr_elements_german.def | 4 |
7 files changed, 673 insertions, 318 deletions
diff --git a/Master/texmf-dist/doc/latex/bohr/README b/Master/texmf-dist/doc/latex/bohr/README index e521e1022a2..0393d2d5081 100644 --- a/Master/texmf-dist/doc/latex/bohr/README +++ b/Master/texmf-dist/doc/latex/bohr/README @@ -1,15 +1,15 @@ -------------------------------------------------------------------------- -the BOHR package v0.2c +the BOHR package v0.3 simple atom representation according to the Bohr model -2012/12/30 +2013/11/05 -------------------------------------------------------------------------- Clemens Niederberger Web: https://bitbucket.org/cgnieder/bohr/ E-Mail: contact@mychemistry.eu -------------------------------------------------------------------------- -Copyright 2012 Clemens Niederberger +Copyright 2012-2013 Clemens Niederberger This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 @@ -26,9 +26,10 @@ The Current Maintainer of this work is Clemens Niederberger. The bohr package consists of the files - bohr.sty - bohr_en.tex, bohr_en.pdf - - bohr_elements_english.def, bohr_elements_german.def + - bohr_elements_english.def, bohr_elements_german.def, + bohr_elements_french.def - README -------------------------------------------------------------------------- If you have any ideas, questions, suggestions or bugs to report, please feel free to contact me. ---------------------------------------------------------------------------
\ No newline at end of file +-------------------------------------------------------------------------- diff --git a/Master/texmf-dist/doc/latex/bohr/bohr_en.pdf b/Master/texmf-dist/doc/latex/bohr/bohr_en.pdf Binary files differindex 4b4549ba79c..59af9fe18e1 100644 --- a/Master/texmf-dist/doc/latex/bohr/bohr_en.pdf +++ b/Master/texmf-dist/doc/latex/bohr/bohr_en.pdf diff --git a/Master/texmf-dist/doc/latex/bohr/bohr_en.tex b/Master/texmf-dist/doc/latex/bohr/bohr_en.tex index d08e45bff10..3802ad3ed9c 100644 --- a/Master/texmf-dist/doc/latex/bohr/bohr_en.tex +++ b/Master/texmf-dist/doc/latex/bohr/bohr_en.tex @@ -1,5 +1,5 @@ -% arara: xelatex -% arara: xelatex +% arara: pdflatex +% arara: pdflatex % -------------------------------------------------------------------------- % the BOHR package % @@ -34,214 +34,233 @@ % feel free to contact me. % -------------------------------------------------------------------------- % -% if you want to compile this documentation you'll need the document class -% `cnpkgdoc' which you can get here: -% https://bitbucket.org/cgnieder/cnpkgdoc/ -% the class is licensed LPPL 1.3 or later +% if you want to compile this documentation you'll need my `cnltx` bundle +% which you can get here: +% https://github.com/cgnieder/cnltx/ % -% use `xelatex --shell-scape' for compilation -% -\documentclass[toc=index]{cnpkgdoc} -\docsetup{ - pkg = bohr , - cmd = \BOHR , - code-box = { - skipbelow = .5\baselineskip plus .5ex minus .5ex , - skipabove = .5\baselineskip plus .5ex minus .5ex , - roundcorner = 3pt , - innerleftmargin = 1.5em , - innerrightmargin = 1.5em +\documentclass[load-preamble+]{cnltx-doc} +\usepackage[utf8]{inputenc} +\usepackage{bohr} + +\setcnltx{ + package = bohr , + authors = Clemens Niederberger , + email = contact@mychemistry.eu , + url = https://bitbucket.org/cgnieder/bohr/ , + add-cmds = { + atomicnumber, + bohr, + DeclareAtomName, + DeclareAtomSymbol, + DeclareElectronDistribution, + elementname, + elementsymbol, + setbohr, + Z + } , + add-silent-cmds = ch , + abstract = {% + This package provides means for the creation of simple + Bohr models of atoms up to the atomic number 112. Additionally commands + are provided to convert atomic numbers to element symbols or element names + and vice versa.\par + The package is inspired by a question on + \url{http://tex.stackexchange.com/}: + \href{http://tex.stackexchange.com/questions/73410/draw-bohr-atomic-model-with-electron-shells-in-tex}% + {Draw Bohr atomic model with electron shells in \TeX?}% } , - gobble = 1 + index-setup = { + othercode = \footnotesize , + level = \addsec , + noclearpage + } , + makeindex-setup = { + columns = 3 , + columnsep = 1em + } } -\addcmds{bohr,ch,elementname,elementsymbol,setbohr} -\usepackage{chemmacros} -\usepackage{fontspec} -\usepackage{superiors} -\usepackage{fnpct} - -\usepackage{embrac}[2012/06/29] -\ChangeEmph{[}[,.02em]{]}[.055em,-.08em] -\ChangeEmph{(}[-.01em,.04em]{)}[.04em,-.05em] - -\renewcommand*\othersectionlevelsformat[3]{\textcolor{main}{#3\autodot}\enskip} -\renewcommand*\partformat{\textcolor{main}{\partname~\thepart\autodot}} - -\usepackage{filecontents} -\begin{filecontents}{\jobname.ist} - heading_prefix "{\\bfseries " - heading_suffix "\\hfil}\\nopagebreak\n" - headings_flag 1 - delim_0 "\\dotfill " - delim_1 "\\dotfill " - delim_2 "\\dotfill " - delim_r "\\textendash" - suffix_2p "\\nohyperpage{\\,f.}" - suffix_3p "\\nohyperpage{\\,ff.}" -\end{filecontents} - -\usepackage{imakeidx} -% \indexsetup{noclearpage} -\makeindex[columns=2,intoc,options={-sl \jobname.ist}] - -\TitlePicture{% - \parbox{.7\linewidth}{This package provides means for the creation of simple - Bohr models of atoms up to the atomic number 112. Additionally commands are - provided to convert atomic numbers to element symbols or element names and vice - versa.\par - The package is inspired by a question on \url{http://tex.stackexchange.com/}: - \href{http://tex.stackexchange.com/questions/73410/draw-bohr-atomic-model-with-electron-shells-in-tex}% - {Draw Bohr atomic model with electron shells in TeX?}}% -} +% \microtypesetup{tracking=scshape} -\newcommand*\Default[1]{% - \hfill\llap - {% - \ifblank{#1}% - {(initially~empty)}% - {Default:~\code{#1}}% - }% - \newline -} +\defbibheading{bibliography}{\addsec{References}} + +\newpackagename\BOHR{bohr} + +\usepackage{chemmacros} \begin{document} -\section{Licence and Requirements}\secidx{License} -\BOHR is placed under the terms of the \LaTeX{} Project Public License, -version 1.3 or later (\url{http://www.latex-project.org/lppl.txt}). -It has the status ``maintained.'' - -\BOHR loads and needs the packages \paket[pgf]{tikz}, \paket{pgfopts} and -\paket{etoolbox}. -\secidx*{License} - -\section{Options}\secidx{Options} -Every option described in the manual can also be used as package option. Options -are indicated as \key{option} and are all key/value like options. Some options can -be set without value, too. Then the \default{underlined} value is used. -\secidx*{Options} - -\section{Usage}\secidx{Usage} -\BOHR is used like any other \LaTeXe\ package: -\begin{beispiel}[code only] - \usepackage{bohr} -\end{beispiel} - -The main command, \cmd{bohr}, creates the models: -\begin{beschreibung} - \Befehl{bohr}\oa{<num of shells>}\ma{<number of electrons>}\ma{<atom name>} -\end{beschreibung} +\section{Licence and Requirements} +\license + +The \BOHR\ package loads and needs the packages +\needpackage[graphics]{pgf}~\cite{pkg:pgf} and +\pkg{cnltx-base}\footnote{\CTANurl{cnltx}}~\cite{bnd:cnltx}. + +\section{Options} +Every option described in the manual can also be used as package option. +Options are indicated as \option*{option} and are all key/value like options. +Some options can be set without value, too. Then the +\code{\default{underlined}} value is used. + +\section{Usage} +\BOHR\ is used like any other \LaTeXe\ package: +\begin{sourcecode} + \usepackage{bohr} +\end{sourcecode} + +The main command, \cs{bohr}, creates the models: +\begin{commands} + \command{bohr}[\oarg{num of shells}\marg{num of electrons}\marg{atom name}] + The main command. The mandatory arguments take the number of electrons to + be printed and the atom symbol that is printed in the center. +\end{commands} + This is described best by an example: -\begin{beispiel} - \bohr{3}{Li} -\end{beispiel} -There is not much more to it. Another example using the optional argument: -\begin{beispiel} - \bohr[2]{2}{$\mathrm{Li^+}$} -\end{beispiel} -\secidx*{Usage} - -\section{Customization}\secidx{Customization} -\BOHR provides a handful of options to customize the appearance: -\begin{beschreibung} - \Befehl{setbohr}{<options>}\newline - Options are set in a key/value syntax using this command. - \Option{insert-symbol}{\default{true}|false}\Default{false} - If set to \code{true} \BOHR will insert the atomic symbol suiting to the given - electron number if \emph{no} third argument is given. - \Option{insert-number}{\default{true}|false}\Default{false} - If set to \code{true} \BOHR will use the appropriate number of electrons - for the given element symbol in the third argument if \emph{no} second argument - is given. This of course only works if the third argument is one of the 112 - element symbols. - \Option{insert-missing}{\default{true}|false}\Default{false} - Sets both \key{insert-symbol} and \key{insert-number}. - \Option{atom-style}{<code>}\Default{} - This code will be placed immediatly before the third argument of \cmd{bohr}. - The last macro in it may need one argument. - \Option{name-options-set}{<tikz>}\Default{} - This value is passed to the options of the \cmd*{node} the third argument of - \cmd{bohr} is placed in. - \Option{name-options-add}{<tikz>}\Default{} - This value will be added to options set with \key{name-options-set}. - \Option{nucleus-options-set}{<tikz>}\Default{draw=black!80,fill=black!10,opacity=.25} - This value is passed to the options of the \cmd*{draw} command that draws the - circle around the name-node. - \Option{nucleus-options-add}{<tikz>}\Default{} - This value will be added to options set with \key{nucleus-options-set}. - \Option{nucleus-radius}{<dim>}\Default{1em} - The radius of the circle around the name-node. - \Option{electron-options-set}{<tikz>}\Default{blue!50!black!50} - This value is passed to the options of the \cmd*{fill} command that draws the - electrons. - \Option{electron-options-add}{<tikz>}\Default{} - This value will be added to options set with \key{electron-options-set}. - \Option{electron-radius}{<dim>}\Default{1.5pt} - The radius of the circles that represent the electrons. - \Option{shell-options-set}{<tikz>}\Default{draw=blue!75,thin} - This value is passed to the options of the \cmd*{draw} command that draws the - circles that represent the shells. - \Option{shell-options-add}{<tikz>}\Default{} - This value will be added to options set with \key{shell-options-set}. - \Option{shell-dist}{<dim>}\Default{1em} - The distance between the nucleus and the first shell and between subsequent - shells. - \Option{german}{\default{true}|false}\Default{false} - If set to \code{true} the German names are defined (see section~\ref{sec:additional} - to understand what I mean). They are also defined if you use \paket{babel} and - select language \code{german} or \code{ngerman} in the preamble. The same holds - for \paket{polyglossia}. -\end{beschreibung} - -\begin{beispiel} - \setbohr{name-options-set={font=\footnotesize\sffamily}} - \bohr{2}{He} \bohr{7}{N} -\end{beispiel} - -\begin{beispiel} - % uses package `chemmacros' - \setbohr{atom-style={\footnotesize\sffamily\ch}} - \bohr{0}{H+} \bohr{10}{F-} -\end{beispiel} - -\begin{beispiel} - \setbohr{ - shell-options-add = dashed, - shell-dist = .5em, - insert-missing - } - \bohr{6}{} \bohr{}{K} -\end{beispiel} -\secidx*{Customization} - -\section{Additional Commands}\label{sec:additional} -\BOHR provides some additional commands that return the element symbol or the +\begin{example}[side-by-side] + \bohr{3}{Li} +\end{example} +There is not much more to it. Another example using the optional argument: +\begin{example}[side-by-side] + \bohr[2]{2}{$\mathrm{Li^+}$} +\end{example} + +\section{Customization} +\BOHR\ provides a handful of options to customize the appearance: +\begin{commands} + \command{setbohr}[\marg{options}] + Options are set in a key/value syntax using this command. +\end{commands} +\begin{options} + \keybool{insert-symbol}\Default{false} + If set to \code{true} \BOHR\ will insert the atomic symbol suiting to the + given electron number if \emph{no} third argument is given. + \keybool{insert-number}\Default{false} + If set to \code{true} \BOHR\ will use the appropriate number of electrons + for the given element symbol in the third argument if \emph{no} second + argument is given. This of course only works if the third argument is one + of the 112 element symbols. + \keybool{insert-missing}\Default{false} + Sets both \option{insert-symbol} and \option{insert-number}. + \keyval{atom-style}{code}\Default + This code will be placed immediatly before the third argument of + \cs{bohr}. The last macro in it may need one argument. + \keyval{name-options-set}{tikz option}\Default + This value is passed to the options of the \cs*{node} the third argument + of \cs{bohr} is placed in. + \keyval{name-options-add}{tikz options}\Default + This value will be added to options set with \option{name-options-set}. + \keyval{nucleus-options-set}{tikz options}{} + \Default{draw=black!80,fill=black!10,opacity=.25} + This value is passed to the options of the \cs*{draw} command that draws + the circle around the name-node. + \keyval{nucleus-options-add}{tikz options}\Default + This value will be added to options set with \option{nucleus-options-set}. + \keyval{nucleus-radius}{dimension}\Default{1em} + The radius of the circle around the name-node. + \keyval{electron-options-set}{tikz options}\Default{blue!50!black!50} + This value is passed to the options of the \cs*{fill} command that draws + the electrons. + \keyval{electron-options-add}{tikz options}\Default + This value will be added to options set with \option{electron-options-set}. + \keyval{electron-radius}{dimension}\Default{1.5pt} + The radius of the circles that represent the electrons. + \keyval{shell-options-set}{tikz options}\Default{draw=blue!75,thin} + This value is passed to the options of the \cs*{draw} command that draws + the circles that represent the shells. + \keyval{shell-options-add}{tikz options}\Default + This value will be added to options set with \option{shell-options-set}. + \keyval{shell-dist}{dimension}\Default{1em} + The distance between the nucleus and the first shell and between subsequent + shells. + \keyval{language}{language}\Default + \sinceversion{0.2d}Select the language used for the element names manually + rather than letting \BOHR\ select it automatically. This option must be + used as package option or in the preamble in order to have an effect. + Currently provided languages are \code{English}, \code{French} and + \code{German}. If this option is not used the document language at the + end of the preamble (as set by \pkg{babel} or \pkg{polyglossia}) is + used. + \keychoice{distribution-method}{periodic,quantum}\Default{quantum} + \sinceversion{0.3}Determines how the electrons are distributed on the + shells. \code{periodic} distributes the electrons 2-8-8-18-18-32-32, \ie, + according to the place of the corresponding atom in the periodic table of + elements. \code{quantum} distributes the electrons according the the + electron configuration of the corresponding atom where each shell + represents the main quantum number. \ch{Pd} for example has the + configuration $1s^22s^22p^63s^23p^63d^{10}4s^24p^64d^{10}$ and would get + two electrons on the first shell, 8~electrons on the second, and + 18~electrons each on the third and fourth. +\end{options} + +\begin{example} + \setbohr{name-options-set={font=\footnotesize\sffamily}} + \bohr{2}{He} \bohr{7}{N} +\end{example} + +\begin{example} + % uses package `chemmacros' + \setbohr{atom-style={\footnotesize\sffamily\ch}} + \bohr{0}{H+} \bohr{10}{F-} +\end{example} + +\begin{example}[side-by-side] + \setbohr{ + shell-options-add = dashed, + shell-dist = .5em, + insert-missing + } + \bohr{6}{} \bohr{}{K} +\end{example} + +\section{Additional Commands}\label{sec:additional-commands} +\BOHR\ provides some additional commands that return the element symbol or the element name to a given atomic number and vice versa. -\begin{beschreibung} - \Befehl{elementsymbol}{<atomic number>|<element name>}\newline - Returns the element symbol for a given atomic number or element name. - \cmd{elementsymbol}{80}: \elementsymbol{80}; \cmd{elementsymbol}{rhenium}: - \elementsymbol{rhenium}. - \Befehl{elementname}{<atomic number>|<element symbol>}\newline - Returns the element name for a given atomic number or element symbol. - \cmd{elementname}{80}: \elementname{80}; \cmd{elementname}{Rh}: \elementname{Rh}. - \Befehl{atomicnumber}{<element name>|<element symbol>}\newline - Returns the atomic number for a given element name or element symbol. - \cmd{atomicnumber}{Hg}: \atomicnumber{Hg}; \cmd{atomicnumber}{rhenium} - \atomicnumber{rhenium}. - \Befehl{Z}\newline - If this command isn't defined by some other package it is available as an - alias of \cmd{atomicnumber}. -\end{beschreibung} - -\begin{beispiel} - The elements \elementname{F}, \elementname{Cl}, \elementname{Br}, - \elementname{I} and \elementname{At} are called \emph{halogens}. -\end{beispiel} - -\section{Implementation} -\implementation - -\printindex -\end{document}
\ No newline at end of file +\begin{commands} + \command{elementsymbol}[\code{\{\choices{\meta{atomic number},\meta{element name}}\}}] + Returns the element symbol for a given atomic number or element name. + \verbcode+\elementsymbol{80}+: \elementsymbol{80}; + \verbcode+\elementsymbol{rhenium}+: \elementsymbol{rhenium}. + \command{elementname}[\code{\{\choices{\meta{atomic number}|\meta{element symbol}}\}}] + Returns the element name for a given atomic number or element symbol. + \verbcode+\elementname{80}+: \elementname{80}; + \verbcode+\elementname{Rh}+: \elementname{Rh}. + \command{atomicnumber}[\code{\{\choices{\meta{element name}|\meta{element symbol}}\}}] + Returns the atomic number for a given element name or element symbol. + \verbcode+\atomicnumber{Hg}+: \atomicnumber{Hg}; + \verbcode+\atomicnumber{rhenium}+ \atomicnumber{rhenium}. + \command{Z} + If this command isn't defined by some other package it is available as an + alias of \cs{atomicnumber}. +\end{commands} + +\begin{example} + The elements \elementname{F}, \elementname{Cl}, \elementname{Br}, + \elementname{I} and \elementname{At} are called \emph{halogens}. +\end{example} + +\section{Internal Commands}\label{sec:internal-commands} +The element properties used by \BOHR\ are defined through the following commands: +\begin{commands} + \command{DeclareAtomSymbol}[\marg{atomic number}\marg{atom symbol}] + The package file contains 112~lines like the following: + \verbcode+\DeclareAtomSymbol{29}{Cu}+. They associate atomic number with + the corresponding atom symbol. This command could be used to change an + element's symbol. + \command{DeclareAtomName}[\marg{atomic number}\marg{element name}] + \BOHR\ comes with a few language files named + \code{bohr\_elements\_\meta{language}.def}. They contain of 112~entries + like \verbcode+\DeclareAtomName{29}{Copper}+ which associate atomic number + and element name. This command could be used to change an element's name. + \command{DeclareElectronDistribution}[\marg{atomic number}\marg{electron + distribution}] + The \meta{electron distribution} is a comma separated list of integers + which determines how the electrons are distributed on the shells when + \keyis{distribution-method}{quantum}. The package file contains + 112~entries like \verbcode+\DeclareElectronDistribution{29}{2,8,18,1}+. + This command could be used to change an element's electron configuration. +\end{commands} + +\clearpage + +\end{document} diff --git a/Master/texmf-dist/tex/latex/bohr/bohr.sty b/Master/texmf-dist/tex/latex/bohr/bohr.sty index 4d9e60a76b2..874d07c63b2 100644 --- a/Master/texmf-dist/tex/latex/bohr/bohr.sty +++ b/Master/texmf-dist/tex/latex/bohr/bohr.sty @@ -8,7 +8,7 @@ % Web: https://bitbucket.org/cgnieder/bohr/ % E-Mail: contact@mychemistry.eu % -------------------------------------------------------------------------- -% Copyright 2012 Clemens Niederberger +% Copyright 2012-2013 Clemens Niederberger % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 @@ -25,34 +25,104 @@ % The bohr package consists of the files % - bohr.sty % - bohr_en.tex, bohr_en.pdf -% - bohr_elements_english.def, bohr_elements_german.def +% - bohr_elements_english.def, bohr_elements_german.def, +% bohr_elements_french.def % - README % -------------------------------------------------------------------------- % If you have any ideas, questions, suggestions or bugs to report, please % feel free to contact me. % -------------------------------------------------------------------------- -\def\@bohr@date{2012/12/30} -\def\@bohr@version{v0.2c} -\def\@bohr@description{simple atom representation according to the Bohr model} +\newcommand*\@bohr@date{2013/11/05} +\newcommand*\@bohr@version{v0.3} +\newcommand*\@bohr@description{simple atom representation according to the Bohr model} \ProvidesPackage{bohr}[\@bohr@date\space \@bohr@version\space \@bohr@description] -\RequirePackage{tikz,etoolbox,pgfopts} +\RequirePackage{tikz,cnltx-base} % -------------------------------------------------------------------------- % message handling -\def\@bohr@create@message#1{% - \ifstrequal{#1}{Error} +\newcommand*\@bohr@error@message{% + For details have a look at the `exsheets' manual.} + +\cnltx@create@generic@message{@bohr}{bohr}{Error}{\@bohr@error@message} +\cnltx@create@generic@message{@bohr}{bohr}{Warning}{} +\cnltx@create@generic@message{@bohr}{bohr}{WarningNoLine}{} +\cnltx@create@generic@message{@bohr}{bohr}{Info}{} + +% -------------------------------------------------------------------------- +% options +\newcommand*\@bohr@name@options{} +\newcommand*\@bohr@write@atom[1]{#1} +\newcommand*\@bohr@nucleus@radius{1em} +\newcommand*\@bohr@electron@options{blue!50!black!50} +\newcommand*\@bohr@electron@radius{1.5pt} +\newcommand*\@bohr@shell@dist{1em} +\newcommand*\@bohr@nucleus@options{draw=black!80,fill=black!10,opacity=.25} +\newcommand*\@bohr@shell@options{draw=blue!75,thin} + +\newbool{bohr@insert@symbol} +\newbool{bohr@insert@number} + +\newcommand*\@bohr@insert@symbol[2]{% + \ifbool{bohr@insert@symbol} {% - \lowercase{\csdef{@bohr@#1}}##1##2{% - \csuse{Package#1}{bohr}{##1}{##2}}% - }{% - \lowercase{\csdef{@bohr@#1}}##1{% - \csuse{Package#1}{bohr}{##1}}% - }} -\@bohr@create@message{Error} -\@bohr@create@message{Warning} -\@bohr@create@message{WarningNoLine} -\@bohr@create@message{Info} + \ifblank{#2} + {\@bohr@write@atom{\@bohr@get@atom@symbol{#1}}} + {\@bohr@write@atom{#2}}% + } + {\@bohr@write@atom{#2}}} + +\newcommand\@bohr@add@options@to[2]{% + \edef#1{\expandonce#1,\unexpanded{#2}}% +} + +\newcommand*\@bohr@option@deprecated[2]{% + \@bohr@warning{option `#1' has deprecated, use `#2' instead}% +} + +\pgfkeys{ + bohr/.cd, + insert-symbol/.is if = bohr@insert@symbol , + insert-number/.is if = bohr@insert@number , + insert-missing/.is choice, + insert-missing/true/.code = + \booltrue{bohr@insert@symbol}\booltrue{bohr@insert@number} , + insert-missing/false/.code = + \boolfalse{bohr@insert@symbol}\boolfalse{bohr@insert@number} , + insert-missing/.default = true , + atom-style/.code = \def\@bohr@write@atom{#1} , + name-options-set/.code = \def\@bohr@name@options{#1} , + name-options-add/.code = + \@bohr@add@options@to\@bohr@name@options{#1} , + nucleus-radius/.code = \def\@bohr@nucleus@radius{#1} , + nucleus-options-set/.code = \def\@bohr@nucleus@options{#1} , + nucleus-options-add/.code = + \@bohr@add@options@to\@bohr@nucleus@options{#1} , + electron-radius/.code = \def\@bohr@electron@radius{#1} , + electron-options-set/.code = \def\@bohr@electron@options{#1} , + electron-options-add/.code = + \@bohr@add@options@to\@bohr@electron@options{#1} , + shell-dist/.code = \def\@bohr@shell@dist{#1} , + shell-options-set/.code = \def\@bohr@shell@options{#1} , + shell-options-add/.code = + \@bohr@add@options@to\@bohr@shell@options{#1} , + german/.code = + \@bohr@option@deprecated{german}{language=german} , + ngerman/.code = + \@bohr@option@deprecated{ngerman}{language=german} , + language/.code = \def\@bohr@language{#1} , + distribution-method/.is choice , + distribution-method/periodic/.code = + \def\@bohr@draw@electrons{\@bohr@draw@electrons@periodic} , + distribution-method/quantum/.code = + \def\@bohr@draw@electrons{\@bohr@draw@electrons@quantum} +} + +\newrobustcmd\setbohr[1]{\pgfqkeys{/bohr}{#1}} + +\setbohr{distribution-method=quantum} + +\ProcessPgfOptions* % -------------------------------------------------------------------------- % the \bohr command @@ -61,7 +131,7 @@ % #3: atom name \newrobustcmd*\bohr[3][]{\@bohr{#1}{#2}{#3}} -\def\@bohr#1#2#3{% +\newcommand*\@bohr[3]{% \ifblank{#2}% electron number given ? {% no \ifboolexpr{ bool {bohr@insert@number} and test {\ifblank{#3}} } @@ -90,7 +160,7 @@ \else \ifnum#2>112\relax \@bohr@warning{I only know atoms up to 112 (Copernicium). You - gave me #1 so I am using 112 instead.} + gave me #2 so I am using 112 instead.} \def\@bohr@electron@current@number{112}% \else \def\@bohr@electron@current@number{#2}% @@ -129,7 +199,7 @@ \endtikzpicture } -\def\@bohr@get@shell@num#1{% +\newcommand*\@bohr@get@shell@num[1]{% \ifnum#1<3\relax \def\@bohr@shell@num{1}% \else @@ -157,7 +227,7 @@ \fi } -\def\@bohr@distribute@electrons#1#2#3#4{% +\newrobustcmd*\@bohr@distribute@electrons[4]{% \pgfmathparse{#2}% \let\@bohr@last@electron\pgfmathresult \foreach\@bohr@electron@number in {#1,...,\@bohr@last@electron} @@ -168,7 +238,9 @@ } } -\def\@bohr@draw@electrons#1{% +% the simple model according to periods: + +\newcommand*\@bohr@draw@electrons@periodic[1]{% \ifnum#1<1\relax\else \ifnum#1<3\relax \@bohr@distribute@electrons{1}{#1}{180}{1}% @@ -203,18 +275,20 @@ \@bohr@distribute@electrons{1}{18}{20}{5}% \@bohr@distribute@electrons{1}{#1-54}{11.25}{6}% \else - \@bohr@distribute@electrons{1}{2}{180}{1}% - \@bohr@distribute@electrons{1}{8}{45}{2}% - \@bohr@distribute@electrons{1}{8}{45}{3}% - \@bohr@distribute@electrons{1}{18}{20}{4}% - \@bohr@distribute@electrons{1}{18}{20}{5}% - \@bohr@distribute@electrons{1}{32}{11.25}{6}% + \@bohr@distribute@electrons{1}{2}{180}{1}% + \@bohr@distribute@electrons{1}{8}{45}{2}% + \@bohr@distribute@electrons{1}{8}{45}{3}% + \@bohr@distribute@electrons{1}{18}{20}{4}% + \@bohr@distribute@electrons{1}{18}{20}{5}% + \@bohr@distribute@electrons{1}{32}{11.25}{6}% \ifnum#1<113\relax \@bohr@distribute@electrons{1}{#1-86}{11.25}{7}% \else \@bohr@distribute@electrons{1}{26}{11.25}{7}% - \@bohr@warning{I only know atoms up to 112 (Copernicium). You - gave me #1 so I am using 112 instead.} + \@bohr@warning{% + I only know atoms up to 112 (Copernicium). You gave me + #1 so I am using 112 instead.% + }% \fi \fi \fi @@ -226,11 +300,86 @@ } % -------------------------------------------------------------------------- +% electron distribution per electron number +\newrobustcmd*\DeclareElectronDistribution[2]{% + \@bohr@define@electron@distribution{#1}{#2}% +} +\newrobustcmd*\@bohr@define@electron@distribution[2]{% + \csdef{@bohr@electron@distribution@\romannumeral#1}{#2}% +} + +\newcounter{@bohr@shell@number} + +\newrobustcmd*\@bohr@draw@electrons@quantum[1]{% + \cnltx@expandargs(x)\@bohr@get@shell@electrons + {\csuse{@bohr@electron@distribution@\romannumeral#1}}% +} + +\newrobustcmd*\@bohr@get@shell@electrons[1]{% + % \def\x{#1}\show\x + \setcounter{@bohr@shell@number}{0}% + \forcsvlist{\@bohr@draw@shell@electrons}{#1}% +} + +\newrobustcmd*\@bohr@draw@shell@electrons[1]{% + \stepcounter{@bohr@shell@number}% + \ifnum\value{@bohr@shell@number}=1\relax % n=1 + \@bohr@distribute@electrons{1}{#1}{180}{1}% + \fi + \ifnum\value{@bohr@shell@number}=2\relax % n=2 + \@bohr@distribute@electrons{1}{#1}{45}{2}% + \fi + \ifnum\value{@bohr@shell@number}=3\relax % n=3 + \ifnum#1<9\relax + \@bohr@distribute@electrons{1}{#1}{45}{3}% + \else + \@bohr@distribute@electrons{1}{#1}{20}{3}% + \fi + \fi + \ifnum\value{@bohr@shell@number}=4\relax % n=4 + \ifnum#1<9\relax + \@bohr@distribute@electrons{1}{#1}{45}{4}% + \else + \ifnum#1<18\relax + \@bohr@distribute@electrons{1}{#1}{20}{4}% + \else + \@bohr@distribute@electrons{1}{#1}{11.25}{4}% + \fi + \fi + \fi + \ifnum\value{@bohr@shell@number}=5\relax % n=5 + \ifnum#1<9\relax + \@bohr@distribute@electrons{1}{#1}{45}{5}% + \else + \ifnum#1<18\relax + \@bohr@distribute@electrons{1}{#1}{20}{5}% + \else + \@bohr@distribute@electrons{1}{#1}{11.25}{5}% + \fi + \fi + \fi + \ifnum\value{@bohr@shell@number}=6\relax % n=6 + \ifnum#1<9\relax + \@bohr@distribute@electrons{1}{#1}{45}{6}% + \else + \ifnum#1<18\relax + \@bohr@distribute@electrons{1}{#1}{20}{6}% + \else + \@bohr@distribute@electrons{1}{#1}{11.25}{6}% + \fi + \fi + \fi + \ifnum\value{@bohr@shell@number}=7\relax % n=7 + \@bohr@distribute@electrons{1}{#1}{180}{7}% + \fi +} + +% -------------------------------------------------------------------------- % atomic numbers and element symbols and names -\def\@bohr@define@atom@symbol#1#2{% +\newrobustcmd*\@bohr@define@atom@symbol[2]{% \csdef{@bohr@atom@symbol@num@\romannumeral#1}{#2}% \lowercase{\csdef{@bohr@atom@number@#2}}{#1}} -\def\@bohr@define@atom@name#1#2#3{% +\newrobustcmd*\@bohr@define@atom@name[3]{% \csdef{@bohr@atom@name@\romannumeral#1}{#2}% \lowercase{\csdef{@bohr@atom@name@num@#3}}{#1}} @@ -246,24 +395,24 @@ \newrobustcmd*\DeclareAtomSymbol[2]{% \@bohr@define@atom@symbol{#1}{#2}} -\def\@bohr@get@atom@symbol#1{% +\newcommand*\@bohr@get@atom@symbol[1]{% \csuse{@bohr@atom@symbol@num@\romannumeral#1}} -\def\@bohr@get@atom@number#1{% +\newcommand*\@bohr@get@atom@number[1]{% \lowercase{\csuse{@bohr@atom@number@#1}}} -\def\@bohr@get@atom@name#1{% +\newcommand*\@bohr@get@atom@name[1]{% \csuse{@bohr@atom@name@\romannumeral#1}} -\def\@bohr@element@symbol#1{% +\newcommand*\@bohr@element@symbol[1]{% \lowercase{\ifcsdef{@bohr@atom@name@num@#1}} {\lowercase{\@bohr@get@atom@symbol{\csuse{@bohr@atom@name@num@#1}}}} {\@bohr@get@atom@symbol{#1}}} -\def\@bohr@atomic@number#1{% +\newcommand*\@bohr@atomic@number[1]{% \lowercase{\ifcsdef{@bohr@atom@number@#1}} {\@bohr@get@atom@number{#1}} {\lowercase{\csuse{@bohr@atom@name@num@#1}}}} -\def\@bohr@elemt@symbol#1{% +\newcommand*\@bohr@elemt@symbol[1]{% \if!\ifnum9<1#1!\@bohr@get@atom@name{#1}\fi \else \lowercase{\@bohr@get@atom@name{\csuse{@bohr@atom@number@#1}}}% @@ -387,76 +536,143 @@ \DeclareAtomSymbol{111}{Rg} \DeclareAtomSymbol{112}{Cn} -% element names are defined in bohr_elements_english.def or -% bohr_elements_german.def, respectively. Now we need to decide -% which ones we want -\AfterEndPreamble{ -\ifdef\bbl@afterfi{}{\long\def\bbl@afterfi#1{\fi#1}} -\ifboolexpr - { - test {\iflanguage{german}} or - test {\iflanguage{ngerman}} - } - {\booltrue{bohr@german}}{} -\ifbool{bohr@german} - {\input{bohr_elements_german.def}} - {\input{bohr_elements_english.def}} -} - +% period 1 +\DeclareElectronDistribution{1}{1} +\DeclareElectronDistribution{2}{2} +% period 2 +\DeclareElectronDistribution{3}{2,1} +\DeclareElectronDistribution{4}{2,2} +\DeclareElectronDistribution{5}{2,3} +\DeclareElectronDistribution{6}{2,4} +\DeclareElectronDistribution{7}{2,6} +\DeclareElectronDistribution{8}{2,6} +\DeclareElectronDistribution{9}{2,7} +\DeclareElectronDistribution{10}{2,8} +% period 3 +\DeclareElectronDistribution{11}{2,8,1} +\DeclareElectronDistribution{12}{2,8,2} +\DeclareElectronDistribution{13}{2,8,3} +\DeclareElectronDistribution{14}{2,8,4} +\DeclareElectronDistribution{15}{2,8,5} +\DeclareElectronDistribution{16}{2,8,6} +\DeclareElectronDistribution{17}{2,8,7} +\DeclareElectronDistribution{18}{2,8,8} +% period 4 +\DeclareElectronDistribution{19}{2,8,8,1} +\DeclareElectronDistribution{20}{2,8,8,2} +\DeclareElectronDistribution{21}{2,8,9,2} +\DeclareElectronDistribution{22}{2,8,10,2} +\DeclareElectronDistribution{23}{2,8,11,2} +\DeclareElectronDistribution{24}{2,8,13,1} +\DeclareElectronDistribution{25}{2,8,13,2} +\DeclareElectronDistribution{26}{2,8,14,2} +\DeclareElectronDistribution{27}{2,8,15,2} +\DeclareElectronDistribution{28}{2,8,16,2} +\DeclareElectronDistribution{29}{2,8,18,1} +\DeclareElectronDistribution{30}{2,8,18,2} +\DeclareElectronDistribution{31}{2,8,18,3} +\DeclareElectronDistribution{32}{2,8,18,4} +\DeclareElectronDistribution{33}{2,8,18,5} +\DeclareElectronDistribution{34}{2,8,18,6} +\DeclareElectronDistribution{35}{2,8,18,7} +\DeclareElectronDistribution{36}{2,8,18,8} +% period 5 +\DeclareElectronDistribution{37}{2,8,18,8,1} +\DeclareElectronDistribution{38}{2,8,18,8,2} +\DeclareElectronDistribution{39}{2,8,18,9,2} +\DeclareElectronDistribution{40}{2,8,18,10,2} +\DeclareElectronDistribution{41}{2,8,18,12,1} +\DeclareElectronDistribution{42}{2,8,18,13,1} +\DeclareElectronDistribution{43}{2,8,18,14,1} +\DeclareElectronDistribution{44}{2,8,18,15,1} +\DeclareElectronDistribution{45}{2,8,18,16,1} +\DeclareElectronDistribution{46}{2,8,18,18} +\DeclareElectronDistribution{47}{2,8,18,18,1} +\DeclareElectronDistribution{48}{2,8,18,18,2} +\DeclareElectronDistribution{49}{2,8,18,18,3} +\DeclareElectronDistribution{50}{2,8,18,18,4} +\DeclareElectronDistribution{51}{2,8,18,18,5} +\DeclareElectronDistribution{52}{2,8,18,18,6} +\DeclareElectronDistribution{53}{2,8,18,18,7} +\DeclareElectronDistribution{54}{2,8,18,18,8} +% period 6 +\DeclareElectronDistribution{55}{2,8,18,18,8,1} +\DeclareElectronDistribution{56}{2,8,18,18,8,2} +\DeclareElectronDistribution{57}{2,8,18,18,9,2} +\DeclareElectronDistribution{58}{2,8,18,20,8,2} +\DeclareElectronDistribution{59}{2,8,18,21,8,2} +\DeclareElectronDistribution{60}{2,8,18,22,8,2} +\DeclareElectronDistribution{61}{2,8,18,23,8,2} +\DeclareElectronDistribution{62}{2,8,18,24,8,2} +\DeclareElectronDistribution{63}{2,8,18,25,8,2} +\DeclareElectronDistribution{64}{2,8,18,25,9,2} +\DeclareElectronDistribution{65}{2,8,18,27,8,2} +\DeclareElectronDistribution{66}{2,8,18,28,8,2} +\DeclareElectronDistribution{67}{2,8,18,29,8,2} +\DeclareElectronDistribution{68}{2,8,18,30,8,2} +\DeclareElectronDistribution{69}{2,8,18,31,8,2} +\DeclareElectronDistribution{70}{2,8,18,32,8,2} +\DeclareElectronDistribution{71}{2,8,18,32,9,2} +\DeclareElectronDistribution{72}{2,8,18,32,10,2} +\DeclareElectronDistribution{73}{2,8,18,32,11,2} +\DeclareElectronDistribution{74}{2,8,18,32,12,2} +\DeclareElectronDistribution{75}{2,8,18,32,13,2} +\DeclareElectronDistribution{76}{2,8,18,32,14,2} +\DeclareElectronDistribution{77}{2,8,18,32,15,2} +\DeclareElectronDistribution{78}{2,8,18,32,17,1} +\DeclareElectronDistribution{79}{2,8,18,32,18,1} +\DeclareElectronDistribution{80}{2,8,18,32,18,2} +\DeclareElectronDistribution{81}{2,8,18,32,18,3} +\DeclareElectronDistribution{82}{2,8,18,32,18,4} +\DeclareElectronDistribution{83}{2,8,18,32,18,5} +\DeclareElectronDistribution{84}{2,8,18,32,18,6} +\DeclareElectronDistribution{85}{2,8,18,32,18,7} +\DeclareElectronDistribution{86}{2,8,18,32,18,8} +% period 7 +\DeclareElectronDistribution{87}{2,8,18,32,18,8,1} +\DeclareElectronDistribution{88}{2,8,18,32,18,8,2} +\DeclareElectronDistribution{89}{2,8,18,32,18,9,2} +\DeclareElectronDistribution{90}{2,8,18,32,18,10,2} +\DeclareElectronDistribution{91}{2,8,18,32,20,9,2} +\DeclareElectronDistribution{92}{2,8,18,32,21,9,2} +\DeclareElectronDistribution{93}{2,8,18,32,22,9,2} +\DeclareElectronDistribution{94}{2,8,18,32,24,8,2} +\DeclareElectronDistribution{95}{2,8,18,32,25,8,2} +\DeclareElectronDistribution{96}{2,8,18,32,25,9,2} +\DeclareElectronDistribution{97}{2,8,18,32,27,8,2} +\DeclareElectronDistribution{98}{2,8,18,32,28,8,2} +\DeclareElectronDistribution{99}{2,8,18,32,29,8,2} +\DeclareElectronDistribution{100}{2,8,18,32,30,8,2} +\DeclareElectronDistribution{101}{2,8,18,32,31,8,2} +\DeclareElectronDistribution{102}{2,8,18,32,32,8,2} +\DeclareElectronDistribution{103}{2,8,18,32,32,9,2} +\DeclareElectronDistribution{104}{2,8,18,32,32,10,2} +\DeclareElectronDistribution{105}{2,8,18,32,32,11,2} +\DeclareElectronDistribution{106}{2,8,18,32,32,12,2} +\DeclareElectronDistribution{107}{2,8,18,32,32,13,2} +\DeclareElectronDistribution{108}{2,8,18,32,32,14,2} +\DeclareElectronDistribution{109}{2,8,18,32,32,15,2} +\DeclareElectronDistribution{110}{2,8,18,32,32,17,1} +\DeclareElectronDistribution{111}{2,8,18,32,32,18,1} +\DeclareElectronDistribution{112}{2,8,18,32,32,18,2} % -------------------------------------------------------------------------- -% options -\def\@bohr@name@options{} -\def\@bohr@write@atom#1{#1} -\def\@bohr@nucleus@radius{1em} -\def\@bohr@electron@options{blue!50!black!50} -\def\@bohr@electron@radius{1.5pt} -\def\@bohr@shell@dist{1em} -\def\@bohr@nucleus@options{draw=black!80,fill=black!10,opacity=.25} -\def\@bohr@shell@options{draw=blue!75,thin} - -\newbool{bohr@insert@symbol} -\newbool{bohr@insert@number} -\newbool{bohr@german} - -\def\@bohr@insert@symbol#1#2{% - \ifbool{bohr@insert@symbol} - {\ifblank{#2}{\@bohr@get@atom@symbol{#1}}{\@bohr@write@atom{#2}}} - {\@bohr@write@atom{#2}}} - -\pgfkeys{ - bohr/.cd, - insert-symbol/.is if = bohr@insert@symbol , - insert-number/.is if = bohr@insert@number , - insert-missing/.is choice, - insert-missing/true/.code = - \booltrue{bohr@insert@symbol}\booltrue{bohr@insert@number} , - insert-missing/false/.code = - \boolfalse{bohr@insert@symbol}\boolfalse{bohr@insert@number} , - insert-missing/.default = true , - atom-style/.code = \def\@bohr@write@atom{#1} , - name-options-set/.code = \def\@bohr@name@options{#1} , - name-options-add/.code = - \expandafter\def\expandafter\@bohr@name@options\expandafter{\@bohr@name@options,#1} , - nucleus-radius/.code = \def\@bohr@nucleus@radius{#1} , - nucleus-options-set/.code = \def\@bohr@nucleus@options{#1} , - nucleus-options-add/.code = - \expandafter\def\expandafter\@bohr@nucleus@options\expandafter{\@bohr@nucleus@options,#1} , - electron-radius/.code = \def\@bohr@electron@radius{#1} , - electron-options-set/.code = \def\@bohr@electron@options{#1} , - electron-options-add/.code = - \expandafter\def\expandafter\@bohr@electron@options\expandafter{\@bohr@electron@options,#1} , - shell-dist/.code = \def\@bohr@shell@dist{#1} , - shell-options-set/.code = \def\@bohr@shell@options{#1} , - shell-options-add/.code = - \expandafter\def\expandafter\@bohr@shell@options\expandafter{\@bohr@shell@options,#1} , - german/.is if = bohr@german , - ngerman/.is if = bohr@german +% extandable language settings +\RequirePackage{translations} +\AfterEndPreamble{ + % this will load a file `bohr_elements_<lang>.def', <lang> is a + % `translations' base language + % currently only German and English are available, English being the + % fallback; other languages are added by providing the corresponding file + \ifdef\@bohr@language + {\edef\@bohr@language{\@trnslt@language{\@bohr@language}}} + {\def\@bohr@language{\@trnslt@language{\@trnslt@current@language}}} + \InputIfFileExists + {bohr_elements_\@bohr@language.def} + {} + {\input{bohr_elements_english.def}} } -\newrobustcmd\setbohr[1]{\pgfqkeys{/bohr}{#1}} - -\ProcessPgfOptions* \endinput % HISTORY @@ -465,4 +681,9 @@ - added the commands \elementname and \elementsymbol with language support German and English - improved error checking -2012/12/30 v0.2c - bug fixes in error checking
\ No newline at end of file +2012/12/30 v0.2c - bug fixes in error checking +2013/07/25 v0.2d - bug fix in warning message + - added missing \@bohr@write@atom to \@bohr@insert@symbol + - extended language support, added french element names + - corrected name of Praseodynium +2013/11/?? v0.3 - draw shell electrons according to main quantum number diff --git a/Master/texmf-dist/tex/latex/bohr/bohr_elements_english.def b/Master/texmf-dist/tex/latex/bohr/bohr_elements_english.def index 6ac2f88f988..e5fb902ed90 100644 --- a/Master/texmf-dist/tex/latex/bohr/bohr_elements_english.def +++ b/Master/texmf-dist/tex/latex/bohr/bohr_elements_english.def @@ -56,7 +56,7 @@ \DeclareAtomName{56}{Barium} \DeclareAtomName{57}{Lanthanum} \DeclareAtomName{58}{Cerium} -\DeclareAtomName{59}{Praesodymium} +\DeclareAtomName{59}{Praseodymium} \DeclareAtomName{60}{Neodymium} \DeclareAtomName{61}{Promethium} \DeclareAtomName{62}{Samarium} @@ -111,4 +111,4 @@ \DeclareAtomName{111}{Roentgenium} \DeclareAtomName{112}{Copernicium} -\endinput
\ No newline at end of file +\endinput diff --git a/Master/texmf-dist/tex/latex/bohr/bohr_elements_french.def b/Master/texmf-dist/tex/latex/bohr/bohr_elements_french.def new file mode 100644 index 00000000000..b729ff7bb8b --- /dev/null +++ b/Master/texmf-dist/tex/latex/bohr/bohr_elements_french.def @@ -0,0 +1,114 @@ +\DeclareAtomName[Hydrogene]{1}{Hydrog\`ene} +\DeclareAtomName[Helium]{2}{H\'elium} +\DeclareAtomName{3}{Lithium} +\DeclareAtomName[Beryllium]{4}{B\'eryllium} +\DeclareAtomName{5}{Bore} +\DeclareAtomName{6}{Carbone} +\DeclareAtomName{7}{Azote} +\DeclareAtomName[Oxygene]{8}{Oxyg\`ene} +\DeclareAtomName{9}{Fluor} +\DeclareAtomName[Neon]{10}{N\'eon} +\DeclareAtomName{11}{Sodium} +\DeclareAtomName[Magnesium]{12}{Magn\'esium} +\DeclareAtomName{13}{Aluminium} +\DeclareAtomName{14}{Silicium} +\DeclareAtomName{15}{Phosphore} +\DeclareAtomName{16}{Soufre} +\DeclareAtomName{17}{Chlor} +\DeclareAtomName{18}{Argon} +\DeclareAtomName{19}{Potassium} +\DeclareAtomName{20}{Calcium} +\DeclareAtomName{21}{Scandium} +\DeclareAtomName{22}{Titane} +\DeclareAtomName{23}{Vanadium} +\DeclareAtomName{24}{Chrome} +\DeclareAtomName[Manganese]{25}{Mangan\`ese} +\DeclareAtomName{26}{Fer} +\DeclareAtomName{27}{Cobalt} +\DeclareAtomName{28}{Nickel} +\DeclareAtomName{29}{Cuivre} +\DeclareAtomName{30}{Zinc} +\DeclareAtomName{31}{Gallium} +\DeclareAtomName{32}{Germanium} +\DeclareAtomName{33}{Arsenic} +\DeclareAtomName[Selenium]{34}{S\'el\'enium} +\DeclareAtomName{35}{Brome} +\DeclareAtomName{36}{Krypton} +\DeclareAtomName{37}{Rubidium} +\DeclareAtomName{38}{Strontium} +\DeclareAtomName{39}{Yttrium} +\DeclareAtomName{40}{Zirconium} +\DeclareAtomName{41}{Niobium} +\DeclareAtomName[Molybdene]{42}{Molybd\`en} +\DeclareAtomName[Technetium]{43}{Techn\'etium} +\DeclareAtomName[Ruthenium]{44}{Ruth\'enium} +\DeclareAtomName{45}{Rhodium} +\DeclareAtomName{46}{Palladium} +\DeclareAtomName{47}{Argent} +\DeclareAtomName{48}{Cadmium} +\DeclareAtomName{49}{Indium} +\DeclareAtomName{50}{Etain} +\DeclareAtomName{51}{Antimoine} +\DeclareAtomName{52}{Tellure} +\DeclareAtomName{53}{Iode} +\DeclareAtomName[Xenon]{54}{X\'enon} +\DeclareAtomName[Cesium]{55}{C\'esium} +\DeclareAtomName{56}{Baryum} +\DeclareAtomName{57}{Lanthane} +\DeclareAtomName[Cerium]{58}{C\'erium} +\DeclareAtomName[Praseodyme]{59}{Pras\'eodyme} +\DeclareAtomName[Neodyme]{60}{N\'eodyme} +\DeclareAtomName{61}{Prom\'ethium} +\DeclareAtomName{62}{Samarium} +\DeclareAtomName{63}{Europium} +\DeclareAtomName{64}{Gadolinium} +\DeclareAtomName{65}{Terbium} +\DeclareAtomName{66}{Dysprosium} +\DeclareAtomName{67}{Holmium} +\DeclareAtomName{68}{Erbium} +\DeclareAtomName{69}{Thulium} +\DeclareAtomName{70}{Ytterbium} +\DeclareAtomName[Luthetium]{71}{Lut\'etium} +\DeclareAtomName{72}{Hafnium} +\DeclareAtomName{73}{Tantale} +\DeclareAtomName[Tungstene]{74}{Tungst\`ene} +\DeclareAtomName[Rhenium]{75}{Rh\'enium} +\DeclareAtomName{76}{Osmium} +\DeclareAtomName{77}{Iridium} +\DeclareAtomName{78}{Platine} +\DeclareAtomName{79}{Or} +\DeclareAtomName{80}{Mercure} +\DeclareAtomName{81}{Thallium} +\DeclareAtomName{82}{Plomb} +\DeclareAtomName{83}{Bismuth} +\DeclareAtomName{84}{Polonium} +\DeclareAtomName{85}{Astate} +\DeclareAtomName{86}{Radon} +\DeclareAtomName{87}{Francium} +\DeclareAtomName{88}{Radium} +\DeclareAtomName{89}{Actinium} +\DeclareAtomName{90}{Thorium} +\DeclareAtomName{91}{Protactinium} +\DeclareAtomName{92}{Uranium} +\DeclareAtomName{93}{Neptunium} +\DeclareAtomName{94}{Plutonium} +\DeclareAtomName[Americium]{95}{Am\'ericium} +\DeclareAtomName{96}{Curium} +\DeclareAtomName[Berkelium]{97}{Berk\'elium} +\DeclareAtomName{98}{Californium} +\DeclareAtomName{99}{Einsteinium} +\DeclareAtomName{100}{Fermium} +\DeclareAtomName[Mendelevium]{101}{Mendel\'evium} +\DeclareAtomName[Nobelium]{102}{Nob\'elium} +\DeclareAtomName{103}{Lawrencium} +\DeclareAtomName{104}{Rutherfordium} +\DeclareAtomName{105}{Dubnium} +\DeclareAtomName{106}{Seaborgium} +\DeclareAtomName{107}{Bohrium} +\DeclareAtomName{108}{Hassium} +\DeclareAtomName{109}{Meitnerium} +\DeclareAtomName{110}{Darmstadtium} +\DeclareAtomName{111}{Roentgenium} +\DeclareAtomName{112}{Copernicium} + +\endinput diff --git a/Master/texmf-dist/tex/latex/bohr/bohr_elements_german.def b/Master/texmf-dist/tex/latex/bohr/bohr_elements_german.def index e6b451ad0bb..c9af43eaa86 100644 --- a/Master/texmf-dist/tex/latex/bohr/bohr_elements_german.def +++ b/Master/texmf-dist/tex/latex/bohr/bohr_elements_german.def @@ -56,7 +56,7 @@ \DeclareAtomName{56}{Barium} \DeclareAtomName{57}{Lanthan} \DeclareAtomName{58}{Cer} -\DeclareAtomName{59}{Praesodym} +\DeclareAtomName{59}{Praseodym} \DeclareAtomName{60}{Neodym} \DeclareAtomName{61}{Promethium} \DeclareAtomName{62}{Samarium} @@ -111,4 +111,4 @@ \DeclareAtomName{111}{Roentgenium} \DeclareAtomName{112}{Copernicium} -\endinput
\ No newline at end of file +\endinput |