Spezzare formula lunga

  • Questo topic ha 13 risposte, 5 partecipanti ed è stato aggiornato l'ultima volta 12 anni fa da egreg9.
  • Creatore
    Topic
  • #96147
    Up
    0
    Down
    ::


    Ciao a tutti ragazzi,

    ho un problema nello spezzare formule molto lunghe che non entrano in una singola riga. Ho già provato multline e split, il problema è che se apro una parentesi quadra grande con
    [tt]\left[ [/tt]

    Nel primo addendo e voglio chiuderla nell’ultimo addendo Latex mi da errore, ed infatti nel pdf non figura quella finale, perchè è come se per essere chiusa nell’addendo finale, dovrebbe essere stata aperta anche in quello finale (e non nel primo, come nel mio caso). Mi sarebbe particolarmente comodo se riuscissi a collocare tutto a sinistra, o meglio ancora se con qualche trucchetto riuscissi ad utilizzare la “&” per decidere io dove far andare a capo…se non è possibile, va benissimo qualsiasi cosa che mi permetta di visualizzare le parentesi quadre grandi seppur spezzate.

    il codice è questo:
    `
    \documentclass[a4paper,12pt,top=2cm,bottom=2cm,left=2cm,right=2cm]{report}
    \linespread{1.15}

    \usepackage[english]{babel}
    \usepackage{amsthm} %per i teoremi
    \usepackage{amsfonts} %per il carattere
    \usepackage{eufrak} %per il carattere
    \usepackage{mathrsfs} %per il carattere
    \usepackage{amsmath} %per scrivere in grassetto simboli matematici
    \theoremstyle{definition}

    \newtheorem{prop}{Proposition}[chapter]
    \newtheorem{cor}{Corollary}[chapter]
    \newtheorem{defn}{Definition}[chapter]
    \newtheorem{oss}{Observation}[chapter]
    \newtheorem{ex}{Example}[chapter]
    \newtheorem{thm}{Theorem}[chapter]
    \newtheorem{lemma}{Lemma}[chapter]
    \newtheorem{notazione}{Notation}[chapter]

    \begin{document}

    \begin{multline}
    \beta(N-r,,N,1,\cdots,N-r-1,\cdots,y_1^M,\cdots,y_{N-r-1}^M,\phi)=\\
    =a+\\
    \left[
    \sum_{j=1}^{M}d_j
    \left(
    \sum_{i=1}^{N-r-1}g_i(X+y)\\
    +l_{N-r}(X+z-\frac{N-r-1}{y_k^j}\\
    +\sum_{h=0}^{r-1}g_{N-h}(X-h)
    \right)
    -\beta
    \right]
    \end{multline}

    \end{document}`

    Qualsiasi aiuto sarà molto gradito.

    Grazie mille:)

