Mettre une matrice dans un titre de section ou sous-section

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.

Mettre une matrice dans un titre de section ou sous-section

Messagepar Nosfer » Mercredi 29 Décembre 2010, 16:44

Bonjour voilà j'ai un problème plutôt "chiant" ça fait quelques jours que j'essaye de mettre une matrice dans un titre de section ou sous-section.
Snifffffffff

Help me please ça me prend la tête

Merci d'avance à tous pour vos réponses
Nosfer
Utilisateur
 
Messages: 8
Inscription: Mercredi 29 Décembre 2010, 16:27
Statut actuel: Post-bac | Master

Publicité

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar pg » Mercredi 29 Décembre 2010, 18:12

Il faut protéger \begin et \end :

Code: Tout sélectionner
\documentclass{article}

\usepackage{amsmath}

\begin{document}

\section{La matrice $\protect\begin{pmatrix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}

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

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar Nosfer » Jeudi 30 Décembre 2010, 03:39

Merci pour cette réponse qui m'a sauvé la vie...
Enfin à moitié sniff en fait j'avais déjà essayé sur une simple subsection et ça ne marché pas bref je teste à nouveau mais cette fois au miracle ça marche (merci beaucoup pg ^^ ) enfin bref c'était sur une subsubsection donc je continu et au moment d'arrivé sur une simple subsection re-error snifff bref je cherche... je cherche...
et voilà ce qui ce passe, en fait, il y a cette fameuse erreur :

En fait c'est a cause de ma table des matières qui ne veut pas de matrices, et comme je ne mets pas de de subsubsection dans celle-ci les matrice marche à ce niveau du coup si quelqu'un a une idée pour arrangé ça au niveau de la table des matières je suis preneur
en tout cas merci a pg encore une fois :D
Nosfer
Utilisateur
 
Messages: 8
Inscription: Mercredi 29 Décembre 2010, 16:27
Statut actuel: Post-bac | Master

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar pg » Jeudi 30 Décembre 2010, 07:09

Ça marche aussi dans la table des matières :

Code: Tout sélectionner
\documentclass{article}

\usepackage{amsmath}

\begin{document}

\tableofcontents

\section{La matrice $\protect\begin{pmatrix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}

\subsection{La matrice $\protect\begin{pmatrix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}

\subsubsection{La matrice $\protect\begin{pmatrix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}

\end{document}

Il doit manquer une information essentielle (classe, package, ...) qui fait que ça ne marche pas. Le message d'erreur exact serait bien aussi.
pg
Modérateur
 
Messages: 2599
Inscription: Jeudi 14 Juin 2007, 23:31

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar Nosfer » Vendredi 31 Décembre 2010, 00:57

voilà le code où il y a toute la mise en page du document

Code: Tout sélectionner
\documentclass[12pt,a4paper,utf8x]{report}
\usepackage [frenchb]{babel}
\usepackage{ucs}% Pour pouvoir utiliser
\usepackage[utf8x]{inputenc}
\usepackage{url} % Pour avoir de belles url
\usepackage {geometry}
\usepackage{graphicx} % Pour afficher des images
\usepackage {listings}% Pour mettre du code source
\usepackage{lscape}% Pour pouvoir passer en paysage
\usepackage{multicol,lipsum,float}% Pour pouvoir faire plusieurs colonnes
\usepackage{makeidx}% POur crééer un index
\usepackage{verbatim}
\usepackage[absolute]{textpos}
\usepackage{ulem}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{algorithm,algorithmic}
%%% francisation des algorithmes
\renewcommand{\algorithmicrequire} {\textbf{\textsc{\underline{Entrées:}}}}
\renewcommand{\algorithmicensure}  {\textbf{\textsc{\underline{Sorties:}}}}
\renewcommand{\algorithmicwhile}   {\textbf{tantque}}
\renewcommand{\algorithmicdo}      {\textbf{faire}}
\renewcommand{\algorithmicendwhile}{\textbf{fin tantque}}
\renewcommand{\algorithmicend}     {\textbf{fin}}
\renewcommand{\algorithmicif}      {\textbf{si}}
\renewcommand{\algorithmicendif}   {\textbf{finsi}}
\renewcommand{\algorithmicelse}    {\textbf{sinon}}
\renewcommand{\algorithmicthen}    {\textbf{alors}}
\renewcommand{\algorithmicfor}     {\textbf{pour}}
\renewcommand{\algorithmicforall}  {\textbf{pour tout}}
\renewcommand{\algorithmicdo}      {\textbf{faire}}
\renewcommand{\algorithmicendfor}  {\textbf{fin pour}}
\renewcommand{\algorithmicloop}    {\textbf{boucler}}
\renewcommand{\algorithmicendloop} {\textbf{fin boucle}}
\renewcommand{\algorithmicrepeat}  {\textbf{répéter}}
\renewcommand{\algorithmicuntil}   {\textbf{jusqu'à}}
\renewcommand{\algorithmicprint}   {\textbf{afficher}}

\floatname{algorithm}{Algorithme}

\let\mylistof\listof
\renewcommand\listof[2]{\mylistof{algorithm}{Liste des algorithmes}}

\usepackage{hyperref} % Créer des liens et des signets
\hypersetup{
colorlinks=true, %colorise les liens
breaklinks=true, %permet le retour à la ligne dans les liens trop longs
urlcolor= blue, %couleur des hyperliens
linkcolor= red, %couleur des liens internes
citecolor=green, %couleur des références
pdftitle={Rapport}, %informations apparaissant dans
pdfauthor={...}, %les informations du document
pdfsubject={...} %sous Acrobat.
}
%\pagestyle{empty}

% pour palier au problème de niveau des algos
\makeatletter
\providecommand*{\toclevel@algorithm}{0}
\makeatother

\makeindex
% Pour l'interligne de 1.5
\usepackage {setspace}
% Pour les marges de la page
\geometry{a4paper, top=2.5cm, bottom=3.5cm, left=1.5cm, right=1.5cm, marginparwidth=1.2cm}

\parskip=5pt %% distance entre § (paragraphe)
\sloppy %% respecter toujours la marge de droite

% Pour les pénalités :
\interfootnotelinepenalty=150 %note de bas de page
\widowpenalty=150 %% veuves et orphelines
\clubpenalty=150

%Pour la longueur de l'indentation des paragraphes
\setlength{\parindent}{15mm}



%%%% debut macro pour enlever le nom chapitre %%%%
\makeatletter
\def\@makechapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright \normalfont
    \interlinepenalty\@M
    \ifnum \c@secnumdepth >\m@ne
        \Huge\bfseries \thechapter\quad
    \fi
    \Huge \bfseries #1\par\nobreak
    \vskip 40\p@
  }}

\def\@makeschapterhead#1{%
  \vspace*{50\p@}%
  {\parindent \z@ \raggedright
    \normalfont
    \interlinepenalty\@M
    \Huge \bfseries  #1\par\nobreak
    \vskip 40\p@
  }}
\makeatother
%%%% fin macro %%%%

%Couverture

\title
{
   \normalsize{Rapport de Projet\\
   Université de Montpellier 2\\
   2010-2011}\\
   \vspace{15mm}
   \Huge{...}
   \vspace{45mm}
}

\author{ ...\\
      
   \vspace{45mm}
}

\date{\oldstylenums{Javier 2011}}


\begin{document}
\maketitle

\input{Remerciements}
%\clearpage

\tableofcontents
\clearpage

% Pour avoir un interligne de 1,5
\begin{onehalfspace}
\input{Partie1}
\input{Partie2}
\input{Partie3}
\input{Partie4}
\input{Partie5}
\input{Partie6}
\input{Partie7}
% Pour finir l'interligne de 1,5
\end{onehalfspace}
\end{document}



pour les erreurs voilà ce qu'il y a quand je génère une section avec matrice :

Code: Tout sélectionner
! Argument of \@sect has an extra }.
<inserted text>
\par
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
I've run across a `}' that doesn't seem to match anything.
For example, `\def\a#1{...}' and `\a}' would produce
this error. If you simply proceed now, the `\par' that
I've just inserted will cause me to report a runaway
argument that might be the root of the problem. But if
your `}' was spurious, just type `2' and it will go away.
Runaway argument?
{\normalfont \Large \bfseries } 1 & 2 \\ 3 & 4 \protect \end {pmatrix\ETC.
! Paragraph ended before \@sect was complete.
<to be read again>
\par
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
I suspect you've forgotten a `}', causing me to apply this
control sequence to too much text. How can we recover?
My plan is to forget the whole thing and hope for the best.
Runaway argument?
matrice $\protect \<def>-command \reserved@a \global \<>-\let \begingroup \ETC.
! Paragraph ended before \HyPsd@@ProtectSpacesFi was complete.
<to be read again>
\par
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
I suspect you've forgotten a `}', causing me to apply this
control sequence to too much text. How can we recover?
My plan is to forget the whole thing and hope for the best.
! Use of \HyPsd@RemoveMask doesn't match its definition.
\Hy@tempa ->\par
|
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
If you say, e.g., `\def\a1{...}', then you must always
put `1' after `\a', since control sequence names are
made up of letters only. The macro here has not been
followed by the required stuff, so I'm ignoring it.
! Undefined control sequence.
\HyPsd@ProtectSpaces ...d@RemoveMask #1\HyPsd@End
#1
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
Runaway argument?
{
! Paragraph ended before \HyPsd@RemoveBraces was complete.
<to be read again>
\par
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
I suspect you've forgotten a `}', causing me to apply this
control sequence to too much text. How can we recover?
My plan is to forget the whole thing and hope for the best.
! Extra }, or forgotten \endgroup.
\pdfstringdef ...d@RemoveBraces \expandafter {#1|}
\global \let #1\HyPsd@Stri...
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
I've deleted a group-closing symbol because it seems to be
spurious, as in `$x}$'. But perhaps the } is legitimate and
you forgot something else, as in `\hbox{$x}'. In such cases
the way to recover is to insert both the forgotten and the
deleted material, e.g., by typing `I$}'.
! Argument of \HyPsd@CheckCatcodes has an extra }.
<inserted text>
\par
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
I've run across a `}' that doesn't seem to match anything.
For example, `\def\a#1{...}' and `\a}' would produce
this error. If you simply proceed now, the `\par' that
I've just inserted will cause me to report a runaway
argument that might be the root of the problem. But if
your `}' was spurious, just type `2' and it will go away.
Runaway argument?
\global \let \Hy@tempa \HyPsd@String
! Paragraph ended before \HyPsd@CheckCatcodes was complete.
<to be read again>
\par
l.9 ...rix} 1 & 2 \\ 3 & 4 \protect\end{pmatrix}$}
I suspect you've forgotten a `}', causing me to apply this
control sequence to too much text. How can we recover?
My plan is to forget the whole thing and hope for the best.
)
Runaway argument?
\@empty \HyPsd@End \Hy@tempa \expandafter \HyPsd@Subst \expandafter {\ETC.
! File ended while scanning use of \HyPsd@RemoveMask.
<inserted text>
\par
l.136 \input{Partie1}
I suspect you have forgotten a `}', causing me
to read past where you wanted me to stop.
I'll try to recover; but if the error is serious,
you'd better type `E' or `X' now and fix your file.
[4
]
! LaTeX Error: \begin{onehalfspace} on input line 135 ended by \end{document}.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.145 \end{document}
Your command was ignored.
Type I <command> <return> to replace it with another command,
or <return> to continue without it.
(./Global.aux) )
(\end occurred inside a group at level 3)
### semi simple group (level 3) entered at line 9 (\begingroup)
### semi simple group (level 2) entered at line 135 (\begingroup)
### semi simple group (level 1) entered at line 135 (\begingroup)
### bottom level
(\end occurred when \ifx on line 9 was incomplete)
(\end occurred when \ifx on line 9 was incomplete)
(\end occurred when \ifnum on line 9 was incomplete)
(\end occurred when \ifx on line 9 was incomplete)
(\end occurred when \ifdim on line 9 was incomplete)
Here is how much of TeX's memory you used:
8756 strings out of 495061
122700 string characters out of 1182620
308284 words of memory out of 3000000
11719 multiletter control sequences out of 15000+50000
14414 words of font info for 56 fonts, out of 3000000 for 9000
28 hyphenation exceptions out of 8191
38i,8n,37p,539b,607s stack positions out of 5000i,500n,10000p,200000b,50000s
pdfTeX warning (dest): name
{chapter.3} has been referenced but does not exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.5.3} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.5.2} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.5.1} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{section.2.5} has been referenced but does not exist
, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.4.2} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.4.1} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{section.2.4} has been referenced but does not exist
, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.3.6} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.3.5} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.3.4} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.3.3} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.3.2} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.3.1} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{section.2.3} has been referenced but does not exist
, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.2.6} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.2.5} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.2.4} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.2.3} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.2.2} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.2.1} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{section.2.2} has been referenced but does not exist
, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.1.8} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.1.7} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.1.6} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.1.5} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.1.4} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.1.3} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.1.2} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{subsection.2.1.1} has been referenced but does not
exist, replaced by a fixed one
pdfTeX warning (dest): name{section.2.1} has been referenced but does not exist
, replaced by a fixed one
pdfTeX warning (dest): name{chapter.2} has been referenced but does not exist,
replaced by a fixed one
</usr/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmbx12.pfb></usr/share
/texmf-texlive/fonts/type1/public/amsfonts/cm/cmbxsl10.pfb></usr/share/texmf-te
xlive/fonts/type1/public/amsfonts/cm/cmex10.pfb></usr/share/texmf-texlive/fonts
/type1/public/amsfonts/cm/cmmi12.pfb></usr/share/texmf-texlive/fonts/type1/publ
ic/amsfonts/cm/cmmi8.pfb></usr/share/texmf-texlive/fonts/type1/public/amsfonts/
cm/cmr12.pfb></usr/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr17.pfb
></usr/share/texmf-texlive/fonts/type1/public/amsfonts/cm/cmr8.pfb></usr/share/
texmf-texlive/fonts/type1/public/amsfonts/cm/cmsy10.pfb>
Output written on Global.pdf (5 pages, 133905 bytes).
PDF statistics:
259 PDF objects out of 1000 (max. 8388607)
40 named destinations out of 1000 (max. 500000)
265 words of extra memory for PDF output out of 10000 (max. 10000000)


