\documentclass[a4paper,10pt,oneside,openany,fleqno]{article} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \usepackage{pgf-PeriodicTable} \usepgfPTlibrary{colorschemes}% \input{manualfiles/pgfPTmanual.macros.tex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \title{Manual for pgf-PeriodicTable \pgfPTversion} \author{Hugo Gomes\\ \texttt{hugo.parelho@gmail.com}} \date{\today} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document}% \usefont{T1}{verdana}{m}{n}% \begin{titlepage} \vspace{\stretch{1}}% \maketitle\thispagestyle{empty}% \vspace{-1cm}% \makebox[\linewidth][c]{\scalebox{.6}{\pgfPT[show title=false,show legend=false]}}% \\ [6pt]\makebox[\linewidth][c]{\bfseries\footnotesize\textsf{\pgfPTMmacro{pgfPT}[show title=false,show legend=false]}}% \vspace{\stretch{6}} \makebox[\linewidth][c]{\tikz{% \node[text width=.9\linewidth+.5cm,text justified,draw=blue!10!black,rounded corners=10pt,fill=blue!5] at (0,0) {\color{blue!10!black} \begin{abstract} \noindent The purpose of this package is to provide the Periodic Table of Elements in a simple way. It relies on pgf/\txttikz{} to offer a full or partial periodic table with a variety of options and displaying the desired data. The data available, from all the actual 118 elements, is: atomic number, element name, chemical symbol, relative atomic mass, standard relative atomic mass, radioactivity, atomic radius (empirycal), covalente radius, ionic radius, first ionization energy, electronegati\-vity (Pauling), electroaffinity, oxidation states, melting point (in Kelvin and Celsius degrees), boiling point (in Kelvin and Celsius degrees), electron distribuition, electronic configuration (increasing $n$ and increasing $n+\ell$), density, specific heat capacity, thermal condutivity, lattice structure, lattice constants (a, b, c and c/a ratio), discovery year, discovery country and visible range spectral lines. It is possible to get the Periodic Table in different languages: English, French, German, Portuguese (from Portugal and from Brazil), Spanish, Italian and translations provided by user contributions -- currently in Dutch only. \\ [6pt] \end{abstract} };}} \vspace{\stretch{3}} \end{titlepage} \newpage% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \pagestyle{empty}% \pdfbookmark[1]{Table of contents}{pdfContents}% \tableofcontents% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \newpage\setcounter{page}{1}% \pagestyle{pgfPTManual}% \ \vfill% \section{Getting started} \subsection{Installation} \noindent \pack{} is placed under the terms of the \textrm{\LaTeX} Project Public License, version 1.3 or later (http://www.latex-project.org/lppl.txt). \pack{} loads and requires the \href{https://www.ctan.org/pkg/pgf}{\txttikz{}} and \href{https://ctan.org/pkg/fontenc}{fontenc} or \href{https://ctan.org/pkg/fontspec}{fontspec} (at least v2.7h -- 2020/02/03) packages. \\ [6pt]You need to put the package files (pgf-PeriodicTable.sty \&\ \textit{friends}) in a location where \textrm{PDF\LaTeX}, \textrm{Lua\LaTeX} or \textrm{Xe\LaTeX} can find them. According to the TDS conventions this may be a subdirectory named \textit{tex/latex/pgf-PeriodicTable/} or \textit{tex/latex/misc/} in your (site specific) installation tree (insert your appropriate directory delimiter instead of /, if needed). \subsection{Package loading and options} If you are using \textrm{PDF\LaTeX}, \textrm{Lua\LaTeX} or \textrm{Xe\LaTeX} you can just simply include the style file without any option via the \texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}} command, \texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}\textcolor{purple!70!black}{\{}\textcolor{blue!70!black}{pgf-PeriodicTable}\textcolor{purple!40!black}{\}}} \\ [6pt]It can also be loaded with a comma separated list of \textit{options} to select the desired default language or to use Devanagari or Mandarin numerals in the Atomic Number, Periods and/or Groups. \subsubsection{Language Option} There are six \textit{built-in }languages -- English, French, German, Portuguese (from Portugal and Brazil), Spanish and Italian. The default language used in the package may be selected at package loading: \\ [3pt]\texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}\textcolor{blue!70!black}{[}\textcolor{brown!60!black}{language flag}\textcolor{blue!70!black}{]}\textcolor{purple!70!black}{\{}\textcolor{blue!70!black}{pgf-PeriodicTable}\textcolor{purple!40!black}{\}}} \\ [6pt]\textit{The \textcolor{brown!60!black}{language flags} available are:} \vspace{2pt}\hrule\vspace{4pt} \begin{minipage}[t]{.5\linewidth} \begin{itemize} \item[$\checkmark$]\textbf{en} for English (default), \item[$\checkmark$]\textbf{fr} for French, \item[$\checkmark$]\textbf{de} for German, \item[$\checkmark$]\textbf{pt} for Portuguese (Portugal), \end{itemize}\end{minipage}\begin{minipage}[t]{.5\linewidth} \begin{itemize} \item[$\checkmark$]\textbf{br} for Portuguese (Brazil), \item[$\checkmark$]\textbf{es} for Spanish and \item[$\checkmark$]\textbf{it} for Italian. \end{itemize}\end{minipage} \vspace{4pt}\hrule\vspace{12pt} A \textit{user language} can also be chosen as default language loading the package with the following option syntax: \\ [3pt]\texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}\textcolor{blue!70!black}{[}\textcolor{brown!60!black}{userlang=}\textcolor{blue!70!black}{]}\textcolor{purple!70!black}{\{}\textcolor{blue!70!black}{pgf-PeriodicTable}\textcolor{purple!40!black}{\}}} \\ [6pt]In the present version only a Dutch translation is available. It can be loaded by: \\ [3pt]\texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}\textcolor{blue!70!black}{[}\textcolor{brown!60!black}{userlang=nl}% \textcolor{blue!70!black}{]}\textcolor{purple!70!black}{\{}\textcolor{blue!70!black}{pgf-PeriodicTable}\textcolor{purple!40!black}{\}}} \\ [6pt]\tikz{\node[text width=\linewidth-6mm,draw=green!70,rounded corners=2pt,fill=black!10!green!10,inner sep=3mm] {Anyone who wishes to contribute with translations for use in this package can go to the \tikz[baseline=(b.base)]{\node[inner sep=0pt] (a) {\includegraphics[height=10pt]{manualfiles/pgfPTgithub-mark.pdf}}; \node[right,inner sep=0pt,xshift=.1em] (b) at (a.east) {\href{https://github.com/HugoPGomes/pgf-periodictable}{pgf-periodictable}};} project page.};} \\ [6pt]\textbf{Note that the \textit{built-in} languages are always available for the \textcolor{red!60!black}{languages} option of the \bs{pgfPT} command, but the \textit{user language} is only available if loaded with the package.} \subsubsection{Devanagari numerals} It is possible to get some numbers in the Periodic Table with Devanagari numerals: the atomic number and the numeration of periods and groups. To get this feature enabled the package must be loaded with the option \textit{numerals} set to \textbf{dvn}: \\ [3pt]\texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}\textcolor{blue!70!black}{[}\textcolor{brown!60!black}{numerals=dvn}% \textcolor{blue!70!black}{]}\textcolor{purple!70!black}{\{}\textcolor{blue!70!black}{pgf-PeriodicTable}\textcolor{purple!40!black}{\}}} \\ [6pt]\tikz{\node[text width=\linewidth-6mm,draw=orange!70,rounded corners=2pt,fill=black!10!orange!10,inner sep=3mm] { This option requires the \textrm{Xe\LaTeX} engine to typeset the document.};} \\ [10pt]\tikz{\node[text width=\linewidth-8pt,inner xsep=4pt,align=left,fill=black!10,rounded corners=2pt] % {\small\textcolor{black!50}{\%\ \string\usepackage[numerals=dvn]\{pgf-PeriodicTable\}}};}% \\ [-4pt]\pgfPTMmacrobox{pgfPT}[]% \\ [10pt]\makebox[\linewidth][c]{\scalebox{.6}{\includegraphics{manualfiles/pgfPTnumDeva.pdf}}}% \\ [3pt]\pgfPTMline \\ [6pt]It is also possible to load a font for the Devanagari numerals using the following command: \index{COMMANDS@\textbf{COMMANDS}!\textbackslash pgfPTdvnfont}% \\ [3pt]\bs{pgfPTdvnfont}\lp\red{font options}\rp\lb\red{font name}\rb \\ [3pt]The default font is \textit{Eczar}. \vfill \subsubsection{Mandarin numerals} To get some numbers of the Periodic Table with Mandarin numerals (the atomic number and the numeration of periods and groups) the package must be loaded with the above option \textit{numerals} set to \textbf{zh}: \\ [3pt]\texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}\textcolor{blue!70!black}{[}\textcolor{brown!60!black}{numerals=zh}% \textcolor{blue!70!black}{]}\textcolor{purple!70!black}{\{}\textcolor{blue!70!black}{pgf-PeriodicTable}\textcolor{purple!40!black}{\}}} \\ [6pt]\tikz{\node[text width=\linewidth-6mm,draw=orange!70,rounded corners=2pt,fill=black!10!orange!10,inner sep=3mm] { This option works with the \textrm{Xe\LaTeX} and \textrm{Lua\LaTeX} engines to typeset the document and requires the \texttt{\large zhnumber} package, which is automatically loaded.};} \newpage%\\ [10pt] \tikz{\node[text width=\linewidth-8pt,inner xsep=4pt,align=left,fill=black!10,rounded corners=2pt] % {\small\textcolor{black!50}{\%\ \string\usepackage[numerals=zh]\{pgf-PeriodicTable\}}};}% \\ [-4pt]\pgfPTMmacrobox{pgfPT}[]% \\ [10pt]\makebox[\linewidth][c]{\scalebox{.6}{\includegraphics{manualfiles/pgfPTnumMand1.pdf}}}% \\ [3pt]\pgfPTMline \\ [6pt]As with the Devanagari numerals, the following command loads the specified font for the Mandarin numerals: \index{COMMANDS@\textbf{COMMANDS}!\textbackslash pgfPTzhfont}% \\ [3pt]\bs{pgfPTzhfont}\lp\red{font options}\rp\lb\red{font name}\rb \\ [3pt]The default font is \textit{SimSun} loaded with the \textit{AutoFakeBold=4} option. \\ [6pt]It is also possible to enable or disable the numbers shown in Mandarin with the command: \\ [3pt]\bs{pgfPTzhnumber}\lp\red{}\rp\lb\red{comma separated list}\rb \\ [3pt] The list can have \red{Z} for the atomic number, \red{per} for the period numbers and \red{gr} for the group numbers. At package loading, with this option, they are set to \red{true}. \index{COMMANDS@\textbf{COMMANDS}!\textbackslash pgfPTzhnumber}% \\ [10pt]\tikz{\node[text width=\linewidth-8pt,inner xsep=4pt,align=left,fill=black!10,rounded corners=2pt] % {\small\textcolor{black!50}{\%\ \string\usepackage[numerals=zh]\{pgf-PeriodicTable\}}};}% \\ [-4pt]\tikz{\node[text width=\linewidth-8pt,inner xsep=4pt,align=center,fill=black!10,rounded corners=2pt] % {\bs{pgfPTzhnumber}\lp\red{false}\rp\lb\red{Z}\rb};}% \\ [-4pt]\pgfPTMmacrobox{pgfPT}[Z list={1,...,36}]% \\ [10pt]\makebox[\linewidth][c]{\scalebox{.6}{\includegraphics{manualfiles/pgfPTnumMand2.pdf}}}% \\ [3pt]\pgfPTMline \subsection{Interaction with other packages} \subsubsection{fontspec} To correctly set the font in each cell contents the command \bs{fontspec} must be used. For example if you want to use \textit{Arial} for the \red{name font}, it must be set using \red{font name=\bs{fontspec}\lb Arial\rb\bs{selectfont}}.\\ All other font selection commands, \eg, \bs{large}, \mbox{\bs{itshape}}, are used as usual. For example if you want to use \textit{Arial}\hfil\ in\hfil\ \textit{large}\hfil\ size\hfil\ and\hfil\ \textit{bold}\hfil\ weight\hfil\ for\hfil\ the \red{name font}, then you type \\ \makebox[\linewidth][s]{\red{font name=\bs{large}\bs{bfseries}\bs{fontspec}\lb Arial\rb\bs{selectfont}}\hfil\ or\hfil\ \red{font name=\bs{fontspec}\lb Arial\rb}} \\ \bs{large}\bs{bfseries}\bs{selectfont}. \subsubsection{ragged2e} Using \texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}\textcolor{blue!70!black}{[}\textcolor{brown!60!black}{document}% \textcolor{blue!70!black}{]}\textcolor{purple!70!black}{\{}\textcolor{blue!70!black}{ragged2e}\textcolor{purple!40!black}{\}}} and \texttt{\large\textcolor{green!40!black}{\textbackslash usepackage}% \textcolor{purple!70!black}{\{}\textcolor{blue!70!black}{pgf-PeriodicTable}\textcolor{purple!40!black}{\}}} together, the Periodic Table will be completely fractured and out of the page. \\ [6pt]\textit{Solution}: \vspace{4pt}\hrule\vspace{4pt}Use a local group: \{\bs{justifying}\bs{pgfPT}\}\vspace{4pt}\hrule \vfill\vfill\vfill\newpage\ \vfill% \section{The data} The data available in \pack{} was mainly compiled with selected and filtered data from Wikipedia, taken from November 2021 to July 2022. \\ [12pt]\header \\ [-1pt]\linhaimpar{Ar}{Relative Atomic Mass}{}{(Wikidata @09/jan/2022)}% \\ [-1pt]\linhapar{Arstar}{Standard Relative\newline Atomic Mass}{}{ STANDARD ATOMIC WEIGHTS 2021, % Commission on Isotopic Abundances and Atomic Weights,\newline\bfseries\textsf{\textcopyright} CIAAW, 2007--2022% \newline(\href{https://ciaaw.org/impressum.htm}{https://ciaaw.org/impressum.htm})}% \\ [-1pt]\linhaimpar{radio}{Radioactivity}{}{(gperiodic-3.0.3, Dec 26 2018)}% \\ [-1pt]\linhapar{R}{Atomic Radius}{$\mathsf{pm}$}{Calculated (Wikidata @04/jul/2022)}% \\ [-1pt]\linhaimpar{Rcov}{Covalente Radius}{$\mathsf{pm}$}{Single bond, Wikidata @04/jul/2022)}% \\ [-1pt]\linhapar{Rion}{Ionic Radius}{$\mathsf{pm}$}{(Wikidata @04/jul/2022)}% \\ [-1pt]\linhaimpar{Ei}{First Ionization Energy}{$\mathsf{kJ\cdot mol^{-1}}$}{(Wikidata @04/jul/2022)}% \\ [-1pt]\linhapar{eneg}{Electronegativity\newline (Pauling)}{}{(Wikidata @04/jul/2022)}% \\ [-1pt]\linhaimpar{eaff}{Electroaffinity}{$\mathsf{kJ\cdot mol^{-1}}$}{(Wikidata @04/jul/2022)}% \\ [-1pt]\linhapar{O}{Oxidation States}{}{(Wikidata @09/jan/2022)}% \\ [-1pt]\linhaimpar{Tmelt}{Melting Point}{$\mathsf{K}$}{at standard pressure (Wikidata @21/dez/2021)}% \\ [-1pt]\linhapar{TmeltC}{Melting Point}{$\mathsf{^oC}$}{at standard pressure (Wikidata @21/dez/2021)}% \\ [-1pt]\linhaimpar{Tboil}{Boiling Point}{$\mathsf{K}$}{at standard pressure (Wikidata @21/dez/2021)}% \\ [-1pt]\linhapar{TboilC}{Boiling Point}{$\mathsf{^oC}$}{at standard pressure (Wikidata @21/dez/2021)}% \\ [-1pt]\linhaimpar{eDist}{Electron Distribution}{}{(Wikidata @01/nov/2021)}% \\ [-1pt]\linhapar{eConfign}{Electronic Configuration (increasing n)}{}{(Wikidata @01/nov/2021)}% \\ [-1pt]\linhaimpar{eConfignl}{Electronic Configuration (increasing $\mathsf{n+\ell}$)}{}{(Wikidata @01/nov/2021)}% \\ [-1pt]\linhapar{d}{Density}{$\mathsf{g\cdot dm^{-3}}$ {\tiny for gases}\newline$\mathsf{g\cdot cm^{-3}}$ {\tiny all other physical states}}{physical state at $\mathsf{25^oC, 1\,atm}$ (Wikidata @01/nov/2021)}% \\ [-1pt]\linhaimpar{Cp}{Specific heat capacity}{$\mathsf{J\cdot mol^{-1}\cdot K^{-1}}$}{at $\mathsf{25^oC}$ and $\mathsf{100\,kPa}$ (Wikidata @20/nov/2021)}% \\ [-1pt]\linhapar{kT}{Thermal Conductivity}{$\mathsf{W\cdot m^{-1}\cdot K^{-1}}$}{at $\mathsf{25^oC}$ (Wikidata @21/nov/2021)}% \\ [-1pt]\linhaimpar{ls}{Lattice Structure}{}{(Wikidata @20/dez/2021 and \href{http://wwwhomes.uni-bielefeld.de/achim/ele_structures.html}{University of Bielefeld})}% \\ [-1pt]\linhapar{lsa}{Lattice constant: a}{$\mathsf{pm}$}{(University of Bielefeld @21/dez/2021)}% \\ [-1pt]\linhaimpar{lsb}{Lattice constant: b}{$\mathsf{pm}$}{(University of Bielefeld @21/dez/2021)}% \\ [-1pt]\linhapar{lsc}{Lattice constant: c}{$\mathsf{pm}$}{(University of Bielefeld @21/dez/2021)}% \\ [-1pt]\linhaimpar{lsca}{Lattice c/a ratio}{}{Calculated from available data and rounded to two digits}% \\ [-1pt]\linhapar{DiscY}{Discover Year}{}{(Wikidata @22/dez/2021)}% \\ [-1pt]\linhaimpar{DiscC}{Discover Country}{}{(Wikidata @22/dez/2021)}% \\ [-1pt]\linhapar{spectra}{Visible range spectral lines}{}{Elements spectrum made with \textcolor{blue!50!black}{\textbackslash pgfspectra}.\newline See the \footnotesize\href{https://ctan.org/pkg/pgf-spectra}{\textsf{pgf-spectra}}\scriptsize\ manual for more details}% \\ [12pt]The utilization of the \textit{acronyms} will be explained in \hyperlink{secBuildCell}{Designing cells with \textbackslash pgfPTbuildcell}. \vfill\vfill\vfill\newpage %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \label{file:commands}% \input{manualfiles/pgf-PeriodicTableManual_commands.tex}% \newpage% \def\tmpSection{\bs{pgfPT}}% \section{\texorpdfstring{Options for \tmpSection: creating a «Periodic Table»}{Options for \textbackslash pgfPT: creating a «Periodic Table»}} \hypertarget{OPTIONS}{For the commands} \pgfPTMmacro{pgfPT}[] and \pgfPTMmacro{pgfPTstyle}[] there are a set of options available to draw the Periodic Table or any portion of the Periodic Table, as described below. \\ [6pt]\tikz{\node[text width=\linewidth-6mm,draw=green!70,rounded corners=2pt,fill=black!10!green!10,inner sep=3mm] {%,text justified \color{green!40!black}The list of options is a comma separated list of any of the following elements: {\small\begin{itemize} \item[$\rightsquigarrow$] a \sq{\red{key}} or a \sq{\red{key=value}} pair, \item[\ding{252}] a \sq{\red{style}} or a \sq{\red{style=value}} pair, \item[\ding{252}] a \textit{pseudo style} with a proper syntax: \sq{\red{style=\{key 1=value 1, key 2=value 2, \myldots\ , key n=value n\}}}, where none of the \textit{\sq{\red{keys}}} are mandatory. \end{itemize}} };} \\ [3pt]The options \textit{can be divided} in two subsets, one that affects the \textit{appearance} of the \textit{entire} Periodic Table, the other that concerns the \textit{contents} of each cell of the Periodic Table. \subsection{\texorpdfstring{$\maltese$ Periodic Table options: keys, styles and \itshape pseudo styles}{Periodic Table options}} The following options and styles are used to \textit{control} the Periodic Table \textit{as a whole} in various aspects, such as the \red{cell width} or \red{cell height}, which elements are displayed (\red{Z list}), whether the title or legend are shown -- \red{show title} or \red{show legend} -- among others. \label{file:generallayout}% \input{manualfiles/pgf-PeriodicTableManual_generallayout.tex}% \label{file:TitleLegend}% \input{manualfiles/pgf-PeriodicTableManual_TitleLegend.tex}% \label{file:periodgroup}% \input{manualfiles/pgf-PeriodicTableManual_periodgroup.tex}% \label{file:blocksfamilies}% \input{manualfiles/pgf-PeriodicTableManual_blocksfamilies.tex}% \newpage% \label{file:variations}% \input{manualfiles/pgf-PeriodicTableManual_variations.tex}% \newpage% \label{file:DarkMode}% \input{manualfiles/pgf-PeriodicTableManual_DarkMode.tex}% \label{file:exerciselayout}% \input{manualfiles/pgf-PeriodicTableManual_exerciselayout.tex}% \subsection{\texorpdfstring{$\maltese$ Cell contents options: keys, styles and \itshape pseudo styles}{Cell contents options}} The following options and styles are used for customizing the contents available in each individual cell of the Periodic Table, like the \textit{fonts} or the \textit{colors} used in the shown contents. \label{file:Z}% \input{manualfiles/pgf-PeriodicTableManual_Z.tex}% \label{file:CS}% \input{manualfiles/pgf-PeriodicTableManual_CS.tex}% \label{file:name}% \input{manualfiles/pgf-PeriodicTableManual_name.tex}% \label{file:Ar}% \input{manualfiles/pgf-PeriodicTableManual_Ar.tex}% \label{file:density}% \input{manualfiles/pgf-PeriodicTableManual_density.tex}% \label{file:ls}% \input{manualfiles/pgf-PeriodicTableManual_ls.tex}% \label{file:DiscY}% \input{manualfiles/pgf-PeriodicTableManual_DiscY.tex}% \label{file:eDist}% \input{manualfiles/pgf-PeriodicTableManual_eDist.tex}% \label{file:OtherCont}% \input{manualfiles/pgf-PeriodicTableManual_OtherCont.tex}% \newpage% \label{sec:pgfPTbuildcell} \def\tmpSection{\bs{pgfPTbuildcell}}% \hypertarget{secBuildCell}{}% \section{\texorpdfstring{Designing cells with \tmpSection}{Designing cells with \textbackslash pgfPTbuildcell}} \input{manualfiles/pgf-PeriodicTableManual_buildCelll.tex}% \newpage% \section{\texorpdfstring{Designing color schemes}{Designing color schemes}} \label{file:DesignCS}% \input{manualfiles/pgf-PeriodicTableManual_DesignCS.tex}% \newpage\ \vspace{1.6cm}% \section{Libraries} In this part the \hypertarget{sec:lib}{library} packages are documented. They provide additional commands to extend the capabilities provided by this package out of the box. The libraries are not loaded by default since many users will not need them. \\ [1.6cm]% \input{manualfiles/pgf-PeriodicTableManual_libCS.tex}% \newpage% \section{A few more examples} \input{manualfiles/pgf-PeriodicTableManual_Examples.tex}% \newpage\small% \printindex% \end{document}