Die Mathe-Redaktion - 25.05.2018 22:39 - Registrieren/Login
Auswahl
ListenpunktHome
ListenpunktAktuell und Interessant ai
ListenpunktArtikelübersicht/-suche
ListenpunktAlle Links / Mathe-Links
ListenpunktFach- & Sachbücher
ListenpunktMitglieder / Karte
ListenpunktRegistrieren/Login
ListenpunktArbeitsgruppen
Listenpunkt3 im Schwätz / Top 15
ListenpunktWerde Mathe-Millionär!
ListenpunktAnmeldung MPCT Juli
ListenpunktFormeleditor fedgeo
Aktion im Forum
Suche
Stichwortsuche in Artikeln und Links von Matheplanet
Suchen im Forum
Suchtipps

Bücher
Englische Bücher
Software
Suchbegriffe:
Mathematik bei amazon
Naturwissenschaft & Technik
In Partnerschaft mit Amazon.de
Kontakt
Mail an Matroid
[Keine Übungsaufgaben!]
Impressum

Bitte beachten Sie unsere Nutzungsbedingungen, die Distanzierung, unsere Datenschutzerklärung und
die Forumregeln.

Sie können Mitglied werden. Mitglieder können den Matheplanet-Newsletter bestellen, der etwa alle 2 Monate erscheint.

Der Newsletter Okt. 2017

Für Mitglieder
Mathematisch für Anfänger
Wer ist Online
Aktuell sind 436 Gäste und 18 Mitglieder online.

Sie können Mitglied werden:
Klick hier.

Über Matheplanet
 
Zum letzten Themenfilter: Themenfilter:
Matroids Matheplanet Forum Index
Moderiert von Bilbo matph
Angewandte Informatik » Computergrafik » Grafik für Divisormatrizen
Druckversion
Druckversion
Antworten
Antworten
Seite 1   [1 2]   2 Seiten
Autor
Kein bestimmter Bereich Grafik für Divisormatrizen
blindmessenger
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 02.08.2016
Mitteilungen: 818
Aus: NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Themenstart: 2018-01-07


Hallo,
ich hatte in dem Artikel "Divisormatrizen" die Möglichkeit vorgestellt aus ungeraden Zahlen bestimmte Matrizen erzeugen. Cis hatte sich aufgemacht einen Latexcode zu schreiben der diese Matrizen automatisiert erstellt. Zur Präsentation ist das sehr schön, aber wenn man größere Matrizen dieser Art genauer untersuchen möchte ist das nicht so gut geeignet. Deshalb hat Slash die Idee gehabt, ob man nicht mit einem kleinen Programm so eine Grafik mit farbigen Pixeln generieren lässt. Vielleicht sogar so, dass man wirklich nur noch die Zahl eingibt und dass dann die komplette Matrixgrafik generiert wird...
Der Hintergrund dabei ist, diese Grafiken aufgrund ihrer Muster zu kategorisieren, sodass man dann vielleicht Rückschlüsse auf die zu betrachteten Zahlen ziehen kann.
Hat vielleicht jemand eine Idee dazu?  


-----------------
Gruß blindmessenger



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.1, eingetragen 2018-01-07

\(\begingroup\)
Also wahrscheinlich sind die "Primzahl-Cossisten" hier umfassend informiert und wissen genau, was gesucht ist, was man braucht und worauf es rausläuft.

Ich, der ich vom Thema keine Ahnung habe und auch an den entsprechenden Diskussionen in diversen Primzahlthreads nicht teilgenommen habe, musste mir das erstmal alles zusammenreimen und schätze den Fall so ein (wie ich auch schon im Artikel "Divisormatrizen" kommentiert habe):

Es geht darum Matrizen des Typs
<math>

\usetikzlibrary{matrix}
% Muss auf dem MP angegeben werden!

%%%%%%%%%%%
% EINGABEN! %%%%%%
%%%%%%%%%%%%%
% 1. Lege den Divisior der Divisormatrix fest.
\pgfmathtruncatemacro{\Divisor}{5}        % Divisor  der Divisormatrix
%
\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} =
}%  wahlweise leer lassen / auskommentieren...

% 2a. Lege die Dimensionen der Divisormatrix fest.
\def\nMaxZeile{5}                         % Länge der Mersenne Folge in Zeilen
\def\nMaxSpalte{4}                 % Länge der Mersenne Folge in Spalten

% 2b.   Passe die Syntax für die spätere tikz-Matrix an.
\def\MatrixZeile{  \&  \&  \&  \\ }        % "nMaxSpalte minus 1"  \&-Zeichen setzen
\def\MatrixZeilen{%                        % "nMaxZeile" Stück eintragen
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}%
%%%%%%%%%%%%%
%%%    fertig!    %%%%%
%%%%%%%%%%%%%
% 3. Passe evtl. noch       row sep = ****em,   column sep = ****em,
%     in der späteren tikz-Matrix optisch an.
%%%%%%%%%%%%%
%%%%%%%%%%%%%

\tikzmath{
% Berechnung der Folgenglieder
function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor));};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor));};
}

% Farbige Ausgabe des reduzierten Mersenne Bruches
% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator
% Zähler und Nenner des Mersenne-Bruches festlegen
\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\textcolor{red}{\Zaehler}%
\else
$\frac{\Zaehler}{\Nenner}$%
\fi
\else
$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$%
\fi
}%%%%%%%%%%%%%%%%%%%%%%%%%
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


% Mersenne-Matrix setzen
$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [                % tikz-Matrix
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = 1.125em,                % Zeilenabstand optisch anpassen!
column sep = 1.25em,        % Spaletenabstand optisch anpassen!
left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

% Matrixelemente hervorheben
% \nennerode[fill=red!50, minimum width = 1.5em, minimum height = 1.25em,
% rounded corners=1.5pt,
% align=right] at (m-1-3) {};

% Matrix füllen mit Zahlen
\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};
% Test:
%\node[align=right, text=blue] at (m-2-1) {};
\end{tikzpicture}
\end{matrix}$

</math>
zu erstellen.


Um effektiv an dem Problem zu arbeiten, würde ich das so machen (<math>k,n,d</math> positiv, ganz):

· Man hat Mersenne-Zahlen: <math>M(n)=2^n - 1</math>.

· Dann hat man "Mersenne-Zahlen <math>k</math>-ter Stufe": <math>M(k,n) = (2k-1)\cdot 2^n - 1</math>
(ob das offiziell so genannt wird, weiß ich nicht, ist auch nicht so wichtig).

· Schließlich hat man "Mersenne-Brüche mit festem Divisor <math>d</math>":  
<math>M(k,n,d) = \dfrac{M(k,n)}{d} = \dfrac{Z(k,n,d)}{N(k,n,d)}</math>,
wobei die Brüche, d.h. Zähler und Nenner, voll gekürzt sind.

Wenn man das übersichtlich in einer Matrix zusammenfassen möchte, braucht man eine Textdatei, die folgende Informationen enthält
Z(1,1,d)/N(1,1,d), Z(1,2,d)/N(1,2,d), ... Z(1,*,d)/1
Z(2,1,d)/N(2,1,d), Z(2,2,d)/N(2,2,d), ... Z(2,*,d)/N(2,*,d)
..........
Z(d,1,d)/N(d,1,d), Z(d,2,d)/N(d,2,d), ... Z(d,*,d)/N(d,*,d)
'/' hier als Trennzeichen verwendet.

 - Die Anzahl der Spalten ist durch den Nenner N(1,*,d) = 1 festgelegt, für den der Mersenne-Bruch 1. Stufe erstmals ganzzahlig ausfällt.
 - Die Anzahl der Zeilen ist d.

Nun will man, zur späteren Hervorhebung, noch eine Eigenschaft (e), z.B. rot/schwarz/blau, also r/s/b. Der Mersenne-Bruch soll
 - rot gesetzt werden, wenn er Ganzzahl ist
 - schwarz gesetzt werden, wenn er in einer Zeile (Stufe) steht, die eine Ganzzahl enthält.
 - blau gesetzt werden "sonst", also wenn seine Zeile (Stufe) keine Ganzzahl enthält.


Was man also braucht ist eine Textdatei des Typs:
Z(1,1,d)/N(1,1,d)/s,    Z(1,2,d)/N(1,2,d)/s,    ...  Z(1,*,d)/1/r
Z(2,1,d)/N(2,1,d)/e21,  Z(2,2,d)/N(2,2,d)/e22,  ...  Z(2,*,d)/N(2,*,d)/e2*
..........
Z(d,1,d)/N(d,1,d)/e_d1, Z(d,2,d)/N(d,2,d)/e_d2, ...  Z(d,*,d)/N(2,*,d)/e_d*
'/' hier als Trennzeichen verwendet.



Für das einfache Beispiel
<math>

\usetikzlibrary{matrix}
% Muss auf dem MP angegeben werden!

%%%%%%%%%%%
% EINGABEN! %%%%%%
%%%%%%%%%%%%%
% 1. Lege den Divisior der Divisormatrix fest.
\pgfmathtruncatemacro{\Divisor}{5}        % Divisor  der Divisormatrix
%
\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} =
}%  wahlweise leer lassen / auskommentieren...

% 2a. Lege die Dimensionen der Divisormatrix fest.
\def\nMaxZeile{5}                         % Länge der Mersenne Folge in Zeilen
\def\nMaxSpalte{4}                 % Länge der Mersenne Folge in Spalten

% 2b.   Passe die Syntax für die spätere tikz-Matrix an.
\def\MatrixZeile{  \&  \&  \&  \\ }        % "nMaxSpalte minus 1"  \&-Zeichen setzen
\def\MatrixZeilen{%                        % "nMaxZeile" Stück eintragen
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}%
%%%%%%%%%%%%%
%%%    fertig!    %%%%%
%%%%%%%%%%%%%
% 3. Passe evtl. noch       row sep = ****em,   column sep = ****em,
%     in der späteren tikz-Matrix optisch an.
%%%%%%%%%%%%%
%%%%%%%%%%%%%

\tikzmath{
% Berechnung der Folgenglieder
function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor));};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor));};
}

% Farbige Ausgabe des reduzierten Mersenne Bruches
% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator
% Zähler und Nenner des Mersenne-Bruches festlegen
\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\textcolor{red}{\Zaehler}%
\else
$\frac{\Zaehler}{\Nenner}$%
\fi
\else
$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$%
\fi
}%%%%%%%%%%%%%%%%%%%%%%%%%
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


% Mersenne-Matrix setzen
$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [                % tikz-Matrix
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = 1.125em,                % Zeilenabstand optisch anpassen!
column sep = 1.25em,        % Spaletenabstand optisch anpassen!
left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

% Matrixelemente hervorheben
% \nennerode[fill=red!50, minimum width = 1.5em, minimum height = 1.25em,
% rounded corners=1.5pt,
% align=right] at (m-1-3) {};

% Matrix füllen mit Zahlen
\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};
% Test:
%\node[align=right, text=blue] at (m-2-1) {};
\end{tikzpicture}
\end{matrix}$

</math>

sähe das dann so aus:
1/5/s,  3/5/s,  7/5/s,  3/1/r
1/1/r,  11/5/s, 23/5/s, 47/5,s
9/5/b,  19/5/b, 39/5/b, 79/5/b
13/5/s, 27/5/s, 11/1/r, 111/5/s
17/5/s, 7/1/s,  71/5/s, 143/5/s
'/' als Trennzeichen verwendet


Und so eine Textdatei sollte man am besten mit sowas wie Mathematica
erstellen.

Hat man erstmal so eine Textdatei, lässt sich auch die visuelle Verarbeitung leicht mit LaTeX, tikz/pgf umsetzen.
Nur ist es ungünstig, die Berechnungen mit LaTeX selbst vorzunehmen, da TeX bald an seine Grenzen der Berechenbarkeit stoßen wird.





-----------------
Wenn man alles ausgeschaltet hat, was unmöglich ist, bleibt am Ende etwas übrig, das die Wahrheit enthalten muß - mag es auch noch so unwahrscheinlich sein...
(Sherlock Holmes)
·
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
blindmessenger
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 02.08.2016
Mitteilungen: 818
Aus: NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.2, vom Themenstarter, eingetragen 2018-01-07

\(\begingroup\)
Mit Mathematica kenne ich mich nicht aus... Ich weiß nur, dass wenn wir uns Matrizen bis 1000x1000 anschauen wollen, dann haben wir ja im schlimmsten Fall Zahlen der Größe

$1999 \cdot 2^{999}-1$

Wenn man solche Zahlen teilen will dann brauchen wir glaube ich die diskrete Exponentialfunktion...


-----------------
Gruß blindmessenger
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
matph
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 20.11.2006
Mitteilungen: 5346
Aus: A
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.3, eingetragen 2018-01-07

\(\begingroup\)
Hallo,

Falls du an den Grafiken interessiert bist, schreibe etwas der folgenden Form smile
Tcl
if {$::argc!=1} {
  puts stderr "$::argv0 int"
  exit 1}
 
package require Tk
 
set size 200
set num [lindex $::argv 0]
pack [canvas .c -width [expr {$size*2}] -height [expr {$size*2}] -bg white]
 
for {set i 1} {$i<=$size} {incr i} {
  for {set j 1} {$j<=$size} {incr j} {
    if {!(((2*$j-1)*2**$i-1)%$num)} {
      set cx [expr {$i*2}]
      set cy [expr {$j*2}]
      .c create rectangle $cx $cy $cx $cy -fill #000000}}}

--
mfg
matph


-----------------
Wir müssen wissen, wir werden wissen. Hilbert
Das Buch der Natur ist in der Sprache der Mathematik geschrieben. Galilei
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
blindmessenger
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 02.08.2016
Mitteilungen: 818
Aus: NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.4, vom Themenstarter, eingetragen 2018-01-07


Ja danke... Muss ich mir mal ansehen...


-----------------
Gruß blindmessenger



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.5, eingetragen 2018-01-07

\(\begingroup\)
"Tcl". Wer benutzt denn sowas?  smile

2018-01-07 17:12 - matph in Beitrag No. 3 schreibt:
Falls du an den Grafiken interessiert bist...

Das war in #1 eher exemplarisch zu verstehen. Bei der d-Divisormatix wird man für z.B. d ~ 1000 vermutlich keine Brüchlein mehr ausgeben, sondern Pixelgraphiken.

Daher halte ich es für den Kern des Ganzen, einen geeigneten Datensatz als txt-Datei zu erstellen.
Wie man das dann veranschaulicht, ist dann eine (trivale) Ergänzungsaufgabe.

_________________

<math>

% Muss auf dem MP angegeben werden!
\usetikzlibrary{matrix}

$M(k,n) = (2k-1)\cdot 2^n - 1 \text{ mit } k,n \in \mathbb{N}_{> 0}$ \\


%%%%%%%%%%%%%
% EINGABEN! %%%%%%
%%%%%%%%%%%%%
% 1. Lege den Divisior der Divisormatrix fest.
\pgfmathtruncatemacro{\Divisor}{5}        % Divisor  der Divisormatrix
%
\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} =
}%  wahlweise leer lassen / auskommentieren...

% 2a. Lege die Dimensionen der Divisormatrix fest.
\def\nMaxZeile{5}                         % Länge der Mersenne Folge in Zeilen
\def\nMaxSpalte{4}                 % Länge der Mersenne Folge in Spalten

% 2b.   Passe die Syntax für die spätere tikz-Matrix an.
\def\MatrixZeile{  \&  \&  \& \\ }        % "nMaxSpalte minus 1"  \&-Zeichen setzen
\def\MatrixZeilen{%                        % "nMaxZeile" Stück eintragen
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}%
%%%%%%%%%%%%%
%%%    fertig!    %%%%%
%%%%%%%%%%%%%
% 3. Ausgabe festlegen
\tikzset{
MyStyle/.style={rectangle, rounded corners=1pt},%draw
MySize/.style={ rounded corners =1pt,
minimum width=2.5em,
minimum height=1.75em,}
}
\newcommand\GANZZAHL{%
%$\textcolor{red}{\Zaehler}$
% oder
\tikz[] \node[MyStyle, fill=red]{};
% oder beides
%\tikz[] \node[MyStyle, MySize, fill=red!30]{$\textcolor{red}{\Zaehler}$};
}
%
\newcommand\BRUCHNORMAL{%
%$\frac{\Zaehler}{\Nenner}$
% oder
\tikz[] \node[MyStyle, fill]{};
% oder beides
%\tikz[] \node[MyStyle, MySize, fill=lightgray]{$\frac{\Zaehler}{\Nenner}$};
}
%
\newcommand\BRUCHBLAU{%
%$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$
% oder
\tikz[] \node[MyStyle, fill=blue]{};
% oder beides
%\tikz[] \node[MyStyle, MySize, fill=blue!30]{$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$};
}
% 4. Evtl.  Zeilen- und Spaltenabstand nach Augenmaß anpassen
\def\RowSep{.5em}
\def\ColumnSep{.5em}
%%%%%%%%%%%%%
%%%%%%%%%%%%%



\tikzmath{
% Berechnung der Folgenglieder
function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor) );};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor) );};
}

