2

I am trying to make a package that fully implements ISO 80000-2 notation recommendations for use in a physics book I am planning to write. These recommendations call for sans serif letters to represent tensors, for which bold is perfect when using coordinate-free notation. Unicode easily accommodates this. However, in physics many tensors (particularly in electromagnetic theory) are represented by Greek letters. Non bold (which I believe is called medium weight...correct me if I am wrong) characters are typically used in tensor index notation, and Unicode doesn't officially provide them. This is problematic in physics because many tensors in electromagnetic theory (e.g. Levi-Civita, permittivity, permeability, susceptibility, polarizability) are notated with Greek letters and thus can't be accommodated by the ISO 80000-2 recommendations. I am not going to argue whether or not ISO 80000-2 is correct, or even necessary, mostly because my arguments will carry very little weight. I want to implement very internally consistent notation in my work as easily as possible, thus my question.

Thanks to David Carlisle I recently learned that the STIX Two Math font includes the otherwise missing characters in the Private Use Area. The mwe shows the admittedly clumsy way I am currently accessing the necessary glyphs. My question is whether or not there is a better way to do it what will work well with 'unicode-math.'

The MWE:

% !TEX program = lualatexmk
% !TEX encoding = UTF-8 Unicode

\documentclass{article}
\usepackage{geometry}
\usepackage{mathtools}
\usepackage{unicode-math}
\unimathsetup{math-style=ISO}
\unimathsetup{warnings-off={mathtools-colon,mathtools-overbracket}}
\setmathfont[Scale=MatchLowercase]
  {Latin Modern Math}    % default math font; better J

\setmathfont[Scale=MatchLowercase,range={"E17C-"E1F6}]{STIX Two Math}
\newfontfamily{\symsfgreek}{STIX Two Math}

% I don't understand why \text{...} is necessary.
\newcommand{\symsfupalpha}      {\text{\symsfgreek{^^^^e196}}}
\newcommand{\symsfupbeta}       {\text{\symsfgreek{^^^^e197}}}
\newcommand{\symsfupgamma}      {\text{\symsfgreek{^^^^e198}}}
\newcommand{\symsfupdelta}      {\text{\symsfgreek{^^^^e199}}}
\newcommand{\symsfupepsilon}    {\text{\symsfgreek{^^^^e1af}}}
\newcommand{\symsfupvarepsilon} {\text{\symsfgreek{^^^^e19a}}}
\newcommand{\symsfupzeta}       {\text{\symsfgreek{^^^^e19b}}}
\newcommand{\symsfupeta}        {\text{\symsfgreek{^^^^e19c}}}
\newcommand{\symsfuptheta}      {\text{\symsfgreek{^^^^e19d}}}
\newcommand{\symsfupvartheta}   {\text{\symsfgreek{^^^^e1b0}}}
\newcommand{\symsfupiota}       {\text{\symsfgreek{^^^^e19e}}}
\newcommand{\symsfupkappa}      {\text{\symsfgreek{^^^^e19f}}}
\newcommand{\symsfuplambda}     {\text{\symsfgreek{^^^^e1a0}}}
\newcommand{\symsfupmu}         {\text{\symsfgreek{^^^^e1a1}}}
\newcommand{\symsfupnu}         {\text{\symsfgreek{^^^^e1a2}}}
\newcommand{\symsfupxi}         {\text{\symsfgreek{^^^^e1a3}}}
\newcommand{\symsfupomicron}    {\text{\symsfgreek{^^^^e1a4}}}
\newcommand{\symsfuppi}         {\text{\symsfgreek{^^^^e1a5}}}
\newcommand{\symsfupvarpi}      {\text{\symsfgreek{^^^^e1b3}}}
\newcommand{\symsfuprho}        {\text{\symsfgreek{^^^^e1a6}}}
\newcommand{\symsfupvarrho}     {\text{\symsfgreek{^^^^e1b2}}}
\newcommand{\symsfupsigma}      {\text{\symsfgreek{^^^^e1a8}}}
\newcommand{\symsfupvarsigma}   {\text{\symsfgreek{^^^^e1a7}}}
\newcommand{\symsfuptau}        {\text{\symsfgreek{^^^^e1a9}}}
\newcommand{\symsfupupsilon}    {\text{\symsfgreek{^^^^e1aa}}}
\newcommand{\symsfupphi}        {\text{\symsfgreek{^^^^e1b1}}}
\newcommand{\symsfupvarphi}     {\text{\symsfgreek{^^^^e1ab}}}
\newcommand{\symsfupchi}        {\text{\symsfgreek{^^^^e1ac}}}
\newcommand{\symsfuppsi}        {\text{\symsfgreek{^^^^e1ad}}}
\newcommand{\symsfupomega}      {\text{\symsfgreek{^^^^e1ae}}}
\newcommand{\symsfupDelta}      {\text{\symsfgreek{^^^^e180}}}
\newcommand{\symsfupGamma}      {\text{\symsfgreek{^^^^e17f}}}
\newcommand{\symsfupTheta}      {\text{\symsfgreek{^^^^e18e}}}
\newcommand{\symsfupLambda}     {\text{\symsfgreek{^^^^e187}}}
\newcommand{\symsfupXi}         {\text{\symsfgreek{^^^^e18a}}}
\newcommand{\symsfupPi}         {\text{\symsfgreek{^^^^e18c}}}
\newcommand{\symsfupSigma}      {\text{\symsfgreek{^^^^e18f}}}
\newcommand{\symsfupUpsilon}    {\text{\symsfgreek{^^^^e191}}}
\newcommand{\symsfupPhi}        {\text{\symsfgreek{^^^^e192}}}
\newcommand{\symsfupPsi}        {\text{\symsfgreek{^^^^e194}}}
\newcommand{\symsfupOmega}      {\text{\symsfgreek{^^^^e195}}}

