Numerare equazioni

  • Creatore
    Topic
  • #106440
    Up
    0
    Down
    ::


    Ciao a tutti, vorrei sapere quali opzioni ci sono per numerare le equazioni presenti in un testo… Ossia: oltre alla numerazione progressiva che viene generata automaticamente l’utente può personalizzarle? Grazie mille.

Visualizzazione 8 filoni di risposte
  • Autore
    Risposte
    • #106441
      OldClaudio
      Partecipante
        Up
        0
        Down
        ::


        Ci sono almeno tre o quattro numerazioni di equazioni già personalizzate, o quasi.

        a) La numerazione assoluta che comincia da 1 dalla prima del documento e prosegue fino alla fine del documento. È quella della classe article.
        b) La numerazione che ricomincia da 1 ad ogni capitolo; è quella usata dalle classi report e book.
        c) La numerazione per sotto equazioni da usare nell’ambiente subequation definito dalla casse amsmath, utile per i sistemi di equazioni; il sistema nel suo complesso ha un numero e le sue equazioni sono numerate con lettere distinte aggiunte al numero del sistema.
        d) Il comando \tag definito dal pacchetto amsmath permette di affibbiare ad una equazione un’ “etichetta” anche non numerica con cui identificare l’equazione; questa “etichetta” è recuperabile con il comando \label e la si può citare con il comando \ref.

        Sarebbe possibile (ri)definire il comando \theequation ma il risultato sarebbe molto difficile da gestire.

      • #106442
        Up
        0
        Down
        ::


        Grazie mille per i suggerimenti; io ho un file con formule che si trovano soltanto all’interno di teoremi, e sarebbe veramente bello se si potesse fare in modo che la numerazione delle equazioni ricominci ad ogni teorema (qualcosa come: #teorema.#equazione). Quanto sarebbe complicato?

      • #106443
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::

          Matteo Dann” post=106519Grazie mille per i suggerimenti; io ho un file con formule che si trovano soltanto all’interno di teoremi, e sarebbe veramente bello se si potesse fare in modo che la numerazione delle equazioni ricominci ad ogni teorema (qualcosa come: #teorema.#equazione). Quanto sarebbe complicato?

          Premesso che secondo me sarebbe una cosa molto insolita e se ha delle finalità didattiche non lo farei. Ma è una scelta tua perfettamante legittima.

          Prima devi togliere il contatore equation dalla lista di reset predefintia, presumibilmnete quella del contatore chapter; poi devi aggiungerla alla lista di reset del contatore theorem; infine devi ridefinire il comando \theequation; più o meno così:`\counterwithout{equation}{chapter}
          \counterwithin{equation}{theorem}`Il tutto dipende dalla classe che usi; i comandi che ti ho descritto sono quelli della classe memoir, ma ci sono anche degli altri pacchetti che mettono a disposizione comandi con le stesse funzionalità.
          Nota che il comando \counterwithin ridefinisce anche il comando \theequation come formato dal numero del teorema.numero dell’equazione; non hai quindi bisogno di specificare una tua definizione.

          Io, personalmente, proverei queste definizioni e scriverei il mio documento; visto il risultato, se lo trovo funzionale lo conserverei, se lo trovassi confusionale, cancellerei quei due comandi e tutto tornerebbe a funzionare come preimpostato.

          Va da se che se usi la classe article non devi usare il primo comando che toglie il contatore dalla lista di reset del contatore chapter, visto che in article, quel contatore non è definito.

        • #106444
          Up
          0
          Down
          ::


          Ho provato a inserire questo codice ma non funziona:
          `\renewcommand{\theequation}{\arabic{equation}}
          \counterwithin{equation}{teorema}`
          (uso article come classe)

        • #106445
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            Infatti ti ho detto che quei due comandi non sono standard ma si trovano in certe classi come memoir e in certi pacchetti come per esempio chngcntr.

            Se ti fidi di usare la dichiarazione \makeatletter nel preambolo, usando article, puoi semplicemente scrivere`\makeatletter
            \@addtoreset{equation}{theorem}
            \renewcommand\theequation{(\thetheorem.\arabic{equation)}`Togli le parentesi tonde se ti appaiono doppie nel documento composto.
            Non solo, ma la prima definizione che dai prima di cambiare la lista di reset non ci vuole, perché è la definizione di default della classe article.

          • #106446
            Up
            0
            Down
            ::


            Il codice non funziona…. devo caricare qualche pacchetto?

          • #106447
            OldClaudio
            Partecipante
              Up
              0
              Down
              ::


              Cosa vuol dire “non funziona”?
              Se vuoi un aiuto devi inviare almeno i messaggi d’errore che ricevi, o, meglio ancora, un esempio minimo compilabile.
              Un esempio minimo compilabile è un file .tex che comincia con \documentclass e finisce con \end{document} e che contiene il minimo indispensabile per replicare l’errore.

            • #106448
              Up
              0
              Down
              ::


              Ricevo un errore sul comando
              `\begin{equation}`

              da cosa potrebbe essere causato?

              [attachment=1619]perforum.tex[/attachment]

              [attachment=1620]perforum.pdf[/attachment]

              Attachments:
              You must be logged in to view attached files.
            • #106449
              OldClaudio
              Partecipante
                Up
                0
                Down
                ::


                Certo se mescoli le soluzioni che ti ho dato e se non definisci direttamente o indirettamente il contatore theorem la cosa non funziona; questo funziona:`% !TEX TS-program = pdflatex
                % !TEX encoding = UTF-8 Unicode
                %fondamentali:
                \documentclass[12pt, twoside]{article}% article in fronte-retro?
                \usepackage[italian]{babel}
                \usepackage[T1]{fontenc}
                \usepackage{lmodern} % font vettoriali con codifica T1
                \usepackage[utf8]{inputenc} % input di tutti i caratteri
                \usepackage{geometry} % dimensioni della pagina
                \usepackage{makeidx} % pacchetto per l'indice analitico

                \geometry{a4paper,top=3cm,bottom=2.5cm,
                left=3.75cm,right=3.75cm
                ,bindingoffset=5mm
                } %margini; bindingoffset stabilisce un
                % margine di rilegatura, di solito inutile; specialmente
                % con margini laterali così grandi è del tutto inutile.

                \usepackage{fancyhdr}
                \pagestyle{fancy} %stile delle testatine e dei piedini

                \renewcommand{\sectionmark}[1]{%
                \markboth{\thesection.\ #1}{}}

                \fancyhead{} % clear all fields
                %parte
                \fancyhead[LE]{\nouppercase{\slshape \leftmark}} % con article “sezione”
                \fancyhead[RO]{\nouppercase{\slshape \rightmark}} %con article “sottosezione”
                \fancyfoot[C]{\thepage}
                \renewcommand{\headrulewidth}{0.4pt}
                \renewcommand{\footrulewidth}{0.4pt}

                \fancypagestyle{plain}{%
                \fancyhf{} % cancella tutti i campi di intestazione e pi\`e di pagina
                \fancyfoot[C]{\thepage} % tranne il centro

                \renewcommand{\headrulewidth}{0pt}
                \renewcommand{\footrulewidth}{0.4pt}}

                %altro:
                \usepackage{amsmath,amssymb}% per la matematica avanzata
                \usepackage{xcolor} %testi in colore
                \usepackage{graphicx} %immagini
                \usepackage{sidecap} %didascalie delle figure ai lati
                \usepackage{float} %posizionare le figure dove si vuole; ma da non usare mai
                \usepackage{stmaryrd} %fulmine
                %servirà a qualcosa… Se non sai se ti serve davvero, non caricarlo
                \usepackage{multicol} %colonne
                \usepackage{pgfplots} %per le costruzioni in goegebra
                \usepackage{quoting} %citazioni
                \usepackage{subfig} %sottofigure e sottotabelle dentro un unico float
                \usepackage{longtable} % tabelle su più pagine
                \usepackage{multirow} % meglio non usarlo
                \usepackage{lscape} % mette in landscape il contenuto di una pagina
                \usepackage{relsize} % permette di usare cambiamenti di corpo relativi

                %tabelle:
                \usepackage{booktabs}
                \usepackage{caption}
                %\usepackage{float} % già caricato

                \usepackage{amsthm}

                %definizioni:
                \usepackage{mathtools} %serve per le prossime definizioni:
                %valore assoluto ( \abs{} ):
                \DeclarePairedDelimiter{\abs}{\lvert}{\rvert}
                %norma ( \norma{} ):
                \DeclarePairedDelimiter{\norma}{\lVert}{\rVert}
                %\newcommand{\vet}{\stackrel{\rightarrow}}
                %\newcommand{\Vet}{\stackrel{\longrightarrow}}

                \usetikzlibrary{arrows}

                \newcommand{\som}{\sum\limits}%scrive gli indici della sommatoria sopra e sotto anche nelle frazioni

                \usepackage{chngcntr}

                \newtheorem{teorema}{Teorema}

                \counterwithin{equation}{teorema}
                \newtheorem{corollario}{Corollario}[teorema]

                \theoremstyle{definition}
                \newtheorem{definizione}{Definizione}
                \usepackage{hyperref} %per i link; da caricare sempre per ultimo

                \begin{document}
                \section{Qualsiasi}

                Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla.

                Bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla.

                \section{Triangoli}
                \begin{teorema} Dato un triangolo qualsiasi
                \begin{center}
                \begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=1.2cm,y=1.2cm]
                \clip(0.5,0.5) rectangle (7.,4.);
                \draw [shift={(3.06,3.34)}] (0,0) — (-131.35881474209867:0.6) arc (-131.35881474209867:-33.16988667383195:0.6) — cycle;
                \draw [shift={(1.,1.)}] (0,0) — (0.:0.6) arc (0.:48.64118525790135:0.6) — cycle;
                \draw [shift={(6.64,1.)}] (0,0) — (146.83011332616803:0.6) arc (146.83011332616803:180.:0.6) — cycle;
                \draw (1.,1.)– (3.06,3.34);
                \draw (3.06,3.34)– (6.64,1.);
                \draw (1.,1.)– (6.64,1.);
                \begin{scriptsize}
                \draw (1.9,2.42) node {$c$};
                \draw (5.2,2.28) node {$b$};
                \draw (3.88,0.85) node {$a$};
                \draw (3.1,3.06) node {$\alpha$};
                \draw (1.36,1.22) node {$\beta$};
                \draw (6.2,1.12) node {$\gamma$};
                \end{scriptsize}
                \end{tikzpicture}
                \end{center}
                vale la seguente relazione fra i lati e gli angoli interni:
                \begin{equation}
                \frac{a}{\sin\alpha}=\frac{b}{\sin\beta}=\frac{c}{\sin\gamma}.
                \end{equation}

                \begin{proof}
                Infatti, usando la formula per il calcolo dell'area del triangolo:
                \begin{equation}
                A = \frac{1}{2}ab\sin\gamma=\frac{1}{2}ac\sin\beta=\frac{1}{2}bc\sin\alpha
                \end{equation}
                si ha:
                \begin{equation*}
                \begin{aligned}
                ab\sin\gamma=ac\sin\beta=bc\sin\alpha&
                \Leftrightarrow \frac{ab}{abc}\sin\gamma=\frac{ac}{abc}\sin\beta=\frac{bc}{abc}\sin\alpha\\
                &\Leftrightarrow \frac{\sin\gamma}{c}=\frac{\sin\beta}{b}=\frac{\sin\alpha}{a}\\
                &\Leftrightarrow \frac{c}{\sin\gamma}=\frac{b}{\sin\beta}=\frac{a}{\sin\alpha}
                \end{aligned}
                \end{equation*}
                e ciò prova l'assunto.
                \end{proof}
                \end{teorema}

                \end{document}`Ti ho modificato un poco il testo per alcuni motivi.
                1) Ho aggiunto un paio di sezionamenti con testi più o meno insignificanti, per mostrare che davvero le equazioni sono numerate subordinatamente ai teoremi.
                2) Ho aggiunto del testo prima e dopo l’enunciato e dentro la dimostrazione, anche perché alcune parti erano prive di verbo della frase principale.
                3) Ho tolto la punteggiatura esterna alle equazioni perché quella che hai usato tu era incoerente; La punteggiatura esterna o si usa sempre o non si usa mai, non si può usare solo talvolta.

            Visualizzazione 8 filoni di risposte
            • Devi essere connesso per rispondere a questo topic.

            Go to top