% Farbige Ausgabe des reduzierten Mersenne Bruches
% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\begingroup
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator
% Zähler und Nenner des Mersenne-Bruches festlegen
\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\GANZZAHL%
\else
\BRUCHNORMAL%
\fi
\else
\BRUCHBLAU%
\fi
\endgroup
}%%%%%%%%%%%%%%%%%%%%%%%%%
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


% Mersenne-Matrix setzen
$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [                % tikz-Matrix
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = \RowSep,                % Zeilenabstand optisch anpassen!
column sep = \ColumnSep,        % Spaletenabstand optisch anpassen!
%left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

% Matrixelemente hervorheben
% \nennerode[fill=red!50, minimum width = 1.5em, minimum height = 1.25em,
% rounded corners=1.5pt,
% align=right] at (m-1-3) {};

% Matrix füllen mit Zahlen
\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};
% Test:
%\node[align=right, text=blue] at (m-2-1) {};

\end{tikzpicture}
\end{matrix}$


</math>

oder beides

<math>

% Muss auf dem MP angegeben werden!
\usetikzlibrary{matrix}

%$M(k,n) = (2k-1)\cdot 2^n - 1 \text{ mit } k,n \in \mathbb{N}_{> 0}$ \\


%%%%%%%%%%%%%
% EINGABEN! %%%%%%
%%%%%%%%%%%%%
% 1. Lege den Divisior der Divisormatrix fest.
\pgfmathtruncatemacro{\Divisor}{5}        % Divisor  der Divisormatrix
%
\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} =
}%  wahlweise leer lassen / auskommentieren...

% 2a. Lege die Dimensionen der Divisormatrix fest.
\def\nMaxZeile{5}                         % Länge der Mersenne Folge in Zeilen
\def\nMaxSpalte{4}                 % Länge der Mersenne Folge in Spalten

% 2b.   Passe die Syntax für die spätere tikz-Matrix an.
\def\MatrixZeile{  \&  \&  \& \\ }        % "nMaxSpalte minus 1"  \&-Zeichen setzen
\def\MatrixZeilen{%                        % "nMaxZeile" Stück eintragen
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}%
%%%%%%%%%%%%%
%%%    fertig!    %%%%%
%%%%%%%%%%%%%
% 3. Ausgabe festlegen
\tikzset{
MyStyle/.style={rectangle,},%draw
MySize/.style={ rounded corners =2pt,
minimum width=2.5em,
minimum height=1.75em,}
}
\newcommand\GANZZAHL{%
%$\textcolor{red}{\Zaehler}$
% oder
%\tikz[] \node[MyStyle, fill=red]{};
% oder beides
\tikz[] \node[MyStyle, MySize, fill=red!30]{$\textcolor{red}{\Zaehler}$};
}
%
\newcommand\BRUCHNORMAL{%
%$\frac{\Zaehler}{\Nenner}$
% oder
%\tikz[] \node[MyStyle, fill]{};
% oder beides
\tikz[] \node[MyStyle, MySize, fill=lightgray]{$\frac{\Zaehler}{\Nenner}$};
}
%
\newcommand\BRUCHBLAU{%
%$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$
% oder
%\tikz[] \node[MyStyle, fill=blue]{};
% oder beides
\tikz[] \node[MyStyle, MySize, fill=blue!30]{$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$};
}
% 4. Evtl.  Zeilen- und Spaltenabstand nach Augenmaß anpassen
\def\RowSep{1.5em}
\def\ColumnSep{2.5em}
%%%%%%%%%%%%%
%%%%%%%%%%%%%



\tikzmath{
% Berechnung der Folgenglieder
function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor) );};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor) );};
}

% Farbige Ausgabe des reduzierten Mersenne Bruches
% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\begingroup
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator
% Zähler und Nenner des Mersenne-Bruches festlegen
\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\GANZZAHL%
\else
\BRUCHNORMAL%
\fi
\else
\BRUCHBLAU%
\fi
\endgroup
}%%%%%%%%%%%%%%%%%%%%%%%%%
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


% Mersenne-Matrix setzen
$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [                % tikz-Matrix
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = \RowSep,                % Zeilenabstand optisch anpassen!
column sep = \ColumnSep,        % Spaletenabstand optisch anpassen!
%left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

% Matrixelemente hervorheben
% \nennerode[fill=red!50, minimum width = 1.5em, minimum height = 1.25em,
% rounded corners=1.5pt,
% align=right] at (m-1-3) {};

% Matrix füllen mit Zahlen
\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};
% Test:
%\node[align=right, text=blue] at (m-2-1) {};

\end{tikzpicture}
\end{matrix}$


</math>




[Die Antwort wurde nach Beitrag No.3 begonnen.]
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
viertel
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 04.03.2003
Mitteilungen: 26317
Aus: Hessen
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.6, eingetragen 2018-01-07


Das Bild habe ich auch im Artikel gepostet:



Leider habe ich es noch nicht geschafft, GMP in mein Borland C++ zu integrieren. Deshalb rechne ich nur mit einer eigenen Bruch-Klasse (64-bit Integer), und die ist bei diesen Potenzen schnell überfordert. Auch dieses Bild ist manuell aufgefüllt; eigentlich ist noch nicht mal der 2. Spaltenblock ganz gefüllt.


-----------------
Bild



  Profil  Quote  Link auf diesen Beitrag Link
blindmessenger
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 02.08.2016
Mitteilungen: 818
Aus: NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.7, vom Themenstarter, eingetragen 2018-01-07


Ja, sehr cool! So sieht man gleich viel mehr...


-----------------
Gruß blindmessenger



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.8, eingetragen 2018-01-07


Müsste man nicht Divisor-Matrizen verschiedener Divisoren gegenüberstellen?



  Profil  Quote  Link auf diesen Beitrag Link
blindmessenger
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 02.08.2016
Mitteilungen: 818
Aus: NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.9, vom Themenstarter, eingetragen 2018-01-07


Ja genau... Letztendlich kann man die untereinander verglichen um Gemeinsamkeiten und Unterschiede herauszuarbeiten... Das ist aber wohl ein langwieriger Prozess... Dafür bräuchte man eine Datenbank.

Dann müsste man auch erstmal Merkmale herausarbeiten. Z.B. gibt es weitaus weniger Divisormatrizen mit einer ungeraden Anzahl an Spalten. Der "Rang" von Primzahlen könnte vermerkt werden (Berechnet sich aus dem Verhältnis der Anzahl von Reihen und Spalten...)

Die Ganzzahlmuster müssten kategorisiert werden. Und auch das Muster der Anordnung der blauen Reihen in denen keine ganze Zahlen auftreten könnte kategorisiert werden.

Man könnte Kurven durch die ganzen Zahlen legen, weil ja in jeder Spalte nur maximal eine ganze Zahl auftreten kann.

Und man könnte schauen ob sich für bestimmte Primzahlränge noch mehr Gemeinsamkeiten herausarbeiten lassen.


-----------------
Gruß blindmessenger



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.10, eingetragen 2018-01-08

\(\begingroup\)
Viertel #6 hatte möglicherweise das gleiche Problem wie ich. Die Unterscheidung Bruch/Ganzzahl war noch leicht. Aber die Unterscheidung Zeile mit Ganzzahl gegenüber Zeilen mit nur Brüchen machte das Ganze recht aufwendig.

Also mit normalem tikzmath kann ich maximal n=8 Spalten herstellen.  smile

<math>

% Muss auf dem MP angegeben werden!
\usetikzlibrary{matrix}



%$M(k,n) = (2k-1)\cdot 2^n - 1 \text{ mit } k,n \in \mathbb{N}_{> 0}$ \\


%%%%%%%%%%%%%
% EINGABEN! %%%%%%
%%%%%%%%%%%%%
% 1. Lege den Divisior der Divisormatrix fest.
\pgfmathtruncatemacro{\Divisor}{17}        % Divisor  der Divisormatrix
%
\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} =\\
}%  wahlweise leer lassen / auskommentieren...

% 2a. Lege die Dimensionen der Divisormatrix fest.
\def\nMaxZeile{17}                         % Länge der Mersenne Folge in Zeilen
\def\nMaxSpalte{8}                 % Länge der Mersenne Folge in Spalten

% 2b.   Passe die Syntax für die spätere tikz-Matrix an.
\def\MatrixZeile{  \&  \&  \&  \& \&  \& \&  \\ }        % "nMaxSpalte minus 1"  \&-Zeichen setzen
\def\MatrixZeilen{%                        % "nMaxZeile" Stück eintragen
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}%
%%%%%%%%%%%%%
%%%    fertig!    %%%%%
%%%%%%%%%%%%%
% 3. Ausgabe festlegen
\tikzset{
MyStyle/.style={rectangle,},%draw
MySize/.style={ rounded corners =2pt,
minimum width=2.5em,
minimum height=1.75em,}
}
\newcommand\GANZZAHL{%
%$\textcolor{red}{\Zaehler}$
% oder
\tikz[] \node[MyStyle, fill=red]{};
% oder beides
%\tikz[] \node[MyStyle, MySize, fill=red!30]{$\textcolor{red}{\Zaehler}$};
}
%
\newcommand\BRUCHNORMAL{%
%$\frac{\Zaehler}{\Nenner}$
% oder
\tikz[] \node[MyStyle, fill]{};
% oder beides
%\tikz[] \node[MyStyle, MySize, fill=lightgray]{$\frac{\Zaehler}{\Nenner}$};
}
%
\newcommand\BRUCHBLAU{%
%$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$
% oder
\tikz[] \node[MyStyle, fill=blue]{};
% oder beides
%\tikz[] \node[MyStyle, MySize, fill=blue!30]{$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$};
}
% 4. Evtl.  Zeilen- und Spaltenabstand nach Augenmaß anpassen
\def\RowSep{.5em}
\def\ColumnSep{.5em}
%%%%%%%%%%%%%
%%%%%%%%%%%%%



\tikzmath{
% Berechnung der Folgenglieder
function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor) );};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor) );};
}

% Farbige Ausgabe des reduzierten Mersenne Bruches
% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\begingroup
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator
% Zähler und Nenner des Mersenne-Bruches festlegen
\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\GANZZAHL%
\else
\BRUCHNORMAL%
\fi
\else
\BRUCHBLAU%
\fi
\endgroup
}%%%%%%%%%%%%%%%%%%%%%%%%%
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


% Mersenne-Matrix setzen
$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [                % tikz-Matrix
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = \RowSep,                % Zeilenabstand optisch anpassen!
column sep = \ColumnSep,        % Spaletenabstand optisch anpassen!
%left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

% Matrixelemente hervorheben
% \nennerode[fill=red!50, minimum width = 1.5em, minimum height = 1.25em,
% rounded corners=1.5pt,
% align=right] at (m-1-3) {};

% Matrix füllen mit Zahlen
\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};
% Test:
%\node[align=right, text=blue] at (m-2-1) {};

\end{tikzpicture}
\end{matrix}$

</math>
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
juergen007
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 17.08.2006
Mitteilungen: 2722
Aus: Braunschweig
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.11, eingetragen 2018-01-08

\(\begingroup\)
Sry das ist jetzt doppelt, weil ich es erst als Kommentar zu dem artikel "Divisormatrizen" schrieb passt aber besser hierhin.

Zum Begriff Divisormatrizen, den blindmessenger wohl einführte auch vor seinem Artikel hier.
Also solche "Divisormatrizen" wie in LinkPrimitivwurzeln; sind hier wohl nicht gemeint, oder.

Diese habe ich aus der Latexversion von blindmessenger´s Artikel
extrahiert und etwas umgewandelt, z.B.: color statt textcolor mit editor, so dass die MP-fähig wurden.
So können sie auch breiter als 9 werden. Wir haben dummerweise jetzt eine doppelte Bedeutung von "Divisormatrizen".
Ich meine diese für p =23.
Was die Schwarz-, Grün- und Rot-Markierungen ja beispielhaft für 23 klärt in LinkPrimitivwurzeln Siehe Matrix unten.
Die Bildungsformel ist dort $(2i-1)*2^j,\quad (i,j\in \mathbb N^*, j=1..11, i=1..23 )$

Wie Tabellenbreite und Höhe zusammenhängen ist an sich für alle p oder Pseudoprime der Basis 2 (fast ;)) geklärt. (Rang!)

Wenn man diese "alten" "Divisormatrizen" z.B. modulo 23 betrachtet, wird vieles klarer und ändert nichts an den Farben.
Ich bin grad dabei, so was wie "Coloured Modulo Tabellen" - Erzeugung in PHP für alle p etwa bis 127 zu schreiben. Auch für einige Pseudoprimes. Vielleicht geht das besser in Tcl, wovon ich keine Ahnung habe.
Die gesuchten $2^j$ werden natürlich schnell gross
Denn selbst für kleine n = 0..32 (etwa) wird das kleinste j > 0, so dass \(2n+1 \mid 2^{j-1}\) , schnell sehr groß , über $2^{60}$.
Das geht aber mit biginteger bzw. GMP zu machen.
Siehe Reihe A002326
Oder man erzeugt solche Textzeilen wie cis.
Nochmal die alte Divisormatrix für 23: Besser nennen wir die Primzahlentabelle mit Untergruppen (schwarz) und Restklassen (grün).