\newcommand{\symsfitalpha}      {\text{\symsfgreek{^^^^e1d8}}}
\newcommand{\symsfitbeta}       {\text{\symsfgreek{^^^^e1d9}}}
\newcommand{\symsfitgamma}      {\text{\symsfgreek{^^^^e1da}}}
\newcommand{\symsfitdelta}      {\text{\symsfgreek{^^^^e1db}}}
\newcommand{\symsfitepsilon}    {\text{\symsfgreek{^^^^e1f1}}}
\newcommand{\symsfitvarepsilon} {\text{\symsfgreek{^^^^e1dc}}}
\newcommand{\symsfitzeta}       {\text{\symsfgreek{^^^^e1dd}}}
\newcommand{\symsfiteta}        {\text{\symsfgreek{^^^^e1de}}}
\newcommand{\symsfittheta}      {\text{\symsfgreek{^^^^e1df}}}
\newcommand{\symsfitvartheta}   {\text{\symsfgreek{^^^^e1f2}}}
\newcommand{\symsfitiota}       {\text{\symsfgreek{^^^^e1e0}}}
\newcommand{\symsfitkappa}      {\text{\symsfgreek{^^^^e1e1}}}
\newcommand{\symsfitlambda}     {\text{\symsfgreek{^^^^e1e2}}}
\newcommand{\symsfitmu}         {\text{\symsfgreek{^^^^e1e3}}}
\newcommand{\symsfitnu}         {\text{\symsfgreek{^^^^e1e4}}}
\newcommand{\symsfitxi}         {\text{\symsfgreek{^^^^e1e5}}}
\newcommand{\symsfitomicron}    {\text{\symsfgreek{^^^^e1e6}}}
\newcommand{\symsfitpi}         {\text{\symsfgreek{^^^^e1e7}}}
\newcommand{\symsfitvarpi}      {\text{\symsfgreek{^^^^e1f5}}}
\newcommand{\symsfitrho}        {\text{\symsfgreek{^^^^e1e8}}}
\newcommand{\symsfitvarrho}     {\text{\symsfgreek{^^^^e1f4}}}
\newcommand{\symsfitsigma}      {\text{\symsfgreek{^^^^e1ea}}}
\newcommand{\symsfitvarsigma}   {\text{\symsfgreek{^^^^e1e9}}}
\newcommand{\symsfittau}        {\text{\symsfgreek{^^^^e1eb}}}
\newcommand{\symsfitupsilon}    {\text{\symsfgreek{^^^^e1ec}}}
\newcommand{\symsfitphi}        {\text{\symsfgreek{^^^^e1f3}}}
\newcommand{\symsfitvarphi}     {\text{\symsfgreek{^^^^e1ed}}}
\newcommand{\symsfitchi}        {\text{\symsfgreek{^^^^e1ee}}}
\newcommand{\symsfitpsi}        {\text{\symsfgreek{^^^^e1ef}}}
\newcommand{\symsfitomega}      {\text{\symsfgreek{^^^^e1f0}}}
\newcommand{\symsfitDelta}      {\text{\symsfgreek{^^^^e1c2}}}
\newcommand{\symsfitGamma}      {\text{\symsfgreek{^^^^e1c1}}}
\newcommand{\symsfitTheta}      {\text{\symsfgreek{^^^^e1d0}}}
\newcommand{\symsfitLambda}     {\text{\symsfgreek{^^^^e1c9}}}
\newcommand{\symsfitXi}         {\text{\symsfgreek{^^^^e1cc}}}
\newcommand{\symsfitPi}         {\text{\symsfgreek{^^^^e1ce}}}
\newcommand{\symsfitSigma}      {\text{\symsfgreek{^^^^e1d1}}}
\newcommand{\symsfitUpsilon}    {\text{\symsfgreek{^^^^e1d3}}}
\newcommand{\symsfitPhi}        {\text{\symsfgreek{^^^^e1d4}}}
\newcommand{\symsfitPsi}        {\text{\symsfgreek{^^^^e1d6}}}
\newcommand{\symsfitOmega}      {\text{\symsfgreek{^^^^e1d7}}}

