Ich will aktuell eine Grafik zur Veranschaulichung der Regel von Sarrus erstellen. Ich habe mich an diesem Beispiel orientiert, Pfeilspitzen und Farben ergänzt sowie die Platzierung der Minus- und Pluszeichen ober-/unterhalb der Matrix geändert:

Open in Online-Editor
\documentclass{scrartcl}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{calc,matrix}
\begin{document}
\[\det(A)=\begin{vmatrix} 6 & 0 & -7 \\ 1 & 3 & 8 \\ -2 & 0 & 5 \end{vmatrix} =\begin{vmatrix}\begin{tikzpicture}
\matrix [
matrix of math nodes,
column sep=1em,
row sep=1em
] (sarrus) {
6 & 0 & -7 & 6 & 0 \\ 1 & 3 & 8 & 1 & 3\\ -2 & 0 & 5 & -2 & 0\\
};

\path ($(sarrus-1-3.north east)+(0.5em,0)$) edge[thick,dotted] ($(sarrus-3-3.south east)+(0.5em,0)$);
% \path ($(sarrus-1-4.north west)-(0.5em,0)$) edge[thick,dotted] ($(sarrus-3-4.south west)-(0.5em,0)$);
\path[->,blue] (sarrus-1-1) edge (sarrus-2-2)
(sarrus-2-2) edge (sarrus-3-3)
(sarrus-1-2) edge (sarrus-2-3)
(sarrus-2-3) edge (sarrus-3-4)
(sarrus-1-3) edge (sarrus-2-4)
(sarrus-2-4) edge (sarrus-3-5);

\path[->,red](sarrus-3-1) edge[dashed] (sarrus-2-2)
(sarrus-2-2) edge[dashed] (sarrus-1-3)
(sarrus-3-2) edge[dashed] (sarrus-2-3)
(sarrus-2-3) edge[dashed] (sarrus-1-4)
(sarrus-3-3) edge[dashed] (sarrus-2-4)
(sarrus-2-4) edge[dashed] (sarrus-1-5);

\foreach \c in{3,4,5} \node[blue] at (sarrus-3-\c.south east) {$+$};
\foreach \c in{3,4,5} \node[red] at (sarrus-1-\c.north east) {$-$};
\end{tikzpicture}\end{vmatrix} \]
\end{document}

Allerdings habe ich Probleme mit der gestrichelten Linie, diese verläuft nicht in allen Matrizen senkrecht sondern eher schräg. Dies scheint einerseits von den hoch/tiefgestellten Plus- bzw. Minuszeichen, andererseits von den Einträgen selber abzuhängen (jenachdem ob ein Eintrag mehr Platz einnimmt als der andere). Die gestrichelte Linie anhand der nächsten Spalte zu setzen hat mich auch nicht weitergebracht, da dort die gleichen Probleme auftreten (im Minimalbeispiel die auskommentierte Zeile).

Wie kann ich unabhängig von der Breite der Einträge der Einträge die gestrichelte Linie immer senkrecht in der Mitte zwischen der dritten und vierten Spalte verlaufen lassen?

gefragt 16 Nov '16, 12:54

Hirshy's gravatar image

Hirshy
73133745
Akzeptiert-Rate: 0%


Es hilft, die x-Koordinate des oberen Punktes für beide zu nehmen. Dies geht in TikZ mit dem -| Operator.

Open in Online-Editor
\path ($(sarrus-1-3.north east)+(0.5em,0)$) edge[thick,dotted] ($(sarrus-3-3.south east -| sarrus-1-3.north east)+(0.5em,0)$);

Im ganzen Beispiel