\[\begin{pmatrix}
2&4&8&16&32&64&128&256&512&1024&\color{red}{2048}\\
6&12&\color{red}{24}&48&96&192&384&768&1536&3072&6144\\
\color{green}{10}&\color{green}{20}&\color{green}{40}&\color{green}{80}&\color{green}{160}&\color{green}{320}&\color{green}{640}&\color{green}{1280}&\color{green}{2560}&\color{green}{5120}&\color{green}{10240}\\
\color{green}{14}&\color{green}{28}&\color{green}{56}&\color{green}{112}&\color{green}{224}&\color{green}{448}&\color{green}{896}&\color{green}{1792}&\color{green}{3584}&\color{green}{7168}&\color{green}{14336}\\
18&36&72&144&288&\color{red}{576}&1152&2304&4608&9216&18432\\
\color{green}{22}&\color{green}{44}&\color{green}{88}&\color{green}{176}&\color{green}{352}&\color{green}{704}&\color{green}{1408}&\color{green}{2816}&\color{green}{5632}&\color{green}{11264}&\color{green}{22528}\\
26&52&104&\color{red}{208}&416&832&1664&3328&6656&13312&26624\\
\color{green}{30}&\color{green}{60}&\color{green}{120}&\color{green}{240}&\color{green}{480}&\color{green}{960}&\color{green}{1920}&\color{green}{3840}&\color{green}{7680}&\color{green}{15360}&\color{green}{30720}\\
\color{green}{34}&\color{green}{68}&\color{green}{136}&\color{green}{272}&\color{green}{544}&\color{green}{1088}&\color{green}{2176}&\color{green}{4352}&\color{green}{8704}&\color{green}{17408}&\color{green}{34816}\\
\color{green}{38}&\color{green}{76}&\color{green}{152}&\color{green}{304}&\color{green}{608}&\color{green}{1216}&\color{green}{2432}&\color{green}{4864}&\color{green}{9728}&\color{green}{19456}&\color{green}{38912}\\
\color{green}{42}&\color{green}{84}&\color{green}{168}&\color{green}{336}&\color{green}{672}&\color{green}{1344}&\color{green}{2688}&\color{green}{5376}&\color{green}{10752}&\color{green}{21504}&\color{green}{43008}\\
\color{green}{46}&\color{green}{92}&\color{green}{184}&\color{green}{368}&\color{green}{736}&\color{green}{1472}&\color{green}{2944}&\color{green}{5888}&\color{green}{11776}&\color{green}{23552}&\color{green}{47104}\\
50&100&200&400&800&1600&3200&6400&12800&\color{red}{25600}&51200\\
54&108&216&432&864&1728&3456&6912&\color{red}{13824}&27648&55296\\
58&\color{red}{116}&232&464&928&1856&3712&7424&14848&29696&59392\\
62&124&248&496&992&1984&3968&\color{red}{7936}&15872&31744&63488\\
\color{green}{66}&\color{green}{132}&\color{green}{264}&\color{green}{528}&\color{green}{1056}&\color{green}{2112}&\color{green}{4224}&\color{green}{8448}&\color{green}{16896}&\color{green}{33792}&\color{green}{76584}\\
\color{red}{70}&140&280&560&1120&2240&4480&8960&17920&35840&71680\\
\color{green}{74}&\color{green}{145}&\color{green}{296}&\color{green}{592}&\color{green}{1184}&\color{green}{2368}&\color{green}{4736}&\color{green}{9472}&\color{green}{18944}&\color{green}{37888}&\color{green}{75776}\\
78&156&312&624&1248&2496&\color{red}{4992}&9984&19968&39936&79872\\
82&164&328&656&\color{red}{1312}&2624&5248&10496&20992&41984&83968\\
\color{green}{86}&\color{green}{172}&\color{green}{344}&\color{green}{688}&\color{green}{1376}&\color{green}{2752}&\color{green}{5504}&\color{green}{11008}&\color{green}{22016}&\color{green}{44032}&\color{green}{88064}\\
\color{green}{90}&\color{green}{180}&\color{green}{360}&\color{green}{720}&\color{green}{1440}&\color{green}{2880}&\color{green}{5760}&\color{green}{11520}&\color{green}{23040}&\color{green}{46080}&\color{green}{ 92160}\\
\end{pmatrix}
\]



\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
juergen007
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 17.08.2006
Mitteilungen: 2722
Aus: Braunschweig
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.12, eingetragen 2018-01-09


Tach,
@ viertel
Kannst du den C++ Code fuer deine obigen Kommentar  edit.php?what=comments&keyval=16397§ion=comment&key2=1816

freigeben?
Ich verstehe nicht, was jedes blaue Pixel-Kästchen bedeutet..
DANKE!
(Sry das ist jetz der edit-link ich fand nicht den direkten.)





  Profil  Quote  Link auf diesen Beitrag Link
viertel
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 04.03.2003
Mitteilungen: 26317
Aus: Hessen
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.13, eingetragen 2018-01-09


2018-01-09 15:49 - juergen007 in Beitrag No. 12 schreibt:
@ viertel
Kannst du den C++ Code fuer deine obigen Kommentar  edit.php?what=comments&keyval=16397§ion=comment&key2=1816
freigeben?
Könnte ich, dürfte aber nix bringen, da C++ Builder mit VCL.

juergen007 schreibt:
Ich verstehe nicht, was jedes blaue Pixel-Kästchen bedeutet..
Kann ich verstehen, daß du das nicht verstehst biggrin
Ich habe schlichtweg die Farben verwechselt. Blau müßte nach cis' Farbschema eigentlich schwarz sein (Brüche in Zeilen mit ganzer Zahl), und Zeilen ohne ganze Zahl (deren es aber in meinem Bild keine gibt) blau.
Sorry für Verwirrung.



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.14, eingetragen 2018-01-09


2018-01-09 17:56 - viertel in Beitrag No. 13 schreibt:
... und Zeilen ohne ganze Zahl (deren es aber in meinem Bild keine gibt) blau.

Gibt es doch:



  Profil  Quote  Link auf diesen Beitrag Link
Slash
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 23.03.2005
Mitteilungen: 6551
Aus: New York
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.15, eingetragen 2018-01-09


Ich verstehe ja den blauen Hintergrund nicht so ganz. confused Warum nicht einfach die roten Pixel schwarz und sonst nichts.

Jetzt wäre ein Vergleichsalgorithmus erforderlich, der die "Matrizen" auf Deckungsgleichheit prüft. Das muss aber keinesfalls grafisch erfolgen. Oder gibt es einen einfachen Grund, dass sie immer gleich sein müssen, also die Quadrate?



  Profil  Quote  Link auf diesen Beitrag Link
blindmessenger
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 02.08.2016
Mitteilungen: 818
Aus: NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.16, vom Themenstarter, eingetragen 2018-01-09


Das mit den blauen Zeilen habe ich mir mal überlegt weil diese Reihen ohne Ganzzahlen oftmals eine bestimmte Anordnung zur mittleren Reihe haben. So kann man das besser erkennen. Ist aber natürlich nicht zwingend erforderlich...


-----------------
Gruß blindmessenger



  Profil  Quote  Link auf diesen Beitrag Link
juergen007
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 17.08.2006
Mitteilungen: 2722
Aus: Braunschweig
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.17, eingetragen 2018-01-09


2018-01-09 17:56 - viertel in Beitrag No. 13 schreibt:
2018-01-09 15:49 - juergen007 in Beitrag No. 12 schreibt:
@ viertel
Kannst du den C++ Code fuer deine obigen Kommentar  edit.php?what=comments&keyval=16397§ion=comment&key2=1816
freigeben?
Könnte ich, dürfte aber nix bringen, da C++ Builder mit VCL.

juergen007 schreibt:
Ich verstehe nicht, was jedes blaue Pixel-Kästchen bedeutet..
Kann ich verstehen, daß du das nicht verstehst biggrin
Sorry für Verwirrung.
Was ist n VCL confused Nicht so wichtig.
Was ich da sehe, sind ca 36 Kästchen der Breite und Höhe 29 geteilt durch eine rote Mittellinie, alle identisch meine ich nach 10 facher Vergrösserung.
Die sind alle irgendwie erzeugt durch 29.
Eine solche in Gross.png würde mir mal reichen, um das Prinzip dieser "Divisormatratzen" von blindiMausi wink zu durchschauen. Single upper Inverted quadrat oder was? biggrin

Thx



[Die Antwort wurde nach Beitrag No.11 begonnen.]



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.18, eingetragen 2018-01-09


2018-01-09 21:30 - juergen007 in Beitrag No. 17 schreibt:
2018-01-09 17:56 - viertel in Beitrag No. 13 schreibt:
2018-01-09 15:49 - juergen007 in Beitrag No. 12 schreibt:
@ viertel
Kannst du den C++ Code ... freigeben?
Könnte ich, dürfte aber nix bringen, da C++ Builder mit VCL.


Deshalb sage ich ja, das Beste wäre eine Textdatei des in #1 genannten Typs. Diese kann man dann auf verschiedene Weise auswerten. Das dort Beschriebene lässt sich ggf. nochmal vereinfachen, da man nicht jeden Nenner explizit ausrechnen muss.
Ich muss mich halt erst mal wieder in Mathematica reinfinden, was ich hier für am sinnvollsten halte; und LaTeX für die Veranschaulichung.



  Profil  Quote  Link auf diesen Beitrag Link
viertel
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 04.03.2003
Mitteilungen: 26317
Aus: Hessen
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.19, eingetragen 2018-01-09


2018-01-09 19:40 - Slash in Beitrag No. 15 schreibt:
Ich verstehe ja den blauen Hintergrund nicht so ganz.
Was für ein blauer Hintergrund?
Ich habe doch geschrieben, daß ich nur das Farbschema von cis verwendet habe, dummerweise mit vertauschten Farben. Und, wie sich herausgestellt hat, mit Rechenfehlern.



  Profil  Quote  Link auf diesen Beitrag Link
Slash
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 23.03.2005
Mitteilungen: 6551
Aus: New York
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.20, eingetragen 2018-01-09


2018-01-09 22:18 - viertel in Beitrag No. 19 schreibt:
2018-01-09 19:40 - Slash in Beitrag No. 15 schreibt:
Ich verstehe ja den blauen Hintergrund nicht so ganz.
Was für ein blauer Hintergrund?
Ich habe doch geschrieben, daß ich nur das Farbschema von cis verwendet habe, dummerweise mit vertauschten Farben. Und, wie sich herausgestellt hat, mit Rechenfehlern.

Ja, dann verstehe ich das blau jetzt. cool



  Profil  Quote  Link auf diesen Beitrag Link
juergen007
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 17.08.2006
Mitteilungen: 2722
Aus: Braunschweig
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.21, eingetragen 2018-01-12

\(\begingroup\)
Ich poste das nochmal als Auszug aus den Kommentaren zum article.php?sid=1816

Weil ich alle Kommentare weglassen wollte in der Annahme, dass % Zahlen Kommentare klammern oder einleiten.
Also ich habe kaum Ahnung von tikz.
Aber manche Zeilen wie
" % Berechnung der Folgenglieder" - siehe Quelltext von unterer Matrix(11) - kann man nicht einfach loeschen. Warum nicht?
Wie genau wird das % Zeichen verwendet?
Thx
Jürgen


Singlematrix:
<math>
\usetikzlibrary{matrix}
\pgfmathtruncatemacro{\Divisor}{11}
\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} = }

\def\nMaxZeile{11}
\def\nMaxSpalte{10}

\def\MatrixZeile{  \&  \&  \&  \&  \& \&  \&  \&  \&  \\ }
\def\MatrixZeilen{
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}

\tikzmath{
% Berechnung der Folgenglieder
function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor));};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor));};
}


% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator

\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\textcolor{red}{\Zaehler}%
\else
$\frac{\Zaehler}{\Nenner}$%
\fi
\else
$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$%
\fi
}
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = 1.125em,
column sep = 1.25em,
left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};

\end{tikzpicture}
\end{matrix}$
</math>
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.22, eingetragen 2018-01-13

\(\begingroup\)
2018-01-12 23:46 - juergen007 in Beitrag No. 21 schreibt:
1. " % Berechnung der Folgenglieder" ... kann man nicht einfach loeschen. Warum nicht?

2. Wie genau wird das % Zeichen verwendet?

1. Ich weiß auch nicht, warum du das löschen willst. Das kannst du einfach stehen lassen (die "Anleitung" wurde ja nicht aus Jux dazugeschrieben); denn

2. Mit dem %-Zeichen wird bei LaTeX auskommentiert.


Dieses TikZ-Template ist aber nur gut, für einfache Darstellungen in einem Artikel o.ä. Für Primzahlforschungen ist es ungeeignet (wie oben schon gezeigt), da es ab 9 Spalten, d.h. für $2^9-1$, an die Rechengrenzen von tikzmath stößt.

Es gibt mittlerweile etwas Besseres. Das werde ich demnächst präsentieren.


 

\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
juergen007
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 17.08.2006
Mitteilungen: 2722
Aus: Braunschweig
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.23, eingetragen 2018-01-13

\(\begingroup\)
2018-01-13 05:24 - cis in Beitrag No. 22 schreibt:
2018-01-12 23:46 - juergen007 in Beitrag No. 21 schreibt:
1. " % Berechnung der Folgenglieder" ... kann man nicht einfach loeschen. Warum nicht?

2. Wie genau wird das % Zeichen verwendet?

1. Ich weiß auch nicht, warum du das löschen willst. Das kannst du einfach stehen lassen (die "Anleitung" wurde ja nicht aus Jux dazugeschrieben); denn

2. Mit dem %-Zeichen wird bei LaTeX auskommentiert.

Ist klar, Kommentarzeilen sind nützlich und nowendig aber dürften den "Aufruf" nicht beeinflussen. Ich wollte eine Art "Roh"-version erzeugen, da diese Beispiel 10 (!) Spalten enthält. Oder ich mach da was falsch?

Dieses TikZ-Template ist aber nur gut, für einfache Darstellungen in einem Artikel o.ä. Für Primzahlforschungen ist es ungeeignet (wie oben schon gezeigt), da es ab 9 Spalten, d.h. für $2^9-1$, an die Rechengrenzen von tikzmath stößt.
Es gibt mittlerweile etwas Besseres. Das werde ich demnächst präsentieren.

Darauf bin ich sehr gespannt!
Wenn ich die o.a. Kommentarzeile
% Berechnung der Folgenglieder
 streiche, funktioniert der Aufruf in MP nicht mehr komischerweise.
Und es erscheint sowohl bei Firefox als auch Chrome Browser eine Fehlermeldung. s.u. Aber was ist falsch?
 
Singlematrix:
<math> \usetikzlibrary{matrix} \pgfmathtruncatemacro{\Divisor}{11} \newcommand\Einleitungstext{% M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} = } \def\nMaxZeile{11} \def\nMaxSpalte{10} \def\MatrixZeile{ \& \& \& \& \& \& \& \& \& \\ } \def\MatrixZeilen{ \MatrixZeile \MatrixZeile \MatrixZeile \MatrixZeile \MatrixZeile \MatrixZeile \MatrixZeile \MatrixZeile \MatrixZeile \MatrixZeile \MatrixZeile } \tikzmath{ function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);}; % Bestimmung des Reduzierten Bruches function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));}; function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));}; % Bestimmung von Zähler und Nenner im MersenneBruch function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor));}; function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor));}; } % \MersenneBruch{<k>}{<n>} \newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%% \pgfmathsetmacro{\Eins}{1} % als Vergleichsoperator \pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}% \pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}% % \pgfmathsetmacro{\y}{0} \foreach \Spalte in {1,...,\nMaxSpalte}{% \pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}% \ifx \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner \global\let\y=\MNenner% %\pgfmathsetmacro{\y}{\MNenner} \else \let\y=0% \fi }% \ifx \y\Eins% %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner... \ifx \Nenner\Eins% \textcolor{red}{\Zaehler}% \else $\frac{\Zaehler}{\Nenner}$% \fi \else $\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$% \fi } %Test: \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1} $\Einleitungstext \begin{matrix} % normale Matrix damit angepasst an Rest \begin{tikzpicture} \matrix (m) [ ampersand replacement=\&, matrix of math nodes, nodes in empty cells, row sep = 1.125em, column sep = 1.25em, left delimiter = (, right delimiter = ), % Klammern ] {% \MatrixZeilen }; \foreach \k in {1,...,\nMaxZeile} \foreach \n in {1,...,\nMaxSpalte} \node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}}; % Test: %\node[align=right, text=blue] at (m-2-1) {}; \end{tikzpicture} \end{matrix}$ </math>