En tout cas merci de prendre le temps de me répondre :D
Dernière édition par kojak le Vendredi 31 Décembre 2010, 08:19, édité 1 fois.
Raison: Utilisation des balises code en lieu et place de color
Nosfer
Utilisateur
 
Messages: 8
Inscription: Mercredi 29 Décembre 2010, 16:27
Statut actuel: Post-bac | Master

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar Nosfer » Lundi 03 Janvier 2011, 22:24

up pleaseeee
Nosfer
Utilisateur
 
Messages: 8
Inscription: Mercredi 29 Décembre 2010, 16:27
Statut actuel: Post-bac | Master

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar pg » Mercredi 05 Janvier 2011, 11:13

Le problème vient d'hyperref. Une solution pour contourner est de définir une macro (robuste) \pmatrixcmd pour faire les matrices dans les titres de sections :

Code: Tout sélectionner
\documentclass{article}

\usepackage{amsmath}
\usepackage{hyperref}

\makeatletter
\newcommand{\pmatrixcmd}[1]{}%
\DeclareRobustCommand{\pmatrixcmd}[1]{%
  \left(\env@matrix#1\endmatrix\right)
}
\makeatother

\begin{document}

\tableofcontents

\section{La matrice $\pmatrixcmd{1 & 2 \\ 3 & 4}$}

\subsection{La matrice $\pmatrixcmd{1 & 2 \\ 3 & 4}$}

\subsubsection{La matrice $\pmatrixcmd{1 & 2 \\ 3 & 4}$}

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

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar Nosfer » Jeudi 13 Janvier 2011, 20:10

Merci beaucoup pg je vais testé ça tout a l'heure, et si ça marche t'es un Dieu du latex :D
Nosfer
Utilisateur
 
Messages: 8
Inscription: Mercredi 29 Décembre 2010, 16:27
Statut actuel: Post-bac | Master

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar Altermundus » Vendredi 14 Janvier 2011, 13:05

Nosfer a écrit:Merci beaucoup pg je vais testé ça tout a l'heure, et si ça marche t'es un Dieu du latex :D


Cela compile mais nous sommes bien d'accord qu'il y a un warning dans le log
Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding)
qui doit signifier que dans les bookmarks du pdf viewer on ne doit pas voir
la matrice .

