Comment encadrer une formule ?

Tout ce qui concerne le langage TeX/LaTeX et ses variantes. Ce langage est utilisable sur le forum via les balises tex.
[participation réservée aux utilisateurs inscrits]
Règles du forum
Merci de soigner la rédaction de vos messages et de consulter ce sujet avant de poster. Pensez également à utiliser la fonction recherche du forum.
RGB

Comment encadrer une formule ?

Message non lu par RGB »

Bonjour,

Je cherche à encadrer une formule mathématique numérotée et ça ne fonctionne pas (3), (4) et (5)...

Code : Tout sélectionner

\framebox{test} % fonctionne (1) 

\framebox{test $\frac{1}{2}$} %fonctionne (2)

\framebox{test $$\frac{1}{2}$$} %ne fonctionne pas (3)

\framebox{test \begin{equation}\frac{1}{2}\end{equation}} %ne fonctionne pas (4)

\begin{equation}
\framebox{test \frac{1}{2}} %ne fonctionne pas (5)
\end{equation}
C'est possible ?
gigiair
Utilisateur chevronné
Utilisateur chevronné
Messages : 2804
Inscription : samedi 08 juillet 2006, 20:56
Localisation : Saint Bonnet Elvert

Message non lu par gigiair »

Extrait de short-math-guide.pdf :

Code : Tout sélectionner

\usepackage{amsmath}
\begin{document}
\begin{equation}
\boxed{\eta \leq C(\delta(\eta) +\Lambda_M(0,\delta))}		
\end{equation}
$$\boxed{\eta \leq C(\delta(\eta) +\Lambda_M(0,\delta))}$$

--
JJR.
RGB

Message non lu par RGB »

Merci !
Pingouin

Message non lu par Pingouin »

Encore une question... :P
Chez moi, la commande boxed produit 100 erreurs à la compilation...

Je voudrais encadrer la dernière ligne de ce calcul, et si je fais :

Code : Tout sélectionner

\begin{equation*} 
  \begin{split}
	\dpars{f}{t}(x,t) &= \dpar{}{t}\left(\dpar{f}{t}\right)(x,t)  \\ 
	...
	\boxed{\dpars{f}{t}(x,t) &= c^2 \left[ \dpars{g}{u}(u,v) -2 \dpa{g}{u}{v}(u,v) +  \dpars{g}{v}(u,v) \right]}
	\end{split}
	\end{equation*}
le boxed est violemment refusé.

Comment dois-je alors procéder? Merci!
gigiair
Utilisateur chevronné
Utilisateur chevronné
Messages : 2804
Inscription : samedi 08 juillet 2006, 20:56
Localisation : Saint Bonnet Elvert

Message non lu par gigiair »

Tu peux utiliser le package empheq et l'environnement eponyme

Code : Tout sélectionner

begin{empheq}[box=\fbox]{equation*}
  \begin{split}
	\dpars{f}{t}(x,t) &= \dpar{}{t}\left(\dpar{f}{t}\right)(x,t)  \\ 
	...
	\boxed{\dpars{f}{t}(x,t) &= c^2 \left[ \dpars{g}{u}(u,v) -2 \dpa{g}{u}{v}(u,v) +  \dpars{g}{v}(u,v) \right]}
	\end{split}
\end{empheq}
Pour la doc

Code : Tout sélectionner

>texdoc empheq
dans une console (ou sous Ouindoz démarrer->exécuter->texdoc empheq )
Ça peut faire beaucoup plus qu'un simple encadrement.
JJR.
LaTeXien migrateur.
Pingouin

Message non lu par Pingouin »

Hello,

