# Norm with adjustable size?

There was a similar question asked some time back. The solutions was to use the package amsmath and define norm as

\newcommand{\norm}[1]{\left\lVert#1\right\rVert}


However, I am using the packages newpxtext and newpxmath and it is advised not to amsmath with them. How can I then achieve a re-scaled norm sign in LaTeX?

• Why not amsmath? I suppose you mean amsfonts or amssymb? – Bernard Aug 10 '18 at 11:31
• amsmath is loaded by newpxmath, but following the advice on the linked page, if i define the norm as \newcommand{\norm}[1]{\left\lVert#1\right\rVert}, I get the error that it is already defined – Sid Aug 10 '18 at 11:38

I'd recommend defining them via the mathtools package using

\DeclarePairedDelimiter\norm\lVert\rVert


Then

\norm{x}    =  \lVert x \rVert
\norm*{x}   = \left\lVert x \right\rVert
\norm[\Big] = \Bigl\lVert x \Bigr\rVert


For more information see the mathtools manual

Note that it is generally not recommended to have autoscaling as the default, only use autoscaling in those explicit instances you need it. (I personally use it very rarely in my manuscript edits)

You can do that easily with mathtools (which loads amsmath): adding this code in your preamble:

\DeclarePairedDelimiter{\norm}\lVert\rVert


defines a \norm command and a starred version \norm*, which adds a pair of implicit \left ... \right in front of the delimiters. For fine-tuning the delimiters size, the unstarred version accepts an optional argument: \norm[\big], or [\Big], [\bigg], [\Bigg], which adds a pair of implicit \bigl ... \bigr, &c., in front of the delimiters.