Open in Online-Editor
\documentclass{scrartcl}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{calc,matrix}
\begin{document}
\[\det(A)=\begin{vmatrix} 6 & 0 & -7 \\ 1 & 3 & 8 \\ -2 & 0 & 5 \end{vmatrix} =\begin{vmatrix}\begin{tikzpicture}
\matrix [
matrix of math nodes,
column sep=1em,
row sep=1em
] (sarrus) {
6 & 0 & -7 & 6 & 0 \\ 1 & 3 & 8 & 1 & 3\\ -2 & 0 & 5 & -2 & 0\\
};

\path ($(sarrus-1-3.north east)+(0.5em,0)$) edge[thick,dotted] ($(sarrus-3-3.south east -| sarrus-1-3.north east)+(0.5em,0)$);
% \path ($(sarrus-1-4.north west)-(0.5em,0)$) edge[thick,dotted] ($(sarrus-3-4.south west)-(0.5em,0)$);
\path[->,blue] (sarrus-1-1) edge (sarrus-2-2)
(sarrus-2-2) edge (sarrus-3-3)
(sarrus-1-2) edge (sarrus-2-3)
(sarrus-2-3) edge (sarrus-3-4)
(sarrus-1-3) edge (sarrus-2-4)
(sarrus-2-4) edge (sarrus-3-5);

\path[->,red](sarrus-3-1) edge[dashed] (sarrus-2-2)
(sarrus-2-2) edge[dashed] (sarrus-1-3)
(sarrus-3-2) edge[dashed] (sarrus-2-3)
(sarrus-2-3) edge[dashed] (sarrus-1-4)
(sarrus-3-3) edge[dashed] (sarrus-2-4)
(sarrus-2-4) edge[dashed] (sarrus-1-5);

\foreach \c in{3,4,5} \node[blue] at (sarrus-3-\c.south east) {$+$};
\foreach \c in{3,4,5} \node[red] at (sarrus-1-\c.north east) {$-$};
\end{tikzpicture}\end{vmatrix} \]
\end{document}

alt text

Permanenter link

beantwortet 16 Nov '16, 14:50

Henri's gravatar image

Henri
15.7k133943
Akzeptiert-Rate: 46%

Das sieht gut aus, ich werde es ausprobieren. Danke!

