Forráskód Böngészése

added milgrams small world

Martin Thoma 12 éve
szülő
commit
e0510feeb4

+ 2 - 1
README.md

@@ -1,7 +1,8 @@
 LaTeX-examples
 ==============
 
-Examples for the usage of LaTeX
+More than 200 examples for the usage of LaTeX 
+(you can check that with the following command: `find . -type d | sort | awk '$0 !~ last "/" {print last} {last=$0} END {print last}' | grep -v .git | wc -l`)
 
 Most examples can be found on [my Wikpedia Commons user page](http://commons.wikimedia.org/wiki/User:MartinThoma#Galerie)
 

+ 7 - 0
documents/milgrams-small-world/Makefile

@@ -0,0 +1,7 @@
+make:
+	pdflatex milgrams-small-world-letter.tex -output-format=pdf
+	pdflatex milgrams-small-world-table -output-format=pdf
+	make clean
+
+clean:
+	rm -rf  *.aux *.log *.out

+ 88 - 0
documents/milgrams-small-world/milgrams-small-world-letter.tex

@@ -0,0 +1,88 @@
+\documentclass[a4paper, 12pt, KOMAold, sections]{scrlttr2}
+\usepackage[utf8]{inputenc} % this is needed for umlauts
+\usepackage[ngerman]{babel} % this is needed for umlauts
+\usepackage[T1]{fontenc}    % needed for right umlaut output in pdf
+\usepackage[ngerman, num]{isodate} % get DD.MM.YYYY dates
+
+\usepackage{hyperref}
+ 
+% Anpassen %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\Vorname}{Martin}     % Vorname des Senders             %
+\newcommand{\Nachname}{Thoma}     % Nachname des Senders            %
+\newcommand{\Strasse}{Parkstraße} % Deine Straße                    %
+\newcommand{\Hausnummer}{17}      % Deine Hausnummer                %
+\newcommand{\PLZ}{76131}          % Deine PLZ                       %
+\newcommand{\Ort}{Karlsruhe}      % Dein Ort                        %
+\newcommand{\Kundennr}{123456}    % Deine Kundennummer              %
+                                                                    %
+\newcommand{\Empfaenger}{Lisa Müller} % Der Empfänger               %
+\newcommand{\EStrasse}{Poststr. 17}   % Straße des Empfängers       %
+\newcommand{\EPLZ}{12345}             % PLZ des Empfängers          %
+\newcommand{\EOrt}{Berlin}            % Ort des Empfängers          %
+                                                                    %
+\newcommand{\DocTitle}{Milgrams Small World Experiment} %Titel des Dokuments%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ 
+ 
+% pdfinfo
+\hypersetup{ 
+  pdfauthor   = {\Nachname, \Vorname}, 
+  pdfkeywords = {Experiment, Fun, Web}, 
+  pdftitle    = {\DocTitle} 
+}
+ 
+% set letter variables
+\signature{\Vorname~\Nachname}
+\backaddress{\Vorname~\Nachname, \Strasse~\Hausnummer, \PLZ~\Ort}
+\newcommand{\section}[1]{\noindent\textbf{#1}\newline}
+ 
+% Begin document %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\begin{document}
+    \begin{letter}{\Empfaenger \\ \EStrasse \\ \EPLZ~\EOrt}
+    \date{\today}%Change this if you want a different date than today
+    \subject{\DocTitle}
+    \opening{Hallo \Empfaenger,}
+    ich schreibe dir diesen Brief, weil ich Milgrams Experiment wiederhole und
+    dabei auf deine Hilfe angewiesen bin.\\
+
+    \section{Was ist Milgrams Experiment?}
+    Ist es dir auch schon einmal passiert, dass du überraschend mit einem Freund 
+    oder eine Freundin einen gemeinsamen Bekannten hattest? Kennst du
+    das "`Freundesfreunde"'-System aus sozialen Netzwerken?
+
+    Dann weißt du im Prinzip schon worum es hier geht. Die Welt ist heutzutage
+    durch viele Beziehungen zu anderen Menschen, die teilweise sogar in anderen
+    Weltteilen sind, klein geworden. Das hat schon Stanley Milgram 1967 vermutet.
+    Er hat seine Vermutung dadurch bestätigt, dass er 60 Personen zufällig
+    gewählt hat, die einen Brief an eine Zielperson in Bosten senden sollte.
+    Allerdings sollten sie den Brief nur an Personen schicken, die sie kennen
+    und die die Zielperson eventuell kennen könnten.\\
+
+    \section{Wie kannst du helfen?}
+    Im Anhang ist ein Blatt auf dem die Zielperson steht, an die du diesen Brief
+    und alle Blätter im Anhang schicken sollst. 
+
+    Da ich nicht will, dass du einfach die Adresse im Internet
+    suchst, gebe ich dir nur den Ort, den Beruf und einen Vornamen. Nun musst 
+    du den Brief an einen Bekannten schicken, der diese Person kennen könnte.
+    Wenn deine Zielperson also in den USA lebt, könntest du den Brief zuerst
+    an einen Englisch-sprachigen Bekannten schicken. Oder du schickst ihn an
+    eine Person, von der du weißt dass sie sehr viele weitere Personen kennt.
+    Wenn du keine Ahnung hast wer die Zielperson kennen könnte, kannst du den
+    Brief auch an einen zufälligen Bekannten schicken. Egal wie, bitte schicke
+    den Brief bald weiter! Es wäre schade, wenn er bei dir liegen bleibt.\\
+
+    \section{Ich bin die Zielperson, was nun?}
+    Bitte schicke den Brief zurück an:\\
+
+    \noindent Martin Thoma\\
+    Parkstraße 17\\
+    76131 Karlsruhe\\
+
+    \section{Wo werden die Ergebnisse veröffentlicht?}
+    Die Ergebnisse wirst du auf meinem Blog unter \href{http://martin-thoma.com/milgram}{martin-thoma.com/milgram}
+    finden.
+ 
+    \closing{Mit freundlichen Grüßen,}
+    \end{letter}
+\end{document}

+ 82 - 0
documents/milgrams-small-world/milgrams-small-world-table.tex

@@ -0,0 +1,82 @@
+\documentclass[11pt,a4paper,oneside,landscape]{scrartcl}
+\usepackage{amssymb, amsmath} % needed for math
+\usepackage[utf8]{inputenc} % this is needed for umlauts
+\usepackage[ngerman]{babel} % this is needed for umlauts
+\usepackage[T1]{fontenc}    % this is needed for correct output of umlauts in pdf
+\usepackage[margin=1.0cm]{geometry} %layout
+\usepackage{hyperref}       % links im text
+\usepackage{enumerate}      % for advanced numbering of lists
+\usepackage{fancyheadings}  % Kopfzeile
+\usepackage{array}          % needed for m{1cm} in tabular
+\usepackage{enumitem}
+\usepackage{wasysym}
+\usepackage{framed}
+\usepackage{footnote}
+\renewcommand{\arraystretch}{1.5}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\hypersetup { 
+  pdfauthor   = {Martin Thoma}, 
+  pdfkeywords = {Milgram; Data; Experiment}, 
+  pdftitle    = {Milgrams Small World Experiment - Data} 
+}
+
+\begin{document}
+
+\begin{minipage*}{6cm}
+\begin{tabular}{r || p{5cm} | p{4cm} | p{5cm} | p{10cm}}
+    Nr & Your name \footnote{This name gets published on \href{http://martin-thoma.com}{martin-thoma.com} as soon as the experiment is over. Please do not provide a name if you don't want me to publish it. You may also provide a pseudonym.}   & Country & City & Comment\\
+    \hline
+    \hline
+1 & & &\\
+\hline
+2 & & &\\
+\hline
+3 & & &\\
+\hline
+4 & & &\\
+\hline
+5 & & &\\
+\hline
+6 & & &\\
+\hline
+7 & & &\\
+\hline
+8 & & &\\
+\hline
+9 & & &\\
+\hline
+10 & & &\\
+\hline
+11 & & &\\
+\hline
+12 & & &\\
+\hline
+13 & & &\\
+\hline
+14 & & &\\
+\hline
+15 & & &\\
+\hline
+16 & & &\\
+\hline
+17 & & &\\
+\hline
+18 & & &\\
+\hline
+19 & & &\\
+\hline
+20 & & &\\
+\hline
+21 & & &\\
+\hline
+22 & & &\\
+\hline
+23 & & &\\
+\hline
+24 & & &\\
+\hline
+\end{tabular}
+\end{minipage*}
+\end{document}

+ 35 - 0
tikz/robots-circle/Makefile

@@ -0,0 +1,35 @@
+SOURCE = robots-circle
+DELAY = 80
+DENSITY = 300
+WIDTH = 512
+
+make:
+	pdflatex $(SOURCE).tex -output-format=pdf
+	make clean
+
+clean:
+	rm -rf  $(TARGET) *.class *.html *.log *.aux *.data *.gnuplot
+
+gif:
+	pdfcrop $(SOURCE).pdf
+	convert -verbose -delay $(DELAY) -loop 0 -density $(DENSITY) $(SOURCE)-crop.pdf $(SOURCE).gif
+	make clean
+
+png:
+	make
+	make svg
+	inkscape $(SOURCE).svg -w $(WIDTH) --export-png=$(SOURCE).png
+
+transparentGif:
+	convert $(SOURCE).pdf -transparent white result.gif
+	make clean
+
+svg:
+	make
+	#inkscape $(SOURCE).pdf --export-plain-svg=$(SOURCE).svg
+	pdf2svg $(SOURCE).pdf $(SOURCE).svg
+	# Necessary, as pdf2svg does not always create valid svgs:
+	inkscape $(SOURCE).svg --export-plain-svg=$(SOURCE).svg
+	rsvg-convert -a -w $(WIDTH) -f svg $(SOURCE).svg -o $(SOURCE)2.svg
+	inkscape $(SOURCE)2.svg --export-plain-svg=$(SOURCE).svg
+	rm $(SOURCE)2.svg

+ 35 - 0
tikz/robots-circle/robots-circle.tex

@@ -0,0 +1,35 @@
+\documentclass{article}
+\usepackage[pdftex,active,tightpage]{preview}
+\setlength\PreviewBorder{2mm}
+\usepackage{tikz}
+\usepackage{tkz-fct}
+\usetikzlibrary{shapes.misc}
+\usetikzlibrary{shapes, calc, shapes,snakes} 
+\usepackage{amsmath,amssymb}
+
+\begin{document}
+\begin{preview}
+\begin{tikzpicture}[dot/.style={    thick,
+    %draw=gray,
+    %cross out,
+    fill,
+    shape=circle,
+    inner sep=3pt,
+    minimum width=4pt,
+    minimum height=4pt}]
+\newcommand{\R}{2cm};
+
+\node (a) [dot] at (0,0) {};
+\node (b) [dot] at (\R,0) {};
+\node (c) [dot] at ({\R*cos(60)},{\R*sin(60)}) {};
+
+%\draw[dashed,thick] (a) circle(\R);
+%\draw[dashed,thick] (b) circle(\R);
+%\draw[dashed,thick] (c) circle(\R);
+
+\draw[->, ultra thick] (a) -- (b);
+\draw[->, ultra thick] (b) -- (c);
+\draw[->, ultra thick] (c) -- (a);
+\end{tikzpicture}
+\end{preview}
+\end{document}

+ 35 - 0
tikz/robots-walk-away/Makefile

@@ -0,0 +1,35 @@
+SOURCE = robots-walk-away
+DELAY = 80
+DENSITY = 300
+WIDTH = 512
+
+make:
+	pdflatex $(SOURCE).tex -output-format=pdf
+	make clean
+
+clean:
+	rm -rf  $(TARGET) *.class *.html *.log *.aux *.data *.gnuplot
+
+gif:
+	pdfcrop $(SOURCE).pdf
+	convert -verbose -delay $(DELAY) -loop 0 -density $(DENSITY) $(SOURCE)-crop.pdf $(SOURCE).gif
+	make clean
+
+png:
+	make
+	make svg
+	inkscape $(SOURCE).svg -w $(WIDTH) --export-png=$(SOURCE).png
+
+transparentGif:
+	convert $(SOURCE).pdf -transparent white result.gif
+	make clean
+
+svg:
+	make
+	#inkscape $(SOURCE).pdf --export-plain-svg=$(SOURCE).svg
+	pdf2svg $(SOURCE).pdf $(SOURCE).svg
+	# Necessary, as pdf2svg does not always create valid svgs:
+	inkscape $(SOURCE).svg --export-plain-svg=$(SOURCE).svg
+	rsvg-convert -a -w $(WIDTH) -f svg $(SOURCE).svg -o $(SOURCE)2.svg
+	inkscape $(SOURCE)2.svg --export-plain-svg=$(SOURCE).svg
+	rm $(SOURCE)2.svg

+ 51 - 0
tikz/robots-walk-away/robots-walk-away.tex

@@ -0,0 +1,51 @@
+\documentclass{article}
+\usepackage[pdftex,active,tightpage]{preview}
+\setlength\PreviewBorder{2mm}
+\usepackage{tikz}
+\usepackage{tkz-fct}
+\usetikzlibrary{shapes.misc}
+\usetikzlibrary{shapes, calc, shapes,snakes} 
+\usepackage{amsmath,amssymb}
+
+\begin{document}
+\begin{preview}
+\begin{tikzpicture}[dot/.style={    thick,
+    %draw=gray,
+    %cross out,
+    fill,
+    shape=circle,
+    inner sep=3pt,
+    minimum width=4pt,
+    minimum height=4pt}]
+\newcommand{\R}{2cm};
+
+\node (a) [dot] at (0,0) {};
+\node (b) [dot] at (\R,0) {};
+\node (c) [dot] at (2*\R,0) {};
+\node (d) [dot] at (3*\R,0) {};
+
+\node (e) [dot] at (0,\R) {};
+\node (f) [dot] at (\R,\R) {};
+\node (g) [dot] at (2*\R,\R) {};
+\node (h) [dot] at (3*\R,\R) {};
+
+%\node (center1) [thick,draw=blue,cross out,black,inner sep=3pt,minimum width=4pt,minimum height=4pt] at (0.5*\R,0.5*\R) {};
+\draw[dotted,thick] (0.5*\R,0.5*\R) circle(\R);
+\node (center1) at (0.5*\R+3,0.5*\R) {Cluster 1};
+\draw[dotted,thick] (2.5*\R,0.5*\R) circle(\R);
+\node (center1) at (2.5*\R-3,0.5*\R) {Cluster 2};
+%\draw[dashed,thick] (a) circle(\R);
+%\draw[dashed,thick] (b) circle(\R);
+%\draw[dashed,thick] (c) circle(\R);
+
+\draw[->, ultra thick] (b) -- (a);
+\draw[->, ultra thick] (f) -- (e);
+\draw[->, ultra thick] (c) -- (d);
+\draw[->, ultra thick] (g) -- (h);
+\draw[->, ultra thick] (a) to[bend right] (e);
+\draw[->, ultra thick] (e) to[bend right] (a);
+\draw[->, ultra thick] (d) to[bend right] (h);
+\draw[->, ultra thick] (h) to[bend right] (d);
+\end{tikzpicture}
+\end{preview}
+\end{document}