Singlematrix:
<math>
\usetikzlibrary{matrix}

\pgfmathtruncatemacro{\Divisor}{11}

\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} = }

\def\nMaxZeile{11}
\def\nMaxSpalte{10}

\def\MatrixZeile{  \&  \&  \&  \&  \& \&  \&  \&  \&  \\ }
\def\MatrixZeilen{
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}

\tikzmath{

function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor));};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor));};
}


% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator

\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\textcolor{red}{\Zaehler}%
\else
$\frac{\Zaehler}{\Nenner}$%
\fi
\else
$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$%
\fi
}
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = 1.125em,
column sep = 1.25em,
left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};

% Test:
%\node[align=right, text=blue] at (m-2-1) {};
\end{tikzpicture}
\end{matrix}$
</math>
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.24, eingetragen 2018-01-13

\(\begingroup\)
2018-01-13 13:47 - juergen007 in Beitrag No. 23 schreibt:
Singlematrix:
<math>
\usetikzlibrary{matrix}

\pgfmathtruncatemacro{\Divisor}{11}

\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} = }

\def\nMaxZeile{11}
\def\nMaxSpalte{10}

\def\MatrixZeile{  \&  \&  \&  \&  \& \&  \&  \&  \&  \\ }
\def\MatrixZeilen{
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}

\tikzmath{

function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor));};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor));};
}


% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator

\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\textcolor{red}{\Zaehler}%
\else
$\frac{\Zaehler}{\Nenner}$%
\fi
\else
$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$%
\fi
}
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = 1.125em,
column sep = 1.25em,
left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};

% Test:
%\node[align=right, text=blue] at (m-2-1) {};
\end{tikzpicture}
\end{matrix}$
</math>


Ich weiß auch nicht, warum du da -auf Teufel komm raus- sämtliche Annotationen löschen willst, die als Hilfestellung für die Bedienung gedacht waren.
Ich hatte hier eine Anleitung gegeben, wie das Template zu bedienen ist. Wenn man sich an das dort Geschriebene hält und ansonsten nicht im Code rumpfuscht, dann funktioniert das auch.

<math>

\usetikzlibrary{matrix}
% Muss auf dem MP angegeben werden!

%%%%%%%%%%%
% EINGABEN! %%%%%%
%%%%%%%%%%%%%
% 1. Lege den Divisior der Divisormatrix fest.
\pgfmathtruncatemacro{\Divisor}{11}        % Divisor  der Divisormatrix
%
\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \cdot \dfrac{1}{\Divisor} =
}%  wahlweise leer lassen / auskommentieren...

% 2a. Lege die Dimensionen der Divisormatrix fest.
\def\nMaxZeile{11}                         % Länge der Mersenne Folge in Zeilen
\def\nMaxSpalte{10}                 % Länge der Mersenne Folge in Spalten

% 2b.   Passe die Syntax für die spätere tikz-Matrix an.
\def\MatrixZeile{\&  \&\&  \&\&  \&  \&  \&  \&    \\ }        % "nMaxSpalte minus 1"  \&-Zeichen setzen
\def\MatrixZeilen{%                        % "nMaxZeile" Stück eintragen
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}%
%%%%%%%%%%%%%
%%%    fertig!    %%%%%
%%%%%%%%%%%%%
% 3. Passe evtl. noch       row sep = ****em,   column sep = ****em,
%     in der späteren tikz-Matrix optisch an.
%%%%%%%%%%%%%
%%%%%%%%%%%%%

\tikzmath{
% Berechnung der Folgenglieder
function Mersenne(\K, \N) {return int((2*\K-1)*2^\N-1);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor));};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor));};
}

% Farbige Ausgabe des reduzierten Mersenne Bruches
% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator
% Zähler und Nenner des Mersenne-Bruches festlegen
\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\textcolor{red}{\Zaehler}%
\else
$\frac{\Zaehler}{\Nenner}$%
\fi
\else
$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$%
\fi
}%%%%%%%%%%%%%%%%%%%%%%%%%
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


% Mersenne-Matrix setzen
$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [                % tikz-Matrix
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = 1.125em,                % Zeilenabstand optisch anpassen!
column sep = 1.25em,        % Spaletenabstand optisch anpassen!
left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

% Matrixelemente hervorheben
% \nennerode[fill=red!50, minimum width = 1.5em, minimum height = 1.25em,
% rounded corners=1.5pt,
% align=right] at (m-1-3) {};

% Matrix füllen mit Zahlen
\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};
% Test:
%\node[align=right, text=blue] at (m-2-1) {};
\end{tikzpicture}
\end{matrix}$

</math>
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
juergen007
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 17.08.2006
Mitteilungen: 2722
Aus: Braunschweig
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.25, eingetragen 2018-01-14

\(\begingroup\)
2018-01-13 21:40 - cis in Beitrag No. 24 schreibt:

Ich weiß auch nicht, warum du da -auf Teufel komm raus- sämtliche Annotationen löschen willst, die als Hilfestellung für die Bedienung gedacht waren.
Ich hatte hier eine Anleitung gegeben, wie das Template zu bedienen ist. Wenn man sich an das dort Geschriebene hält und ansonsten nicht im Code rumpfuscht, dann funktioniert das auch.

Ja ist schon ok:)
Was ich an sich wollte, ist mithilfe diese Ansatzes eine Matrix zu erstellen in der NUR die Zähler des "Mersennebruches" stehen, mit derselben Färbung.

Das krieg ich wohl auch hin,oder?  confused

Und eine endliche Version einer anderen Matrix (1..11,1..23) mittels tikz nach deiner Anleitung, s.u..
Das Bildungsgvesetz ist ein anderes.
Das würde aufwendiger sein. Ich müsste das Matrix -füllen und -färben ändern, mal sehen...

In PHP übergebe ich 2 2-dimensionale arrays mit Zahlen bzw. Farben , skizziert:
PHP
for ($i = 1; $i < $AnzahlZeilen; $i++)
	{
	for ($j = 1; $j < $AnzahlSpalten; $j++)
	{
		$Number [$i][j]= berechne($Zahlen,$i,$j);
		$Farben [$i][j]= ermittle($Number,$i,$j);
	}
}
$Dateiname = 'colouredHtmlOutputData.html';
Colured_Html_Output($Zahlen,$Farben,$Dateiname);


an eine Ausgabe routine, die eine HTML Table erzeugt. Daran arbeite ich noch.
Du deutetest ja an, Du hast was besseres "neugierig" smile in Arbeit in mathematica  , was ich auch nicht habe. Was kostet das eigentlich. Ich kann das alles selber erforschen.


Zunächst meine ich exemplarisch die "Matrix" oder Tabelle" aus  Jonas´ Arbeit, Seite 21, "Inverted Mirror Matrix".

Wie stellt man diese dar ohne Zahlen evtl auch nur mit farbigen Kreisen wie du es mal in der Nachtwache machtest? siehe LinkNachtwache 2018
Danke!


\(
\begin{pmatrix}
2&4&8&16&32&64&128&256&512&1024&\color{red}{2048}\\
6&12&\color{red}{24}&48&96&192&384&768&1536&3072&6144\\
\color{blue}{10}&\color{blue}{20}&\color{blue}{40}&\color{blue}{80}&\color{blue}{160}&\color{blue}{320}&\color{blue}{640}&\color{blue}{1280}&\color{blue}{2560}&\color{blue}{5120}&\color{blue}{10240}\\
\color{blue}{14}&\color{blue}{28}&\color{blue}{56}&\color{blue}{112}&\color{blue}{224}&\color{blue}{448}&\color{blue}{896}&\color{blue}{1792}&\color{blue}{3584}&\color{blue}{7168}&\color{blue}{14336}\\
18&36&72&144&288&\color{red}{576}&1152&2304&4608&9216&18432\\
\color{blue}{22}&\color{blue}{44}&\color{blue}{88}&\color{blue}{176}&\color{blue}{352}&\color{blue}{704}&\color{blue}{1408}&\color{blue}{2816}&\color{blue}{5632}&\color{blue}{11264}&\color{blue}{22528}\\
26&52&104&\color{red}{208}&416&832&1664&3328&6656&13312&26624\\
\color{blue}{30}&\color{blue}{60}&\color{blue}{120}&\color{blue}{240}&\color{blue}{480}&\color{blue}{960}&\color{blue}{1920}&\color{blue}{3840}&\color{blue}{7680}&\color{blue}{15360}&\color{blue}{30720}\\
\color{blue}{34}&\color{blue}{68}&\color{blue}{136}&\color{blue}{272}&\color{blue}{544}&\color{blue}{1088}&\color{blue}{2176}&\color{blue}{4352}&\color{blue}{8704}&\color{blue}{17408}&\color{blue}{34816}\\
\color{blue}{38}&\color{blue}{76}&\color{blue}{152}&\color{blue}{304}&\color{blue}{608}&\color{blue}{1216}&\color{blue}{2432}&\color{blue}{4864}&\color{blue}{9728}&\color{blue}{19456}&\color{blue}{38912}\\
\color{blue}{42}&\color{blue}{84}&\color{blue}{168}&\color{blue}{336}&\color{blue}{672}&\color{blue}{1344}&\color{blue}{2688}&\color{blue}{5376}&\color{blue}{10752}&\color{blue}{21504}&\color{blue}{43008}\\
\color{blue}{46}&\color{blue}{92}&\color{blue}{184}&\color{blue}{368}&\color{blue}{736}&\color{blue}{1472}&\color{blue}{2944}&\color{blue}{5888}&\color{blue}{11776}&\color{blue}{23552}&\color{blue}{47104}\\
50&100&200&400&800&1600&3200&6400&12800&\color{red}{25600}&51200\\
54&108&216&432&864&1728&3456&6912&\color{red}{13824}&27648&55296\\
58&\color{red}{116}&232&464&928&1856&3712&7424&14848&29696&59392\\
62&124&248&496&992&1984&3968&\color{red}{7936}&15872&31744&63488\\
\color{blue}{66}&\color{blue}{132}&\color{blue}{264}&\color{blue}{528}&\color{blue}{1056}&\color{blue}{2112}&\color{blue}{4224}&\color{blue}{8448}&\color{blue}{16896}&\color{blue}{33792}&\color{blue}{76584}\\
\color{red}{70}&140&280&560&1120&2240&4480&8960&17920&35840&71680\\
\color{blue}{74}&\color{blue}{145}&\color{blue}{296}&\color{blue}{592}&\color{blue}{1184}&\color{blue}{2368}&\color{blue}{4736}&\color{blue}{9472}&\color{blue}{18944}&\color{blue}{37888}&\color{blue}{75776}\\
78&156&312&624&1248&2496&\color{red}{4992}&9984&19968&39936&79872\\
82&164&328&656&\color{red}{1312}&2624&5248&10496&20992&41984&83968\\
\color{blue}{86}&\color{blue}{172}&\color{blue}{344}&\color{blue}{688}&\color{blue}{1376}&\color{blue}{2752}&\color{blue}{5504}&\color{blue}{11008}&\color{blue}{22016}&\color{blue}{44032}&\color{blue}{88064}\\
\color{blue}{90}&\color{blue}{180}&\color{blue}{360}&\color{blue}{720}&\color{blue}{1440}&\color{blue}{2880}&\color{blue}{5760}&\color{blue}{11520}&\color{blue}{23040}&\color{blue}{46080}&\color{blue}{ 92160}\\
\end{pmatrix}
\)
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.26, eingetragen 2018-01-21


2018-01-09 18:07 - cis in Beitrag No. 14 schreibt:
2018-01-09 17:56 - viertel in Beitrag No. 13 schreibt:
... und Zeilen ohne ganze Zahl (deren es aber in meinem Bild keine gibt) blau.

Gibt es doch:





PS: Ich kann gleich dazusagen, dass der MP das nicht mehr kompiliert.



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.27, eingetragen 2018-01-21

\(\begingroup\)
<math>
\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis}
%
% ============================
%         1. Einstellungen 1/3 ---------------------------
\def\divisor{17}                 % Divisor der Divisormatrix
\def\nMax{8}                         % Spaltenzahl      % ! ! !
\def\Pixelbreite{2em}  % 2em  % 2mm
%
% 2. Einstellungen 2/3 ---------------------------
% Einstellungen ==================
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
ZahlenAnzeigen,
% ------------------------------------------------------
HintergrundFarben,
%                         NurHintergrundFarben,
%                          KeineHintergrundFarben,
% ------------------------------------------------------
KordinatensystemAnzeigen,
%                          KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
%                         KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
% ------------------------------------------------------
x = \Pixelbreite,  y=\Pixelbreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}

% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data, ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 17 0
2 1 3 17 0
3 1 7 17 0
4 1 15 17 0
5 1 31 17 0
6 1 63 17 0
7 1 127 17 0
8 1 15 1 1
1 2 5 17 2
2 2 11 17 2
3 2 23 17 2
4 2 47 17 2
5 2 95 17 2
6 2 191 17 2
7 2 383 17 2
8 2 767 17 2
1 3 9 17 2
2 3 19 17 2
3 3 39 17 2
4 3 79 17 2
5 3 159 17 2
6 3 319 17 2
7 3 639 17 2
8 3 1279 17 2
1 4 13 17 2
2 4 27 17 2
3 4 55 17 2
4 4 111 17 2
5 4 223 17 2
6 4 447 17 2
7 4 895 17 2
8 4 1791 17 2
1 5 1 1 1
2 5 35 17 0
3 5 71 17 0
4 5 143 17 0
5 5 287 17 0
6 5 575 17 0
7 5 1151 17 0
8 5 2303 17 0
1 6 21 17 2
2 6 43 17 2
3 6 87 17 2
4 6 175 17 2
5 6 351 17 2
6 6 703 17 2
7 6 1407 17 2
8 6 2815 17 2
1 7 25 17 0
2 7 3 1 1
3 7 103 17 0
4 7 207 17 0
5 7 415 17 0
6 7 831 17 0
7 7 1663 17 0
8 7 3327 17 0
1 8 29 17 0
2 8 59 17 0
3 8 7 1 1
4 8 239 17 0
5 8 479 17 0
6 8 959 17 0
7 8 1919 17 0
8 8 3839 17 0
1 9 33 17 2
2 9 67 17 2
3 9 135 17 2
4 9 271 17 2
5 9 543 17 2
6 9 1087 17 2
7 9 2175 17 2
8 9 4351 17 2
1 10 37 17 0
2 10 75 17 0
3 10 151 17 0
4 10 303 17 0
5 10 607 17 0
6 10 1215 17 0
7 10 143 1 1
8 10 4863 17 0
1 11 41 17 0
2 11 83 17 0
3 11 167 17 0
4 11 335 17 0
5 11 671 17 0
6 11 79 1 1
7 11 2687 17 0
8 11 5375 17 0
1 12 45 17 2
2 12 91 17 2
3 12 183 17 2
4 12 367 17 2
5 12 735 17 2
6 12 1471 17 2
7 12 2943 17 2
8 12 5887 17 2
1 13 49 17 0
2 13 99 17 0
3 13 199 17 0
4 13 399 17 0
5 13 47 1 1
6 13 1599 17 0
7 13 3199 17 0
8 13 6399 17 0
1 14 53 17 2
2 14 107 17 2
3 14 215 17 2
4 14 431 17 2
5 14 863 17 2
6 14 1727 17 2
7 14 3455 17 2
8 14 6911 17 2
1 15 57 17 2
2 15 115 17 2
3 15 231 17 2
4 15 463 17 2
5 15 927 17 2
6 15 1855 17 2
7 15 3711 17 2
8 15 7423 17 2
1 16 61 17 2
2 16 123 17 2
3 16 247 17 2
4 16 495 17 2
5 16 991 17 2
6 16 1983 17 2
7 16 3967 17 2
8 16 7935 17 2
1 17 65 17 0
2 17 131 17 0
3 17 263 17 0
4 17 31 1 1
5 17 1055 17 0
6 17 2111 17 0
7 17 4223 17 0
8 17 8447 17 0
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{17.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}
\end{tikzpicture}