Merci mais ça ne marche pas... :(

Code : Tout sélectionner

\begin{empheq}[box=\fbox]{equation*}
  \begin{split} 
	...
	\boxed{\dpars{f}{x}(x,t) &=\dpars{g}{u}(u,v) + 2\dpa{g}{u}{v}(u,v) + \dpars{g}{v}(u,v)}
	\end{split}
	\end{empheq}
produit toujours 100 erreurs, dûes à la commande boxed... Et si on la retire, il m'encadre l'ensemble des 6 lignes de calcul, ce qui n'est pas réellement l'effet désiré...
kojak
Modérateur général
Modérateur général
Messages : 10450
Inscription : samedi 18 novembre 2006, 19:50

Message non lu par kojak »

As tu lu d'où viennent tes 100 erreurs ? il ne manquerait pas des balises (dollars) ?
Pas d'aide par MP.
Pingouin

Message non lu par Pingouin »

Oui, c'est qu'on me dit... missing dollar, missing or extra {, et cela 100 fois à la suite... mais je ne vois aucun oubli dans le code. Je vous le livre en intégralité.

Code : Tout sélectionner

\newcommand{\dpar}[2]{\dfrac { \partial #1 } { \partial #2 }}
\newcommand{\dpars}[2]{\dfrac { \partial^2 #1 } { \partial #2^2 }}
\newcommand{\dpa}[3]{\dfrac { \partial^2 #1 } { \partial #2 \partial #3 }}

Code : Tout sélectionner

\begin{empheq}[box=\fbox]{equation*}
  \begin{split} 

	\dpars{f}{x}(x,t) &= \dpar{}{x} \left(\dpar{f}{x}\right)(x,t) \\

	&=\dpar{}{u}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) \underbrace{\dpar{h_1}{x}(x,t)}_{=1} \\

	&\quad + \dpar{}{v}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) \underbrace{\dpar{h_2}{x}(x,t)}_{=1}\\

	&=\dpar{}{u}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) + \dpar{}{v}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v)\\

	&=\dpars{g}{u}(u,v) + \dpa{g}{u}{v}(u,v) + \dpa{g}{v}{u}(u,v) + \dpars{g}{v}(u,v)\\

	\boxed{\dpars{f}{x}(x,t) &=\dpars{g}{u}(u,v) + 2\dpa{g}{u}{v}(u,v) + \dpars{g}{v}(u,v)}

	\end{split}
	\end{empheq}
Surtout que les 100 erreurs portent sur la ligne... \end{empheq}... :roll:
kojak
Modérateur général
Modérateur général
Messages : 10450
Inscription : samedi 18 novembre 2006, 19:50

Message non lu par kojak »

J'ai une solution beaucoup plus simple mais qui ne convient peut être pas :

Code : Tout sélectionner

$\begin{aligned} 
    \dpars{f}{x}(x,t) &= \dpar{}{x} \left(\dpar{f}{x}\right)(x,t) \\ 
   &=\dpar{}{u}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) \underbrace{\dpar{h_1}{x}(x,t)}_{=1} \\ 
   &\quad + \dpar{}{v}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) \underbrace{\dpar{h_2}{x}(x,t)}_{=1}\\ 
   &=\dpar{}{u}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) + \dpar{}{v}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v)\\ 
   &=\dpars{g}{u}(u,v) + \dpa{g}{u}{v}(u,v) + \dpa{g}{v}{u}(u,v) + \dpars{g}{v}(u,v)\\ 
      \end{aligned}$\\
   \psframebox{$\dpars{f}{x}(x,t) =\dpars{g}{u}(u,v) + 2\dpa{g}{u}{v}(u,v) + \dpars{g}{v}(u,v)$}

PS : si le compilateur te dit qu'il manque quelque chose, c'est qu'il manque réellement quelque chose :roll:
Pas d'aide par MP.
Pingouin

Message non lu par Pingouin »

Re-chalut,
Ca ne marche pas non plus... :D Bon, on va laisser tomber l'encadrement, c'est pas grave...
kojak a écrit :PS : si le compilateur te dit qu'il manque quelque chose, c'est qu'il manque réellement quelque chose :roll:

Houla, justement, j'ai l'impression que non... Latex met "missing dollar" ou "missing {" quand il ne sait pas quoi mettre d'autre. Les 9/10 du temps, l'erreur ne vient absolument pas de ça... En tout cas, de l'expérience que j'en ai...

