Domande più frequenti sul pacchetto amsmath e i pacchetti collegati.

MANUALI
CURRICULUM
LA MIA TESI
CHI SONO
TELELAVORO
CORSI ONLINE
ENGLISH
SCRIVIMI
WEBMASTER
XML
AUTOCAD
LE FAQ DI LATEX
  • Domanda: Dove devo cercare la documentazione?

    Risposta: La documentazione per l'utente è costituita dal "Manuale
    utente per il pacchetto amsmath" (amsldoc.dvi, .pdf, .ps, .tex). Se non
    lo si trova sul proprio sistema, può essere scaricato da

    ftp://ftp.ams.org/tex/amslatex/math/amsldoc.tex

    Quella che segue è la lista completa dei file di documentazione:

    file TeX
    amsldoc.tex Manuale utente per il pacchetto amsmath
    diffs-m.txt Differenze tra le versioni 1.1, 1.2, e 2.0 di amsmath
    subeqn.tex Documento esemplificativo che mostra l'uso
    dell'ambiente subequations e l'effetto dell'opzione
    fleqn
    technote.tex Discute di alcune questioni tecniche
    testmath.tex Esempi di molti dei costrutti matematici
    messi a disposizione dal pacchetto amsmath

    file non-TeX
    amsmath.faq Questo file
    00readme.txt Quadro generale
    install.txt Istruzioni per l'installazione

  • Domanda: Ottengo uno strano errore che sembra avere a che fare con
    un titolo di sezione o la didascalia di una figura.

    Risposta: Si controlli se è stato usato un comando `fragile' all'interno
    di un argomento `mobile' (titoli di articolo, titoli di sezione,
    didascalie di figure, didascalie di tavole, ecc.). Bisogna tenere
    presente che non tutti i comandi matematici sono robusti, e alcuni che
    sono robusti nel LaTeX normale diventano fragili quando si aggiunge il
    pacchetto amsmath (per esempio, \bigotimes). Si veda la sezione C.1.3
    del libro del LaTeX.

    La maggior parte dei comandi matematici più comuni è stata resa robusta,
    ma per ognuno di essi c'è per gli utenti un prezzo nascosto da pagare:
    rendere un comando robusto comporta l'uso di un nome aggiuntivo nella
    sequenza di controllo, e questo fa sì che sia più probabile incontrare
    messaggi di errore come il seguente:

    TeX capacity exceeded [hash size=3500]

    A differenza della soluzione `require \protect', quest'ultimo problema
    può essere molto difficile da risolvere per l'utente medio.

  • Domanda: Perchè non posso usare un'abbreviazione per l'ambiente
    `align'?

    Risposta: È pratica piuttosto comune usare abbreviazioni come \bal
    ... \eal per \begin{align} ... \end{align}. Per ragioni tecniche, questo
    non è possibile con molte delle strutture di equazioni più complesse di
    amsmath (si veda technote.tex per altri particolari).

  • Domanda: Perchè non posso usare \begin{align} ... \end{align} nella
    definizione di un altro ambiente?

    Se si desidera creare un ambiente più elaborato usando align o uno degli
    altri ambienti come base, si può fare come segue:

    \newenvironment{mioalign}{%
    % qui materiale aggiuntivo
    \align
    }{%
    \endalign
    % qui materiale aggiuntivo
    }

    Si veda anche technote.tex, che comprende qualche dettaglio in più.

  • Domanda: Perchè \matrix, \pmatrix, e \cases hanno smesso di
    funzionare quando ho aggiunto il pacchetto amsmath?

    Risposta: La vecchia forma di quei comandi è da considerare obsoleta.
    Quando LaTeX è stato inizialmente scritto negli anni 1983--1985, quei
    tre comandi sono stati traslati direttamente da plain.tex, in mancanza
    di meglio. Quando il pacchetto amsmath è stato portato su LaTeX (la sua
    origina era in AMS-TeX), ha recato con sè comandi con lo stesso nome ma
    sintassi differente. Entrambi vanno malamente d'accordo con il resto di
    LaTeX. L'unica soluzione ragionevole è stata abbandonare sia la sintassi
    di AMS-TeX che quella del plain TeX. Chi utilizza il pacchetto amsmath
    deve pertanto seguire la sintassi tipica di un "ambiente" in LaTeX e
    scrivere

    \begin{matrix}
    ... \\
    ... \\
    ...
    \end{matrix}

    (analogamente per pmatrix e cases).

  • Domanda: Perchè \over, \atop, \above, ..., \overwithdelims danno
    degli warning quando aggiungo il pacchetto amsmath?

    Risposta: Quei comandi sono primitive TeX la cui sintassi insolita è
    inopportuna in un documento LaTeX. Inoltre usarli a livello visibile in
    un documento rende molto difficile ottenere certi miglioramenti, che
    sarebbero altrimenti possibili, nella composizione del testo. Se si usa
    il pacchetto amsmath i comandi \frac, \binom, e \genfrac forniscono
    le stesse funzionalità con la sintassi standard di LaTeX. Alcuni
    particolari in più sono forniti nel file technote.tex.

    A chi sta scrivendo un pacchetto LaTeX che usa \over o un altro
    operatore frazionario generalizzato per scopi interni nella costruzione
    di comandi più complessi, raccomandiamo di usare \@@over, \@@atop, ecc.
    (effettuando prima un controllo per essere certi che siano definiti)

    \@ifundefined{@@over}{%
    \let\@@over\over % ripieghiamo se non è caricato amsmath
    \let\@@overwithdelims\overwithdelims
    \let\@@atop\atop \let\@@atopwithdelims\atopwithdelims
    \let\@@above\above \let\@@abovewithdelims\abovewithdelims
    }{}

  • Domanda: Come faccio ad ottenere che le mie equazioni e miei teoremi
    condividano la stessa sequenza numerica?

    Risposta:

    \numberwithin{equation}{section}% [Se desiderato]

    \newtheorem{thm}[equation]{Theorem}
    \newtheorem{prop}[equation]{Proposition}
    ...

  • Domanda: Come faccio a mettere un riquadro attorno a tutta
    l'equazione, compreso il numero dell'equazione?

    Risposta: Dipende. Per una semplice equazione si può fare così:

    \newcommand{\boxedeqn}[1]{%
    \[\fbox{%
    \addtolength{\linewidth}{-2\fboxsep}%
    \addtolength{\linewidth}{-2\fboxrule}%
    \begin{minipage}{\linewidth}%
    \begin{equation}#1\end{equation}%
    \end{minipage}%
    }\]%
    }

    ...

    Qui c'è del testo che precede l'equazione nel riquadro.
    \boxedeqn{
    X_1(j\omega) =
    \int\limits^{+\infty}_{-\infty} x_1(t) e^{-j\omega t} dt
    }
    E qui c'è del testo che la segue.

  • Domanda: Quando modifico \mathindent non vedo alcun effetto.

    Risposta: Il pacchetto amsmath non usa \mathindent proprio come fa il
    LaTeX di base. Usa invece una variabile interna \@mathmargin che è una
    variabile "glue" anzichè una variabile "dimen". Comunque se si aggiorna
    alla versione 2.0 del pacchetto amsmath si ottengono probabilmente i
    risultati desiderati, perché in tal caso \mathindent è un alias di
    \@mathmargin.

  • Domanda: Ho provato \raisetag ma non ha avuto alcun risultato
    evidente.

    Risposta: L'aggiustamento specificato con \raisetag non è applicato a
    meno che il numero dell'equazione sia stato spostato dalla sua normale
    posizione perché LaTeX valuta che non ci sia spazio sufficiente per
    contenerlo. Per una normale equazione con tanto spazio, l'aggiustamento
    \raisetag è ignorato. Se si sta cercando di usare \raisetag in simili
    circostanze, può darsi che l'oggetto da posizionare non sia un vero e
    proprio numero di equazione; si provi invece ad usare i comandi LaTeX
    standard per spostare oggetti (\makebox, \raisebox, l'ambiente picture,
    ecc.).

  • Domanda: Voglio qualcosa tipo l'ambiente "cases" che consenta di
    avere un numero di equazione distinto per ogni riga.

    Risposta: Si può provare il pacchetto "cases" di Donald Arseneau. È
    disponibile presso il CTAN, se non già compreso sul proprio sistema.

  • Domanda: Il posizionamento verticale dei simboli posti su un
    simbolo base con \underset e/o \overset non è soddisfacente.

    Risposta: Si può provare il pacchetto "accents" di Javier Bezos. È
    disponibile presso il CTAN.

  • Domanda: Con \sideset il deponente risulta sovrapposto al materiale
    adiacente.

    Risposta: È un bug. Nella versione 2.0 di amsmath non è stato ancora
    corretto.

  • Domanda: Gli estremi inferiori su \iint\nolimits sono posti troppo
    distanti dal simbolo di integrale.

    Risposta: È un bug. È stato corretto nella versione 2.0 del pacchetto
    amsmath.

  • Domanda: La spaziatura di \ldots è diversa dai valori normali di
    LaTeX quando aggiungo il pacchetto amsmath.

    Risposta: È un bug. È stato corretto nella versione 2.0 del pacchetto
    amsmath.

  • Domanda: In `xalignat' ottengo un errore `Extra & on this line'.

    Risposta: È un bug. È stato corretto nella versione 2.0 del pacchetto
    amsmath.

  • Domanda: La prima cella vuota nell'ambiente `aligned' porta a un
    errore di TeX.

    Risposta: In questa situazione, la tecnica con cui LaTeX scandisce gli
    argomenti opzionali non funziona in modo affidabile. Un opportuno
    accorgimento è stato aggiunto nella versione 2.0 del pacchetto amsmath.

  • Domanda: `align*' all'interno di `gather' risulta spostato a destra
    (per esempio in testmath.tex, p. 37).

    Risposta: È un bug. È stato corretto nella versione 2.0 del pacchetto
    amsmath.

  • Domanda: La numerazione delle equazioni è talvolta posizionata
    malamente, o spostata su una riga separata benché sembri esserci spazio
    sufficiente per mantenerla sulla stessa riga.

    Risposta: Qualora si abbia una versione più vecchia del pacchetto
    amsmath, si provi ad aggiornarla. Alcuni bug di questo tipo sono stati
    eliminati nella versione 2.0.

  • Domanda: Nonostante le opzioni fleqn + leqno, l'ambiente `align'
    pone la numerazione sulla destra.

    Risposta: È un bug. È stato corretto nella versione 2.0 del pacchetto
    amsmath.

  • Domanda: \numberwithin{equation}{chapter} con la classe di
    documento `report' oppure `book' aggiunge troppi livelli alla
    numerazione delle equazioni: (1.1.x) invece di (1.x).

    Risposta: È un bug. È stato corretto nella versione 2.0 del pacchetto
    amsmath. Se si ha una versione più vecchia, una soluzione di ripiego è
    semplificare la definizione di \theequation prima di chiamare
    \numberwithin:

    \renewcommand{\theequation}{\arabic{equation}}
    \numberwithin{equation}{chapter}

  • Domanda: \accentedsymbol genera il messaggio di errore `Missing
    number, treated as zero.'

    Risposta: È un bug. È stato corretto nella versione 1.2c del pacchetto
    amsxtra.

  • Domanda: Usando \ensuremath all'interno di un ambiente di
    allineamento (aligned, array, ecc.) ottengo un messaggio di errore che
    mi lascia davvero perplesso:

    ! Incomplete \ifmmode; all text was ignored after line 9.
    <inserted text>
    \fi
    l.9 }

    Risposta: Questo non è un problema specifico di amsmath, anzi pone
    finalmente rimedio ad una mancanza nella definizione di \ensuremath, che
    è stata corretta in LaTeX a partire dalla versione 1996/06/01. Se non è
    possibile aggiornare la propria versione di LaTeX per risolvere questo
    problema, può essere necessario metterci una pezza aggiungendo nei
    propri documenti la seguente dichiarazione:

    \DeclareRobustCommand\ensuremath[1]{\ifmmode#1\else{$#1$}\fi}

  • Domanda: Voglio mostrare un esempio di alcune righe da scrivere
    al computer, centrato rispetto a un numero di equazione. amsmath non
    permette di usare \verb nell'ambiente equation. Come posso creare
    questo esempio?

    Risposta: Dalla versione 2.0 di amsmath, questo non è più valido per
    ambienti equation semplici. Per ambienti speciali come align, gather,
    split, multline, aligned, alignat, ecc., occorre prima memorizzare il
    testo usando un ambiente lrbox, e poi richiamarlo con \usebox (se non si
    sa come usare lrbox e \usebox, si veda il libro del LaTeX (2a edizione)
    e/o la documentazione usrguide.tex fornita con LaTeX).

  • Domanda: In amsmath.sty sono scomparsi @! e @, che erano in
    amstex.sty. Come faccio ad ottenere lo stesso risultato usando amsmath?

    Risposta: Per @ bisogna usare \mspace{.3mu}, e per @! \mspace{-.3mu}.
    Comunque, siccome questi spazi molto piccoli sono normalmente usati in
    gruppi di tre o più, si tenga presente che è meglio sostituire @!@!@!
    con \mspace{-.9mu} piuttosto che con tre comandi \mspace separati.

MATLAB
FORTRAN 90
TURBOPASCAL
C/C++
PERL
JAVA
JAVASCRIPT
SCILAB
LATEX
FORTRAN 77
LINUX
UNIX