</math>

=====================================

<math>

\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis}
%
% ============================
%         1. Einstellungen 1/3 ---------------------------
\def\divisor{23}                 % Divisor der Divisormatrix
\def\nMax{11}                         % Spaltenzahl      % ! ! !
\def\Pixelbreite{3.25mm}  % 2em  % 2mm
%
% 2. Einstellungen 2/3 ---------------------------
% Einstellungen ==================
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
%                          ZahlenAnzeigen,
% ------------------------------------------------------
%                         HintergrundFarben,
NurHintergrundFarben,
%                          KeineHintergrundFarben,
% ------------------------------------------------------
KordinatensystemAnzeigen,
%                          KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
%                         KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
% ------------------------------------------------------
x = \Pixelbreite,  y=\Pixelbreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}

% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data, ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 23 0
2 1 3 23 0
3 1 7 23 0
4 1 15 23 0
5 1 31 23 0
6 1 63 23 0
7 1 127 23 0
8 1 255 23 0
9 1 511 23 0
10 1 1023 23 0
11 1 89 1 1
1 2 5 23 0
2 2 11 23 0
3 2 1 1 1
4 2 47 23 0
5 2 95 23 0
6 2 191 23 0
7 2 383 23 0
8 2 767 23 0
9 2 1535 23 0
10 2 3071 23 0
11 2 6143 23 0
1 3 9 23 2
2 3 19 23 2
3 3 39 23 2
4 3 79 23 2
5 3 159 23 2
6 3 319 23 2
7 3 639 23 2
8 3 1279 23 2
9 3 2559 23 2
10 3 5119 23 2
11 3 10239 23 2
1 4 13 23 2
2 4 27 23 2
3 4 55 23 2
4 4 111 23 2
5 4 223 23 2
6 4 447 23 2
7 4 895 23 2
8 4 1791 23 2
9 4 3583 23 2
10 4 7167 23 2
11 4 14335 23 2
1 5 17 23 0
2 5 35 23 0
3 5 71 23 0
4 5 143 23 0
5 5 287 23 0
6 5 25 1 1
7 5 1151 23 0
8 5 2303 23 0
9 5 4607 23 0
10 5 9215 23 0
11 5 18431 23 0
1 6 21 23 2
2 6 43 23 2
3 6 87 23 2
4 6 175 23 2
5 6 351 23 2
6 6 703 23 2
7 6 1407 23 2
8 6 2815 23 2
9 6 5631 23 2
10 6 11263 23 2
11 6 22527 23 2
1 7 25 23 0
2 7 51 23 0
3 7 103 23 0
4 7 9 1 1
5 7 415 23 0
6 7 831 23 0
7 7 1663 23 0
8 7 3327 23 0
9 7 6655 23 0
10 7 13311 23 0
11 7 26623 23 0
1 8 29 23 2
2 8 59 23 2
3 8 119 23 2
4 8 239 23 2
5 8 479 23 2
6 8 959 23 2
7 8 1919 23 2
8 8 3839 23 2
9 8 7679 23 2
10 8 15359 23 2
11 8 30719 23 2
1 9 33 23 2
2 9 67 23 2
3 9 135 23 2
4 9 271 23 2
5 9 543 23 2
6 9 1087 23 2
7 9 2175 23 2
8 9 4351 23 2
9 9 8703 23 2
10 9 17407 23 2
11 9 34815 23 2
1 10 37 23 2
2 10 75 23 2
3 10 151 23 2
4 10 303 23 2
5 10 607 23 2
6 10 1215 23 2
7 10 2431 23 2
8 10 4863 23 2
9 10 9727 23 2
10 10 19455 23 2
11 10 38911 23 2
1 11 41 23 2
2 11 83 23 2
3 11 167 23 2
4 11 335 23 2
5 11 671 23 2
6 11 1343 23 2
7 11 2687 23 2
8 11 5375 23 2
9 11 10751 23 2
10 11 21503 23 2
11 11 43007 23 2
1 12 45 23 2
2 12 91 23 2
3 12 183 23 2
4 12 367 23 2
5 12 735 23 2
6 12 1471 23 2
7 12 2943 23 2
8 12 5887 23 2
9 12 11775 23 2
10 12 23551 23 2
11 12 47103 23 2
1 13 49 23 0
2 13 99 23 0
3 13 199 23 0
4 13 399 23 0
5 13 799 23 0
6 13 1599 23 0
7 13 3199 23 0
8 13 6399 23 0
9 13 12799 23 0
10 13 1113 1 1
11 13 51199 23 0
1 14 53 23 0
2 14 107 23 0
3 14 215 23 0
4 14 431 23 0
5 14 863 23 0
6 14 1727 23 0
7 14 3455 23 0
8 14 6911 23 0
9 14 601 1 1
10 14 27647 23 0
11 14 55295 23 0
1 15 57 23 0
2 15 5 1 1
3 15 231 23 0
4 15 463 23 0
5 15 927 23 0
6 15 1855 23 0
7 15 3711 23 0
8 15 7423 23 0
9 15 14847 23 0
10 15 29695 23 0
11 15 59391 23 0
1 16 61 23 0
2 16 123 23 0
3 16 247 23 0
4 16 495 23 0
5 16 991 23 0
6 16 1983 23 0
7 16 3967 23 0
8 16 345 1 1
9 16 15871 23 0
10 16 31743 23 0
11 16 63487 23 0
1 17 65 23 2
2 17 131 23 2
3 17 263 23 2
4 17 527 23 2
5 17 1055 23 2
6 17 2111 23 2
7 17 4223 23 2
8 17 8447 23 2
9 17 16895 23 2
10 17 33791 23 2
11 17 67583 23 2
1 18 3 1 1
2 18 139 23 0
3 18 279 23 0
4 18 559 23 0
5 18 1119 23 0
6 18 2239 23 0
7 18 4479 23 0
8 18 8959 23 0
9 18 17919 23 0
10 18 35839 23 0
11 18 71679 23 0
1 19 73 23 2
2 19 147 23 2
3 19 295 23 2
4 19 591 23 2
5 19 1183 23 2
6 19 2367 23 2
7 19 4735 23 2
8 19 9471 23 2
9 19 18943 23 2
10 19 37887 23 2
11 19 75775 23 2
1 20 77 23 0
2 20 155 23 0
3 20 311 23 0
4 20 623 23 0
5 20 1247 23 0
6 20 2495 23 0
7 20 217 1 1
8 20 9983 23 0
9 20 19967 23 0
10 20 39935 23 0
11 20 79871 23 0
1 21 81 23 0
2 21 163 23 0
3 21 327 23 0
4 21 655 23 0
5 21 57 1 1
6 21 2623 23 0
7 21 5247 23 0
8 21 10495 23 0
9 21 20991 23 0
10 21 41983 23 0
11 21 83967 23 0
1 22 85 23 2
2 22 171 23 2
3 22 343 23 2
4 22 687 23 2
5 22 1375 23 2
6 22 2751 23 2
7 22 5503 23 2
8 22 11007 23 2
9 22 22015 23 2
10 22 44031 23 2
11 22 88063 23 2
1 23 89 23 2
2 23 179 23 2
3 23 359 23 2
4 23 719 23 2
5 23 1439 23 2
6 23 2879 23 2
7 23 5759 23 2
8 23 11519 23 2
9 23 23039 23 2
10 23 46079 23 2
11 23 92159 23 2
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{23.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}
\end{tikzpicture}



</math>


<math>

\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis}
%
% ============================
%         1. Einstellungen 1/3 ---------------------------
\def\divisor{23}                 % Divisor der Divisormatrix
\def\nMax{11}                         % Spaltenzahl      % ! ! !
\def\Pixelbreite{2em}  % 2em  % 2mm
%
% 2. Einstellungen 2/3 ---------------------------
% Einstellungen ==================
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
ZahlenAnzeigen,
% ------------------------------------------------------
HintergrundFarben,
%                         NurHintergrundFarben,
%                          KeineHintergrundFarben,
% ------------------------------------------------------
KordinatensystemAnzeigen,
%                          KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
%                         KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
% ------------------------------------------------------
x = \Pixelbreite,  y=\Pixelbreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}

% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data, ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 23 0
2 1 3 23 0
3 1 7 23 0
4 1 15 23 0
5 1 31 23 0
6 1 63 23 0
7 1 127 23 0
8 1 255 23 0
9 1 511 23 0
10 1 1023 23 0
11 1 89 1 1
1 2 5 23 0
2 2 11 23 0
3 2 1 1 1
4 2 47 23 0
5 2 95 23 0
6 2 191 23 0
7 2 383 23 0
8 2 767 23 0
9 2 1535 23 0
10 2 3071 23 0
11 2 6143 23 0
1 3 9 23 2
2 3 19 23 2
3 3 39 23 2
4 3 79 23 2
5 3 159 23 2
6 3 319 23 2
7 3 639 23 2
8 3 1279 23 2
9 3 2559 23 2
10 3 5119 23 2
11 3 10239 23 2
1 4 13 23 2
2 4 27 23 2
3 4 55 23 2
4 4 111 23 2
5 4 223 23 2
6 4 447 23 2
7 4 895 23 2
8 4 1791 23 2
9 4 3583 23 2
10 4 7167 23 2
11 4 14335 23 2
1 5 17 23 0
2 5 35 23 0
3 5 71 23 0
4 5 143 23 0
5 5 287 23 0
6 5 25 1 1
7 5 1151 23 0
8 5 2303 23 0
9 5 4607 23 0
10 5 9215 23 0
11 5 18431 23 0
1 6 21 23 2
2 6 43 23 2
3 6 87 23 2
4 6 175 23 2
5 6 351 23 2
6 6 703 23 2
7 6 1407 23 2
8 6 2815 23 2
9 6 5631 23 2
10 6 11263 23 2
11 6 22527 23 2
1 7 25 23 0
2 7 51 23 0
3 7 103 23 0
4 7 9 1 1
5 7 415 23 0
6 7 831 23 0
7 7 1663 23 0
8 7 3327 23 0
9 7 6655 23 0
10 7 13311 23 0
11 7 26623 23 0
1 8 29 23 2
2 8 59 23 2
3 8 119 23 2
4 8 239 23 2
5 8 479 23 2
6 8 959 23 2
7 8 1919 23 2
8 8 3839 23 2
9 8 7679 23 2
10 8 15359 23 2
11 8 30719 23 2
1 9 33 23 2
2 9 67 23 2
3 9 135 23 2
4 9 271 23 2
5 9 543 23 2
6 9 1087 23 2
7 9 2175 23 2
8 9 4351 23 2
9 9 8703 23 2
10 9 17407 23 2
11 9 34815 23 2
1 10 37 23 2
2 10 75 23 2
3 10 151 23 2
4 10 303 23 2
5 10 607 23 2
6 10 1215 23 2
7 10 2431 23 2
8 10 4863 23 2
9 10 9727 23 2
10 10 19455 23 2
11 10 38911 23 2
1 11 41 23 2
2 11 83 23 2
3 11 167 23 2
4 11 335 23 2
5 11 671 23 2
6 11 1343 23 2
7 11 2687 23 2
8 11 5375 23 2
9 11 10751 23 2
10 11 21503 23 2
11 11 43007 23 2
1 12 45 23 2
2 12 91 23 2
3 12 183 23 2
4 12 367 23 2
5 12 735 23 2
6 12 1471 23 2
7 12 2943 23 2
8 12 5887 23 2
9 12 11775 23 2
10 12 23551 23 2
11 12 47103 23 2
1 13 49 23 0
2 13 99 23 0
3 13 199 23 0
4 13 399 23 0
5 13 799 23 0
6 13 1599 23 0
7 13 3199 23 0
8 13 6399 23 0
9 13 12799 23 0
10 13 1113 1 1
11 13 51199 23 0
1 14 53 23 0
2 14 107 23 0
3 14 215 23 0
4 14 431 23 0
5 14 863 23 0
6 14 1727 23 0
7 14 3455 23 0
8 14 6911 23 0
9 14 601 1 1
10 14 27647 23 0
11 14 55295 23 0
1 15 57 23 0
2 15 5 1 1
3 15 231 23 0
4 15 463 23 0
5 15 927 23 0
6 15 1855 23 0
7 15 3711 23 0
8 15 7423 23 0
9 15 14847 23 0
10 15 29695 23 0
11 15 59391 23 0
1 16 61 23 0
2 16 123 23 0
3 16 247 23 0
4 16 495 23 0
5 16 991 23 0
6 16 1983 23 0
7 16 3967 23 0
8 16 345 1 1
9 16 15871 23 0
10 16 31743 23 0
11 16 63487 23 0
1 17 65 23 2
2 17 131 23 2
3 17 263 23 2
4 17 527 23 2
5 17 1055 23 2
6 17 2111 23 2
7 17 4223 23 2
8 17 8447 23 2
9 17 16895 23 2
10 17 33791 23 2
11 17 67583 23 2
1 18 3 1 1
2 18 139 23 0
3 18 279 23 0
4 18 559 23 0
5 18 1119 23 0
6 18 2239 23 0
7 18 4479 23 0
8 18 8959 23 0
9 18 17919 23 0
10 18 35839 23 0
11 18 71679 23 0
1 19 73 23 2
2 19 147 23 2
3 19 295 23 2
4 19 591 23 2
5 19 1183 23 2
6 19 2367 23 2
7 19 4735 23 2
8 19 9471 23 2
9 19 18943 23 2
10 19 37887 23 2
11 19 75775 23 2
1 20 77 23 0
2 20 155 23 0
3 20 311 23 0
4 20 623 23 0
5 20 1247 23 0
6 20 2495 23 0
7 20 217 1 1
8 20 9983 23 0
9 20 19967 23 0
10 20 39935 23 0
11 20 79871 23 0
1 21 81 23 0
2 21 163 23 0
3 21 327 23 0
4 21 655 23 0
5 21 57 1 1
6 21 2623 23 0
7 21 5247 23 0
8 21 10495 23 0
9 21 20991 23 0
10 21 41983 23 0
11 21 83967 23 0
1 22 85 23 2
2 22 171 23 2
3 22 343 23 2
4 22 687 23 2
5 22 1375 23 2
6 22 2751 23 2
7 22 5503 23 2
8 22 11007 23 2
9 22 22015 23 2
10 22 44031 23 2
11 22 88063 23 2
1 23 89 23 2
2 23 179 23 2
3 23 359 23 2
4 23 719 23 2
5 23 1439 23 2
6 23 2879 23 2
7 23 5759 23 2
8 23 11519 23 2
9 23 23039 23 2
10 23 46079 23 2
11 23 92159 23 2
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{23.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}
\end{tikzpicture}



