Equations numérotées sur une ligne

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

Equations numérotées sur une ligne

Messagepar artzrouni » Mardi 28 Octobre 2008, 12:52

Je veux avoir deux équations numérotées sur une ligne:

x=a y=b (2a,b)

et pouvoir me référer à l'ensemble ou une seule: Eq. (2) ou Eq. (2b). On peut faire cela avec subequations mais chaque équation est sur une ligne différente - J'ai trouvé une solution inélégante avec laquelle on obtient Eq (2)a au lieu de Eq. (2a) - vraiment pas joli -

Bref, merci si quelqu'un a une solution.
Marc Artzrouni
artzrouni
Utilisateur
 
Messages: 3
Inscription: Mardi 28 Octobre 2008, 12:33
Statut actuel: Actif et salarié | Professeur des universités

Publicité

Re: Equations numérotées sur une ligne

Messagepar MB » Mardi 28 Octobre 2008, 15:37

Bonjour, c'est quoi ta solution ? (peut être qu'on peut l'adapter)
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6892
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant

Re: Equations numérotées sur une ligne

Messagepar D.GH » Mardi 28 Octobre 2008, 18:02

Bonsoir,

Sous l'hypothèse que j'ai bien compris la question (manque de 'ECM'), voici une proposition :

Code: Tout sélectionner
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% http://www.cnam.fr/depts/maths/Membres/ghorbanzadeh/ %
 \documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{amsmath}