(17 Nov '16, 11:23) Hirshy

Die Sarrus-Regel würde ich aber so nicht aufschreiben, da sie ggf. ein verwirrendes Bild erzeugt: Besser Determinante mit Strichen wie gewohnt, mit Zusatzspalten rechts und farbigen Annotationen wie gewünscht. (Ich würde diese Regel nichtmal verwenden, da nur für 3-Determinaten verwendbar, aber das bleibt jedem selbst überlassen).

(20 Nov '16, 14:17) cis

Wie wäre es, den die Zahlen im Hilfsteil Grau zu setzen? Dadurch würde deutlicher, dass das nicht Teil der Notation ist, sondern nur die Darstellung der Rechenregel vereinfacht.

(20 Nov '16, 18:06) saputello

@cis verwenden wollen tu ich die auch nicht (warum auch per Hand ausrechen wenn das Rechner übernehmen können), sie wird aber vom Dozenten gewünscht. Deine Anmerkungen zur Notation werde ich überdenken und meine Darstellung evtl. noch ändern.

(21 Nov '16, 10:10) Hirshy

So würde ich es so aussehen lassen:

alt text

da die Determinate die selbe bleibt und allein eine Hilfsannotation ergänzt wird.

Open in Online-Editor
\documentclass{scrartcl}
%\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{calc,matrix}
\begin{document}
\[
\det(A)
%
=\begin{matrix}\begin{tikzpicture}
\matrix [
matrix of math nodes,
column sep=1em,
row sep=1em,
] (sarrus) {
6 & 0 & -7  \\ 1 & 3 & 8 \\ -2 & 0 & 5 \\
};
% Striche
\path ($(sarrus-1-1.north west)-(0.5em,0)$) edge[] ($(sarrus-3-3.south east -| sarrus-1-1.north west)-(0.5em,0)$);
\path ($(sarrus-1-3.north east)+(0.5em,0)$) edge[] ($(sarrus-3-3.south east -| sarrus-1-3.north east)+(0.5em,0)$);
\end{tikzpicture}\end{matrix}
%
=\begin{matrix}\begin{tikzpicture}
\matrix [
matrix of math nodes,
column sep=1em,
row sep=1em,
%left delimiter={|} %,right delimiter={|}, 
] (sarrus) {
6 & 0 & -7 & 6 & 0 \\ 1 & 3 & 8 & 1 & 3\\ -2 & 0 & 5 & -2 & 0\\
};

% Striche
\path ($(sarrus-1-1.north west)-(0.5em,0)$) edge[] ($(sarrus-3-3.south east -| sarrus-1-1.north west)-(0.5em,0)$);
\path ($(sarrus-1-3.north east)+(0.5em,0)$) edge[] ($(sarrus-3-3.south east -| sarrus-1-3.north east)+(0.5em,0)$);

\path[->,blue] (sarrus-1-1) edge (sarrus-2-2)
(sarrus-2-2) edge (sarrus-3-3)
(sarrus-1-2) edge (sarrus-2-3)
(sarrus-2-3) edge (sarrus-3-4)
(sarrus-1-3) edge (sarrus-2-4)
(sarrus-2-4) edge (sarrus-3-5);

\path[->,red](sarrus-3-1) edge[dashed] (sarrus-2-2)
(sarrus-2-2) edge[dashed] (sarrus-1-3)
(sarrus-3-2) edge[dashed] (sarrus-2-3)
(sarrus-2-3) edge[dashed] (sarrus-1-4)
(sarrus-3-3) edge[dashed] (sarrus-2-4)
(sarrus-2-4) edge[dashed] (sarrus-1-5);

\foreach \c in{3,4,5} \node[blue] at (sarrus-3-\c.south east) {$+$};
\foreach \c in{3,4,5} \node[red] at (sarrus-1-\c.north east) {$-$};
\end{tikzpicture}\end{matrix} 
\]
\end{document}

Höchstens mit der Notation könnte man sich anfreunden:

alt text

Open in Online-Editor
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{calc,matrix}
\begin{document}
\[
\det(A)
%
=\begin{matrix}\begin{tikzpicture}
\matrix [
matrix of math nodes,
column sep=1em,
row sep=1em,
] (sarrus) {
6 & 0 & -7  \\ 1 & 3 & 8 \\ -2 & 0 & 5 \\
};
% Striche
\path ($(sarrus-1-1.north west)-(0.5em,0)$) edge[] ($(sarrus-3-3.south east -| sarrus-1-1.north west)-(0.5em,0)$);
\path ($(sarrus-1-3.north east)+(0.5em,0)$) edge[] ($(sarrus-3-3.south east -| sarrus-1-3.north east)+(0.5em,0)$);
\end{tikzpicture}\end{matrix}
%
=\begin{matrix}\begin{tikzpicture}
\matrix [
matrix of math nodes,
column sep=1em,
row sep=1em,
%left delimiter={|} %,right delimiter={|}, 
] (sarrus) {
6 & 0 & -7 & 6 & 0 \\ 1 & 3 & 8 & 1 & 3\\ -2 & 0 & 5 & -2 & 0\\
};

% Striche
\path ($(sarrus-1-1.north west)-(0.5em,0)$) edge[] ($(sarrus-3-3.south east -| sarrus-1-1.north west)-(0.5em,0)$);
\path ($(sarrus-1-3.north east)+(0.5em,0)$) edge[] ($(sarrus-3-3.south east -| sarrus-1-3.north east)+(0.5em,0)$);

\path[->,blue] (sarrus-1-1) edge (sarrus-2-2)
(sarrus-2-2) edge (sarrus-3-3)
(sarrus-1-2) edge (sarrus-2-3)
(sarrus-2-3) edge (sarrus-3-4)
(sarrus-1-3) edge (sarrus-2-4)
(sarrus-2-4) edge (sarrus-3-5);

\path[->,red](sarrus-3-1) edge[dashed] (sarrus-2-2)
(sarrus-2-2) edge[dashed] (sarrus-1-3)
(sarrus-3-2) edge[dashed] (sarrus-2-3)
(sarrus-2-3) edge[dashed] (sarrus-1-4)
(sarrus-3-3) edge[dashed] (sarrus-2-4)
(sarrus-2-4) edge[dashed] (sarrus-1-5);

\foreach \c in{3,4,5} \node[blue] at (sarrus-3-\c.south east) {$+$};
\foreach \c in{3,4,5} \node[red] at (sarrus-1-\c.north east) {$-$};

% Strich rechts
\path ($(sarrus-1-5.north east)+(0.5em,0)$) edge[densely dotted] ($(sarrus-3-5.south east -| sarrus-1-5.north east)+(0.5em,0)$);
\end{tikzpicture}\end{matrix} 
~~~= 48
\]
\end{document}
Permanenter link

beantwortet 20 Nov '16, 14:43

cis's gravatar image

cis
9.5k95459491
Akzeptiert-Rate: 29%

bearbeitet 20 Nov '16, 16:19

Auch bei den Lösungen würde ich dafür plädieren, den Hilfsteil leichter darzustellen.

(20 Nov '16, 18:09) saputello
Deine Antwort
Vorschau umschalten

Folgen dieser Frage

Per E-Mail:

Wenn sie sich anmelden, kommen Sie für alle Updates hier in Frage

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs fügen Sie einfach zwei Leerzeichen an die Stelle an der die neue Linie sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Frage-Themen:

×731
×58
×16

gestellte Frage: 16 Nov '16, 12:54

Frage wurde gesehen: 8,648 Mal

zuletzt geändert: 21 Nov '16, 10:10