Anzeige:
Ergebnis 1 bis 14 von 14

Thema: Horner-Schema mit LaTeX (System von geschweiften Klammern)

  1. #1
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72

    Horner-Schema mit LaTeX (System von geschweiften Klammern)

    Hallo,

    ich würde gerne das Horner-Schema mit den dividierten Differenzen mit LaTeX darstellen.

    Falls das jetzt niemandem etwas sagt, hier eine kurze Beschreibung. Man hat ganz links z.B. 5 Zeilen.
    Dann fasst man mit einer geschweiften Klammer immer zwei Zeilen zusammen.
    Also fasst man die 1. mit der 2., die 2. mit der 3., die 3. mit der 4. und die 4. mit der 5. Zeile zusammen.
    Man erhält also 4 Zeilen in der nächsten Spalte.
    Dann macht man das wieder und erhält in der 3. Spalte 3 Zeilen, in der 4. Spalte 2 Zeilen und in der 5. Spalte eine Zeile.

    Ich habe keine Ahnung, wie ich das anstellen. Wäre dankbar, wenn jemand eine Idee hat.

  2. #2
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von zac Beitrag anzeigen
    ich würde gerne das Horner-Schema mit den dividierten Differenzen mit LaTeX darstellen.

    Falls das jetzt niemandem etwas sagt, hier eine kurze Beschreibung. Man hat ganz links z.B. 5 Zeilen.
    Dann fasst man mit einer geschweiften Klammer immer zwei Zeilen zusammen.
    Also fasst man die 1. mit der 2., die 2. mit der 3., die 3. mit der 4. und die 4. mit der 5. Zeile zusammen.
    Man erhält also 4 Zeilen in der nächsten Spalte.
    Dann macht man das wieder und erhält in der 3. Spalte 3 Zeilen, in der 4. Spalte 2 Zeilen und in der 5. Spalte eine Zeile.

    Ich habe keine Ahnung, wie ich das anstellen. Wäre dankbar, wenn jemand eine Idee hat.
    Für mich klingt das nach dem Gaußschen Algorithmus:
    http://www.dante.de/DTK/Ausgaben/komoedie20023.pdf
    Paket gauss.sty

    Herbert

  3. #3
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    hm...das ganze funktioniert aber nicht ganz so wie ich will.

    Es soll ja immer zwei geschweifte Klammern geben, die zu einem Eintrag gehören.
    Also Die zweite Zeile soll ja von der Klammer (die die 1. und 2. Zeile umfasst) und von der Klammer (die die 2. und die 3. Zeile umfasst) umfasst werden. Das würde mit gauss wahrscheinlich gehen, aber die Klammern sollten schön untereinander sein.
    Außerdem:
    Wenn ich nur zwei Spalten hätte, dann könnte ich mir ja irgendwie behelfen, aber sobald ich dann die 3. Spalte darstellen muss, also die 2. Spalte mit Klammern zusammenfassen muss, habe ich keine Ahnung mehr, wie ich es machen muss.

  4. #4
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    Ich habe mir gedacht, dass ich zum besseren Verständnis mal mein Anliegen per Hand mache und einscanne.
    Eigentlich ist es mir egal, ob man geschweifte Klammern oder spitze Klammern benutzt.

  5. #5
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von zac Beitrag anzeigen
    Ich habe mir gedacht, dass ich zum besseren Verständnis mal mein Anliegen per Hand mache und einscanne.
    Eigentlich ist es mir egal, ob man geschweifte Klammern oder spitze Klammern benutzt.
    hier ein Beispiel. Mit latex=>ps=>pdf oder mit Paket auto-pst-pdf

    Code:
    \documentclass[12pt]{article}
    \usepackage{pstricks-add}
    \psset{braceWidthInner=5\pslinewidth,braceWidthOuter=5\pslinewidth}
    \def\VZ{\phantom{-}}
    \begin{document}
    
    
    \def\arraystretch{2}
    $\tabular{@{} r r @{}}
    0 &  \rnode[rc]{A}{~$1$~}\\
    1 &  \rnode[rc]{B}{~$-1$~}\\
    2 &  \rnode[rc]{C}{~$2$~}\\
    3 &  \rnode[rc]{D}{~$1$~}\\
    \endtabular$
    \psbrace(B)(A){\rnode[rc]{AB}{~$-2$~}}
    \psbrace(C)(B){\rnode[rc]{BC}{~$\VZ3$~}}
    \psbrace(D)(C){\rnode[rc]{CD}{~$-1$~}}
    
    \psbrace(BC)(AB){\rnode[rc]{ABC}{~$\VZ\frac{5}{2}$~}}
    \psbrace(CD)(BC){\rnode[rc]{BCD}{~$-2$~}}
    
    \psbrace[nodesepB=8pt](BCD)(ABC){~$-\frac{3}{2}$}
    
    \end{document}
    Herbert

  6. #6
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    Ok, das sieht schon ganz gut aus. Ich habe jetzt versucht das ganze etwas auf ein anderes Beispiel umzuschreiben:
    Code:
    \documentclass[12pt]{article}
    \usepackage{pstricks-add}
    \psset{braceWidthInner=7\pslinewidth,braceWidthOuter=5\pslinewidth}
    \def\VZ{\phantom{-}}
    \begin{document}
    
    
    \def\arraystretch{3}
    $\tabular{@{} r r @{}}
    0 &  \rnode[rc]{A}{~$-1$~}\\
    1 &  \rnode[rc]{B}{~$-1$~}\\
    2 &  \rnode[rc]{C}{~$-7$~}\\
    3 &  \rnode[rc]{D}{~$-7$~}\\
    4 &  \rnode[rc]{E}{~$35$~}
    
    \endtabular$
    \psbrace[nodesepB=6pt](B)(A){\rnode[rc]{AB}{~$\VZ0$~}}
    \psbrace(C)(B){\rnode[rc]{BC}{~$-6$~}}
    \psbrace(D)(C){\rnode[rc]{CD}{~$\VZ0$~}}
    \psbrace(E)(D){\rnode[rc]{DE}{~$42$~}}
    
    \psbrace(BC)(AB){\rnode[rc]{ABC}{~$-3$~}}
    \psbrace(CD)(BC){\rnode[rc]{BCD}{~$\VZ3$~}}
    \psbrace(DE)(CD){\rnode[rc]{CDE}{~$\VZ3$~}}
    
    \psbrace[nodesepB=4pt](BCD)(ABC){~$2$}
    \psbrace[nodesepB=4pt](CDE)(BCD){~$6$}
    
    \end{document}
    Leider sieht das Ergebnis aber nicht so aus, wie ich will.
    Es gibt noch drei Probleme:

    1. offensichtlich steht eine Klammer in der zweiten Spalte schräg.
    Außerdem würde ich gerne auch manchmal längere Einträge, also nicht nur eine Zahl benutzen.
    2. Die Einträge sind von der Höhe aus nicht direkt rechts neben der Spitze der geschweiften Klammer (das müsste doch mit [nodesepB=6pt] regulierbar sein?!)
    3. Da die Klammern sich immer berühren, wird es bei mehreren Klammern schwer wahrzunehmen, ob die Klammer nach links oder nach rechts geöffnet ist. (das lässt sich glaube ich durch \arraystretch{3} etwas besser wahrnehmen)


    Außerdem verstehe ich nicht alles, z.B. was [rc] bedeuted, wieso die Einträge zwischen ~ ~ stehen?!

    Wäre nett, wenn du mir noch einmal helfen könntest.
    Geändert von zac (20-11-2010 um 10:15 Uhr)

  7. #7
    Registrierter Benutzer
    Registriert seit
    06.03.2010
    Ort
    St. Petersburg, Russland
    Beiträge
    2.468
    Bitte nicht das php-Code-Symbol benutzen (sonst gehen die ganzen \ weg und das Beispiel ist nicht mehr lauffähig!), sondern das #-Symbol daneben!

  8. #8
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von zac Beitrag anzeigen
    1. offensichtlich steht eine Klammer in der zweiten Spalte schräg.
    Außerdem würde ich gerne auch manchmal längere Einträge, also nicht nur eine Zahl benutzen.
    2. Die Einträge sind von der Höhe aus nicht direkt rechts neben der Spitze der geschweiften Klammer (das müsste doch mit [nodesepB=6pt] regulierbar sein?!)
    3. Da die Klammern sich immer berühren, wird es bei mehreren Klammern schwer wahrzunehmen, ob die Klammer nach links oder nach rechts geöffnet ist. (das lässt sich glaube ich durch \arraystretch{3} etwas besser wahrnehmen)

    Außerdem verstehe ich nicht alles, z.B. was [rc] bedeuted, wieso die Einträge zwischen ~ ~ stehen?!
    Man muss etwas Abstand nach links und rechts haben. Es geht aber besser,
    wenn man die Einträge gleich in eine Box bestimmter Breite schreibt. Die
    Breite kannst du beliebig ändern. rc steht für "Knoten rechts mittig" anordnen.
    Code:
    \documentclass[12pt]{article}
    \usepackage{pstricks-add}
    \psset{braceWidthInner=7\pslinewidth,braceWidthOuter=5\pslinewidth}
    \def\Wert#1{\makebox[1.75em][r]{$#1$}~}
    \begin{document}
    
    
    \def\arraystretch{3}
    $\tabular{@{} r r @{}}
    0 &  \rnode[rc]{A}{\Wert1}\\
    1 &  \rnode[rc]{B}{\Wert{-1}}\\
    2 &  \rnode[rc]{C}{\Wert{-7}}\\
    3 &  \rnode[rc]{D}{\Wert{-7}}\\
    4 &  \rnode[rc]{E}{\Wert{35}}
    
    \endtabular$
    \psbrace[nodesepB=6pt](B)(A){\rnode[rc]{AB}{\Wert0}}
    \psbrace(C)(B){\rnode[rc]{BC}{\Wert{-6}}}
    \psbrace(D)(C){\rnode[rc]{CD}{\Wert0}}
    \psbrace(E)(D){\rnode[rc]{DE}{\Wert{42}}}
    
    \psbrace(BC)(AB){\rnode[rc]{ABC}{\Wert{-3}}}
    \psbrace(CD)(BC){\rnode[rc]{BCD}{\Wert3}}
    \psbrace(DE)(CD){\rnode[rc]{CDE}{\Wert3}}
    
    \psbrace[nodesepB=4pt](BCD)(ABC){\Wert2}
    \psbrace[nodesepB=4pt](CDE)(BCD){\Wert6}
    
    \end{document}
    Alternativ kannst du auch \makebox[..][l] probieren


    Herbert

  9. #9
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    seper, danke!! Eine Frage noch:
    Wie kann ich auch große Brüche als Einträge nehmen? normalerweise mache ich das mit \dfrac{}{}, aber das funktioniert nicht. Mit \frac sind die Brüche so klein.

    Code:
    \documentclass[12pt]{article}
    \usepackage{pstricks-add}
    \psset{braceWidthInner=7\pslinewidth,braceWidthOuter=5\pslinewidth}
    \def\Wert#1{\makebox[3.75em][r]{$#1$}~}
    \begin{document}
    
    
    \def\arraystretch{3}
    $\tabular{@{} r r @{}}
    0 &  \rnode[rc]{A}{\Wert{-1}}\\
    1 &  \rnode[rc]{B}{\Wert{-1}}\\
    2 &  \rnode[rc]{C}{\Wert{-7}}\\
    3 &  \rnode[rc]{D}{\Wert{-7}}\\
    4 &  \rnode[rc]{E}{\Wert{35}}
    
    \endtabular$
    \psbrace[nodesepB=5pt](B)(A){\rnode[rc]{AB}{\Wert0}}
    \psbrace[nodesepB=5pt](C)(B){\rnode[rc]{BC}{\Wert{-6}}}
    \psbrace[nodesepB=5pt](D)(C){\rnode[rc]{CD}{\Wert0}}
    \psbrace[nodesepB=5pt](E)(D){\rnode[rc]{DE}{\Wert{42}}}
    
    \psbrace[nodesepB=5pt](BC)(AB){\rnode[rc]{ABC}{\Wert{-3}}}
    \psbrace[nodesepB=5pt](CD)(BC){\rnode[rc]{BCD}{\Wert3}}
    \psbrace[nodesepB=5pt](DE)(CD){\rnode[rc]{CDE}{\Wert{21}}}
    
    \psbrace[nodesepB=5pt](BCD)(ABC){\rnode[rc]{ABCD}{\Wert{\frac{2}{3}=2}}}
    \psbrace[nodesepB=5pt](CDE)(BCD){\rnode[rc]{BCDE}{\Wert{\frac{18}{3}=6}}}
    
    \psbrace[nodesepB=5pt](BCDE)(ABCD){\Wert{\frac{4}{4}=1}}
    
    \end{document}

  10. #10
    Registrierter Benutzer Avatar von voss
    Registriert seit
    10.04.2005
    Beiträge
    5.045
    Zitat Zitat von zac Beitrag anzeigen
    Wie kann ich auch große Brüche als Einträge nehmen? normalerweise mache ich das mit \dfrac{}{}, aber das funktioniert nicht. Mit \frac sind die Brüche so klein.
    Code:
    \usepackage{amsmath}
    brauchst du dann.

    Herbert

  11. #11
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Zitat Zitat von zac Beitrag anzeigen
    normalerweise mache ich das mit \dfrac{}{}, aber das funktioniert nicht. Mit \frac sind die Brüche so klein.
    Paket amsmath laden.

    Gruß
    Marco

  12. #12
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    stimmt, hab total vergessen, dass es in dem Beispiel gar nicht mit eingebunden ist. Dank!

  13. #13
    Registrierter Benutzer
    Registriert seit
    23.06.2010
    Beiträge
    72
    hab jetzt leider doch noch ein Problem mit der ganzen Sache. Durch das \arraystretch{3} habe ich ja die Zeilen etwas auseinander gezogen, da ich finde, dass es so besser aussieht. Jetzt sind aber die ganzen Matrizen im restlichen Dokument auch auseinandergezogen, die sollten aber einfach so bleiben wie sie davor waren.

  14. #14
    Registrierter Benutzer Avatar von mechanicus
    Registriert seit
    10.07.2008
    Ort
    Hamburg
    Beiträge
    3.944
    Zitat Zitat von zac Beitrag anzeigen
    hab jetzt leider doch noch ein Problem mit der ganzen Sache. Durch das \arraystretch{3} habe ich ja die Zeilen etwas auseinander gezogen, da ich finde, dass es so besser aussieht. Jetzt sind aber die ganzen Matrizen im restlichen Dokument auch auseinandergezogen, die sollten aber einfach so bleiben wie sie davor waren.
    dann halte es lokal. Entweder mit{..} oder \begingroup...\endgroup oder siehe es einfach mit in die Umgebung $..$.

    Marco

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •