%% %% This is file `unitsdef.sty', %% generated with the docstrip utility. %% %% The original source files were: %% %% unitsdef.dtx (with options: `package') %% %% This is a generated file. %% %% Copyright (C) hyeari by hyour namei %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either %% version 1.2 of this license or (at your option) any later %% version. The latest version of this license is in: %% %% http://www.latex-project.org/lppl.txt %% %% and version 1.2 or later is part of all distributions of %% LaTeX version 1999/12/01 or later. %% \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{unitsdef}[2005/01/04 v0.2 Typesetting units] \ProvidesFile{unitsdef.dtx} [2004/01/05 Typesetting units a proper way] %% \CharacterTable %% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z %% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z %% Digits \0\1\2\3\4\5\6\7\8\9 %% Exclamation \! Double quote \" Hash (number) \# %% Dollar \$ Percent \% Ampersand \& %% Acute accent \' Left paren \( Right paren \) %% Asterisk \* Plus \+ Comma \, %% Minus \- Point \. Solidus \/ %% Colon \: Semicolon \; Less than \< %% Equals \= Greater than \> Question mark \? %% Commercial at \@ Left bracket \[ Backslash \\ %% Right bracket \] Circumflex \^ Underscore \_ %% Grave accent \` Left brace \{ Vertical bar \| %% Right brace \} Tilde \~} %% \newif\if@@setunitsep \@@setunitseptrue \newif\ifunit@@Ohm% \unit@@Ohmfalse \newif\ifunit@@redefgensymb \unit@@redefgensymbfalse \newif\ifunit@@liter \unit@@literfalse \newif\ifunit@@xspace \unit@@xspacetrue \newif\ifunit@@useabbrv \unit@@useabbrvtrue \newif\ifunit@@useampabbrv \unit@@useampabbrvtrue \newif\ifunit@@usefreqabbrv \unit@@usefreqabbrvtrue \newif\ifunit@@usemolabbrv \unit@@usemolabbrvtrue \newif\ifunit@@usevoltabbrv \unit@@usevoltabbrvtrue \newif\ifunit@@usevolabbrv \unit@@usevolabbrvtrue \newif\ifunit@@useweightabbrv \unit@@useweightabbrvtrue \newif\ifunit@@useenergyabbrv \unit@@useenergyabbrvtrue \newif\ifunit@@uselengthabbrv \unit@@uselengthabbrvtrue \newif\ifunit@@usetimeabbrv \unit@@usetimeabbrvtrue \newif\ifunit@@useconfigfile \unit@@useconfigfiletrue \DeclareOption{OHM}{\unit@@Ohmtrue} \DeclareOption{ohm}{\unit@@Ohmfalse} \DeclareOption{redef-gensymb}{% \@ifpackageloaded{gensymb}{% \unit@@redefgensymbtrue% \AtBeginDocument{% \let\gensymbohm\ohm% \let\gensymbcelsius\celsius% \let\gensymbmicro\micro% \renewunit{\ohm}{\unitOmega}% \renewunit{\celsius}{\unitCelsius}% \renewcommand{\micro}{\unitmu\@@setunitsepfalse}% } }{% \PackageError{unitsdef}{ You requestet me to save some macros from the\MessageBreak gensymb-package. This package is not loaded.\MessageBreak If you load it later, tell me to use uppercase\MessageBreak macronames where conflicts appear by giving me\MessageBreak the option OHM. } } } \DeclareOption{liter}{\unit@@litertrue} \DeclareOption{LITER}{\unit@@literfalse} \DeclareOption{noxspace}{\unit@@xspacefalse} \DeclareOption{noabbrv}{\unit@@useabbrvfalse} \DeclareOption{ugly}{\PassOptionsToPackage{ugly}{units}} \DeclareOption{noamperageabbr}{\unit@@useampabbrvfalse} \DeclareOption{nofrequncyabbr}{\unit@@usefreqabbrvfalse} \DeclareOption{nomolabbr}{\unit@@usemolabbrvfalse} \DeclareOption{novoltageabbr}{\unit@@usevoltabbrvfalse} \DeclareOption{novolumeabbr}{\unit@@usevolabbrvfalse} \DeclareOption{noweightabbr}{\unit@@useweightabbrvfalse} \DeclareOption{noenergyabbr}{\unit@@useenergyabbrvfalse} \DeclareOption{nolengthabbr}{\unit@@uselengthabbrvfalse} \DeclareOption{notimeabbr}{\unit@@usetimeabbrvfalse} \DeclareOption{noconfig}{\unit@@useconfigfilefalse} \ProcessOptions \RequirePackage[T1]{fontenc} \RequirePackage{amsmath} \RequirePackage{textcomp} \RequirePackage{units} \ifunit@@xspace \RequirePackage{xspace}% \let\unit@@xspace\xspace% \else \let\unit@@xspace\relax \fi \DeclareRobustCommand{\unitsignonly}[1]{% \@@setunitsepfalse% \begingroup% \let\unit@@xspace\relax% #1% \endgroup} \newcommand{\unitvaluesep}{} \let\unitvaluesep\,% \newcommand{\newunit}[2]{% \newcommand{#1}{}% \DeclareRobustCommand{#1}[1][]{##1% \begingroup% \let\unit@@xspace\relax% \if@@setunitsep% \unitvaluesep% \let\unitvaluesep\relax% \fi% \unit{#2}\global\@@setunitseptrue% \endgroup% \unit@@xspace% }% } \newcommand{\renewunit}[2]{% \renewcommand{#1}{}% \DeclareRobustCommand{#1}[1][]{##1% \begingroup% \let\unit@@xspace\relax% \if@@setunitsep% \unitvaluesep% \let\,\relax% \fi% \unit{#2}\global\@@setunitseptrue% \endgroup% \unit@@xspace% }% } \newcommand{\newnosepunit}[2]{% \newcommand{#1}{}% \DeclareRobustCommand{#1}[1][]{##1% \begingroup% \let\xspace\relax% \if@@setunitsep% \let\,\relax% \fi% \unit{#2}\global\@@setunitseptrue% \endgroup% \unit@@xspace% }% } \newcommand{\renewnosepunit}[2]{% \renewcommand{#1}{}% \DeclareRobustCommand{#1}[1][]{##1% \begingroup% \let\unit@@xspace\relax% \if@@setunitsep% \let\,\relax% \fi% \unit{#2}\global\@@setunitseptrue% \endgroup% \unit@@xspace% }% } \newcommand\per[2]{% \@@setunitsepfalse% \unitfrac{#1}{#2}% } \newcommand{\ilu}[2][]{% \begingroup% \@@setunitsepfalse% \let\unit@@xspace\relax% #1\,\unit{#2}% \endgroup% } \newcommand{\unittimes}{\@@setunitsepfalse\ensuremath{\cdot}} \let\unitsep\, \newcommand{\unitsuperscript}[1]{% \ifmmode^{#1}\else\textsuperscript{#1}\fi% } \newcommand{\unitMathOmega}{} \newcommand{\unitTextOmega}{} \newcommand{\unitTextmu}{} \newcommand{\unitMathmu}{} \newcommand{\unitMathCelsius}{} \newcommand{\unitTextCelsius}{} \newcommand{\unitTextDegree}{} \newcommand{\unitMathDegree}{} \newcommand{\unitCelsius}{% \ifmmode\unitMathCelsius\else\unitTextCelsius\fi% } \newcommand{\unitmu}{% \ifmmode\unitMathmu\else\unitTextmu\fi% } \newcommand{\unitOmega}{% \ifmmode\unitMathOmega\else\unitTextOmega\fi% } \newcommand{\unitDegree}{% \ifmmode\unitMathDegree\else\unitTextDegree\fi% } \newcommand{\setMathOmega}[1]{% \renewcommand{\unitMathOmega}{\text{#1}}% } \setMathOmega{$\mathrm{\Omega}$} \newcommand{\setMathmu}[1]{% \renewcommand{\unitMathmu}{\text{#1}}% } \setMathmu{\textmu} \newcommand{\setMathCelsius}[1]{% \renewcommand{\unitMathCelsius}{\text{#1}}% } \setMathCelsius{\textcelsius} \newcommand{\setMathDegree}[1]{% \renewcommand{\unitMathDegree}{\text{#1}}% } \setMathDegree{\textdegree} \newcommand{\setTextOmega}[2]{% \renewcommand{\unitTextOmega}{% \begingroup% \edef\@tempa{\sfdefault}% \ifx\f@family\@tempa% #2% \else% #1% \fi% \endgroup% }% } \setTextOmega{\textohm}{\textohm} \newcommand{\setTextmu}[2]{% \renewcommand{\unitTextmu}{% \begingroup% \edef\@tempa{\sfdefault}% \ifx\f@family\@tempa% #2% \else% #1% \fi% \endgroup% }% } \setTextmu{\textmu}{\textmu} \newcommand{\setTextCelsius}[2]{% \renewcommand{\unitTextCelsius}{% \begingroup% \edef\@tempa{\sfdefault}% \ifx\f@family\@tempa% #2% \else% #1% \fi% \endgroup% }% } \setTextCelsius{\textcelsius}{\textcelsius} \newcommand{\setTextDegree}[2]{% \renewcommand{\unitTextDegree}{% \begingroup% \edef\@tempa{\sfdefault}% \ifx\f@family\@tempa% #2% \else% #1% \fi% \endgroup% }% } \setTextDegree{\textdegree}{\textdegree} \newcommand\unitSIdef{\upshape} \newcommand{\SI}{} \DeclareRobustCommand{\SI}[2]{% \begingroup% \let\unit@@xspace\relax% \unitSIdef\selectfont% #1#2% \endgroup% } \newcommand{\yocto}{y\@@setunitsepfalse} % -24 \newcommand{\zepto}{z\@@setunitsepfalse} % -21 \newcommand{\atto}{a\@@setunitsepfalse} % -18 \newcommand{\femto}{f\@@setunitsepfalse} % -15 \newcommand{\pico}{p\@@setunitsepfalse} % -12 \newcommand{\nano}{n\@@setunitsepfalse} % -9 \ifunit@@Ohm \newcommand{\Micro}{\unitmu\@@setunitsepfalse} \let\@unit@micro\Micro \else \ifunit@@redefgensymb\else \newcommand{\micro}{\unitmu\@@setunitsepfalse} \let\@unit@micro\micro \fi \fi \newcommand{\milli}{m\@@setunitsepfalse} % -3 \newcommand{\centi}{c\@@setunitsepfalse} % -2 \newcommand{\deci}{d\@@setunitsepfalse} % -1 \newcommand{\deca}{da\@@setunitsepfalse} % +1 \newcommand{\hecto}{h\@@setunitsepfalse} % +2 \newcommand{\kilo}{k\@@setunitsepfalse} % +3 \newcommand{\mega}{M\@@setunitsepfalse} % +6 \newcommand{\giga}{G\@@setunitsepfalse} % +9 \newcommand{\tera}{T\@@setunitsepfalse} % +12 \newcommand{\peta}{P\@@setunitsepfalse} % +15 \newcommand{\exa}{E\@@setunitsepfalse} % +18 \newcommand{\zetta}{Z\@@setunitsepfalse} % +21 \newcommand{\yotta}{Y\@@setunitsepfalse} % +24 \newunit{\meter}{m} \newunit{\gram}{g} \newunit{\kilogram}{\kilo\gram} \newunit{\mole}{mol} \newunit{\second}{s} \newunit{\ampere}{A} \newunit{\kelvin}{K} \newunit{\candela}{cd} \newunit{\picometer}{\pico\meter} \newunit{\nanometer}{\nano\meter} \newunit{\micrometer}{\@unit@micro\meter} \newunit{\millimeter}{\milli\meter} \newunit{\centimeter}{\centi\meter} \newunit{\decimeter}{\deci\meter} \newunit{\kilometer}{\kilo\meter} \newunit{\femtogram}{\femto\gram} \newunit{\picogram}{\pico\gram} \newunit{\nanogram}{\nano\gram} \newunit{\microgram}{\@unit@micro\gram} \newunit{\milligram}{\milli\gram} \newunit{\femtomole}{\femto\mole} \newunit{\picomole}{\pico\mole} \newunit{\nanomole}{\nano\mole} \newunit{\micromole}{\@unit@micro\mole} \newunit{\millimole}{\milli\mole} \newunit{\attosecond}{\atto\sek} \newunit{\femtosecond}{\femto\sek} \newunit{\picosecond}{\pico\sek} \newunit{\nanosecond}{\nano\sek} \newunit{\microsecond}{\@unit@micro\sek} \newunit{\millisecond}{\milli\sek} \newunit{\picoampere}{\pico\ampere} \newunit{\nanoampere}{\nano\ampere} \newunit{\microampere}{\@unit@micro\ampere} \newunit{\milliampere}{\milli\ampere} \newunit{\kiloampere}{\kilo\ampere} \newunit{\percent}{\%} \ifunit@@liter \newunit{\liter}{l} \else \newunit{\liter}{L} \fi \newunit{\femtoliter}{\femto\liter} \newunit{\picoliter}{\pico\liter} \newunit{\nanoliter}{\nano\liter} \newunit{\microliter}{\@unit@micro\liter} \newunit{\milliliter}{\milli\liter} \newunit{\centiliter}{\centi\liter} \newunit{\deciliter}{\deci\liter} \newunit{\hectoliter}{\hecto\liter} \newunit{\cubicmeter}{\meter\unitsuperscript{3}} \newunit{\cubicmicrometer}{\micrometer\unitsuperscript{3}} \newunit{\cubicmillimeter}{\millimeter\unitsuperscript{3}} \newunit{\squaremeter}{\meter\unitsuperscript{2}} \newunit{\ar}{a} \newunit{\hektar}{\hecto\ar} \newunit{\squarecentimeter}{\centimeter\unitsuperscript{2}} \newunit{\squaremillimeter}{\millimeter\unitsuperscript{2}} \newunit{\squarekilometer}{\kilometer\unitsuperscript{2}} \newunit{\ton}{t} \newunit{\volt}{V} \newunit{\millivolt}{\milli\volt} \newunit{\kilovolt}{\kilo\volt} \newunit{\watt}{W} \newunit{\milliwatt}{\milli\watt} \newunit{\kilowatt}{\kilo\watt} \newunit{\megawatt}{\mega\watt} \newunit{\coulomb}{C} \ifunit@@Ohm \newunit{\Ohm}{\unitOmega} \newunit{\kiloohm}{\kilo\Ohm} \newunit{\megaohm}{\mega\Ohm} \newunit{\gigaohm}{\giga\Ohm} \else \ifunit@@redefgensymb\else \newunit{\ohm}{\unitOmega} \fi \newunit{\kiloohm}{\kilo\ohm} \newunit{\megaohm}{\mega\ohm} \newunit{\gigaohm}{\giga\ohm} \fi \newunit{\siemens}{S} \newunit{\millisiemens}{\milli\siemens} \newunit{\farad}{F} \newunit{\femtofarad}{\femto\farad} \newunit{\picofarad}{\pico\farad} \newunit{\nanofarad}{\nano\farad} \newunit{\microfarad}{\@unit@micro\farad} \newunit{\millifarad}{\milli\farad} \newunit{\joule}{J} \newunit{\millijoule}{\milli\joule} \newunit{\kilojoule}{\kilo\joule} \newunit{\megajoule}{\mega\joule} \newunit{\calory}{cal} \newunit{\kilocalory}{\kilo\calory} \newunit{\electronvolt}{eV} \newunit{\millielectronvolt}{\milli\eV} \newunit{\kiloelectronvolt}{\kilo\eV} \newunit{\megaelectronvolt}{\mega\eV} \newunit{\gigaelectronvolt}{\giga\eV} \newunit{\teraelectronvolt}{\tera\eV} \newunit{\minute}{min} \newunit{\hour}{h} \newunit{\days}{d} \ifunit@@Ohm \newunit{\Celsius}{\unitCelsius} \else \ifunit@@redefgensymb\else \newunit{\celsius}{\unitCelsius} \fi \fi \newunit{\radian}{rad} \newunit{\steradian}{sr} \ifunit@@Ohm \newnosepunit{\Degree}{\unitDegree} \else \ifunit@@redefgensymb\else \newnosepunit{\degree}{\unitDegree} \fi \fi \newunit{\arcmin}{\ensuremath{{}^\prime}} \newunit{\arcsec}{\ensuremath{{}^{\prime\prime}}} \DeclareRobustCommand{\arc}[1]{\expandafter\unit@arc#1;;!} \def\unit@arc#1;#2;#3!{% \ifx\\#1\\\def\unit@arcdegreevalue{0}% \else\def\unit@arcdegreevalue{#1}\fi% \ifx\\#2\\\def\unit@arcminvalue{0}% \else\def\unit@arcminvalue{#2}\fi% \ifx\\#3\\\def\unit@arcsecvalue{0}% \else\edef\unit@arcsecvalue{\expandafter\unit@strip#3;!}\fi% \begingroup% \let\unit@@xspace\relax% \ifnum\unit@arcsecvalue=0\relax% \ifnum\unit@arcminvalue=0\relax% \ifnum\unit@arcdegreevalue=0\relax\else% \unit@arcdegreevalue\degree% \fi% \else% \unit@arcdegreevalue\degree% \unitvaluesep% \unit@arcminvalue\arcmin% \fi% \else% \unit@arcdegreevalue\degree% \unitvaluesep% \unit@arcminvalue\arcmin% \unitvaluesep% \unit@arcsecvalue\arcsec% \fi% \endgroup% } \def\unit@strip#1;#2!{% \ifx\\#1\\0\else#1\fi% } \newunit{\hertz}{Hz} \newunit{\kilohertz}{\kilo\hertz} \newunit{\megahertz}{\mega\hertz} \newunit{\gigahertz}{\giga\hertz} \newunit{\newton}{N} \newunit{\millinewton}{\milli\newton} \newunit{\kilonewton}{\kilo\newton} \newunit{\pascal}{Pa} \newunit{\hectopascal}{\hecto\pascal} \newunit{\uBar}{bar} \newunit{\millibar}{\milli\uBar} \newunit{\weber}{Wb} \newunit{\tesla}{T} \newunit{\henry}{H} \newunit{\lumen}{lm} \newunit{\lux}{lx} \newunit{\becquerel}{Bq} \newunit{\megabecquerel}{\mega\becquerel} \newunit{\curie}{Cu} \newunit{\sievert}{Sv} \newunit{\millisievert}{\milli\sievert} \ifunit@@useabbrv \ifunit@@useampabbrv \InputIfFileExists{ampabbrv.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of amperage loaded.}}% {\PackageWarning{unitsdef}{ampabbrv.cfg not found!}}% \fi \ifunit@@usefreqabbrv \InputIfFileExists{freqabbr.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of frequency loaded.}}% {\PackageWarning{unitsdef}{freqabbr.cfg not found!}}% \fi \ifunit@@usemolabbrv \InputIfFileExists{molabbrv.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of amount of substances loaded.}}% {\PackageWarning{unitsdef}{molabbrv.cfg not found!}}% \fi \ifunit@@usevoltabbrv \InputIfFileExists{voltabbr.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of voltage loaded.}}% {\PackageWarning{unitsdef}{voltabbr.cfg not found!}}% \fi \ifunit@@usevolabbrv \InputIfFileExists{volabbrv.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of volume loaded.}}% {\PackageWarning{unitsdef}{volabbrv.cfg not found!}}% \fi \ifunit@@useweightabbrv \InputIfFileExists{weigabbr.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of weight loaded.}}% {\PackageWarning{unitsdef}{weigabbr.cfg not found!}}% \fi \ifunit@@useenergyabbrv \InputIfFileExists{enerabbr.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of energy loaded.}}% {\PackageWarning{unitsdef}{enerabbr.cfg not found!}}% \fi \ifunit@@uselengthabbrv \InputIfFileExists{lengabbr.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of length loaded.}}% {\PackageWarning{unitsdef}{lengabbr.cfg not found!}}% \fi \ifunit@@usetimeabbrv \InputIfFileExists{timeabbr.cfg}% {\PackageInfo{unitsdef}{Abbreviations for units of time loaded.}}% {\PackageWarning{unitsdef}{timeabbr.cfg not found!}}% \fi \fi \ifunit@@useconfigfile \InputIfFileExists{unitsdef.cfg}% {\PackageInfo{unitsdef}{Local config file loaded.}}% {\PackageInfo{unitsdef}{No local config file found.}}% \else \PackageInfo{unitsdef}{Local config file not loaded.} \fi \endinput %% %% End of file `unitsdef.sty'.