\begin{document}

\( \symsfupalpha\symsfupbeta\symsfupgamma\symsfupdelta\symsfupepsilon\symsfupvarepsilon\symsfupzeta
   \symsfupeta\symsfuptheta\symsfupvartheta\symsfupiota\symsfupkappa\symsfuplambda\symsfupmu\symsfupnu
   \symsfupxi\symsfupomicron\symsfuppi\symsfupvarpi\symsfuprho\symsfupvarrho\symsfupsigma
   \symsfupvarsigma\symsfuptau\symsfupupsilon\symsfupphi\symsfupvarphi\symsfupchi\symsfuppsi
   \symsfupomega\symsfupDelta\symsfupGamma\symsfupTheta\symsfupLambda\symsfupXi\symsfupPi\symsfupSigma
   \symsfupUpsilon\symsfupPhi\symsfupPsi\symsfupOmega \)


\( \symsfitalpha\symsfitbeta\symsfitgamma\symsfitdelta\symsfitepsilon\symsfitvarepsilon\symsfitzeta
   \symsfiteta\symsfittheta\symsfitvartheta\symsfitiota\symsfitkappa\symsfitlambda\symsfitmu\symsfitnu
   \symsfitxi\symsfitomicron\symsfitpi\symsfitvarpi\symsfitrho\symsfitvarrho\symsfitsigma
   \symsfitvarsigma\symsfittau\symsfitupsilon\symsfitphi\symsfitvarphi\symsfitchi\symsfitpsi
   \symsfitomega\symsfitDelta\symsfitGamma\symsfitTheta\symsfitLambda\symsfitXi\symsfitPi\symsfitSigma
   \symsfitUpsilon\symsfitPhi\symsfitPsi\symsfitOmega \)


\end{document}
4
  • 1
    you should setup a symbol font see tex.stackexchange.com/a/439983/2388. But personally I think that latin modern and this greek symbols don't fit, I would use stix everywhere. – Ulrike Fischer Apr 27 at 13:32
  • 1
    It would look more consistent and be a lot easier to code if you used stix two math, as then you wouldn't have to change font at all. – David Carlisle Apr 27 at 14:46
  • not your fault but the option name \unimathsetup{math-style=ISO} is so annoying:-) – David Carlisle Apr 27 at 14:47
  • This MWE is a snippet from a much larger project that must accommodate other notational conventions and that why I'm not using STIX everywhere. I saw the symbol font answer but don't understand it well enough yet to use it. – LaTeXereXeTaL Apr 27 at 15:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.