</math>
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
juergen007
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 17.08.2006
Mitteilungen: 2722
Aus: Braunschweig
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.28, eingetragen 2018-01-21

\(\begingroup\)
Das hier ist ein anderes Bildungsgesetz, für die sog. "Collatzmatratzen".
Mich interessieren nur die Zähler die mod 127 reduziert werden und dann kann man über die Färbung nachdenken es gibt ein Mod in der tikzlibrary{matrix}.


<math>
\usetikzlibrary{matrix}
% Muss auf dem MP angegeben werden!

%%%%%%%%%%%
% EINGABEN! %%%%%%
%%%%%%%%%%%%%
% 1. Lege den Divisior der Divisormatrix fest.
\pgfmathtruncatemacro{\Divisor}{1}        % Divisor  der Divisormatrix (hier 1)
%
\newcommand\Einleitungstext{%
M_{\text{di}}(\Divisor) = M_{\text{M}} \mod{127} =
}%  wahlweise leer lassen / auskommentieren... also 1/

% 2a. Lege die Dimensionen der Divisormatrix fest.
\def\nMaxZeile{15}                         % Länge der Mersenne Folge in Zeilen
\def\nMaxSpalte{6}                 % Länge der Mersenne Folge in Spalten

% 2b.   Passe die Syntax für die spätere tikz-Matrix an. 15 Zeilen
\def\MatrixZeile{  \&  \&  \&  \&  \&  \\ }        % "nMaxSpalte minus 1"  \&-Zeichen setzen
\def\MatrixZeilen{%                        % "nMaxZeile" Stück eintragen
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
\MatrixZeile
}%
%%%%%%%%%%%%%
%%%    fertig!    %%%%%
%%%%%%%%%%%%%
% 3. Passe evtl. noch  row sep = ****em,   column sep = ****em,
%     in der späteren tikz-Matrix optisch an.
%%%%%%%%%%%%%
%%%%%%%%%%%%%

\tikzmath{
% Berechnung der Folgenglieder
function Mersenne(\K, \N) {return int((2*\K-1)*2^\N);};
% Bestimmung des Reduzierten Bruches
function RedZaehler(\zaehler,\nenner) {return int(\zaehler/gcd(\zaehler,\nenner));};
function RedNenner(\zaehler,\nenner) {return int(\nenner/gcd(\zaehler,\nenner));};
% Bestimmung von Zähler und Nenner im MersenneBruch
function MersenneNenner(\K,\N,\divisor) {return int(RedNenner(Mersenne(\K,\N),\divisor));};
function MersenneZaehler(\K,\N,\divisor) {return int(RedZaehler(Mersenne(\K,\N),\divisor));};
}

% Farbige Ausgabe des reduzierten Mersenne Bruches
% \MersenneBruch{<k>}{<n>}
\newcommand\MersenneBruch[2]{%%%%%%%%%%%%%%%%%%
\pgfmathsetmacro{\Eins}{1}  % als Vergleichsoperator
% Zähler und Nenner des Mersenne-Bruches festlegen
\pgfmathtruncatemacro{\Nenner}{MersenneNenner(#1,#2,\Divisor)}%
\pgfmathtruncatemacro{\Zaehler}{MersenneZaehler(#1,#2,\Divisor)}%
%
\pgfmathsetmacro{\y}{0}
\foreach \Spalte in {1,...,\nMaxSpalte}{%
\pgfmathtruncatemacro{\MNenner}{MersenneNenner(#1,\Spalte,\Divisor)}%
\ifx  \MNenner\Eins%Prüfen,ob in 1,...,\nMaxSpalte eine 1 im Nenner
\global\let\y=\MNenner%  %\pgfmathsetmacro{\y}{\MNenner}
\else
\let\y=0%
\fi
}%
\ifx        \y\Eins%         %Wenn in 1,...,\nMaxSpalte eine 1 im Nenner...
\ifx \Nenner\Eins%
\textcolor{red}{\Zaehler}%
\else
$\frac{\Zaehler}{\Nenner}$%
\fi
\else
$\textcolor{blue}{\frac{\Zaehler}{\Nenner}}$%
\fi
}%%%%%%%%%%%%%%%%%%%%%%%%%
%Test:  \MersenneBruch{1}{1}, \MersenneBruch{1}{4}, \MersenneBruch{6}{1},\MersenneBruch{2}{1}


% Mersenne-Matrix setzen
$\Einleitungstext
\begin{matrix} % normale Matrix damit angepasst an Rest
\begin{tikzpicture}
\matrix (m) [                % tikz-Matrix
ampersand replacement=\&,
matrix of math nodes,
nodes in empty cells,
row sep = 1.125em,                % Zeilenabstand optisch anpassen!
column sep = 1.25em,        % Spaletenabstand optisch anpassen!
left delimiter  = (, right delimiter  = ), % Klammern
]
{%
\MatrixZeilen
};

% Matrixelemente hervorheben
% \nennerode[fill=red!50, minimum width = 1.5em, minimum height = 1.25em,
% rounded corners=1.5pt,
% align=right] at (m-1-3) {};

% Matrix füllen mit Zahlen
\foreach \k in {1,...,\nMaxZeile}
\foreach \n in {1,...,\nMaxSpalte}
\node[align=center] at (m-\k-\n) {\MersenneBruch{\k}{\n}};
% Test:
%\node[align=right, text=blue] at (m-2-1) {};
\end{tikzpicture}
\end{matrix}$
</math>
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.29, eingetragen 2018-01-21


Den TikZ-Code musst Du vergessen.
Das hier (#27) ist pgfplots; aber die Zahlen (und die Farbzuordnung) stammen aus Mathematica.
- Ich erkläre mal morgen was dazu. -

pgfplots kann man aber auch an seine Grenzen bringen; Mathematica genauso.



  Profil  Quote  Link auf diesen Beitrag Link
juergen007
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 17.08.2006
Mitteilungen: 2722
Aus: Braunschweig
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.30, eingetragen 2018-01-21

\(\begingroup\)
Wenn es um hohe Zahlen geht über 2 Millkiarde kann ich mit
$a = $Nn->modpow($base,$b) operieren. Ich weiss aber nicht wo die Grenzen wobei sind?

\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
blindmessenger
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 02.08.2016
Mitteilungen: 818
Aus: NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.31, vom Themenstarter, eingetragen 2018-01-21


Ja supi... Das sieht doch klasse aus... Habe ich das richtig verstanden, dass man die Größe der Kacheln anpassen kann?


-----------------
Gruß blindmessenger



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.32, eingetragen 2018-01-21

\(\begingroup\)
So ihr Primzahl-Cossisten!

Ich interessiere mich nicht so sehr für Primzahlen, wohl aber für Typographie und interessante Aufgabenstellungen diesbezüglich.





Hier mal zur Erläuterung.

1. Veranschaulichung von Divisormatrizen
2. Mathematica-Code: Mersenne.nb
3. LaTeX-Dokument: Mersenne.tex
4. Anwendung auf dem MP
__________________________________________


1. Veranschaulichung von Divisormatrizen


· Mersenne.nb

Das Mathematica-Programm Mersenne.nb verlangt als einzigen Input den Divisor der Divisor-Matrix, z.B. d = 5.

Als Output liefert es, in seiner Fassung v1.4, die folgenden Daten:
Divisor: d = 5
Spaltenzahl: nMax = 4
Zeilenzahl: kMax = d = 5
 
5Divisormatrix.txt
5Info.txt
5.txt
Out[]

Für die Weiterverarbeitung mit dem Dokument Mersenne.tex sind allein die Werte d=5 und nMax=4 wichtig; sowie die Ausgabedatei 5.txt.

Für die Veranschaulichung im Dokument Mersenne.tex wird das Paket pgfplots und dabei die spezielle Graphoption matrix plot verwendet.

matrix plot verlangt allem voran eine vollständige Matrix zur Bezeichnung der Koordinaten, so müssen z.B. für eine <math>(2\times 3)</math>-Matrix xy-Koordinatenpaare der Form
x y
1 1
2 1
3 1
1 2
2 2
3 2

angegeben sein. Ferner möchte matrix plot (in seiner aktuellen Version) noch die Spaltenzahl wissen, die durch den Mathematica-Output nMaX=4 bekannt ist: mesh/cols=\nMax.

Die Ausgabedatei 5.txt hat daher einen Inhalt der Form
5.txt
1 1  1  5  0
2 1  3  5  0
3 1  7  5  0
....
1 2  1  1  1
2 2  11 5  0
...
3 3  39 5  2
in dem die ersten beiden Spalten die x- und y-Koordinate angeben.

In den nächsten beiden Spalten sind Zähler und Nenner des Mersennebruches (vgl. #1) eingetragen.

In der letzten Spalte stehen die Zahlen 0, 1 und 2. Diese dienen der Farbcodierung, und zwar
· 0 für schwarze Textfarbe
· 1 für rote Textfarbe
· 2 für blaue Textfarbe
Diese Zuordnung wird von Mersenne.tex durch zwei if-Unterscheidungen abgefragt.
Gleichwohl genügen die Color-Indizes 0, 1 und 2 einer definierten colormap in pgfplots, die so angelegt ist, dass sie den oben genannten Farbtönen entspricht.

(Erwähnenswert ist noch, dass pgfplots die Spalten standardmäßig in der Form 0,1,2,... nummeriert.)


Mersenne.tex

Die Mathematica-Ausgabe 5.txt wird automatisch in der Form
\addplot[matrix plot, ...]table[...] {\divisor.txt};
eingelesen.

Als allererstes müssen die Werte d und nMax aus der Mathematica-Ausgabe übertragen werden.
latex
%1. Einstellung  ---------------------------
\def\divisor{5} 	        % Divisor der Divisormatrix
\def\nMax{4} 			% Spaltenzahl      % ! ! !
\def\PixelBreite{3mm}  	        % 2em  % 3mm
%
Hier kann auch eine Einstellung der Pixelbreite vorgenommen werden.

Beachte, dass auch eine Vergrößerung (Verkleinerung) mit der Einstellung
\begin{tikzpicture}[scale=2.0]
möglich ist.


Nun gibt es ein Einstellungsmenü mit verschiedenen Schaltern, die ihrem Namen nach selbsterklärend sein sollten.
Der interessierte Nutzer kann mit den Optionen etwas rumspielen.
Wobei bei manchen Einstellungen die PixelBreite anzupassen ist
latex
% 2. Einstellung  ---------------------------
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
%  			ZahlenAnzeigen,
% ------------------------------------------------------
% 			HintergrundFarben,
		 	NurHintergrundFarben,
%  			KeineHintergrundFarben,
% ------------------------------------------------------
	 		KordinatensystemAnzeigen, 
%  			KeinKordinatensystemAnzeigen, 
%  			(NurGeradeZahlenAufxAchse, ToDo!),
% ------------------------------------------------------ 
% 			KeineGitternetzlinien,
% ------------------------------------------------------ 
%  			Ueberschrift,
%  			KurzUeberschrift,
% ------------------------------------------------------
 x = \PixelBreite,  y=\PixelBreite   % siehe oben 
}}%  --------------------------- ------------------------
% ============================


Man kann damit folgende Ausgaben erstellen:

<math>
\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis,   v1.3a}
%
% ============================
%         1. Einstellung  ---------------------------
\def\divisor{5}                         % Divisor der Divisormatrix
\def\nMax{4}                         % Spaltenzahl      % ! ! !
\def\PixelBreite{1.5em}          % 2em  % 2mm
%
% 2. Einstellung  ---------------------------
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
ZahlenAnzeigen,
% ------------------------------------------------------
%                         HintergrundFarben,
%                         NurHintergrundFarben,
KeineHintergrundFarben,
% ------------------------------------------------------
%                         KordinatensystemAnzeigen,
KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
%                          KurzUeberschrift,
% ------------------------------------------------------
x = \PixelBreite,  y=\PixelBreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}
\pgfplotsset{KurzUeberschrift/.style={
title={Divisor: \divisor,~ Spaltenzahl: \nMax,~ Zeilenzahl: \divisor}
}}


% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel* cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel* cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}[scale=1.0]
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data,  ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 5 0
2 1 3 5 0
3 1 7 5 0
4 1 3 1 1
1 2 1 1 1
2 2 11 5 0
3 2 23 5 0
4 2 47 5 0
1 3 9 5 2
2 3 19 5 2
3 3 39 5 2
4 3 79 5 2
1 4 13 5 0
2 4 27 5 0
3 4 11 1 1
4 4 111 5 0
1 5 17 5 0
2 5 7 1 1
3 5 71 5 0
4 5 143 5 0
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{\divisor.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}

\end{tikzpicture}

% =====================================================
</math>

oder

<math>
\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis,   v1.3a}
%
% ============================
%         1. Einstellung  ---------------------------
\def\divisor{5}                         % Divisor der Divisormatrix
\def\nMax{4}                         % Spaltenzahl      % ! ! !
\def\PixelBreite{1.5em}          % 2em  % 2mm
%
% 2. Einstellung  ---------------------------
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
ZahlenAnzeigen,
% ------------------------------------------------------
HintergrundFarben,
%                         NurHintergrundFarben,
%                         KeineHintergrundFarben,
% ------------------------------------------------------
KordinatensystemAnzeigen,
%                          KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
%                         KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
%                          KurzUeberschrift,
% ------------------------------------------------------
x = \PixelBreite,  y=\PixelBreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}
\pgfplotsset{KurzUeberschrift/.style={
title={Divisor: \divisor,~ Spaltenzahl: \nMax,~ Zeilenzahl: \divisor}
}}


% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel* cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel* cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}[scale=1.5]
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data,  ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 5 0
2 1 3 5 0
3 1 7 5 0
4 1 3 1 1
1 2 1 1 1
2 2 11 5 0
3 2 23 5 0
4 2 47 5 0
1 3 9 5 2
2 3 19 5 2
3 3 39 5 2
4 3 79 5 2
1 4 13 5 0
2 4 27 5 0
3 4 11 1 1
4 4 111 5 0
1 5 17 5 0
2 5 7 1 1
3 5 71 5 0
4 5 143 5 0
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{\divisor.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}

\end{tikzpicture}

% =====================================================
</math>


oder


