Index: dam kernel/trunk/doc/UML Diagrams/DAM kernel Data Model Main.uxf
===================================================================
diff -u -r109 -r112
--- dam kernel/trunk/doc/UML Diagrams/DAM kernel Data Model Main.uxf (.../DAM kernel Data Model Main.uxf) (revision 109)
+++ dam kernel/trunk/doc/UML Diagrams/DAM kernel Data Model Main.uxf (.../DAM kernel Data Model Main.uxf) (revision 112)
@@ -4,60 +4,196 @@
UMLClass
- 630
- 350
- 210
+ 180
+ 10
+ 260
190
- Location
-
+ Input
--
-- Segments
++ DamProjectType
++ DamProjectCalculationSpecification
+
UMLClass
- 60
- 260
+ 580
+ 540
210
190
- Input
+ ProjectData
--
-+ Locations
-+ Segments
-+ SoilList
UMLClass
- 290
- 40
- 210
+ 190
+ 820
+ 260
190
- ProjectData
+ Output
--
-+ Input
-+ Output
UMLClass
- 60
- 520
- 210
- 190
+ 540
+ 0
+ 260
+ 100
- Output
+ Location
--
-
++
+
+ Relation
+
+ 430
+ 30
+ 130
+ 40
+
+ lt=<-
+m1=*
+ 110.0;10.0;10.0;20.0
+
+
+ Relation
+
+ 290
+ 190
+ 310
+ 400
+
+ lt=<-
+m1=1
+ 10.0;10.0;10.0;380.0;290.0;380.0
+
+
+ Relation
+
+ 290
+ 610
+ 310
+ 230
+
+ lt=<-
+m1=1
+ 10.0;210.0;10.0;10.0;290.0;10.0
+
+
+ UMLClass
+
+ 540
+ 120
+ 260
+ 100
+
+ Segment
+--
++
+
+
+
+ UMLClass
+
+ 540
+ 250
+ 260
+ 100
+
+ Soil
+--
++
+
+
+
+ Relation
+
+ 430
+ 70
+ 130
+ 110
+
+ lt=<-
+m1=*
+ 110.0;90.0;10.0;10.0
+
+
+ Relation
+
+ 430
+ 100
+ 130
+ 210
+
+ lt=<-
+m1=*
+ 110.0;190.0;10.0;10.0
+
+
+ UMLClass
+
+ 760
+ 830
+ 260
+ 100
+
+ CalculationResult
+--
++ LocationId
++ ScenarioId
++ CalculationId
++
+
+
+
+ UMLClass
+
+ 760
+ 1000
+ 260
+ 130
+
+ CalculationMessage
+--
++ type
++ message
+
+
+
+ Relation
+
+ 440
+ 860
+ 340
+ 40
+
+ lt=<-
+m1=*
+ 320.0;10.0;10.0;10.0
+
+
+ Relation
+
+ 440
+ 920
+ 340
+ 140
+
+ lt=<-
+m1=*
+ 320.0;120.0;10.0;10.0
+
Index: dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex
===================================================================
diff -u -r109 -r112
--- dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex (.../DAM kernel - Technical Design.tex) (revision 109)
+++ dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex (.../DAM kernel - Technical Design.tex) (revision 112)
@@ -44,7 +44,7 @@
%------------------------------------------------------------------------------
-\chapter{Introduction} \label{chapter1}
+\chapter{Introduction} \label{chapterIntroduction}
\section{Purpose and scope of this document} \label{sec:1.1}
@@ -73,8 +73,10 @@
%------------------------------------------------------------------------------
-\chapter{System Architecture} \label{chapter2}
+\chapter{System Architecture} \label{chapterSystemArchitecture}
+\section{DAM components} \label{sec:DamComponents}
+
\ProgramNamePlusSpace is part of the whole DAM system that contains several components. Please see \autoref{fig-DamComponents} for an overview of the components of DAM.
\begin{figure}[H]
@@ -88,26 +90,49 @@
The arrows illustrate the dependencies of the components.
+\section{\ProgramNamePlusSpace components} \label{sec:DamKernelComponents}
+The \ProgramNamePlusSpace itself also consists of several modules.
+These can be seen in see \autoref{fig-DAMKernelComponents}
+\begin{figure}[H]
+ \begin{center}
+ \includegraphics[width=18cm]{pictures/DAMKernelComponents.pdf}
+ \end{center}
+
+ \caption{\small \ProgramNamePlusSpace and its components.}
+ \label{fig-DAMKernelComponents}
+\end{figure}
+
%------------------------------------------------------------------------------
-\chapter{Architectural Choices} \label{chapter3}
+\chapter{Architectural Choices} \label{chapterArchitecturalChoices}
-\section{External libraries and components} \label{sec:3.1}
+\section{Design principles} \label{sec:DesignPrinciples}
+\begin{itemize}
+ \item No circular references between objects. When it is really unavoidable, then do it through a generic interface (e.g. IParentObject)
+ \item The calculation will support parallellization. So do not use global variables and avoid using statics.
+ \item Failure mechanisms will be connected through wrapper classes, which will share a common IFailureMechanism interface
+ \item Surfaceline adapter classes will share a common ISurfacelineAdapter interface
+ \item The \ProgramNamePlusSpace must provide progress information of the calculation, so clients of the kernel can show a progressbar
+ \item The \ProgramNamePlusSpace must provide the possiblity to abort a calculation within a reasonable timespan.
+ \item There should be no User Interface elements shown anytime during the calculation.
+\end{itemize}
+
+\section{External libraries and components} \label{sec:ExternalLibrariesAndComponents}
\ProgramNamePlusSpace uses third-party libraries and components. Only open sources and free components, that are free to redistribute are allowed to be used.
Furthermore \ProgramNamePlusSpace uses the Delta Shell Light (DSL) library, that is developed by Deltares.
-\section{DSL} \label{sec:3.2}
+\section{DSL} \label{sec:DSL}
The \ProgramNamePlusSpace only uses part (the non-UI modules) of the DSL library
\begin{itemize}
\item DSL-Core
\item DSL-Probabilistic
\item DSL-Geo
\end{itemize}
-\section{Other libraries} \label{sec:3.3}
-Other libraries taht are used bij the \ProgramNamePlusSpace are:
+\section{Other libraries} \label{sec:OtherLibraries}
+Other libraries that are used bij the \ProgramNamePlusSpace are:
\begin{itemize}
\item Math.Net: mathematical library
\end{itemize}
@@ -116,23 +141,101 @@
%------------------------------------------------------------------------------
-\chapter{Data Model} \label{chapter4}
+\chapter{Data Model} \label{chapterDataModel}
-ProjectData
-List
-List
-List
+\section{Main Data Model} \label{sec:MainDataModel}
+The main data model can be seen in see \autoref{fig-DAMKernelDataModelMain}
+\begin{figure}[H]
+ \begin{center}
+ \includegraphics[width=15cm]{pictures/DAMKernelDataModelMain.pdf}
+ \end{center}
+
+ \caption{\small \ProgramNamePlusSpace main data model.}
+ \label{fig-DAMKernelDataModelMain}
+\end{figure}
+
+
+
+\section{Location} \label{sec:Location}
+
+The data model of the Location class can be seen in see \autoref{fig-DAMKernelDataModelLocation}
+
+\begin{figure}[H]
+ \begin{center}
+ \includegraphics[width=12cm]{pictures/DAMKernelDataModelLocation.pdf}
+ \end{center}
+
+ \caption{\small \ProgramNamePlusSpace kerenl Location object.}
+ \label{fig-DAMKernelDataModelLocation}
+\end{figure}
+
+
+
+
%------------------------------------------------------------------------------
-\chapter{Data Description} \label{chapter5}
+\chapter{Data Description} \label{chapterDataDescription}
-Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum
+\section{Type enumerations} \label{sec:TypeEnumerations}
+\subsection{MainMechanismType}
+\begin{itemize}
+ \item Stability
+ \item Piping
+\end{itemize}
+\section{Main Data Model} \label{sec:MainDataModelDescription}
+\subsection{Input}
+\paragraph*{DamProjectType}
+\paragraph*{DamProjectCalculationSpecification}
+\paragraph*{Locations}
+\paragraph*{Segments}
+\paragraph*{Soils}
+
+\subsection{Output}
+\paragraph*{CalculationResults}
+\paragraph*{CalculationMessages}
+
+\section{Location} \label{sec:LocationDescription}
+\paragraph*{Segment}
+\paragraph*{SurfaceLine}
+\paragraph*{WaternetOptions}
+\paragraph*{DesignOptions}
+\paragraph*{SensorData}
+\paragraph*{LoadScenario}
+\paragraph*{IFailureMechanismOptions}
%------------------------------------------------------------------------------
-\chapter{Literature} \label{chapter6}
+\chapter{Module Description} \label{chapterModuleDescription}
+\section{\ProgramNamePlusSpace main modules} \label{sec:DamKernelMainModules}
+
+\subsection{Assessment Regional Dikes}
+\paragraph*{Regional assessment calculation}
+\paragraph*{Regional scenario selector}
+\paragraph*{Regional schematization factor calculator}
+\subsection{Assessment Primary Dikes}
+\paragraph*{Primary assessment calculation}
+\subsection{Design Primary Dikes}
+\paragraph*{Primary design calculation}
+\subsection{NWO Calculation}
+\paragraph*{Primary NWO calculation}
+
+\section{\ProgramNamePlusSpace supporting modules} \label{sec:DamKernelSupportingModules}
+\subsection{Failure mechanism wrappers}
+\paragraph*{Surfaceline Adapter Height}
+\paragraph*{Surfaceline Adapter Slope}
+\paragraph*{Surfaceline Adapter Shoulder}
+\paragraph*{Surfaceline Adapter NWO}
+\subsection{Surfaceline adapters}
+\subsection{Failure mechanism Calculation Runner}
+\subsection{Geometry creator}
+\subsection{Waternet creator}
+\subsection{Scripting engine}
+
+%------------------------------------------------------------------------------
+\chapter{Literature} \label{chapterLiterature}
+
\bibliography{../DAM_references/dam_references}
Index: dam kernel/trunk/doc/UML Diagrams/DAM kernel Components.uxf
===================================================================
diff -u -r109 -r112
--- dam kernel/trunk/doc/UML Diagrams/DAM kernel Components.uxf (.../DAM kernel Components.uxf) (revision 109)
+++ dam kernel/trunk/doc/UML Diagrams/DAM kernel Components.uxf (.../DAM kernel Components.uxf) (revision 112)
@@ -1,13 +1,13 @@
- 7
+ 10
UMLGeneric
- 700
- 525
- 203
- 56
+ 540
+ 750
+ 290
+ 80
symbol=component
@@ -17,10 +17,10 @@
UMLGeneric
- 756
- 70
- 203
- 56
+ 740
+ 100
+ 260
+ 80
symbol=component
@@ -30,10 +30,10 @@
UMLGeneric
- 441
- 70
- 203
- 56
+ 400
+ 100
+ 240
+ 80
symbol=component
@@ -43,32 +43,32 @@
UMLDeployment
- 679
- 483
- 483
- 336
+ 510
+ 690
+ 690
+ 480
Common modules
UMLDeployment
- 427
- 35
- 238
- 308
+ 380
+ 50
+ 290
+ 440
Assessment Primary Dikes
UMLGeneric
- 133
- 140
- 203
- 56
+ 40
+ 200
+ 270
+ 80
symbol=component
@@ -78,10 +78,10 @@
UMLGeneric
- 133
- 210
- 203
- 56
+ 40
+ 300
+ 270
+ 80
symbol=component
@@ -91,10 +91,10 @@
UMLGeneric
- 133
- 70
- 203
- 56
+ 40
+ 100
+ 270
+ 80
symbol=component
@@ -104,10 +104,10 @@
UMLGeneric
- 700
- 595
- 203
- 56
+ 540
+ 850
+ 290
+ 80
symbol=component
@@ -117,10 +117,10 @@
UMLGeneric
- 917
- 595
- 203
- 56
+ 850
+ 850
+ 290
+ 80
symbol=component
@@ -130,56 +130,56 @@
UMLGeneric
- 700
- 665
- 203
- 56
+ 540
+ 950
+ 290
+ 80
symbol=component
-Failure mechanism Calcualtion Runner
+Failure mechanism Calculation Runner
UMLDeployment
- 301
- 483
- 245
- 343
+ 70
+ 690
+ 350
+ 490
Failure mechanism wrappers
UMLDeployment
- 126
- 35
- 238
- 308
+ 30
+ 50
+ 300
+ 440
Assessment Regional Dikes
UMLDeployment
- 735
- 35
- 238
- 308
+ 720
+ 50
+ 310
+ 440
Design Primary Dikes
UMLGeneric
- 322
- 518
- 203
- 56
+ 100
+ 740
+ 290
+ 80
symbol=component
@@ -189,10 +189,10 @@
UMLGeneric
- 322
- 588
- 203
- 56
+ 100
+ 840
+ 290
+ 80
symbol=component
@@ -202,10 +202,10 @@
UMLGeneric
- 322
- 658
- 203
- 56
+ 100
+ 940
+ 290
+ 80
symbol=component
@@ -215,10 +215,10 @@
UMLGeneric
- 917
- 525
- 203
- 56
+ 850
+ 750
+ 290
+ 80
symbol=component
@@ -229,10 +229,10 @@
UMLGeneric
- 917
- 665
- 203
- 56
+ 850
+ 950
+ 290
+ 80
symbol=component
@@ -243,10 +243,10 @@
UMLGeneric
- 700
- 735
- 203
- 56
+ 540
+ 1050
+ 290
+ 80
symbol=component
@@ -256,10 +256,10 @@
UMLGeneric
- 917
- 735
- 203
- 56
+ 850
+ 1050
+ 290
+ 80
symbol=component
@@ -269,10 +269,10 @@
UMLDeployment
- 1022
- 35
- 238
- 308
+ 1060
+ 50
+ 290
+ 440
NWO Calculation
(NEW)
@@ -281,10 +281,10 @@
UMLGeneric
- 1043
- 70
- 203
- 56
+ 1080
+ 100
+ 250
+ 80
symbol=component
@@ -294,32 +294,32 @@
UMLDeployment
- 77
+ 0
0
- 1239
- 371
+ 1390
+ 530
Main modules
UMLDeployment
- 77
- 441
- 1232
- 413
+ 0
+ 630
+ 1390
+ 590
Supporting modules
Relation
- 714
- 364
- 21
- 91
+ 680
+ 520
+ 30
+ 130
lt=[=]-[<]
10.0;10.0;10.0;110.0
Index: dam kernel/trunk/doc/Dam kernel - Technical Design/pictures/DAMKernelDataModelMain.pdf
===================================================================
diff -u -r109 -r112
Binary files differ
Index: dam kernel/trunk/doc/Dam kernel - Technical Design/pictures/DAMKernelDataModelLocation.pdf
===================================================================
diff -u
Binary files differ
Index: dam kernel/trunk/doc/UML Diagrams/DAM kernel Data Model Location.uxf
===================================================================
diff -u
--- dam kernel/trunk/doc/UML Diagrams/DAM kernel Data Model Location.uxf (revision 0)
+++ dam kernel/trunk/doc/UML Diagrams/DAM kernel Data Model Location.uxf (revision 112)
@@ -0,0 +1,192 @@
+
+
+ 10
+
+ UMLClass
+
+ 160
+ 350
+ 260
+ 190
+
+ Location
+--
++ Name
+
+
+
+ Relation
+
+ 410
+ 70
+ 310
+ 340
+
+ lt=<-
+m1=*
+ 290.0;10.0;10.0;320.0
+
+
+ UMLClass
+
+ 700
+ 40
+ 260
+ 100
+
+ Segment
+--
+
+
+
+
+ UMLClass
+
+ 700
+ 190
+ 260
+ 100
+
+ SurfaceLine
+--
+
+
+
+
+ Relation
+
+ 410
+ 220
+ 310
+ 210
+
+ lt=<-
+m1=1
+ 290.0;10.0;10.0;190.0
+
+
+ UMLClass
+
+ 700
+ 340
+ 260
+ 100
+
+ WaternetOptions
+--
+
+
+
+
+ UMLClass
+
+ 700
+ 490
+ 260
+ 100
+
+ DesignOptions
+--
+
+
+
+
+ UMLClass
+
+ 700
+ 630
+ 260
+ 100
+
+ SensorData
+--
+
+
+
+
+ Relation
+
+ 410
+ 370
+ 310
+ 90
+
+ lt=<-
+m1=1
+ 290.0;10.0;10.0;70.0
+
+
+ Relation
+
+ 410
+ 450
+ 310
+ 100
+
+ lt=<-
+m1=1
+ 290.0;70.0;10.0;10.0
+
+
+ Relation
+
+ 410
+ 480
+ 310
+ 200
+
+ lt=<-
+m1=1
+ 290.0;180.0;10.0;10.0
+
+
+ UMLClass
+
+ 700
+ 760
+ 260
+ 100
+
+ LoadScenario
+--
+
+
+
+
+ Relation
+
+ 410
+ 510
+ 310
+ 290
+
+ lt=<-
+m1=*
+ 290.0;270.0;10.0;10.0
+
+
+ UMLClass
+
+ 700
+ 890
+ 260
+ 100
+
+ IFailureMechanismOptions
+--
+
+
+
+
+ Relation
+
+ 380
+ 530
+ 340
+ 420
+
+ lt=<-
+m1=*
+ 320.0;400.0;10.0;10.0
+
+
Index: dam kernel/trunk/doc/Dam kernel - Technical Design/pictures/DAMKernelComponents.pdf
===================================================================
diff -u -r109 -r112
Binary files differ