\newcommand*{\dosubeqns}{}
\makeatletter
\@ifdefinable \subeqnstoks {\newtoks \subeqnstoks}
\newenvironment{subeqns}[1][gather]{%
  \subequations
  \renewcommand*{\dosubeqns}[1]{\begin{#1}##1\end{#1}}%
  \collect@body \dosubeqns
}{%
  \protected@edef \@tempa {%
    \global \subeqnstoks {%
      \protect \setcounter{parentequation}{\number\value{parentequation}}%
      \settheparentequation {\theparentequation}%
      \protect \setcounter{equation}{\number\value{equation}}%
    }%
  }%
  \@tempa
  \endsubequations
}
\DeclareRobustCommand*{\settheparentequation}{%
  \def \theparentequation
}
\newenvironment{subeqns*}[1][gather]{%
  \subequations
  \the \subeqnstoks
  \renewcommand*{\dosubeqns}[1]{\begin{#1}##1\end{#1}}%
  \collect@body \dosubeqns
}{%
  \protected@edef \@tempa {%
    \global \subeqnstoks {%
      \protect \setcounter{parentequation}{\number\value{parentequation}}%
      \settheparentequation {\theparentequation}%
      \protect \setcounter{equation}{\number\value{equation}}%
    }%
  }%
   \@tempa
   \endsubequations
 }
 \makeatother

 \begin{document}
\noindent une premi\`ere \'equation
 \begin{subeqns}[align] \label{Equa:1}
   x=2t+3 & & y=x+11
 \end{subeqns}

\noindent ce syst\`eme se ram\`ene au syst\`eme suivant :
\begin{subeqns*}[align]
   x=2t+3 & & y=2t+14
 \end{subeqns*}

\noindent En utilisant ~(\ref{Equa:1})~ on obtient une deuxi\`eme \'equation
\begin{subeqns}[align] \label{Equa:2}
   x=2t+3 & &    y=5t-13 & & z=2y-1
 \end{subeqns}
\noindent\noindent En utilisant ~(\ref{Equa:2})~ on obtient  une troisi\`eme \'equation
 \begin{subeqns}
   x=2t+3 \\
   y=5t-13\\
   z=10t-27
 \end{subeqns}

\end{document}


D.GH
D.GH
Méga-utilisateur
 
Messages: 398
Inscription: Lundi 02 Juillet 2007, 15:15

Re: Equations numérotées sur une ligne

Messagepar artzrouni » Mardi 28 Octobre 2008, 18:17

MB a écrit:Bonjour, c'est quoi ta solution ? (peut être qu'on peut l'adapter)


Effectivement , voici une solution qu'on m'a proposée:

Code: Tout sélectionner
\begin{equation}
\renewcommand{\theequation}{\arabic{equation}a,b}
a = b,\qquad c = d
\label{whole_eqn}
\end{equation}
The whole equation is  Eq. (\ref{whole_eqn}) ; one sub-equation is Eq.  \ref{whole_eqn}(a).
Ceci a l'air de marcher: The whole equation (\ref{whole_eqn}) or just one sub-equation (\ref{whole_eqn}a)   
IL suffisait d'arranger les parenthèses.
artzrouni
Utilisateur
 
Messages: 3
Inscription: Mardi 28 Octobre 2008, 12:33
Statut actuel: Actif et salarié | Professeur des universités

Re: Equations numérotées sur une ligne

Messagepar pg » Mardi 28 Octobre 2008, 18:41

Pour ce genre de question, le document mathmode est souvent d'une aide précieuse. En adaptant l'exemple donné pages 72-73 :

Code: Tout sélectionner
\documentclass{article}

\usepackage{amsmath}

\newcounter{mySubCounter}
\newcommand{\twocoleqn}[3]{%
\setcounter{mySubCounter}{0}%
\let\OldTheEquation\theequation
\renewcommand{\themySubCounter}{\OldTheEquation\alph{mySubCounter}}
\renewcommand{\theequation}{\themySubCounter}%
\refstepcounter{equation}\label{#1}%
\addtocounter{equation}{-1}%
\[\begin{minipage}{.49\textwidth}%
\begin{equation}\refstepcounter{mySubCounter}
#2
\end{equation}
\end{minipage}\hfill %
\addtocounter{equation}{-1}%
\begin{minipage}{.49\textwidth}%
\begin{equation}\refstepcounter{mySubCounter}
#3
\end{equation}
\end{minipage}\]\let\theequation\OldTheEquation}

\begin{document}

The equation is
\twocoleqn{eqn}{y=f(x)\label{eqn.a}}{y=f(z)\label{eqn.b}}
first equation: \eqref{eqn.a}, second equation: \eqref{eqn.b}. Whole equation: \eqref{eqn}

\end{document}

Il y a encore des soucis au niveau de l'espacement avant et après l'équations (qui ne sera pas exactement le même que pour une équation normale). Là je n'ai pas le temps, donc je regarderai plus tard.
pg
Modérateur
 
Messages: 2597
Inscription: Jeudi 14 Juin 2007, 23:31

Re: Equations numérotées sur une ligne

Messagepar pg » Mercredi 29 Octobre 2008, 01:19

Voici comme promis une solution qui fournit un espacement vertical comparable à celui de align :

sameline_subequations.png
sameline_subequations.png (10.17 Kio) Vu 1184 fois


Code: Tout sélectionner
\documentclass{article}

\usepackage{amsmath}

\newcounter{samelinesubequation}
\newcommand{\twocoleqn}[5]{%
\setcounter{samelinesubequation}{0}%
\let\OldTheEquation\theequation
\renewcommand{\thesamelinesubequation}{\OldTheEquation\alph{samelinesubequation}}%
\renewcommand{\theequation}{\thesamelinesubequation}%
\refstepcounter{equation}\label{#1}%
$$\begin{minipage}{0.5\linewidth}%
\hfill$\displaystyle#2$\hfill\refstepcounter{samelinesubequation}\label{#3}(\thesamelinesubequation)%
\end{minipage}%
\begin{minipage}{0.5\linewidth}%
\hfill$\displaystyle#4$\hfill\refstepcounter{samelinesubequation}\label{#5}(\thesamelinesubequation)%
\end{minipage}$$%
\let\theequation\OldTheEquation}

\begin{document}

The equations are
\twocoleqn{eqn}{y=f(x)}{eqn.a}{y=f(z)}{eqn.b}
First equation: \eqref{eqn.a}, second equation: \eqref{eqn.b}. Whole equation: \eqref{eqn}

\end{document}
pg
Modérateur
 
Messages: 2597
Inscription: Jeudi 14 Juin 2007, 23:31

Re: Equations numérotées sur une ligne

Messagepar artzrouni » Mercredi 29 Octobre 2008, 11:23

Super pg, c'est fameux, merci - - Comme ça j'ai le choix entre (1a,b) en fin de ligne ou (1a) et (1b) à côté de chaque équation - je suppose que cela clos la discussion - Merci à tous -

Marc Artzrouni
artzrouni
Utilisateur
 
Messages: 3
Inscription: Mardi 28 Octobre 2008, 12:33
Statut actuel: Actif et salarié | Professeur des universités

Re: Equations numérotées sur une ligne

Messagepar MB » Mercredi 29 Octobre 2008, 12:48

Une fois de plus, bravo pg.
En plus je ne connaissais même pas mathmode (que j'ai ajouté dans la liste des documentations utiles sur le wiki). :D
MB (Pas d'aide en Message Privé)
Merci d'utiliser $\LaTeX$ (voir ici) et d'éviter le style SMS pour la lisibilité des messages.
MB
Administrateur
 
Messages: 6892
Inscription: Samedi 28 Mai 2005, 13:23
Localisation: Créteil
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Ahrefs [Bot], MSN [Bot], Yandex [Bot] et 3 invités