Symboles de valeur absolue
On janvier 29, 2021 by adminQuelles sont les « meilleures pratiques LaTeX » pour écrire des symboles de valeur absolue? Existe-t-il des packages qui fournissent de bonnes méthodes?
Certaines options incluent |x|
et \mid x \mid
, mais je « m pas sûr de ce qui est le mieux …
Commentaires
Réponse
Jai utilisé le code ci-dessous en utilisant \DeclarePairedDelimiter
du mathtools
package .
Puisque je ne pense pas avoir un cas où je ne veux pas que cela soit mis à léchelle en fonction le paramètre, jutilise la définition de swap de la commande étoilée et non étoilée afin que lutilisation normale se mette automatiquement à léchelle, et la version étoilée ne sera pas « t:
Si vous le souhaitez dans lautre sens, commentez le code entre \makeatother...\makeatletter
.
\documentclass{article} \usepackage{mathtools} \DeclarePairedDelimiter\abs{\lvert}{\rvert}% \DeclarePairedDelimiter\norm{\lVert}{\rVert}% % Swap the definition of \abs* and \norm*, so that \abs % and \norm resizes the size of the brackets, and the % starred version does not. \makeatletter \let\oldabs\abs \def\abs{\@ifstar{\oldabs}{\oldabs*}} % \let\oldnorm\norm \def\norm{\@ifstar{\oldnorm}{\oldnorm*}} \makeatother \newcommand*{\Value}{\frac{1}{2}x^2}% \begin{document} \[\abs{\Value} \quad \norm{\Value} \qquad\text{non-starred} \] \[\abs*{\Value} \quad \norm*{\Value} \qquad\text{starred}\qquad\] \end{document}
Commentaires
- @egreg: Daccord. Mais je nai pas encore rencontré cela avec
\abs
. BTW, jaime votre » toujours est généralement faux » 🙂 - @jamaicanworm: Jai utilisé
\dfrac
dans ce cas pour faire une plus grande fraction en mode en ligne. Cela nest normalement pas recommandé en mode en ligne car cela rompt lespacement des paragraphes. Je vais mettre à jour la solution pour supprimer cela. - Il est ‘ une raison pour laquelle il est préférable dutiliser le ‘
*
-version pour la macro de redimensionnement automatique: toujours en utilisant\left
et\right
est faux, en général. - +1, même si je dois dire que cette réponse nest pas très facile à lire avec lénorme » image » / » non suivie » et la remarque quelque part dans le texte » BTW, le comportement normal est linverse « . La question OTOH est celle qui rend tout dans ce fil très enclin à être lu par survol.
- un avantage certain de lutilisation de commandes comme
\abs
et\norm
que personne ne semble avoir mentionné: puisque le symbole|
a une signification particulière dans le contextemakeidx
, essayer dentrer la terminologie en utilisant un simple|
dans\index{...}
entraînera des erreurs (retardées) et beaucoup de cheveux tirés pour quelquun qui nest pas vraiment familier avec cet usage. commandes comme celles présentées ici (ou même simplement nues\vert
,\Vert
ou\mid
) est beaucoup plus sûr et vaut la peine dêtre familiarisé.
Réponse
Notez si vous utilisez simplement |
vous obtenez lespacement mathord, qui est différent de lespacement que vous « obtiendriez des délimiteurs mathopen / mathclose appariés ou de \left/\right
même si \left/\right
nétire pas le symbole. Personnellement, je préfère lespacement gauche / droite de mathinner ici (même si @egreg dit que je « me trompe généralement 🙂
\documentclass{amsart} \begin{document} $ \log|x||y|b $ $ \log\left|x\right|\left|y\right|b $ $ \log\mathopen|x\mathclose|\mathopen|y\mathclose|b $ \end{document}
Réponse
On peut également utiliser commath
package.
\documentclass{article} \usepackage{commath} \begin{document} \[ \norm{a \vec{u}} = \abs{a} \, \norm{\vec{v}} \] \end{document}
Commentaires
- +1 pour celui-ci, car il inclut la sémantique et a une syntaxe relativement courte.
- Lespacement est en quelque sorte mauvais lorsquil est utilisé comme indice. Le
\abs{}
ofphysics
est le meilleur choix à mon avis.
Réponse
Le physics
Le package LaTeX implémente également abs
et norm
:
\documentclass{article} \usepackage{physics} \begin{document} \[ c = \abs{-c} \] \[ \vu{a} = \frac{\vb{a}}{\norm{\vb{a}}} \] \end{document}
Commentaires
- Je pense que cest la solution la plus simple!
Réponse
Une façon simple et native LaTeX de faire cela consiste à utiliser le délimiteur \|
, avec le standard \left
et \right
modificateurs ( source ).
Par exemple:
\left\| \sum_{i=1}^{n} x^2 \right\|
donne
Commentaires
- Aussi: utilisation du séparateur
|
(sans la barre oblique inverse précédente) ts une barre verticale unique . - Pour vous amuser, essayez
\|+a\|
, car vous pouvez voir que cest faux, et donc généralement les utilisateurs ne devraient pas utilisez simplement|...|
ou\|...\|
car ils peuvent accidentellement se retrouver dans des situations où cela est faux. Je ‘ je vais laisser un exercice pour expliquer pourquoi cela se produit. De plus, dans votre exemple, les clôtures nont pas besoin dêtre aussi hautes. - Avec
\|+a\|
lespacement semble être incorrect, mais avec\left\|+a\right\|
cela semble aller. - Correct car lun est à gauche et lautre à droite. Mais
\left
et\right
ne doivent être ajoutés que lorsque cela est réellement nécessaire (ce qui nest en fait pas souvent). Ma plainte à votre réponse est que ce nest pas bon en général, pour des raisons qui sont expliquées dans les commentaires des autres réponses de ce fil de discussion.
Réponse
\documentclass{article} \usepackage{amsmath} \begin{document} \[ %begin equation \lVert w \rVert %end equation \] \end{document}
Réponse
Pour les utilisateurs de LyX: peut-être ai-je simplement oublié comment le faire correctement, mais je ne pourrais pas « t trouver un moyen de le faire de manière native.
Jai donc utilisé un environnement 1×1-Matrix et mis le kind sur determinant. Ce pourrait être juste un hack, mais cela fonctionne bien dans mon cas dutilisation.
Commentaires
- Au moins dans le cas de Lyx 2.1.4, je trouve que je peux simplement taper \ lvert et \ rvert dans ma formule daffichage et Lyx » fait la bonne chose. » Dans mon cas spécifique, je veux des barres de valeur absolue autour dune fraction, jai donc utilisé \ bigg \ lvert dun côté et \ bigg \ rvert de lautre côté.
Réponse
Si vous ne souhaitez utiliser aucun package, utilisez \mid
.
Commentaires
-
\vert
nest pas ‘ nécessaire nimporte quel paquet non plus, et lespacement nest ‘ t aussi horrible quavec\mid
.
\usepackage{amsmath}...\(\lvert x\rvert\)
;\mid
indique un symbole de relation et est erroné pour la valeur absolue.$\usepackage{mathtools}...\DeclarePairedDelimiter{\vert}{\lvert}{\rvert}
selon votre réponse à une question précédente? tex.stackexchange.com/a/42274/9757\vert
nest pas un bon choix , car il ‘ est déjà défini.|
?|
, mais dans certaines situations, une certaine prudence est nécessaire. Pour linstant ce\(|{-1}|=1\)
sans les accolades sortirait mal, alors que\(\lvert-1\rvert=1\)
donne sûrement une sortie correcte.