Archiv verlassen und diese Seite im Standarddesign anzeigen : 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.
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
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.
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.
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
\documentclass[12pt]{article}
\usepackage{pstricks-add}
\psset{braceWidthInner=5\pslinewidth,braceWidthOut er=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
Ok, das sieht schon ganz gut aus. Ich habe jetzt versucht das ganze etwas auf ein anderes Beispiel umzuschreiben:
\documentclass[12pt]{article}
\usepackage{pstricks-add}
\psset{braceWidthInner=7\pslinewidth,braceWidthOut er=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.
Bitte nicht das php-Code-Symbol benutzen (sonst gehen die ganzen \ weg und das Beispiel ist nicht mehr lauffähig!), sondern das #-Symbol daneben!
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.
\documentclass[12pt]{article}
\usepackage{pstricks-add}
\psset{braceWidthInner=7\pslinewidth,braceWidthOut er=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
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.
\documentclass[12pt]{article}
\usepackage{pstricks-add}
\psset{braceWidthInner=7\pslinewidth,braceWidthOut er=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}
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.
\usepackage{amsmath}
brauchst du dann.
Herbert
mechanicus
20-11-2010, 12:15
normalerweise mache ich das mit \dfrac{}{}, aber das funktioniert nicht. Mit \frac sind die Brüche so klein.
Paket amsmath laden.
Gruß
Marco
stimmt, hab total vergessen, dass es in dem Beispiel gar nicht mit eingebunden ist. Dank!
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.
mechanicus
20-11-2010, 15:39
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
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.