<math>
\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis,   v1.3a}
%
% ============================
%         1. Einstellung  ---------------------------
\def\divisor{5}                         % Divisor der Divisormatrix
\def\nMax{4}                         % Spaltenzahl      % ! ! !
\def\PixelBreite{3mm}          % 2em  % 2mm
%
% 2. Einstellung  ---------------------------
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
%                          ZahlenAnzeigen,
% ------------------------------------------------------
HintergrundFarben,
%                         NurHintergrundFarben,
%                         KeineHintergrundFarben,
% ------------------------------------------------------
KordinatensystemAnzeigen,
%                          KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
%                         KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
%                          KurzUeberschrift,
% ------------------------------------------------------
x = \PixelBreite,  y=\PixelBreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}
\pgfplotsset{KurzUeberschrift/.style={
title={Divisor: \divisor,~ Spaltenzahl: \nMax,~ Zeilenzahl: \divisor}
}}


% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel* cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel* cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}[scale=2.0]
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data,  ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 5 0
2 1 3 5 0
3 1 7 5 0
4 1 3 1 1
1 2 1 1 1
2 2 11 5 0
3 2 23 5 0
4 2 47 5 0
1 3 9 5 2
2 3 19 5 2
3 3 39 5 2
4 3 79 5 2
1 4 13 5 0
2 4 27 5 0
3 4 11 1 1
4 4 111 5 0
1 5 17 5 0
2 5 7 1 1
3 5 71 5 0
4 5 143 5 0
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{\divisor.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}

\end{tikzpicture}

% =====================================================
</math>

oder


<math>
\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis,   v1.3a}
%
% ============================
%         1. Einstellung  ---------------------------
\def\divisor{5}                         % Divisor der Divisormatrix
\def\nMax{4}                         % Spaltenzahl      % ! ! !
\def\PixelBreite{3mm}          % 2em  % 2mm
%
% 2. Einstellung  ---------------------------
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
%                          ZahlenAnzeigen,
% ------------------------------------------------------
%                         HintergrundFarben,
NurHintergrundFarben,
%                         KeineHintergrundFarben,
% ------------------------------------------------------
KordinatensystemAnzeigen,
%                          KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
%                         KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
%                          KurzUeberschrift,
% ------------------------------------------------------
x = \PixelBreite,  y=\PixelBreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}
\pgfplotsset{KurzUeberschrift/.style={
title={Divisor: \divisor,~ Spaltenzahl: \nMax,~ Zeilenzahl: \divisor}
}}


% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel* cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel* cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}[scale=2.0]
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data,  ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 5 0
2 1 3 5 0
3 1 7 5 0
4 1 3 1 1
1 2 1 1 1
2 2 11 5 0
3 2 23 5 0
4 2 47 5 0
1 3 9 5 2
2 3 19 5 2
3 3 39 5 2
4 3 79 5 2
1 4 13 5 0
2 4 27 5 0
3 4 11 1 1
4 4 111 5 0
1 5 17 5 0
2 5 7 1 1
3 5 71 5 0
4 5 143 5 0
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{\divisor.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}

\end{tikzpicture}

% =====================================================
</math>





\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.33, eingetragen 2018-01-21


2. Mathematica-Code: Mersenne.nb

mathematica
Clear@"Global`*"     (*Speicher löschen*)
(* ***************************************  *)
(* Programm zur Bestimmung von Divisormatrizen  *)
(*  v1.4        *)
(* \autor{cis}  *)
 
(* ***************************************  *)
(*   1. Teil "Divisormatrix bestimmen" *)
(* ***************************************  *)
d = 5;             (*Divisor der Divisormatrix eingeben!*)
 
MersenneFolge[k_, n_] := (2*k - 1)*2^n - 1
MersenneBruch[k_, n_] := MersenneFolge[k, n]/d
MersenneZaehler[k_, n_] := Numerator[MersenneBruch[k, n]]
MersenneNenner[k_, n_] := Denominator[MersenneBruch[k, n]]
(*Test 
MersenneBruch[1,7] 
MersenneZaehler[1,7] 
MersenneNenner[1,7]   
Table[MersenneBruch[1,n], {n,1,4}];
 Table[MersenneNenner[1,n], {n,1,4}];
*)
 
(* Bestimmung der Spaltenzahl der Divisormatrix *)
(* https://de.wikipedia.org/wiki/Diskreter_Logarithmus#Prime_\
Restklassengruppe *)
(*Spaltenzahl nMax*)
Do[If[Mod[MersenneFolge[1, n], d] == 0, nMax = n; Break[]], {n, d - 1}]
(*Zeilenzahl kMax*)
kMax = d;
 
 
(* ***************************************  *)
(*   2. Teil  "Spezielle Ausgabe der Divisormatrix für \
LaTeX,TikZ/pgf-Weiterverarbeitung erstellen" *)
(* ***************************************  *)
 
 
(*  Matrix mit Zellen des Typs      Zähler | Nenner |<Eigenschaft>
<Eigenschaft> = 
 * r (rot), wenn Nenner gleich 1
 * s (schwarz), wenn Zeile enthält Nenner gleich 1 
 * b (blau) "sonst", d.h., wenn Zeile keinen Nenner gleich 1 enthält
*)
 
Zeilentest[z_] := If[
  Zeile[z] = Table[MersenneNenner[z, n], {n, 1, nMax}];
  MemberQ[Zeile[z], 1],   (*Prüfen, ob Zeile einen Nenner=1 enthält*)
 
 
  0 , (*Zeile enthält Nenner=1*)
  2   (*Zeile enthält nicht Nenner=1*)
  ]
(*Test*)
MemberQ[Zeile[1], 1];
Zeilentest[1];
 
Eigenschaft[k_, n_] := If[MersenneNenner[k, n] == 1,
   1,                             (*Nenner ist 1*)
   Zeilentest[k]       (*Zeile enthält Nenner=1 oder nicht*)
   ];
(*Test*)
MersenneNenner[1, 4];
Eigenschaft[1, 4];
 
(*  Matrix-Zelle definieren  *)
Zelle[k_, n_] := 
 ToString@MersenneZaehler[k, n] <> " " <> 
  ToString@MersenneNenner[k, n] <> " " <> ToString@Eigenschaft[k, n]
(* ***************************************  *)
(*3. Teil "Ergebnis-Ausgaben" *)
(* ***************************************  *)
(*Divisor sowie Zeilen- und Spaltenzahl anzeigen*)
StringForm["Divisor: d = ``", d]
StringForm["Spaltenzahl: nMax = ``", nMax]
StringForm["Zeilenzahl: kMax = d = ``", kMax]
 
(*Divisormatrix anzeigen*)
liste1 = TableForm[
   Table[MersenneBruch[k, n], {k, 1, kMax}, {n, 1, nMax}]];
(* Divisormatrix  als Textdatei exportieren *)
Export[ToString[d] <> 
  "Divisormatrix.txt", liste1, "Table"] ;   (*mit ';' auskommentiert*)
\
 
(*für mich*)
Export[StringJoin[
  "C:\\Users\\ccc\\Desktop\\Test\\LGS\\Mathematica\\Mersenne\\", 
  ToString[d], "Divisormatrix.txt"], liste1, "Table"]
 
(*  Divisormatrix mit Annotationen ausgeben, als Info  *)
 liste2 = TableForm[Table[Zelle[k, n], {k, 1, kMax}, {n, 1, nMax}]];
(*  Divisormatrix als Textdatei <d>.txt  abspeichern *)
Export[ToString[d] <> "Info.txt", liste2, "Table"]
(*für mich*)
Export[StringJoin[
   "C:\\Users\\ccc\\Desktop\\Test\\LGS\\Mathematica\\Mersenne\\", 
   ToString[d], "DivisormatrixInfo.txt"], liste2, "Table"];
 
(*  Divisormatrix auf pgfplots, matrix plot zugeschnitten ausgeben  *)
 
 
zeile[y_] = y;      (*y läuft von 1,...,kMaX  *)
spalte[x_] = x;    (*x läuft von 1,...,nMaX  *)
(*  xy-Koordinaten für Zellen, nebst Zelleninhalt angeben *)
Zelle2[k_, n_] := 
 ToString@zeile[n] <> " " <> ToString@spalte[k] <> " " <> 
  ToString@MersenneZaehler[k, n] <> " " <> 
  ToString@MersenneNenner[k, n] <> " " <> ToString@Eigenschaft[k, n]
 
liste3 = Flatten[Array[Zelle2, {kMax, nMax}], 
  1];    (* ';' nicht anzeigen *)
liste3 // TableForm;                  (* anzeigen *)
(*  Divisormatrix als Textdatei <d>.txt  abspeichern *)
Export[ToString[d] <> ".txt", liste3 // TableForm, "Table"];
(*für mich*)
Export[StringJoin[
  "C:\\Users\\ccc\\Desktop\\Test\\LGS\\Mathematica\\Mersenne\\", 
  ToString[d], ".txt"], liste3, "Table"]
 
 



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.34, eingetragen 2018-01-21

\(\begingroup\)
3. LaTeX-Dokument: Mersenne.tex

latex
%\documentclass[]{article}
%\documentclass[paper=A3,paper=landscape]{scrartcl}
\documentclass[border=3mm, varwidth]{standalone}
\usepackage{pgfplots}
 
 
    \pgfplotsset{compat=1.13}
 
% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis,   v1.3b}
%
% ============================
% 	1. Einstellung  ---------------------------
\def\divisor{5} 			% Divisor der Divisormatrix
\def\nMax{4} 			% Spaltenzahl      % ! ! !
\def\PixelBreite{1.5em}  	% 2em  % 2mm
%
% 2. Einstellung  ---------------------------
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
  			ZahlenAnzeigen,
% ------------------------------------------------------
% 			HintergrundFarben,
%		 	NurHintergrundFarben,
  			KeineHintergrundFarben,
% ------------------------------------------------------
%	 		KordinatensystemAnzeigen, 
  			KeinKordinatensystemAnzeigen, 
% ------------------------------------------------------ 
 			KeineGitternetzlinien,
% ------------------------------------------------------ 
%  			Ueberschrift,
%  			KurzUeberschrift,
% ------------------------------------------------------
 x = \PixelBreite,  y=\PixelBreite   % siehe oben 
}}%  --------------------------- ------------------------
% ============================
 
% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}
\pgfplotsset{KurzUeberschrift/.style={
title={Divisor: \divisor,~ Spaltenzahl: \nMax,~ Zeilenzahl: \divisor}
}}
 
 
% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
	$\textcolor{red}{\MersenneZaehler}$%
\else 
	\ifnum\FarbIndex=2
	$\textcolor{blue}{\MersenneBruch}$%
	\else 
	$\textcolor{black}{\MersenneBruch}$%
	\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============
 
 
% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink); 
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red); 
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white); 
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================
 
 
% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle}, 
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,   		
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1, 	% ein minor tick pro Intervall
grid=minor, 			% grid Linien zwischen den Intervallen
tickwidth= 0pt, 		% major tick Markierungen nicht zeichnen
subtickwidth = 0pt, 	% minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel* cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel* cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n}, 
ylabel = {\tiny k}, 
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={}, 
minor tick num=1, 	% ein minor tick pro Intervall
grid=minor, 			% grid Linien zwischen den Intervallen
tickwidth= 0pt, 		% major tick Markierungen nicht zeichnen
subtickwidth = 0pt, 	% minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================
 
\begin{document}
 
\begin{tikzpicture}[scale=2.0]
\begin{axis}[  
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data,  ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false, 
meta index=4,		% Farbindex aus 4. Spalte
point meta= explicit,
] 
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
%{
%1 1 1 7 0
%2 1 3 7 0
%3 1 1 1 1
%}
% 	   oder      Tabelle aus Textdatei   <d>.txt
{\divisor.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}
 
\end{tikzpicture}
 
\end{document}
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.35, eingetragen 2018-01-21

\(\begingroup\)
4. Anwendung auf dem MP

Grundsätzlich: MP-LaTeX wird ab gewisser MathTag-Größe nicht mehr mitspielen.

Ansonsten muss die Mathematica-Ausgabe 5.txt inline als Tabelle eingefügt werden.
Die restlichen Einstellungen können wie in Punkt 1.  beschrieben vorgenommen werden.

· Einfügen der Tabelle
LaTeX auf dem MP
%  3. Einstellung  ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 7 0
2 1 3 7 0
3 1 1 1 1
......
......
......
}
% 	   oder      Tabelle aus Textdatei   <d>.txt
% {\divisor.txt}     % auskommentiert!
;% ------------------------------------------------------------------

· Ganzes Beispiel:
LaTeX auf dem MP
<math>
    \pgfplotsset{compat=1.13}
 
% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis,   v1.3a}
%
% ============================
% 	1. Einstellung  ---------------------------
\def\divisor{5} 			% Divisor der Divisormatrix
\def\nMax{4} 			% Spaltenzahl      % ! ! !
\def\PixelBreite{3mm}  	% 2em  % 2mm
%
% 2. Einstellung  ---------------------------
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
%  			ZahlenAnzeigen,
% ------------------------------------------------------
% 			HintergrundFarben,
		 	NurHintergrundFarben,
% 			KeineHintergrundFarben,
% ------------------------------------------------------
	 		KordinatensystemAnzeigen, 
%  			KeinKordinatensystemAnzeigen, 
% ------------------------------------------------------ 
% 			KeineGitternetzlinien,
% ------------------------------------------------------ 
%  			Ueberschrift,
%  			KurzUeberschrift,
% ------------------------------------------------------
 x = \PixelBreite,  y=\PixelBreite   % siehe oben 
}}%  --------------------------- ------------------------
% ============================
 
% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}
\pgfplotsset{KurzUeberschrift/.style={
title={Divisor: \divisor,~ Spaltenzahl: \nMax,~ Zeilenzahl: \divisor}
}}
 
 
% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
	$\textcolor{red}{\MersenneZaehler}$%
\else 
	\ifnum\FarbIndex=2
	$\textcolor{blue}{\MersenneBruch}$%
	\else 
	$\textcolor{black}{\MersenneBruch}$%
	\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============
 
 
% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink); 
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red); 
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white); 
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================
 
 
% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle}, 
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,   		
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1, 	% ein minor tick pro Intervall
grid=minor, 			% grid Linien zwischen den Intervallen
tickwidth= 0pt, 		% major tick Markierungen nicht zeichnen
subtickwidth = 0pt, 	% minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel* cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel* cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n}, 
ylabel = {\tiny k}, 
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={}, 
minor tick num=1, 	% ein minor tick pro Intervall
grid=minor, 			% grid Linien zwischen den Intervallen
tickwidth= 0pt, 		% major tick Markierungen nicht zeichnen
subtickwidth = 0pt, 	% minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================
 
\begin{document}
 
\begin{tikzpicture}[scale=1.0]
\begin{axis}[  
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data,  ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false, 
meta index=4,		% Farbindex aus 4. Spalte
point meta= explicit,
] 
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 5 0
2 1 3 5 0
3 1 7 5 0
4 1 3 1 1
1 2 1 1 1
2 2 11 5 0
3 2 23 5 0
4 2 47 5 0
1 3 9 5 2
2 3 19 5 2
3 3 39 5 2
4 3 79 5 2
1 4 13 5 0
2 4 27 5 0
3 4 11 1 1
4 4 111 5 0
1 5 17 5 0
2 5 7 1 1
3 5 71 5 0
4 5 143 5 0
}
% 	   oder      Tabelle aus Textdatei   <d>.txt
%{\divisor.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}
 
\end{tikzpicture}
 
% =====================================================
</math>

· Ausgabe

<math>
\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis,   v1.3a}
%
% ============================
%         1. Einstellung  ---------------------------
\def\divisor{5}                         % Divisor der Divisormatrix
\def\nMax{4}                         % Spaltenzahl      % ! ! !
\def\PixelBreite{3mm}          % 2em  % 2mm
%
% 2. Einstellung  ---------------------------
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
%                          ZahlenAnzeigen,
% ------------------------------------------------------
%                         HintergrundFarben,
NurHintergrundFarben,
%                         KeineHintergrundFarben,
% ------------------------------------------------------
KordinatensystemAnzeigen,
%                          KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
%                         KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
%                          KurzUeberschrift,
% ------------------------------------------------------
x = \PixelBreite,  y=\PixelBreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}
\pgfplotsset{KurzUeberschrift/.style={
title={Divisor: \divisor,~ Spaltenzahl: \nMax,~ Zeilenzahl: \divisor}
}}


% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel* cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel* cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}[scale=2.0]
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data,  ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 5 0
2 1 3 5 0
3 1 7 5 0
4 1 3 1 1
1 2 1 1 1
2 2 11 5 0
3 2 23 5 0
4 2 47 5 0
1 3 9 5 2
2 3 19 5 2
3 3 39 5 2
4 3 79 5 2
1 4 13 5 0
2 4 27 5 0
3 4 11 1 1
4 4 111 5 0
1 5 17 5 0
2 5 7 1 1
3 5 71 5 0
4 5 143 5 0
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{\divisor.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}

\end{tikzpicture}

% =====================================================
</math>








\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.36, eingetragen 2018-01-21

\(\begingroup\)




<math>

\pgfplotsset{compat=1.13}

% ============================
% Dokument zur Veranschaulichung von Divisormatrizen
% \autor{cis}
%
% ============================
%         1. Einstellungen 1/3 ---------------------------
\def\divisor{23}                 % Divisor der Divisormatrix
\def\nMax{11}                         % Spaltenzahl      % ! ! !
\def\Pixelbreite{2em}  % 2em  % 2mm
%
% 2. Einstellungen 2/3 ---------------------------
% Einstellungen ==================
\pgfplotsset{%
Einstellungen/.style={% ---------------------------
ZahlenAnzeigen,
% ------------------------------------------------------
HintergrundFarben,
%                         NurHintergrundFarben,
%                          KeineHintergrundFarben,
% ------------------------------------------------------
KordinatensystemAnzeigen,
%                          KeinKordinatensystemAnzeigen,
% ------------------------------------------------------
%                         KeineGitternetzlinien,
% ------------------------------------------------------
%                          Ueberschrift,
% ------------------------------------------------------
x = \Pixelbreite,  y=\Pixelbreite   % siehe oben
}}%  --------------------------- ------------------------
% ============================

% Überschrift  ===============
\pgfplotsset{Ueberschrift/.style={
title={\hspace*{2em}\framebox{\tiny$D_{kn} = \frac{(2k-1)\cdot 2^n-1}{\divisor}$}}
}}

% Zahleninhalte  ===============
\pgfplotsset{ZahlenAnzeigen/.style={
nodes near coords*={%
\pgfmathsetmacro{\Nenner}{int(\nenner)}%
\pgfmathsetmacro{\FarbIndex}{int(\farbindex)}%
\newcommand\MersenneZaehler{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\zaehler}%
\newcommand\MersenneNenner{\pgfmathprintnumber[precision=0, 1000 sep={\hspace{0.75pt}}]\nenner}%
\newcommand\MersenneBruch{\frac{\MersenneZaehler}{\MersenneNenner}}%
%
\ifnum\Nenner=1
$\textcolor{red}{\MersenneZaehler}$%
\else
\ifnum\FarbIndex=2
$\textcolor{blue}{\MersenneBruch}$%
\else
$\textcolor{black}{\MersenneBruch}$%
\fi
\fi},
% allgmein
every node near coord/.append style={anchor=center, font=\footnotesize}
}}%  ===============


% Hintergrundfarben ===============
\pgfplotsset{%
HintergrundFarben/.style={
colormap={hintegrundfarben}{
color(0)=(lightgray); color(1)=(pink);
color(2)=(blue!40); color(10)=(black)}},
%
NurHintergrundFarben/.style={
colormap={nurhintegrundfarben}{
color(0)=(black); color(1)=(red);
color(2)=(blue); color(10)=(black)}},
%
KeineHintergrundFarben/.style={
colormap={keinehintegrundfarben}{
color(0)=(white); color(1)=(white);
color(2)=(white); color(10)=(white)}},
% allgemein
point meta min=0, point meta max=10,
}%  =======================


% Koordinatensystem   ===============
\tikzset{TextStyle/.style={font=\ttfamily\scriptsize, color = black}}
%
\pgfplotsset{KordinatensystemAnzeigen/.style={
ticklabel style={TextStyle},
xticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
yticklabel={\tiny$\mathtt{\pgfmathprintnumber{\tick}}$},
%
%x tick label style={rotate=-30},
%xticklabel pos=upper,
axis x line*=top, % x-Achse oben statt unten %right
label style={TextStyle},
axis line style={color = gray},
%
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
grid style={line width=\pgflinewidth, draw=gray}, %draw=yellow,
%
every axis x label/.style={at={(ticklabel* cs:0)},anchor= near ticklabel, TextStyle},
every axis y label/.style={at={(ticklabel* cs:1)},anchor=near ticklabel, TextStyle},
%
xlabel = {\tiny n},
ylabel = {\tiny k},
}}
%
\pgfplotsset{KeinKordinatensystemAnzeigen/.style={
%hide axis,   % dann auch kein grid
xticklabels={},yticklabels={},
minor tick num=1,         % ein minor tick pro Intervall
grid=minor,                         % grid Linien zwischen den Intervallen
tickwidth= 0pt,                 % major tick Markierungen nicht zeichnen
subtickwidth = 0pt,         % minor tick Markierungen nicht zeichnen
%
grid style={line width=\pgflinewidth, draw=yellow}, %draw=gray,
}}
%
\pgfplotsset{KeineGitternetzlinien/.style={hide axis}}
%  ==========================

\begin{document}

\begin{tikzpicture}
\begin{axis}[
Einstellungen,  % siehe oben
enlargelimits=false,
xtick=data, ytick=data,   % nur xy-Werte aus Tabelle anzeigen
]
\addplot[
matrix plot,
% Angaben für Textinhalt
visualization depends on={value  \thisrowno{2}  \as \zaehler},
visualization depends on={value  \thisrowno{3}  \as \nenner},
visualization depends on={value  \thisrowno{4}  \as \farbindex},
% Matrix-Angaben
mesh/cols=\nMax,   % Spaltenzahl - Pflichtangabe
]
table[
% Tabellenangaben
header=false,
meta index=4,                % Farbindex aus 4. Spalte
point meta= explicit,
]
% ==================================
%  Einstellungen 3/3 ---------------------------
% Tabelle hier ein einfügen   !!!!
% --------------------------------------------------------------------
{
1 1 1 23 0
2 1 3 23 0
3 1 7 23 0
4 1 15 23 0
5 1 31 23 0
6 1 63 23 0
7 1 127 23 0
8 1 255 23 0
9 1 511 23 0
10 1 1023 23 0
11 1 89 1 1
1 2 5 23 0
2 2 11 23 0
3 2 1 1 1
4 2 47 23 0
5 2 95 23 0
6 2 191 23 0
7 2 383 23 0
8 2 767 23 0
9 2 1535 23 0
10 2 3071 23 0
11 2 6143 23 0
1 3 9 23 2
2 3 19 23 2
3 3 39 23 2
4 3 79 23 2
5 3 159 23 2
6 3 319 23 2
7 3 639 23 2
8 3 1279 23 2
9 3 2559 23 2
10 3 5119 23 2
11 3 10239 23 2
1 4 13 23 2
2 4 27 23 2
3 4 55 23 2
4 4 111 23 2
5 4 223 23 2
6 4 447 23 2
7 4 895 23 2
8 4 1791 23 2
9 4 3583 23 2
10 4 7167 23 2
11 4 14335 23 2
1 5 17 23 0
2 5 35 23 0
3 5 71 23 0
4 5 143 23 0
5 5 287 23 0
6 5 25 1 1
7 5 1151 23 0
8 5 2303 23 0
9 5 4607 23 0
10 5 9215 23 0
11 5 18431 23 0
1 6 21 23 2
2 6 43 23 2
3 6 87 23 2
4 6 175 23 2
5 6 351 23 2
6 6 703 23 2
7 6 1407 23 2
8 6 2815 23 2
9 6 5631 23 2
10 6 11263 23 2
11 6 22527 23 2
1 7 25 23 0
2 7 51 23 0
3 7 103 23 0
4 7 9 1 1
5 7 415 23 0
6 7 831 23 0
7 7 1663 23 0
8 7 3327 23 0
9 7 6655 23 0
10 7 13311 23 0
11 7 26623 23 0
1 8 29 23 2
2 8 59 23 2
3 8 119 23 2
4 8 239 23 2
5 8 479 23 2
6 8 959 23 2
7 8 1919 23 2
8 8 3839 23 2
9 8 7679 23 2
10 8 15359 23 2
11 8 30719 23 2
1 9 33 23 2
2 9 67 23 2
3 9 135 23 2
4 9 271 23 2
5 9 543 23 2
6 9 1087 23 2
7 9 2175 23 2
8 9 4351 23 2
9 9 8703 23 2
10 9 17407 23 2
11 9 34815 23 2
1 10 37 23 2
2 10 75 23 2
3 10 151 23 2
4 10 303 23 2
5 10 607 23 2
6 10 1215 23 2
7 10 2431 23 2
8 10 4863 23 2
9 10 9727 23 2
10 10 19455 23 2
11 10 38911 23 2
1 11 41 23 2
2 11 83 23 2
3 11 167 23 2
4 11 335 23 2
5 11 671 23 2
6 11 1343 23 2
7 11 2687 23 2
8 11 5375 23 2
9 11 10751 23 2
10 11 21503 23 2
11 11 43007 23 2
1 12 45 23 2
2 12 91 23 2
3 12 183 23 2
4 12 367 23 2
5 12 735 23 2
6 12 1471 23 2
7 12 2943 23 2
8 12 5887 23 2
9 12 11775 23 2
10 12 23551 23 2
11 12 47103 23 2
1 13 49 23 0
2 13 99 23 0
3 13 199 23 0
4 13 399 23 0
5 13 799 23 0
6 13 1599 23 0
7 13 3199 23 0
8 13 6399 23 0
9 13 12799 23 0
10 13 1113 1 1
11 13 51199 23 0
1 14 53 23 0
2 14 107 23 0
3 14 215 23 0
4 14 431 23 0
5 14 863 23 0
6 14 1727 23 0
7 14 3455 23 0
8 14 6911 23 0
9 14 601 1 1
10 14 27647 23 0
11 14 55295 23 0
1 15 57 23 0
2 15 5 1 1
3 15 231 23 0
4 15 463 23 0
5 15 927 23 0
6 15 1855 23 0
7 15 3711 23 0
8 15 7423 23 0
9 15 14847 23 0
10 15 29695 23 0
11 15 59391 23 0
1 16 61 23 0
2 16 123 23 0
3 16 247 23 0
4 16 495 23 0
5 16 991 23 0
6 16 1983 23 0
7 16 3967 23 0
8 16 345 1 1
9 16 15871 23 0
10 16 31743 23 0
11 16 63487 23 0
1 17 65 23 2
2 17 131 23 2
3 17 263 23 2
4 17 527 23 2
5 17 1055 23 2
6 17 2111 23 2
7 17 4223 23 2
8 17 8447 23 2
9 17 16895 23 2
10 17 33791 23 2
11 17 67583 23 2
1 18 3 1 1
2 18 139 23 0
3 18 279 23 0
4 18 559 23 0
5 18 1119 23 0
6 18 2239 23 0
7 18 4479 23 0
8 18 8959 23 0
9 18 17919 23 0
10 18 35839 23 0
11 18 71679 23 0
1 19 73 23 2
2 19 147 23 2
3 19 295 23 2
4 19 591 23 2
5 19 1183 23 2
6 19 2367 23 2
7 19 4735 23 2
8 19 9471 23 2
9 19 18943 23 2
10 19 37887 23 2
11 19 75775 23 2
1 20 77 23 0
2 20 155 23 0
3 20 311 23 0
4 20 623 23 0
5 20 1247 23 0
6 20 2495 23 0
7 20 217 1 1
8 20 9983 23 0
9 20 19967 23 0
10 20 39935 23 0
11 20 79871 23 0
1 21 81 23 0
2 21 163 23 0
3 21 327 23 0
4 21 655 23 0
5 21 57 1 1
6 21 2623 23 0
7 21 5247 23 0
8 21 10495 23 0
9 21 20991 23 0
10 21 41983 23 0
11 21 83967 23 0
1 22 85 23 2
2 22 171 23 2
3 22 343 23 2
4 22 687 23 2
5 22 1375 23 2
6 22 2751 23 2
7 22 5503 23 2
8 22 11007 23 2
9 22 22015 23 2
10 22 44031 23 2
11 22 88063 23 2
1 23 89 23 2
2 23 179 23 2
3 23 359 23 2
4 23 719 23 2
5 23 1439 23 2
6 23 2879 23 2
7 23 5759 23 2
8 23 11519 23 2
9 23 23039 23 2
10 23 46079 23 2
11 23 92159 23 2
}
%            oder      Tabelle aus Textdatei   <d>.txt
%{23.txt}
;% ------------------------------------------------------------------
% ==================================
\end{axis}
\end{tikzpicture}



</math>
\(\endgroup\)


  Profil  Quote  Link auf diesen Beitrag Link
Slash
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 23.03.2005
Mitteilungen: 6551
Aus: New York
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.37, eingetragen 2018-01-21


Wow! cis, jetzt geh' aber erst mal 'n Kaffe trinken nach der vielen Arbeit. Dir qualmen ja schon der Kopf und die Finger. cool

Gab es eigentlich schon einen Beitrag über den Nutzen dieser Matrizen?



  Profil  Quote  Link auf diesen Beitrag Link
blindmessenger
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 02.08.2016
Mitteilungen: 818
Aus: NRW
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.38, vom Themenstarter, eingetragen 2018-01-21


Wahnsinn! Der Divisormatrizengott/Primzahlgott wird Dir auf ewig zu Dank verpflichtet sein!  wink  

So, und jetzt werden effiziente Primzahlformeln am Fließband produziert!  eek

[Die Antwort wurde nach Beitrag No.35 begonnen.]


-----------------
Gruß blindmessenger



  Profil  Quote  Link auf diesen Beitrag Link
cis
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 03.08.2002
Mitteilungen: 14811
Aus:
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.39, eingetragen 2018-01-21


2018-01-21 21:59 - Slash in Beitrag No. 37 schreibt:
Gab es eigentlich schon einen Beitrag über den Nutzen dieser Matrizen?

Ich habe keine Ahnung, welchen zahlentheoretischen Nutzen das eigentlich hat, was ich da erstellt habe.  biggrin
Grundlage ist halt, dass man irgendeine mittelaktuelle Mathematica Version besitzt.




  Profil  Quote  Link auf diesen Beitrag Link
-->> Fortsetzung auf der nächsten Seite -->>
Seite 1Gehe zur Seite: 1 | 2  
Neues Thema [Neues Thema] Antworten [Antworten]    Druckversion [Druckversion]

 


Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2018 by Matroids Matheplanet
This web site was made with PHP-Nuke, a web portal system written in PHP. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]