Visualizzazione 12 filoni di risposte
  • Autore
    Risposte
    • #96148
      Up
      0
      Down
      ::

      ailart_sua” post=95762Ciao a tutti ragazzi,

      ho un problema nello spezzare formule molto lunghe che non entrano in una singola riga. Ho già provato multline e split, il problema è che se apro una parentesi quadra grande con
      [tt]\left[ [/tt]

      Nel primo addendo e voglio chiuderla nell’ultimo addendo Latex mi da errore, ed infatti nel pdf non figura quella finale, perchè è come se per essere chiusa nell’addendo finale, dovrebbe essere stata aperta anche in quello finale (e non nel primo, come nel mio caso). Mi sarebbe particolarmente comodo se riuscissi a collocare tutto a sinistra, o meglio ancora se con qualche trucchetto riuscissi ad utilizzare la “&” per decidere io dove far andare a capo…se non è possibile, va benissimo qualsiasi cosa che mi permetta di visualizzare le parentesi quadre grandi seppur spezzate.

      il codice è questo:
      `
      \documentclass[a4paper,12pt,top=2cm,bottom=2cm,left=2cm,right=2cm]{report}
      \linespread{1.15}

      \usepackage[english]{babel}
      \usepackage{amsthm} %per i teoremi
      \usepackage{amsfonts} %per il carattere
      \usepackage{eufrak} %per il carattere
      \usepackage{mathrsfs} %per il carattere
      \usepackage{amsmath} %per scrivere in grassetto simboli matematici
      \theoremstyle{definition}

      \newtheorem{prop}{Proposition}[chapter]
      \newtheorem{cor}{Corollary}[chapter]
      \newtheorem{defn}{Definition}[chapter]
      \newtheorem{oss}{Observation}[chapter]
      \newtheorem{ex}{Example}[chapter]
      \newtheorem{thm}{Theorem}[chapter]
      \newtheorem{lemma}{Lemma}[chapter]
      \newtheorem{notazione}{Notation}[chapter]

      \begin{document}

      \begin{multline}
      \beta(N-r,,N,1,\cdots,N-r-1,\cdots,y_1^M,\cdots,y_{N-r-1}^M,\phi)=\\
      =a+\\
      \left[
      \sum_{j=1}^{M}d_j
      \left(
      \sum_{i=1}^{N-r-1}g_i(X+y)\\
      +l_{N-r}(X+z-\frac{N-r-1}{y_k^j}\\
      +\sum_{h=0}^{r-1}g_{N-h}(X-h)
      \right)
      -\beta
      \right]
      \end{multline}

      \end{document}`

      Qualsiasi aiuto sarà molto gradito.

      Grazie mille:)

      Benvenuto/benvenuta! 🙂

      Non userei quattro righe, bensì solo due per la formula spezzata. Invece di [tt]\left[/tt] e [tt]\right[/tt] (che sono sconsigliati in genere con sommatorie) ci sono [tt]\biggl[/tt] e [tt]\biggr[/tt]

      `
      \documentclass[a4paper,12pt]{report}

      \usepackage{amsmath}

      \begin{document}

      \begin{equation}
      \begin{split}
      &\beta(N-r,N,1,\dots,N-r-1,\dots,y_1^M,\dots,y_{N-r-1}^M,\phi)\\
      &\qquad=
      a+\sum_{j=1}^{M}d_j\biggl(\,\sum_{i=1}^{N-r-1}g_i(X+y)+l_{N-r}(X+z)\\
      &\hphantom{\qquad{}=}
      -\frac{N-r-1}{y_k^j}+\sum_{h=0}^{r-1}g_{N-h}(X-h)\biggr)-\beta
      \end{split}
      \end{equation}

      \end{document}
      `

      Qualche commento sul resto. Le opzioni [tt]top=2cm,bottom=2cm,left=2cm,right=2cm[/tt] sono proprie di geometry. Non sono sicuro di [tt]\linespread{1.15}[/tt]: o è troppo grande o troppo piccolo. Troppo grande se pensi a un’interlinea standard, troppo piccolo se ti tocca adoperare intrterlinea aumentata.

      Non sono nemmeno troppo convinto di come definisci i teoremi: il carattere corsivo che viene scelto normalmente serve a distinguerli facilmente nel testo; numerarli tutti separatamente darà gli incubi ai tuoi lettori: la proposizione 1.3 verrà prima o dopo il lemma 1.4? E che dire del teorema 1.8?

      Ciao
      Enrico

    • #96149
      Up
      0
      Down
      ::

      egreg9″ post=95763

      Ciao a tutti ragazzi,

      ho un problema nello spezzare formule molto lunghe che non entrano in una singola riga. Ho già provato multline e split, il problema è che se apro una parentesi quadra grande con
      [tt]\left[ [/tt]

      Nel primo addendo e voglio chiuderla nell’ultimo addendo Latex mi da errore, ed infatti nel pdf non figura quella finale, perchè è come se per essere chiusa nell’addendo finale, dovrebbe essere stata aperta anche in quello finale (e non nel primo, come nel mio caso). Mi sarebbe particolarmente comodo se riuscissi a collocare tutto a sinistra, o meglio ancora se con qualche trucchetto riuscissi ad utilizzare la “&” per decidere io dove far andare a capo…se non è possibile, va benissimo qualsiasi cosa che mi permetta di visualizzare le parentesi quadre grandi seppur spezzate.

      il codice è questo:
      `
      \documentclass[a4paper,12pt,top=2cm,bottom=2cm,left=2cm,right=2cm]{report}
      \linespread{1.15}

      \usepackage[english]{babel}
      \usepackage{amsthm} %per i teoremi
      \usepackage{amsfonts} %per il carattere
      \usepackage{eufrak} %per il carattere
      \usepackage{mathrsfs} %per il carattere
      \usepackage{amsmath} %per scrivere in grassetto simboli matematici
      \theoremstyle{definition}

      \newtheorem{prop}{Proposition}[chapter]
      \newtheorem{cor}{Corollary}[chapter]
      \newtheorem{defn}{Definition}[chapter]
      \newtheorem{oss}{Observation}[chapter]
      \newtheorem{ex}{Example}[chapter]
      \newtheorem{thm}{Theorem}[chapter]
      \newtheorem{lemma}{Lemma}[chapter]
      \newtheorem{notazione}{Notation}[chapter]

      \begin{document}

      \begin{multline}
      \beta(N-r,,N,1,\cdots,N-r-1,\cdots,y_1^M,\cdots,y_{N-r-1}^M,\phi)=\\
      =a+\\
      \left[
      \sum_{j=1}^{M}d_j
      \left(
      \sum_{i=1}^{N-r-1}g_i(X+y)\\
      +l_{N-r}(X+z-\frac{N-r-1}{y_k^j}\\
      +\sum_{h=0}^{r-1}g_{N-h}(X-h)
      \right)
      -\beta
      \right]
      \end{multline}

      \end{document}`

      Qualsiasi aiuto sarà molto gradito.

      Grazie mille:)

      Benvenuto/benvenuta! 🙂

      Non userei quattro righe, bensì solo due per la formula spezzata. Invece di [tt]\left[/tt] e [tt]\right[/tt] (che sono sconsigliati in genere con sommatorie) ci sono [tt]\biggl[/tt] e [tt]\biggr[/tt]

      `
      \documentclass[a4paper,12pt]{report}

      \usepackage{amsmath}

      \begin{document}

      \begin{equation}
      \begin{split}
      &\beta(N-r,N,1,\dots,N-r-1,\dots,y_1^M,\dots,y_{N-r-1}^M,\phi)\\
      &\qquad=
      a+\sum_{j=1}^{M}d_j\biggl(\,\sum_{i=1}^{N-r-1}g_i(X+y)+l_{N-r}(X+z)\\
      &\hphantom{\qquad{}=}
      -\frac{N-r-1}{y_k^j}+\sum_{h=0}^{r-1}g_{N-h}(X-h)\biggr)-\beta
      \end{split}
      \end{equation}

      \end{document}
      `

      Qualche commento sul resto. Le opzioni [tt]top=2cm,bottom=2cm,left=2cm,right=2cm[/tt] sono proprie di geometry. Non sono sicuro di [tt]\linespread{1.15}[/tt]: o è troppo grande o troppo piccolo. Troppo grande se pensi a un’interlinea standard, troppo piccolo se ti tocca adoperare intrterlinea aumentata.

      Non sono nemmeno troppo convinto di come definisci i teoremi: il carattere corsivo che viene scelto normalmente serve a distinguerli facilmente nel testo; numerarli tutti separatamente darà gli incubi ai tuoi lettori: la proposizione 1.3 verrà prima o dopo il lemma 1.4? E che dire del teorema 1.8?

      Ciao
      Enrico

      Ciao Enrico e grazie grazie mille per l’aiuto!!
      Con la formula sono riuscita a risolvere 😀
      Per quanto riguarda i commenti sulle impostazioni iniziali del documento, io sto scrivendo una tesi in inglese…sull’interlinea posso informarmi bene, mentre sul resto cosa mi consiglieresti ?

    • #96150
      Up
      0
      Down
      ::


      Ah prima ho dimenticato di chiederti gentilmente opinioni su altri piccoli problemi.

      1.Nel caso in cui una formula riesce ad entrare in un solo rigo, ma oltrepassa la riga immaginaria dei paragrafi di sola scrittura come posso far si che la formula rientri entro quel limite?Anche perchè in quei casi il numero della formula va a finire tra un rigo ed il successivo (non essendoci più spazio nel rigo della formula stessa), quindi è abbastanza bruttino.

      2.E’ per caso possibile utilizzare degli elenchi numerati o puntati “non” rientrati ?

      P.s non so se potevo chiedere aiuto per questi problemi in questo post o dovevo crearne uno nuovo :S

    • #96151
      alegenn
      Partecipante
        Up
        0
        Down
        ::


        Per il secondo quesito la risposta è sì: pacchetto [tt]enumitem[/tt].
        Meglio aprire un nuovo post quando i quesiti sono molto diversi dal titolo di quello corrente!
        Saluti

      • #96152
        Up
        0
        Down
        ::

        alegenn” post=95797Per il secondo quesito la risposta è sì: pacchetto [tt]enumitem[/tt].
        Meglio aprire un nuovo post quando i quesiti sono molto diversi dal titolo di quello corrente!
        Saluti

        Allora aprirò un altro post, grazie”!
        Saluti

      • #96153
        OldClaudio
        Partecipante
          Up
          0
          Down
          ::


          Nel caso 1) devi scegliere se è meglo avere il numero della formula nella riga successiva, oppure se spezzare la formula con split o meglio con multline; ma entrambe le soluzioni presentano, ovviamente, degli inconvenienti.
          Sarebbe anche possibile ridurre il corpo dei font, specificando il copro più piccol priam di entrare in modo matematico e ripristinando dopo essere escita dal modo matematico.

        • #96154
          Up
          0
          Down
          ::

          OldClaudio” post=95802Nel caso 1) devi scegliere se è meglo avere il numero della formula nella riga successiva, oppure se spezzare la formula con split o meglio con multline; ma entrambe le soluzioni presentano, ovviamente, degli inconvenienti.
          Sarebbe anche possibile ridurre il corpo dei font, specificando il copro più piccol priam di entrare in modo matematico e ripristinando dopo essere escita dal modo matematico.

          Non mi è molto chiaro come dovrei quindi procedere sinceramente…

        • #96155
          Up
          0
          Down
          ::

          ailart_sua” post=95817

          Nel caso 1) devi scegliere se è meglo avere il numero della formula nella riga successiva, oppure se spezzare la formula con split o meglio con multline; ma entrambe le soluzioni presentano, ovviamente, degli inconvenienti.
          Sarebbe anche possibile ridurre il corpo dei font, specificando il copro più piccol priam di entrare in modo matematico e ripristinando dopo essere escita dal modo matematico.

          Non mi è molto chiaro come dovrei quindi procedere sinceramente…

          Non è molto chiaro nemmeno il quesito, che hai posto anche in un altro filone.
          Da quello che si capisce, e che sarebbe chiarissimo mostrando un esempio minimo compilabile,
          la situazione è simile alla seguente
          `
          \documentclass{article}
          \usepackage{lipsum}
          \begin{document}

          \lipsum[1]
          \begin{equation}
          2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2
          \end{equation}
          \lipsum[2]
          \end{document}`
          La soluzione migliore dipende dalla specifica situazione di partenza.
          Nel caso dell’esempio riportato, una delle soluzioni, come indicato da Claudio è usare l’ambiente multline
          `
          \begin{multline}
          2+2+2+2+2+2+2+2+2+2+2+2+2+2\\
          +2+2+2+2+2+2+2+2+2+2+2+2+2
          \end{multline}
          `
          Naturalmente serve anche
          `\usepackage{amsmath}`

          Ciao
          Ivan

        • #96156
          OldClaudio
          Partecipante
            Up
            0
            Down
            ::


            Che ne direstidi una cosa come questa?`\documentclass{article}
            \usepackage{lipsum}
            \begin{document}
            \ipsum[1]

            \small
            \begin{equation}

            \label{equ:equazione lungafinoalmargine}
            \end{equation}
            \normalsize

            \lipsum[2]
            \end{document}`
            \non passerei a \footnotesize, perché il cambiamento di corpo sarebbe eccessivo, e se fosse encessario preferirei l’uso dell’ambiente multline come ti ha indicato Ivan.

          • #96157
            Up
            0
            Down
            ::

            ivan” post=95823

            [quote=”OldClaudio” post=95802]Nel caso 1) devi scegliere se è meglo avere il numero della formula nella riga successiva, oppure se spezzare la formula con split o meglio con multline; ma entrambe le soluzioni presentano, ovviamente, degli inconvenienti.
            Sarebbe anche possibile ridurre il corpo dei font, specificando il copro più piccol priam di entrare in modo matematico e ripristinando dopo essere escita dal modo matematico.

            Non mi è molto chiaro come dovrei quindi procedere sinceramente…

            Non è molto chiaro nemmeno il quesito, che hai posto anche in un altro filone.
            Da quello che si capisce, e che sarebbe chiarissimo mostrando un esempio minimo compilabile,
            la situazione è simile alla seguente
            `
            \documentclass{article}
            \usepackage{lipsum}
            \begin{document}

            \lipsum[1]
            \begin{equation}
            2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2
            \end{equation}
            \lipsum[2]
            \end{document}`
            La soluzione migliore dipende dalla specifica situazione di partenza.
            Nel caso dell’esempio riportato, una delle soluzioni, come indicato da Claudio è usare l’ambiente multline
            `
            \begin{multline}
            2+2+2+2+2+2+2+2+2+2+2+2+2+2\\
            +2+2+2+2+2+2+2+2+2+2+2+2+2
            \end{multline}
            `
            Naturalmente serve anche
            `\usepackage{amsmath}`

            Ciao
            Ivan[/quote]

            Grazie mille per la risposta, ma il problema è che io ho parentesi aperte nel primo rigo di formula e chiuse nel secondo. Quale altro comando posso usare all’interno di multline per le parentesi?

            La mia situazione è del genere:
            `\documentclass[a4paper,11pt]{report}
            \linespread{1.15}

            \usepackage{amsthm} %per i teoremi
            \usepackage{amsfonts} %per il carattere
            \usepackage{eufrak} %per il carattere
            \usepackage{mathrsfs} %per il carattere
            \usepackage{amsmath} %per scrivere in grassetto simboli matematici

            \begin{document}

            \small
            \begin{equation}
            \mathcal{C}=\left\{ Z \in{L^{0}(\mathbb{R})} | \sum_{i=1}^{N}Z_i(w_j)=c_N, \sum_{i=1}^{N-1}Z_i(w_j)=c_{N-1}, \cdots, \sum_{i=1}^{N-r}Z_i(w_j)=c_{N-r} \textnormal{ for all } j=1, \cdots, M, c\in{\mathbb{R}}\right\}.
            \end{equation}
            \normalsize

            \end{document}`

            però preferirei non usare small perchè visivamente non mi piace la differenza.

          • #96158
            Up
            0
            Down
            ::


            Non vedo tante alternative. Se la formula non ci sta bisogna spezzarla.
            Non credo sia un problema se la parentesi aperta è nella prima riga e quella chiusa nella seconda.

            Ciao
            Ivan

          • #96159
            OldClaudio
            Partecipante
              Up
              0
              Down
              ::


              La differenza c’è se usi \left e \right per dimensionare le parentesi, perché questi devono stare nella stessa riga in cui spezzi la formula. Non ha importanza se usi i vari coamdi della serie \bigl, \bigr, fino a \Biggl e \Biggr. Oppure se usi \left e \right con dei delimitatori invisibili ma aggiungendo in ogni parte della formula spezzata dei termini invisibili che non occupino spazio ma siano della dimensione giusta; si tratta di usare intelligentemente \vphantom e simili comandi, ma si tratta certamente di sporchi trucchi.

            • #96160
              Up
              0
              Down
              ::

              ailart_sua” post=95883

              [quote=”ailart_sua” post=95817][quote=”OldClaudio” post=95802]Nel caso 1) devi scegliere se è meglo avere il numero della formula nella riga successiva, oppure se spezzare la formula con split o meglio con multline; ma entrambe le soluzioni presentano, ovviamente, degli inconvenienti.
              Sarebbe anche possibile ridurre il corpo dei font, specificando il copro più piccol priam di entrare in modo matematico e ripristinando dopo essere escita dal modo matematico.

              Non mi è molto chiaro come dovrei quindi procedere sinceramente…

              Non è molto chiaro nemmeno il quesito, che hai posto anche in un altro filone.
              Da quello che si capisce, e che sarebbe chiarissimo mostrando un esempio minimo compilabile,
              la situazione è simile alla seguente
              `
              \documentclass{article}
              \usepackage{lipsum}
              \begin{document}

              \lipsum[1]
              \begin{equation}
              2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2+2
              \end{equation}
              \lipsum[2]
              \end{document}`
              La soluzione migliore dipende dalla specifica situazione di partenza.
              Nel caso dell’esempio riportato, una delle soluzioni, come indicato da Claudio è usare l’ambiente multline
              `
              \begin{multline}
              2+2+2+2+2+2+2+2+2+2+2+2+2+2\\
              +2+2+2+2+2+2+2+2+2+2+2+2+2
              \end{multline}
              `
              Naturalmente serve anche
              `\usepackage{amsmath}`

              Ciao
              Ivan[/quote]

              Grazie mille per la risposta, ma il problema è che io ho parentesi aperte nel primo rigo di formula e chiuse nel secondo. Quale altro comando posso usare all’interno di multline per le parentesi?

              La mia situazione è del genere:
              `\documentclass[a4paper,11pt]{report}
              \linespread{1.15}

              \usepackage{amsthm} %per i teoremi
              \usepackage{amsfonts} %per il carattere
              \usepackage{eufrak} %per il carattere
              \usepackage{mathrsfs} %per il carattere
              \usepackage{amsmath} %per scrivere in grassetto simboli matematici

              \begin{document}

              \small
              \begin{equation}
              \mathcal{C}=\left\{ Z \in{L^{0}(\mathbb{R})} | \sum_{i=1}^{N}Z_i(w_j)=c_N, \sum_{i=1}^{N-1}Z_i(w_j)=c_{N-1}, \cdots, \sum_{i=1}^{N-r}Z_i(w_j)=c_{N-r} \textnormal{ for all } j=1, \cdots, M, c\in{\mathbb{R}}\right\}.
              \end{equation}
              \normalsize

              \end{document}`

              però preferirei non usare small perchè visivamente non mi piace la differenza.[/quote]
              Semplice:
              `\documentclass[a4paper,11pt]{report}

              \usepackage{amsthm}
              \usepackage{amsfonts}
              %\usepackage{eufrak}% non serve se c'è amsfonts
              \usepackage{mathrsfs}
              \usepackage{amsmath}

              \begin{document}

              \begin{multline}
              \mathcal{C}=
              \biggl\{ Z \in{L^{0}(\mathbb{R})} \biggm|
              \sum_{i=1}^{N}Z_i(w_j)=c_N, \sum_{i=1}^{N-1}Z_i(w_j)=c_{N-1},\\
              \dots, \sum_{i=1}^{N-r}Z_i(w_j)=c_{N-r} \textnormal{ for } j=1, \dots, M,
              c\in{\mathbb{R}}
              \biggr\}.
              \end{multline}

              \end{document}`
              Nota [tt]\biggm|[/tt] per la sbarra (se non la devi ingrandire, usa [tt]\mid[/tt]). Non usare [tt]\cdots[/tt] o [tt]\ldots[/tt]: con amsmath (che non serve affatto per scrivere simboli matematici in neretto) [tt]\dots[/tt] sceglie il tipo giusto, guardando il simbolo che segue. Nel tuo caso i puntini non vanno centrati, ma bassi.

              Opinione personale: for all è sbagliato.

              Ciao
              Enrico

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

          Go to top