aboutsummaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
authorMohammad Akhlaghi <mohammad@akhlaghi.org>2020-01-20 04:30:56 +0000
committerMohammad Akhlaghi <mohammad@akhlaghi.org>2020-01-20 04:30:56 +0000
commit01dd812b7b828982b7d36e2967f0d9f558780e78 (patch)
tree9f0eb67dde050cc915e40978f82df8b02b257ff2 /tex
parent5e830f5fb60c4bb186cbd4bd92908e187c037af4 (diff)
Added figure showing project's file structure
It was a little hard to describe the file structure so instead of using a standard listing as most papers do, I thought of showing the file and directory structure as boxes within each other (modeled on the Gnome disk-utility). Some other polishing was done throughout the paper also.
Diffstat (limited to 'tex')
-rw-r--r--tex/src/figure-file-architecture.tex223
-rw-r--r--tex/src/preamble-pgfplots.tex11
-rw-r--r--tex/src/preamble-style.tex1
-rw-r--r--tex/src/references.tex20
4 files changed, 252 insertions, 3 deletions
diff --git a/tex/src/figure-file-architecture.tex b/tex/src/figure-file-architecture.tex
new file mode 100644
index 0000000..3a7b760
--- /dev/null
+++ b/tex/src/figure-file-architecture.tex
@@ -0,0 +1,223 @@
+\begin{tikzpicture}[
+ line width=1.5pt,
+ black!50,
+ text=black,
+]
+
+ %% Use small fonts
+ \footnotesize
+
+ %% project
+ \node [at={(0,4cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum width=15cm,
+ minimum height=7.5cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{top-project-directory/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(-6.0cm,-3cm)}] {COPYING};
+ \node [node-nonterminal-thin, at={(-3.5cm,-3cm)}] {paper.tex};
+ \node [node-nonterminal-thin, at={(-1.0cm,-3cm)}] {project};
+ \node [node-nonterminal-thin, at={(+1.5cm,-3cm)}] {README.md};
+ \node [node-nonterminal-thin, at={(+4.25cm,-3cm)},
+ text width=2.5cm, text depth=-3pt] {README-hacking.md};
+
+ %% reproduce
+ \node [at={(-1.4cm,3.5cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=6cm,
+ minimum width=11.9cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{reproduce/}}] {};
+
+ %% reproduce/software
+ \node [at={(-4.35cm,3cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=5.3cm,
+ minimum width=5.7cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{software/}}] {};
+
+ %% reproduce/analysis
+ \node [at={(1.55cm,3cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=5.3cm,
+ minimum width=5.7cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{analysis/}}] {};
+
+ %% reproduce/software/config
+ \node [at={(-5.75cm,2.5cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=2.1cm,
+ minimum width=2.6cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{config/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(-5.75cm,1.8cm)}] {LOCAL.conf.in};
+ \node [node-nonterminal-thin, at={(-5.75cm,1.3cm)}] {versions.conf};
+ \node [node-nonterminal-thin, at={(-5.75cm,0.8cm)}] {checksums.conf};
+
+
+ %% reproduce/software/make
+ \node [at={(-2.95cm,2.5cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=2.1cm,
+ minimum width=2.6cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{make/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(-2.95cm,1.8cm)}] {basic.mk};
+ \node [node-nonterminal-thin, at={(-2.95cm,1.3cm)}] {high-level.mk};
+ \node [node-nonterminal-thin, at={(-2.95cm,0.8cm)}] {python.mk};
+
+ %% reproduce/software/bash
+ \node [at={(-5.75cm,0.2cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=2.1cm,
+ minimum width=2.6cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{bash/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(-5.75cm,-0.5cm)}] {bashrc.sh};
+ \node [node-nonterminal-thin, at={(-5.75cm,-1.0cm)}] {configure.sh};
+ \node [node-nonterminal-thin, at={(-5.75cm,-1.5cm)}] {git-pre-comit};
+
+ %% reproduce/software/bibtex
+ \node [at={(-2.95cm,0.2cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=2.1cm,
+ minimum width=2.6cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{bibtex/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(-2.95cm,-0.5cm)}] {fftw.tex};
+ \node [node-nonterminal-thin, at={(-2.95cm,-1.0cm)}] {numpy.tex};
+ \node [node-nonterminal-thin, at={(-2.95cm,-1.5cm)}] {gnuastro.tex};
+
+ %% reproduce/analysis/config
+ \node [at={(0.15cm,2.5cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=2.1cm,
+ minimum width=2.6cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{config/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(0.15cm,1.8cm)}] {INPUTS.conf};
+ \node [node-nonterminal-thin, at={(0.15cm,1.3cm)}] {param-1.conf};
+ \node [node-nonterminal-thin, at={(0.15cm,0.8cm)}] {param-2.conf};
+
+ %% reproduce/analysis/make
+ \node [at={(2.95cm,2.5cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=2.1cm,
+ minimum width=2.6cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{make/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(2.95cm,1.8cm)}] {initialize.mk};
+ \node [node-nonterminal-thin, at={(2.95cm,1.3cm)}] {download.mk};
+ \node [node-nonterminal-thin, at={(2.95cm,0.8cm)}] {analysis-1.mk};
+
+ %% reproduce/analysis/bash
+ \node [at={(0.15cm,0.2cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=2.1cm,
+ minimum width=2.6cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{bash/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(0.15cm,-0.5cm)}] {process-1.sh};
+ \node [node-nonterminal-thin, at={(0.15cm,-1.0cm)}] {process-2.sh};
+ \node [node-nonterminal-thin, at={(0.15cm,-1.5cm)}] {process-3.sh};
+
+ %% reproduce/analysis/python
+ \node [at={(2.95cm,0.2cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=2.1cm,
+ minimum width=2.6cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{python/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(2.95cm,-0.5cm)}] {operation-1.py};
+ \node [node-nonterminal-thin, at={(2.95cm,-1.0cm)}] {operation-2.py};
+ \node [node-nonterminal-thin, at={(2.95cm,-1.5cm)}] {fitting-plot.py};
+
+ %% tex
+ \node [at={(6cm,3.5cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum height=6cm,
+ minimum width=2.7cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{tex/}}] {};
+
+ %% tex/src
+ \node [at={(6cm,3cm)}, anchor=north,
+ rectangle,
+ very thick,
+ text centered,
+ font=\ttfamily,
+ minimum width=2.5cm,
+ minimum height=5.3cm,
+ draw=green!50!black!50,
+ fill=black!10!green!2!white,
+ label={[shift={(0,-5mm)}]\texttt{src/}}] {};
+ %% Its files
+ \node [node-nonterminal-thin, at={(6cm,2.2cm)}] {preamble-1.tex};
+ \node [node-nonterminal-thin, at={(6cm,1.7cm)}] {preamble-2.tex};
+ \node [node-nonterminal-thin, at={(6cm,1.2cm)}] {figure-1.tex};
+ \node [node-nonterminal-thin, at={(6cm,0.7cm)}] {figure-2.tex};
+
+\end{tikzpicture}
diff --git a/tex/src/preamble-pgfplots.tex b/tex/src/preamble-pgfplots.tex
index 3f467a6..57a0128 100644
--- a/tex/src/preamble-pgfplots.tex
+++ b/tex/src/preamble-pgfplots.tex
@@ -150,6 +150,17 @@
bottom color=green!80!black!50,
font=\ttfamily}}
+\tikzset{node-nonterminal-thin/.style={
+ rectangle,
+ very thick,
+ text centered,
+ top color=white,
+ text width=2cm,
+ minimum size=4mm,
+ draw=green!50!black!50,
+ bottom color=green!80!black!50,
+ font=\ttfamily\scriptsize}}
+
\tikzset{node-makefile/.style={
thick,
rectangle,
diff --git a/tex/src/preamble-style.tex b/tex/src/preamble-style.tex
index e843903..f3a96e9 100644
--- a/tex/src/preamble-style.tex
+++ b/tex/src/preamble-style.tex
@@ -22,6 +22,7 @@
%% To allow a prefix to the enumeration.
\usepackage{enumitem}
+\setlist{nolistsep} % No space before `\begin{itemize}'
%% Horizontal line with spacing
\newcommand{\horizontalline}{\vspace{3mm}\hrule\vspace{3mm}}
diff --git a/tex/src/references.tex b/tex/src/references.tex
index 0f8171b..170ace6 100644
--- a/tex/src/references.tex
+++ b/tex/src/references.tex
@@ -1091,7 +1091,7 @@ Reproducible Research in Image Processing},
author = {{Peng}, R.D.},
title = {Reproducible Research in Computational Science},
journal = {Science},
- year = 2011,
+ year = {2011},
month = dec,
volume = 334,
pages = {1226},
@@ -1102,6 +1102,20 @@ Reproducible Research in Image Processing},
+@ARTICLE{gil10,
+ author = {Yolanda Gil and Pedro A. González-Calero and Jihie Kim and Joshua Moody and Varun Ratnakar},
+ title = {A semantic framework for automatic generation of computational workflows using distributed data and component catalogues},
+ journal = {Journal of Experimental \& Theoretical Artificial Intelligence},
+ year = {2010},
+ volume = {23},
+ pages = {389},
+ doi = {10.1080/0952813X.2010.490962},
+}
+
+
+
+
+
@ARTICLE{pence10,
author = {{Pence}, W.~D. and {Chiappetti}, L. and {Page}, C.~G. and {Shaw}, R.~A. and
{Stobie}, E.},
@@ -1126,8 +1140,8 @@ Reproducible Research in Image Processing},
author = {Jeremy Goecks and Anton Nekrutenko and James Taylor},
title = {Galaxy: a comprehensive approach for supporting accessible, reproducible, and transparent computational research in the life sciences},
journal = {Genome Biology},
- year = 2010,
- volume = 11,
+ year = {2010},
+ volume = {11},
pages = {R86},
doi = {10.1186/gb-2010-11-8-r86},
}