Skip to content
This repository was archived by the owner on Feb 12, 2024. It is now read-only.

Commit 74e3e2c

Browse files
committed
fixed latex problems
1 parent eb3679c commit 74e3e2c

File tree

3 files changed

+96
-26
lines changed

3 files changed

+96
-26
lines changed

DesignDocument/DesignDocument.pdf

-1.53 KB
Binary file not shown.
9.17 KB
Binary file not shown.

Implementation Sheet/Implementation.tex

+96-26
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
\usepackage[german, english]{babel} % german hyphenation, quotes, etc
55
\usepackage{graphicx} % provides commands for including figures
66
\usepackage{rotating}
7+
\usepackage{amsmath}
8+
\usepackage{pdfpages}
79
\graphicspath{ {images/} }
810
\usepackage{hyperref} % detailed hyperlink/pdf configuration
911
\hypersetup{ % ‘texdoc hyperref‘ for options
@@ -15,7 +17,9 @@
1517
\usepackage{enumitem}
1618
\usepackage{lscape}
1719
\usepackage{caption}
18-
\usepackage{placeins}
20+
%\usepackage{placeins}
21+
\usepackage[section]{placeins}
22+
1923

2024

2125
\makenoidxglossaries
@@ -220,10 +224,18 @@ \section{Introduction}
220224
Overall, our project now consists of lines of Python code and lines of C++ code.
221225

222226
\section{Changes on the Design}
227+
223228
\begin{itemize}
229+
224230
\item We didn't implemented a matrix class, because we realized it is not useful to handle every matrix by its own.
225231
Instead we decided to handle it in numpy arrays.
232+
233+
\item We decided to leave out the density because it wasn't
234+
226235
\item We changed the command interface to an abstract class to reduce redundancy of the code.
236+
237+
\item We decided to let out the possibility to select a density, because we couldn't guarantee that the fetched and cut matrices from Suite Sparse have the wanted density.
238+
227239
\end{itemize}
228240

229241
%collector class?
@@ -262,69 +274,114 @@ \subsection{Following Requirements are accomplished}
262274

263275
\subsection{Following Requirements were accomplished as far as possible}
264276
\begin{itemize}
277+
265278
\item All mandatory requirements were as far as possible accomplished despite the cross-platformed compatibility is not fully given.
266279
This was not possible, because some used entities (ssget, gingko) where not Windows compatible.
267280
Compared to the specification sheet there is just the possibility to fetch and cut Suite Sparse matrices yet.
268281
As we figured out our design we realized that generating random matrices is not that easy with our knowing.
269282
So as already realized in the design document, because in Suite Sparse it is very rare to have same sized matrices from Suite Sparse, it was not necessary to just fetch Suite Sparse matrices in one size.
270283
Instead we just implemented a generator that fetches and cuts Suite Sparse matrices.
271-
\item We decided to let out the possibility to select a density, because we couldn't guarantee that the fetched and cut matrices from Suite Sparse have the wanted density.
284+
285+
\item We decided to let out the possibility to select a density as explained in the changes of design
286+
272287
\end{itemize}
273288

274289

275290
\subsection{Following Requirements were not accomplished}
291+
\begin{itemize}
292+
\item A web interface to the software that is able to select a single, a set or all matrices of an uploadable le for prediction by the neural network. The web interface may also be able to visualize the contained matrices, annotated labels as well as prediction results.
293+
294+
\item The system must support at least five iterative solver algorithms.
295+
296+
\item The software must be able to utilize GPU accelerators for the training and prediction capabilities of the neural network.
297+
298+
\item Scalability of the workflow including matrix generation, training, prediction in that multiple processors may be used in parallel.
276299

300+
\end{itemize}
277301

278302
\section{Unittests}
303+
279304
\subsection{Controller}
280-
\subsubsection{test_command_parser}
305+
\subsubsection{test command parser}
281306
This test checks the functionality of the command parser.
282307
It has following tests:
308+
283309
\begin{itemize}
284-
\item dicts_equal
285-
\item test_valid_input_returns_command
286-
\item test_valid_input_with_arguments
287-
\item test_valid_input_with_flag
288-
\item test_invalid_mode_throws_exception
289-
\item test_valid_collector_input
290-
\item test_valid_label_mode
291-
\item test_fails_when_entering_invalid_module
292-
\item test_quit_with_arguments_throws_error
293-
\item test_collector_with_missing_optional_args_adds_default
294-
\item test_classify_command_with_missing_optional_arg_adds_default
310+
311+
\item dicts equal
312+
313+
\item test valid input returns command
314+
315+
\item test valid input with arguments
316+
317+
\item test valid input with flag
318+
319+
\item test invalid mode throws exception
320+
321+
\item test valid collector input
322+
323+
\item test valid label mode
324+
325+
\item test fails when entering invalid module
326+
327+
\item test quit with arguments throws error
328+
329+
\item test collector with missing optional args adds default
330+
331+
\item test classify command with missing optional arg adds default
332+
295333
\end{itemize}
296334

297-
\subsubsection{test_controller}
335+
\subsubsection{test controller}
298336
This test checks the functionality of the controller.
299337
It has following tests:
338+
300339
\begin{itemize}
301-
\item test_controller_with_two_iterations
302-
\item test_invalid_input_calls_print_error
303-
\item test_help_flag_print
340+
341+
\item test controller with two iterations
342+
343+
\item test invalid input calls print error
344+
345+
\item test help flag print
346+
304347
\end{itemize}
305348

306349
\subsection{model}
307-
\subsubsection{test_collector}
350+
\subsubsection{test collector}
308351
This test checks the functionality of the collector.
309352
It has following tests:
353+
310354
\begin{itemize}
311-
\item test_collect
355+
356+
\item test collect
357+
312358
\end{itemize}
313359

314360
\subsection{shared}
315-
\subsubsection{test_configurations}
361+
\subsubsection{test configurations}
362+
This test checks the functionality of the loading of the configurations.
363+
It has following tests:
364+
316365
\begin{itemize}
317-
\item test_loading_config_values_works
318-
\item test_loading_config_has_right_value
366+
367+
\item test loading config values works
368+
369+
\item test loading config has right value
370+
319371
\end{itemize}
320372

321373
\subsection{view}
322-
\subsubsection{test_cli_output_service}
374+
\subsubsection{test cli output service}
375+
This test checks the functionality of the view.
376+
It has following tests:
377+
323378
\begin{itemize}
324-
\item test_create_observable_to_print_three_values
325-
\end{itemize}
326379

380+
\item test create observable to print three values
327381

382+
\end{itemize}
383+
384+
\newpage
328385
\section{Delays and Problems}
329386
Our main problem was with the \gls{Ginkgo}.
330387
It was bad documented what made working with it very hard and caused a delay in our implementation plan.
@@ -340,20 +397,33 @@ \section{Lessons learned}
340397
In future it would be better to use for example ShareLaTeX and start a new line for each sentence to minimize git problems.
341398

342399
\section{Statistics}
400+
343401
\begin{itemize}
402+
344403
\item lines of Python code
404+
345405
\item lines of C++ code
406+
346407
\item commits
408+
347409
\end{itemize}
348410
\subsection{Work Splitting}
349411
\begin{itemize}
412+
350413
\item Collector module: Yannick and Anna
414+
351415
\item Labeling module: Fabian and Dennis
416+
352417
\item Training module: Yannick
418+
353419
\item Classifier: Yannick
420+
354421
\item Command parsing module: Simon
422+
355423
\item Output service module: Simon
424+
356425
\item Implementation report: Anna
426+
357427
\end{itemize}
358428
%How many lines of code, how many commits, work splitting
359429

0 commit comments

Comments
 (0)