Et je ne vois pas en quoi il y aurait une erreur (ou plutôt 100!) dans la ligne \end{empheq} de mon code, ni en quoi une { ou un dollar manque, alors qu'il ne manque pas lorsqu'il n'est pas question d'encadrement. Tout marche, je rajoute juste \boxed{} et soudain il manquerait des { partout... Le compilateur est un peu à côté des clous -comme souvent-.
kojak
Modérateur général
Modérateur général
Messages : 10450
Inscription : samedi 18 novembre 2006, 19:50

Message non lu par kojak »

Pour mon code il faut un

Code : Tout sélectionner

\usepackage{pstricks}
et je te rassure, il n'y a aucune erreur, bad box ni warning :lol:

Pour le compilateur, je doute que le compilateur n'en fasse qu'à sa guise :wink:
Ce qui coince à mon avis , c'est le fait de vouloir encadrer qu'une partie de ta formule mais je dis peut être des aneries :roll: donc tu en finis une et tu eb refais une autre pour ta dernière ligne...
Pas d'aide par MP.
gigiair
Utilisateur chevronné
Utilisateur chevronné
Messages : 2804
Inscription : samedi 08 juillet 2006, 20:56
Localisation : Saint Bonnet Elvert

Message non lu par gigiair »

[quote="Pingouin"]Oui, c'est qu'on me dit... missing dollar, missing or extra {, et cela 100 fois à la suite... mais je ne vois aucun oubli dans le code. Je vous le livre en intégralité.

Code : Tout sélectionner

\newcommand{\dpar}[2]{\dfrac { \partial #1 } { \partial #2 }}
\newcommand{\dpars}[2]{\dfrac { \partial^2 #1 } { \partial #2^2 }}
\newcommand{\dpa}[3]{\dfrac { \partial^2 #1 } { \partial #2 \partial #3 }}

Code : Tout sélectionner

\begin{empheq}[box=\fbox]{equation*}
  \begin{split} 
	\dpars{f}{x}(x,t) &= \dpar{}{x} \left(\dpar{f}{x}\right)(x,t) \\
	&=\dpar{}{u}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) \underbrace{\dpar{h_1}{x}(x,t)}_{=1} \\
	&\quad + \dpar{}{v}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) \underbrace{\dpar{h_2}{x}(x,t)}_{=1}\\
	&=\dpar{}{u}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v) + \dpar{}{v}\left(\dpar{g}{u}+\dpar{g}{v}\right)(u,v)\\

	&=\dpars{g}{u}(u,v) + \dpa{g}{u}{v}(u,v) + \dpa{g}{v}{u}(u,v) + \dpars{g}{v}(u,v)\\
	\boxed{\dpars{f}{x}(x,t) &=\dpars{g}{u}(u,v) + 2\dpa{g}{u}{v}(u,v) + \dpars{g}{v}(u,v)}
	\end{split}
	\end{empheq}
Le \boxed, c'est à peu près équivalent à un\fbox{\$...\$}
Cela crée un environnement dans lequel est évalué le contenu du \boxed. Autrement dit, l'environnement englobant (celui de equation* complété par celui de split) n'a aucune portée à l'intérieur du \boxed.
Il en résulte que le & n'est pas dans la portée du split, et n'est pas interprété. Cela déclenche une erreur. Enfin, c'est ce que je pense avoir compris.
Je proposerais de remplacer le \boxed{\dpars{f}{x}(x,t) &=\dpars{g}{u}(u,v) + 2\dpa{g}{u}{v}(u,v) + \dpars{g}{v}(u,v)} par \fbox{\$dpars{f}{x}(x,t) =\dpars{g}{u}(u,v) + 2\dpa{g}{u}{v}(u,v) + \dpars{g}{v}(u,v)\$}. Techniquement, ça passe, esthétiquement, c'est un autre débat.
Mettre en évidence une formule dans une formule déjà mise en évidence, je ne le ferais pas.
JJR.
LaTeXien migrateur.
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message