Si j'ai bien compris c'est le rôle de \section{\texorpdfstring{$...$}{....}} d'éviter ce problème en remplaçant
la matrice par un titre lisible
C'est bien cela ?

Alain
Altermundus
Giga-utilisateur
 
Messages: 557
Inscription: Lundi 28 Mai 2007, 09:31
Localisation: Paris
Statut actuel: Actif et salarié | Enseignant

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar pg » Vendredi 14 Janvier 2011, 13:54

Oui, si on veut éviter tous ces warnings et avoir quelque chose de propre dans les bookmarks du PDF, il faut faire

Code: Tout sélectionner
\documentclass{article}

\usepackage{amsmath}
\usepackage{hyperref}

\makeatletter
\newcommand{\pmatrixcmd}[1]{}%
\DeclareRobustCommand{\pmatrixcmd}[1]{%
  \left(\env@matrix#1\endmatrix\right)
}
\makeatother

\begin{document}

\tableofcontents

\section{La matrice \texorpdfstring{$\pmatrixcmd{1 & 2 \\ 3 & 4}$}{Mat(1,2;3,4)}}

\subsection{La matrice \texorpdfstring{$\pmatrixcmd{1 & 2 \\ 3 & 4}$}{Mat(1,2;3,4)}}

\subsubsection{La matrice \texorpdfstring{$\pmatrixcmd{1 & 2 \\ 3 & 4}$}{Mat(1,2;3,4)}}

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

Re: Mettre une matrice dans un titre de section ou sous-sect

Messagepar Altermundus » Vendredi 14 Janvier 2011, 14:55

pg a écrit:Oui, si on veut éviter tous ces warnings et avoir quelque chose de propre dans les bookmarks du PDF, il faut faire


Je suppose mais je n'ai pas regardé que l'on peut demander à ne pas avoir de bookmarks. Si oui cela évite t-il les warnings ?

Je me réponds bookmarks=false et cela semble correct
Alain
Altermundus
Giga-utilisateur
 
Messages: 557
Inscription: Lundi 28 Mai 2007, 09:31
Localisation: Paris
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: Yandex [Bot] et 32 invités