Index: dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.pdf =================================================================== diff -u -r148 -r152 Binary files differ Index: dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment Regional.uxf =================================================================== diff -u -r146 -r152 --- dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment Regional.uxf (.../DAM kernel Sequence Assessment Regional.uxf) (revision 146) +++ dam kernel/trunk/doc/UML Diagrams/DAM kernel Sequence Assessment Regional.uxf (.../DAM kernel Sequence Assessment Regional.uxf) (revision 152) @@ -1,13 +1,13 @@ - 8 + 10 UMLGeneric - 216 - 240 - 16 - 136 + 420 + 260 + 20 + 690 bg=yellow @@ -16,10 +16,10 @@ UMLGeneric - 312 - 144 - 112 - 40 + 540 + 140 + 140 + 50 :Failure Mechanism Calculator @@ -29,10 +29,10 @@ UMLGeneric - 168 - 144 - 112 - 24 + 360 + 140 + 140 + 30 :Assessment Dikes bg=orange @@ -41,22 +41,22 @@ UMLGeneric - 440 - 144 - 112 - 40 + 200 + 140 + 140 + 50 - :Sceanrio Selector + :Scenario Selector bg=orange UMLGeneric - 568 - 144 - 112 - 40 + 710 + 140 + 140 + 50 :Geometry Creator bg=orange @@ -65,10 +65,10 @@ UMLGeneric - 696 - 144 - 112 - 40 + 870 + 140 + 140 + 50 :Waternet Creator bg=orange @@ -77,10 +77,10 @@ UMLGeneric - 352 - 240 - 16 - 552 + 590 + 260 + 20 + 690 bg=yellow @@ -89,43 +89,43 @@ Relation - 352 - 176 - 24 - 80 + 590 + 180 + 30 + 100 lt=. 10.0;10.0;10.0;80.0 Relation - 224 - 280 - 144 - 24 + 430 + 330 + 180 + 30 lt=<<<- 160.0;10.0;10.0;10.0 Relation - 224 - 320 - 144 - 24 + 430 + 370 + 180 + 30 lt=<<<- 10.0;10.0;160.0;10.0 UMLGeneric - 480 - 240 - 16 - 104 + 250 + 260 + 20 + 130 bg=yellow @@ -134,10 +134,10 @@ UMLGeneric - 608 - 344 - 16 - 104 + 760 + 390 + 20 + 130 bg=yellow @@ -146,10 +146,10 @@ UMLGeneric - 736 - 456 - 16 - 104 + 920 + 530 + 20 + 130 bg=yellow @@ -158,120 +158,120 @@ Relation - 360 - 264 - 136 - 24 + 260 + 270 + 180 + 30 lt=<<<- - 150.0;10.0;10.0;10.0 + 10.0;10.0;160.0;10.0 Relation - 360 - 312 - 136 - 24 + 260 + 300 + 180 + 30 lt=<<<- - 10.0;10.0;150.0;10.0 + 160.0;10.0;10.0;10.0 Relation - 360 - 368 - 264 - 24 + 600 + 420 + 180 + 30 lt=<<<- - 310.0;10.0;10.0;10.0 + 160.0;10.0;10.0;10.0 Relation - 360 - 416 - 264 - 24 + 600 + 480 + 180 + 30 lt=<<<- - 10.0;10.0;310.0;10.0 + 10.0;10.0;160.0;10.0 Relation - 360 - 480 - 392 - 24 + 600 + 560 + 340 + 30 lt=<<<- - 470.0;10.0;10.0;10.0 + 320.0;10.0;10.0;10.0 Relation - 360 - 536 - 392 - 24 + 600 + 630 + 340 + 30 lt=<<<- - 10.0;10.0;470.0;10.0 + 10.0;10.0;320.0;10.0 Relation - 480 - 176 - 24 - 80 + 250 + 180 + 30 + 100 lt=. 10.0;10.0;10.0;80.0 Relation - 608 - 176 - 24 - 184 + 760 + 180 + 30 + 230 lt=. 10.0;10.0;10.0;210.0 Relation - 216 + 420 160 - 24 - 96 + 30 + 120 lt=. 10.0;10.0;10.0;100.0 Relation - 736 - 176 - 24 - 296 + 920 + 180 + 30 + 370 lt=. 10.0;10.0;10.0;350.0 UMLGeneric - 824 - 144 - 112 - 40 + 1030 + 140 + 140 + 50 :Failure Mechanism Wrappers @@ -281,23 +281,23 @@ UMLGeneric - 952 - 144 - 112 - 40 + 0 + 140 + 160 + 50 :Schematization -Factor Calculator +Factor Calculator (NEW) bg=orange UMLGeneric - 872 - 568 - 16 - 104 + 1090 + 670 + 20 + 130 bg=yellow @@ -306,10 +306,10 @@ UMLGeneric - 992 - 680 - 16 - 104 + 70 + 820 + 20 + 130 bg=yellow @@ -318,67 +318,67 @@ Relation - 872 - 176 - 24 - 408 + 1090 + 180 + 30 + 510 lt=. 10.0;10.0;10.0;490.0 Relation - 992 - 176 - 24 - 520 + 70 + 180 + 30 + 660 lt=. - 10.0;10.0;10.0;630.0 + 10.0;10.0;10.0;640.0 Relation - 360 - 584 - 528 - 24 + 600 + 690 + 510 + 30 lt=<<<- - 640.0;10.0;10.0;10.0 + 490.0;10.0;10.0;10.0 Relation - 360 - 696 - 648 - 24 + 80 + 840 + 360 + 30 lt=<<<- - 790.0;10.0;10.0;10.0 + 10.0;10.0;340.0;10.0 Relation - 360 - 632 - 528 - 24 + 600 + 750 + 510 + 30 lt=<<<- - 10.0;10.0;640.0;10.0 + 10.0;10.0;490.0;10.0 Relation - 360 - 752 - 648 - 24 + 80 + 910 + 360 + 30 lt=<<<- - 10.0;10.0;790.0;10.0 + 340.0;10.0;10.0;10.0 Index: dam kernel/trunk/doc/Dam kernel - Technical Design/pictures/DAMKernelSequenceAssessmentRegional.pdf =================================================================== diff -u -r146 -r152 Binary files differ Index: dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex =================================================================== diff -u -r148 -r152 --- dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex (.../DAM kernel - Technical Design.tex) (revision 148) +++ dam kernel/trunk/doc/Dam kernel - Technical Design/DAM kernel - Technical Design.tex (.../DAM kernel - Technical Design.tex) (revision 152) @@ -1,7 +1,6 @@ \documentclass[signature]{deltares_report} \usepackage[titletoc]{appendix} - - +\usepackage{lipsum} %----------------------------------------------- \begin{document} @@ -48,7 +47,11 @@ \section{Purpose and scope of this document} \label{sec:PurposeAndScope} -This document contains the technical design for the standalone program \ProgramName, a software package for the automated calculation of the strength of dikes. DAM was developed by Deltares with and for STOWA for all water authorities. +This document contains the technical design for the \ProgramName, a calculation kernekl for the automated calculation of the strength of dikes. +DAM was developed by Deltares with and for STOWA for all water authorities. +This document describes the full intended architecture of the kernel. +What will actually will be implemented depends on the requirements of the clients using this kernel. +If some functionality is not (yet) needed, then that part does not need to be implemented. \section{Other system documents} \label{sec:SystemDocuments} @@ -289,35 +292,49 @@ \subsection{Assessment Regional Dikes} This module performs an assessment for regional dikes. \paragraph*{Regional assessment calculation} -This is the main submodule of the regional assessement. This submodule contains the main loop of the calculation. +This is the main submodule of the regional assessement. +This submodule contains the main loop of the calculation. \paragraph*{Regional scenario selector} -This submodule generates all the scenarios that have to be evaluated for a specifi location. The scenarios are selected based on the local conditions. +This submodule generates all the scenarios that have to be evaluated for a specific location. +The scenarios are selected based on the local conditions. \paragraph*{Regional schematization factor calculator} This submodule calculates the schematization factor in a location based on all results of all scenarios in a location. \subsection{Assessment Primary Dikes} This module performs an assessment for primary dikes. \paragraph*{Primary assessment calculation} -This is the main submodule of the primary assessement. This submodule contains the main loop of the calculation. +This is the main submodule of the primary assessement. +This submodule contains the main loop of the calculation. \subsection{Design Primary Dikes} This module performs an design calculation for primary dikes. \paragraph*{Primary design calculation} -This is the main submodule of the primary design calculation. This submodule contains the main loop of the calculation. +This is the main submodule of the primary design calculation. +This submodule contains the main loop of the calculation. \subsection{NWO Calculation} This module performs an NWO (Niet Waterkerende Objecten) calculation for primary dikes. \paragraph*{Primary NWO calculation} -This is the main submodule of the NWO calculation. This submodule contains the main loop of the calculation. +This is the main submodule of the NWO calculation. +This submodule contains the main loop of the calculation. \section{\ProgramNamePlusSpace supporting modules} \label{sec:DamKernelSupportingModules} \subsection{Failure mechanism wrappers} -These are calculation wrapper for each failure mechanism that is supported by the \ProgramName. Each wrapper should implement the IFailureMechanism interface. +These are calculation wrappers for each kernel to be implemented for each failure mechanism that is supported by the \ProgramName. +Each wrapper should implement the IFailureMechanism interface.\newline +Example: +Lets say that for the failure mechanism piping we have 3 kernels: Bligh, Sellmeijer and VNK. +Then for each of these kernels a calculation wrapper has to be written.\newline +Another example: +D-Geo Stability kernel has the ability to calculate the failure mechanism macrostability inwards en the failure mechanism macrostability outwards. +In this case 2 wrappers (one for each failure mechanism) are needed for this single kernel. \paragraph*{Macrostability inwards} -Calculation wrapper for Macrostability inward. Note that for each specific implementation of a failure mechanism, a separate wrapper has to be build (e.g.\ Slope/W and D-Geo Stability) +Calculation wrapper for Macrostability inward. +Note that (as already mentioned above) for each specific kernel implementation for a failure mechanism, a separate wrapper has to be build (e.g.\ Slope/W and D-Geo Stability) \paragraph*{Macrostability outwards} Calculation wrapper for Macrostability outward. \paragraph*{Piping} Calculation wrapper for Piping. \subsection{Surfaceline adapters} -A collection of surfaceline adapters to support the design calculation. Each adapter should adhere to the ISurfaceLineAdapter interface. +A collection of surfaceline adapters to support the design calculation. +Each adapter should adhere to the ISurfaceLineAdapter interface. \paragraph*{Surfaceline Adapter Height} Adapts the surfaceline by adding extra height to the dike crest. \paragraph*{Surfaceline Adapter Slope} @@ -332,18 +349,32 @@ \paragraph*{Design Calculation Runner} This submodule performs a design calculation for a specific failure mechanism by calling the IFailureMechanism interface and several surfaceline adapters through their ISurfacelineAdaptert interface. \paragraph*{Operational Calculation Runner} -This submodule can perform a calculation based on sensor readings (as time-series). The load on the systems (the waternet) will be based on those sensor readings. This can be used in operational systems like DamLive. +This submodule can perform a calculation based on sensor readings (as time-series). +The load on the systems (the waternet) will be based on those sensor readings. This can be used in operational systems like DamLive. \paragraph*{Probabilistic Calculation Runner} -This submodule performs a probabilistic calculation for a specific location and failure mechanism. The outcome is a failure probability for that location and failure mechanism. +This submodule performs a probabilistic calculation for a specific location and failure mechanism. +The outcome is a failure probability for that location and failure mechanism. \subsection{General submodules} \paragraph*{Geometry creator} -This submodule combines a surfaceline with a subsoil scenario. The output is a gemetry that can be used by the failure mechanisms to perform a calculation. +This submodule combines a surfaceline with a subsoil scenario. +The output is a gemetry that can be used by the failure mechanisms to perform a calculation. \paragraph*{Waternet creator} -This submodule determines the waternet that will be used by the failure mechanisms. At first only the DAM implementation will be used as a waternet creator. Later on new implementations can be made. E.g.\ specific for each failure mechanism, or an implementation based on a numerical model like DgFlow. +This submodule determines the waternet that will be used by the failure mechanisms. +At first only the DAM implementation will be used as a waternet creator. +Later on new implementations can be made. +E.g.\ specific for each failure mechanism, or an implementation based on a numerical model like DgFlow. \subsection{Scripting engine} -To enable advanced users to experiment with how the \ProgramNamePlusSpace works a Python scripting engine is implemented as a submodule. The scripting engine has acces to the data model and the submodules through well defined interfaces. +To enable advanced users to experiment with how the \ProgramNamePlusSpace works a Python scripting engine is implemented as a submodule. +The scripting engine has acces to the data model and the submodules through well defined interfaces. %------------------------------------------------------------------------------ +\chapter{Programing Interface} \label{chapterProgramingInterface} +This is the definition of the programming interface. +The only way to communicate to the \ProgramNamePlusSpace is through this interface. + +\textbf{TO DO: Add interface description} + +%------------------------------------------------------------------------------ \chapter{Literature} \label{chapterLiterature} \bibliography{../DAM_references/dam_references}