pydra-core 0.0.1__py2.py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (389) hide show
  1. pydra_core/__init__.py +32 -0
  2. pydra_core/common/__init__.py +0 -0
  3. pydra_core/common/common.py +98 -0
  4. pydra_core/common/enum.py +63 -0
  5. pydra_core/common/interpolate.py +345 -0
  6. pydra_core/common/probability.py +293 -0
  7. pydra_core/core/__init__.py +0 -0
  8. pydra_core/core/calculation.py +51 -0
  9. pydra_core/core/datamodels/__init__.py +0 -0
  10. pydra_core/core/datamodels/frequency_line.py +60 -0
  11. pydra_core/core/exceedance_frequency_line.py +224 -0
  12. pydra_core/core/exceedance_frequency_line_experimental.py +163 -0
  13. pydra_core/core/hbn.py +226 -0
  14. pydra_core/data/settings/calculation_settings.sqlite +0 -0
  15. pydra_core/data/settings/lower_river_settings.cpg +1 -0
  16. pydra_core/data/settings/lower_river_settings.dbf +0 -0
  17. pydra_core/data/settings/lower_river_settings.prj +1 -0
  18. pydra_core/data/settings/lower_river_settings.shp +0 -0
  19. pydra_core/data/settings/lower_river_settings.shx +0 -0
  20. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_2017.txt +37 -0
  21. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_2017_metOnzHeid.txt +46 -0
  22. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_G_2015_metOnzHeid_v02.txt +50 -0
  23. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_G_2015_v02.txt +42 -0
  24. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_G_2050_metOnzHeid_v02.txt +56 -0
  25. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_G_2050_v02.txt +48 -0
  26. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_G_2100_metOnzHeid_v02.txt +56 -0
  27. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_G_2100_v02.txt +48 -0
  28. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_W_2015_metOnzHeid_v02.txt +50 -0
  29. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_W_2015_v02.txt +42 -0
  30. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_W_2050_metOnzHeid_v02.txt +56 -0
  31. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_W_2050_v02.txt +48 -0
  32. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_W_2100_metOnzHeid_v02.txt +51 -0
  33. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_OI2014_W_2100_v02.txt +44 -0
  34. pydra_core/data/statistics/Afvoer/Borgharen/Ovkans_Borgharen_piekafvoer_Ref.txt +28 -0
  35. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_2017.txt +31 -0
  36. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_2017_metOnzHeid.txt +33 -0
  37. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_G_2015.txt +44 -0
  38. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_G_2015_metOnzHeid.txt +34 -0
  39. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_G_2050.txt +44 -0
  40. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_G_2050_metOnzHeid.txt +34 -0
  41. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_G_2100.txt +44 -0
  42. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_G_2100_metOnzHeid.txt +39 -0
  43. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_W_2015.txt +44 -0
  44. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_W_2015_metOnzHeid.txt +34 -0
  45. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_W_2050.txt +44 -0
  46. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_W_2050_metOnzHeid.txt +34 -0
  47. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_W_2100.txt +44 -0
  48. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_OI2014_W_2100_metOnzHeid.txt +34 -0
  49. pydra_core/data/statistics/Afvoer/Dalfsen/Ovkans_Dalfsen_piekafvoer_Ref.txt +14 -0
  50. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_2017.txt +47 -0
  51. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_2017_metOnzHeid.txt +47 -0
  52. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_G_2015.txt +49 -0
  53. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_G_2015_metOnzHeid.txt +59 -0
  54. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_G_2050.txt +49 -0
  55. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_G_2050_metOnzHeid.txt +59 -0
  56. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_G_2100.txt +49 -0
  57. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_G_2100_metOnzHeid.txt +59 -0
  58. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_W_2015.txt +49 -0
  59. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_W_2015_metOnzHeid.txt +59 -0
  60. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_W_2050.txt +49 -0
  61. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_W_2050_metOnzHeid.txt +59 -0
  62. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_W_2100.txt +49 -0
  63. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_OI2014_W_2100_metOnzHeid.txt +59 -0
  64. pydra_core/data/statistics/Afvoer/Lith/Ovkans_Lith_piekafvoer_Ref.txt +21 -0
  65. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_2017.txt +33 -0
  66. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_2017_metOnzHeid.txt +60 -0
  67. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2015.txt +49 -0
  68. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2015_BenedenRijn.txt +50 -0
  69. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2015_metOnzHeid.txt +63 -0
  70. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2015_metOnzHeid_BenedenRijn.txt +65 -0
  71. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2050.txt +49 -0
  72. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2050_BenedenRijn.txt +50 -0
  73. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2050_metOnzHeid.txt +63 -0
  74. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2050_metOnzHeid_BenedenRijn.txt +65 -0
  75. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2100.txt +49 -0
  76. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2100_BenedenRijn.txt +50 -0
  77. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2100_metOnzHeid.txt +63 -0
  78. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_G_2100_metOnzHeid_BenedenRijn.txt +65 -0
  79. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2015.txt +50 -0
  80. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2015_BenedenRijn.txt +51 -0
  81. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2015_metOnzHeid.txt +63 -0
  82. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2015_metOnzHeid_BenedenRijn.txt +65 -0
  83. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2050.txt +50 -0
  84. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2050_BenedenRijn.txt +51 -0
  85. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2050_metOnzHeid.txt +63 -0
  86. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2050_metOnzHeid_BenedenRijn.txt +65 -0
  87. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2100.txt +50 -0
  88. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2100_BenedenRijn.txt +51 -0
  89. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2100_metOnzHeid.txt +63 -0
  90. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_OI2014_W_2100_metOnzHeid_BenedenRijn.txt +65 -0
  91. pydra_core/data/statistics/Afvoer/Lobith/Ovkans_Lobith_piekafvoer_Ref.txt +23 -0
  92. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_2017.txt +55 -0
  93. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_2017_metOnzHeid.txt +55 -0
  94. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_G_2015.txt +46 -0
  95. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_G_2015_metOnzHeid.txt +65 -0
  96. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_G_2050.txt +46 -0
  97. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_G_2050_metOnzHeid.txt +65 -0
  98. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_G_2100.txt +46 -0
  99. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_G_2100_metOnzHeid.txt +65 -0
  100. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_W_2015.txt +47 -0
  101. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_W_2015_metOnzHeid.txt +65 -0
  102. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_W_2050.txt +47 -0
  103. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_W_2050_metOnzHeid.txt +65 -0
  104. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_W_2100.txt +47 -0
  105. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_OI2014_W_2100_metOnzHeid.txt +65 -0
  106. pydra_core/data/statistics/Afvoer/Olst/Ovkans_Olst_piekafvoer_Ref.txt +15 -0
  107. pydra_core/data/statistics/Golfvorm/Borgharen/Golfvormen_Borgharen.txt +76 -0
  108. pydra_core/data/statistics/Golfvorm/Dalfsen/Golfvormen_Dalfsen.txt +83 -0
  109. pydra_core/data/statistics/Golfvorm/Grevelingenmeer/Golfvormen_Grevelingenmeer.txt +34 -0
  110. pydra_core/data/statistics/Golfvorm/IJsselmeer/Golfvormen_IJsselmeer.txt +83 -0
  111. pydra_core/data/statistics/Golfvorm/Lith/Golfvormen_Lith.txt +76 -0
  112. pydra_core/data/statistics/Golfvorm/Lobith/Golfvormen_Lobith.txt +76 -0
  113. pydra_core/data/statistics/Golfvorm/Markermeer/Golfvormen_Markermeer.txt +140 -0
  114. pydra_core/data/statistics/Golfvorm/Olst/Golfvormen_Olst.txt +83 -0
  115. pydra_core/data/statistics/Golfvorm/Veerse Meer/Golfvormen_Veersemeer.txt +54 -0
  116. pydra_core/data/statistics/Golfvorm/Veluwerandmeer/Golfvormen_Veluwerandmeer.txt +140 -0
  117. pydra_core/data/statistics/Golfvorm/Volkerak-Zoommeer/Golfvormen_Volkerakzoommeer.txt +74 -0
  118. pydra_core/data/statistics/Meerpeil/Grevelingenmeer/Ovkans_Grevelingenmeer_piekmeerpeil_2017.txt +13 -0
  119. pydra_core/data/statistics/Meerpeil/Grevelingenmeer/Ovkans_Grevelingenmeer_piekmeerpeil_2017_metOnzHeid.txt +25 -0
  120. pydra_core/data/statistics/Meerpeil/Grevelingenmeer/Ovkans_Grevelingenmeer_piekmeerpeil_v01.txt +13 -0
  121. pydra_core/data/statistics/Meerpeil/IJsselmeer/Ovkans_IJsselmeer_piekmeerpeil_2017.txt +26 -0
  122. pydra_core/data/statistics/Meerpeil/IJsselmeer/Ovkans_IJsselmeer_piekmeerpeil_2017_metOnzHeid.txt +40 -0
  123. pydra_core/data/statistics/Meerpeil/IJsselmeer/Ovkans_IJsselmeer_piekmeerpeil_v01.txt +15 -0
  124. pydra_core/data/statistics/Meerpeil/Markermeer/Ovkans_Markermeer_piekmeerpeil_2017.txt +19 -0
  125. pydra_core/data/statistics/Meerpeil/Markermeer/Ovkans_Markermeer_piekmeerpeil_2017_metOnzHeid.txt +38 -0
  126. pydra_core/data/statistics/Meerpeil/Markermeer/Ovkans_Markermeer_piekmeerpeil_v01.txt +11 -0
  127. pydra_core/data/statistics/Meerpeil/Veerse Meer/Ovkans_Veersemeer_piekmeerpeil_excl_peilverhoging.txt +14 -0
  128. pydra_core/data/statistics/Meerpeil/Veerse Meer/Ovkans_Veersemeer_piekmeerpeil_v01.txt +16 -0
  129. pydra_core/data/statistics/Meerpeil/Veluwerandmeer/Ovkans_Veluwerandmeer_piekmeerpeil_2017.txt +14 -0
  130. pydra_core/data/statistics/Meerpeil/Veluwerandmeer/Ovkans_Veluwerandmeer_piekmeerpeil_2017_metOnzHeid.txt +37 -0
  131. pydra_core/data/statistics/Meerpeil/Veluwerandmeer/Ovkans_Veluwerandmeer_piekmeerpeil_v01.txt +14 -0
  132. pydra_core/data/statistics/Meerpeil/Volkerak-Zoommeer/Ovkans_VZM_piekmeerpeil_BER-VZM.txt +18 -0
  133. pydra_core/data/statistics/Meerpeil/Volkerak-Zoommeer/Ovkans_VZM_piekmeerpeil_BER-VZM_metOnzHeid.txt +43 -0
  134. pydra_core/data/statistics/Restant/Oosterschelde/BesliskansenOSKering.txt +525 -0
  135. pydra_core/data/statistics/Restant/Oosterschelde/KansenFaseverschil_2023.txt +8 -0
  136. pydra_core/data/statistics/Restant/Oosterschelde/KansenFaseverschil_OS.txt +13 -0
  137. pydra_core/data/statistics/Restant/Oosterschelde/KansenStormduur_OS.txt +15 -0
  138. pydra_core/data/statistics/Restant/Oosterschelde/KansenStormduur_OS_40_60_80uur_2023.txt +17 -0
  139. pydra_core/data/statistics/Restant/Oosterschelde/ScenariokansenOSKering_2008.txt +24 -0
  140. pydra_core/data/statistics/Restant/Oosterschelde/ScenariokansenOSKering_2013.txt +19 -0
  141. pydra_core/data/statistics/Restant/Oosterschelde/ScenariokansenOSKering_2017.txt +19 -0
  142. pydra_core/data/statistics/Restant/Oosterschelde/ScenariokansenOSKering_2023.txt +14 -0
  143. pydra_core/data/statistics/Restant/Up2U/Up2U10.dat +59 -0
  144. pydra_core/data/statistics/Restant/Up2U/Up2Up.dat +59 -0
  145. pydra_core/data/statistics/Restant/Up2U/Up2Ustar.dat +59 -0
  146. pydra_core/data/statistics/Restant/hulpdijken.txt +60 -0
  147. pydra_core/data/statistics/Restant/hulpgolfhoogtes.txt +24 -0
  148. pydra_core/data/statistics/Restant/hulpgolfperiodes.txt +39 -0
  149. pydra_core/data/statistics/Restant/kansstormduur.txt +8 -0
  150. pydra_core/data/statistics/Restant/pwind_west.txt +34 -0
  151. pydra_core/data/statistics/Restant/pwind_west_met_Volkerfactor.txt +34 -0
  152. pydra_core/data/statistics/Restant/pwind_west_zonder_Volkerfactor.txt +34 -0
  153. pydra_core/data/statistics/Sigmafunctie/Hollandse Kust Midden/VS_sigmafunctie_Kust_Midden.txt +19 -0
  154. pydra_core/data/statistics/Sigmafunctie/Hollandse Kust Midden/VS_sigmafunctie_Kust_Midden_2017.txt +23 -0
  155. pydra_core/data/statistics/Sigmafunctie/Hollandse Kust Noord/VS_sigmafunctie_Kust_Noord.txt +19 -0
  156. pydra_core/data/statistics/Sigmafunctie/Hollandse Kust Noord/VS_sigmafunctie_Kust_Noord_2017.txt +23 -0
  157. pydra_core/data/statistics/Sigmafunctie/Hollandse Kust Zuid/VS_sigmafunctie_Kust_Zuid.txt +19 -0
  158. pydra_core/data/statistics/Sigmafunctie/Hollandse Kust Zuid/VS_sigmafunctie_Kust_Zuid_2017.txt +23 -0
  159. pydra_core/data/statistics/Sigmafunctie/Oosterschelde/VS_sigmafunctie_OS.txt +22 -0
  160. pydra_core/data/statistics/Sigmafunctie/Oosterschelde/VS_sigmafunctie_OS_16sectoren_2023.txt +24 -0
  161. pydra_core/data/statistics/Sigmafunctie/Oosterschelde/VS_sigmafunctie_OS_2017.txt +22 -0
  162. pydra_core/data/statistics/Sigmafunctie/Waddenzee Oost/VS_sigmafunctie_WZ_oost.txt +19 -0
  163. pydra_core/data/statistics/Sigmafunctie/Waddenzee Oost/VS_sigmafunctie_WZ_oost_2017.txt +23 -0
  164. pydra_core/data/statistics/Sigmafunctie/Waddenzee West/VS_sigmafunctie_WZ_west.txt +19 -0
  165. pydra_core/data/statistics/Sigmafunctie/Waddenzee West/VS_sigmafunctie_WZ_west_2017.txt +23 -0
  166. pydra_core/data/statistics/Sigmafunctie/Westerschelde/VS_sigmafunctie_WS.txt +19 -0
  167. pydra_core/data/statistics/Sigmafunctie/Westerschelde/VS_sigmafunctie_WS_2017.txt +23 -0
  168. pydra_core/data/statistics/Sluitpeilen/Sluitfunctie Europoortkering Maas 2017.csv +631 -0
  169. pydra_core/data/statistics/Sluitpeilen/Sluitfunctie Europoortkering Rijn 2017.csv +631 -0
  170. pydra_core/data/statistics/Sluitpeilen/Sluitfunctie Hollandsche IJsselkering.csv +757 -0
  171. pydra_core/data/statistics/Sluitpeilen/Sluitfunctie Oosterscheldekering 2017.csv +55081 -0
  172. pydra_core/data/statistics/Topduur/Borgharen/Topduur_Borgharen_2017.txt +19 -0
  173. pydra_core/data/statistics/Topduur/Borgharen/Topduur_Borgharen_v00.txt +14 -0
  174. pydra_core/data/statistics/Topduur/Dalfsen/Topduur_Dalfsen_2017.txt +20 -0
  175. pydra_core/data/statistics/Topduur/Dalfsen/Topduur_Dalfsen_v01.txt +16 -0
  176. pydra_core/data/statistics/Topduur/Grevelingenmeer/Topduur_Grevelingenmeer_2017.txt +14 -0
  177. pydra_core/data/statistics/Topduur/Grevelingenmeer/Topduur_Grevelingenmeer_v01.txt +14 -0
  178. pydra_core/data/statistics/Topduur/IJsselmeer/Topduur_IJsselmeer_2017.txt +20 -0
  179. pydra_core/data/statistics/Topduur/IJsselmeer/Topduur_IJsselmeer_v01.txt +15 -0
  180. pydra_core/data/statistics/Topduur/Lith/Topduur_Lith_2017.txt +19 -0
  181. pydra_core/data/statistics/Topduur/Lith/Topduur_Lith_v01.txt +17 -0
  182. pydra_core/data/statistics/Topduur/Lobith/Topduur_Lobith_2017.txt +19 -0
  183. pydra_core/data/statistics/Topduur/Lobith/Topduur_Lobith_v01.txt +17 -0
  184. pydra_core/data/statistics/Topduur/Markermeer/Topduur_Markermeer_2017.txt +20 -0
  185. pydra_core/data/statistics/Topduur/Markermeer/Topduur_Markermeer_v01.txt +12 -0
  186. pydra_core/data/statistics/Topduur/Olst/Topduur_Olst_2017.txt +20 -0
  187. pydra_core/data/statistics/Topduur/Olst/Topduur_Olst_v01.txt +16 -0
  188. pydra_core/data/statistics/Topduur/Veerse Meer/Topduur_Veersemeer_excl_peilverhoging.txt +13 -0
  189. pydra_core/data/statistics/Topduur/Veerse Meer/Topduur_Veersemeer_v01.txt +16 -0
  190. pydra_core/data/statistics/Topduur/Veluwerandmeer/Topduur_Veluwerandmeer_2017.txt +12 -0
  191. pydra_core/data/statistics/Topduur/Veluwerandmeer/Topduur_Veluwerandmeer_v01.txt +12 -0
  192. pydra_core/data/statistics/Topduur/Volkerak-Zoommeer/Topduur_Volkerakzoommeer_BER-VZM.txt +18 -0
  193. pydra_core/data/statistics/Windrichting/Deelen/Richtingskansen_Deelen_2017.txt +28 -0
  194. pydra_core/data/statistics/Windrichting/Hollandse Kust/KansenWindrichting_Kust.txt +17 -0
  195. pydra_core/data/statistics/Windrichting/Hollandse Kust/KansenWindrichting_Kust_2017.txt +24 -0
  196. pydra_core/data/statistics/Windrichting/Oosterschelde/KansenWindrichting_16sectoren_OS_2023.txt +31 -0
  197. pydra_core/data/statistics/Windrichting/Oosterschelde/KansenWindrichting_OS.txt +20 -0
  198. pydra_core/data/statistics/Windrichting/Oosterschelde/KansenWindrichting_OS_2017.txt +24 -0
  199. pydra_core/data/statistics/Windrichting/Schiphol/Richtingskansen_Schiphol_12sectoren.txt +20 -0
  200. pydra_core/data/statistics/Windrichting/Schiphol/Richtingskansen_Schiphol_12sectoren_2017.txt +20 -0
  201. pydra_core/data/statistics/Windrichting/Schiphol/Richtingskansen_Schiphol_2017.txt +28 -0
  202. pydra_core/data/statistics/Windrichting/Schiphol/kanswindrichting_v01.txt +28 -0
  203. pydra_core/data/statistics/Windrichting/Waddenzee/KansenWindrichting_WZ.txt +17 -0
  204. pydra_core/data/statistics/Windrichting/Waddenzee/KansenWindrichting_WZ_2017.txt +24 -0
  205. pydra_core/data/statistics/Windrichting/Westerschelde/KansenWindrichting_WS.txt +17 -0
  206. pydra_core/data/statistics/Windrichting/Westerschelde/KansenWindrichting_WS_2017.txt +24 -0
  207. pydra_core/data/statistics/Windsnelheid/De Kooy/OvkansWindsnelheid_Texel.txt +70 -0
  208. pydra_core/data/statistics/Windsnelheid/De Kooy/Ovkanswind_de Kooy_2017.txt +92 -0
  209. pydra_core/data/statistics/Windsnelheid/De Kooy/Ovkanswind_de Kooy_2017_metOnzHeid.txt +92 -0
  210. pydra_core/data/statistics/Windsnelheid/Deelen/Ovkanswind_Deelen_2017.txt +90 -0
  211. pydra_core/data/statistics/Windsnelheid/Deelen/Ovkanswind_Deelen_2017_metOnzHeid.txt +90 -0
  212. pydra_core/data/statistics/Windsnelheid/Hoek van Holland/OvkansWindsnelheid_Hoek van Holland.txt +70 -0
  213. pydra_core/data/statistics/Windsnelheid/Hoek van Holland/Ovkanswind_Hoek van Holland_2017.txt +92 -0
  214. pydra_core/data/statistics/Windsnelheid/Hoek van Holland/Ovkanswind_Hoek van Holland_2017_metOnzHeid.txt +92 -0
  215. pydra_core/data/statistics/Windsnelheid/IJmuiden/OvkansWindsnelheid_IJmuiden.txt +70 -0
  216. pydra_core/data/statistics/Windsnelheid/IJmuiden/Ovkanswind_IJmuiden_2017.txt +92 -0
  217. pydra_core/data/statistics/Windsnelheid/IJmuiden/Ovkanswind_IJmuiden_2017_metOnzHeid.txt +92 -0
  218. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_12sectoren.txt +51 -0
  219. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_12sectoren_2017.txt +90 -0
  220. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_12sectoren_2017_metOnzHeid.txt +90 -0
  221. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_12sectoren_2017_metWindDrag.txt +97 -0
  222. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_12sectoren_2017_metWindDrag_metOnzHeid.txt +97 -0
  223. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_16sectoren_2017_metWindDrag.txt +97 -0
  224. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_16sectoren_2017_metWindDrag_metOnzHeid.txt +97 -0
  225. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_2017.txt +90 -0
  226. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_2017_metOnzHeid.txt +90 -0
  227. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_met_Volkerfactor_2017.txt +90 -0
  228. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_Schiphol_met_Volkerfactor_2017_metOnzHeid.txt +90 -0
  229. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_schiphol.txt +58 -0
  230. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_schiphol_10%.txt +64 -0
  231. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_schiphol_5%.txt +62 -0
  232. pydra_core/data/statistics/Windsnelheid/Schiphol/Ovkanswind_schiphol_B_met volker.txt +60 -0
  233. pydra_core/data/statistics/Windsnelheid/Vlissingen/OvkansWindsnelheid_OS.txt +67 -0
  234. pydra_core/data/statistics/Windsnelheid/Vlissingen/OvkansWindsnelheid_Vlissingen.txt +70 -0
  235. pydra_core/data/statistics/Windsnelheid/Vlissingen/Ovkanswind_Vlissingen_16sectoren_2023.txt +92 -0
  236. pydra_core/data/statistics/Windsnelheid/Vlissingen/Ovkanswind_Vlissingen_16sectoren_2023_metOnzHeid.txt +91 -0
  237. pydra_core/data/statistics/Windsnelheid/Vlissingen/Ovkanswind_Vlissingen_2017.txt +92 -0
  238. pydra_core/data/statistics/Windsnelheid/Vlissingen/Ovkanswind_Vlissingen_2017_metOnzHeid.txt +92 -0
  239. pydra_core/data/statistics/Windsnelheid/Vlissingen/Ovkanswind_Vlissingen_2017_metWindDrag.txt +97 -0
  240. pydra_core/data/statistics/Windsnelheid/Vlissingen/Ovkanswind_Vlissingen_2017_metWindDrag_metOnzHeid.txt +97 -0
  241. pydra_core/data/statistics/Windsnelheid/West-Terschelling/OvkansWindsnelheid_West-Tersch.txt +70 -0
  242. pydra_core/data/statistics/Windsnelheid/West-Terschelling/Ovkanswind_West Terschelling_2017.txt +92 -0
  243. pydra_core/data/statistics/Windsnelheid/West-Terschelling/Ovkanswind_West Terschelling_2017_metOnzHeid.txt +92 -0
  244. pydra_core/data/statistics/Zeewaterstand/Delfzijl/CondPovDelfzijl_12u_zichtjaar1985_2017.txt +82 -0
  245. pydra_core/data/statistics/Zeewaterstand/Delfzijl/CondPovDelfzijl_12u_zichtjaar1985_2017_metOnzHeid.txt +82 -0
  246. pydra_core/data/statistics/Zeewaterstand/Delfzijl/CondPovDelfzijl_12u_zichtjaar2017.txt +82 -0
  247. pydra_core/data/statistics/Zeewaterstand/Delfzijl/CondPovDelfzijl_12u_zichtjaar2017_metOnzHeid.txt +82 -0
  248. pydra_core/data/statistics/Zeewaterstand/Delfzijl/OvkansZee_Delfzijl.txt +71 -0
  249. pydra_core/data/statistics/Zeewaterstand/Den Helder/CondPovDenHelder_12u_zichtjaar1985_2017.txt +90 -0
  250. pydra_core/data/statistics/Zeewaterstand/Den Helder/CondPovDenHelder_12u_zichtjaar1985_2017_metOnzHeid.txt +90 -0
  251. pydra_core/data/statistics/Zeewaterstand/Den Helder/CondPovDenHelder_12u_zichtjaar2017.txt +89 -0
  252. pydra_core/data/statistics/Zeewaterstand/Den Helder/CondPovDenHelder_12u_zichtjaar2017_metOnzHeid.txt +89 -0
  253. pydra_core/data/statistics/Zeewaterstand/Den Helder/OvkansZee_Den Helder.txt +71 -0
  254. pydra_core/data/statistics/Zeewaterstand/Den Oever/CondPovDenOeverBuiten_12u_zichtjaar1985_2017.txt +89 -0
  255. pydra_core/data/statistics/Zeewaterstand/Den Oever/CondPovDenOeverBuiten_12u_zichtjaar1985_2017_metOnzHeid.txt +89 -0
  256. pydra_core/data/statistics/Zeewaterstand/Den Oever/CondPovDenOeverBuiten_12u_zichtjaar2017.txt +88 -0
  257. pydra_core/data/statistics/Zeewaterstand/Den Oever/CondPovDenOeverBuiten_12u_zichtjaar2017_metOnzHeid.txt +88 -0
  258. pydra_core/data/statistics/Zeewaterstand/Den Oever/OvkansZee_Den Oever.txt +71 -0
  259. pydra_core/data/statistics/Zeewaterstand/Hansweert/CondPovHansweert_12u_zichtjaar1985_2017.txt +72 -0
  260. pydra_core/data/statistics/Zeewaterstand/Hansweert/CondPovHansweert_12u_zichtjaar1985_2017_metOnzHeid.txt +72 -0
  261. pydra_core/data/statistics/Zeewaterstand/Hansweert/CondPovHansweert_12u_zichtjaar2017.txt +71 -0
  262. pydra_core/data/statistics/Zeewaterstand/Hansweert/CondPovHansweert_12u_zichtjaar2017_metOnzHeid.txt +71 -0
  263. pydra_core/data/statistics/Zeewaterstand/Hansweert/OvkansZee_Hansweert.txt +71 -0
  264. pydra_core/data/statistics/Zeewaterstand/Harlingen/CondPovHarlingen_12u_zichtjaar1985_2017.txt +86 -0
  265. pydra_core/data/statistics/Zeewaterstand/Harlingen/CondPovHarlingen_12u_zichtjaar1985_2017_metOnzHeid.txt +86 -0
  266. pydra_core/data/statistics/Zeewaterstand/Harlingen/CondPovHarlingen_12u_zichtjaar2017.txt +85 -0
  267. pydra_core/data/statistics/Zeewaterstand/Harlingen/CondPovHarlingen_12u_zichtjaar2017_metOnzHeid.txt +85 -0
  268. pydra_core/data/statistics/Zeewaterstand/Harlingen/OvkansZee_Harlingen.txt +71 -0
  269. pydra_core/data/statistics/Zeewaterstand/Hoek van Holland/CondPovHoekvanHolland_12u_zichtjaar1985_2017.txt +85 -0
  270. pydra_core/data/statistics/Zeewaterstand/Hoek van Holland/CondPovHoekvanHolland_12u_zichtjaar1985_2017_metOnzHeid.txt +85 -0
  271. pydra_core/data/statistics/Zeewaterstand/Hoek van Holland/CondPovHoekvanHolland_12u_zichtjaar2017.txt +84 -0
  272. pydra_core/data/statistics/Zeewaterstand/Hoek van Holland/CondPovHoekvanHolland_12u_zichtjaar2017_metOnzHeid.txt +84 -0
  273. pydra_core/data/statistics/Zeewaterstand/Hoek van Holland/OvkansZee_Hoek van Holland.txt +71 -0
  274. pydra_core/data/statistics/Zeewaterstand/Huibertgat/CondPovHuibertgat_12u_zichtjaar1985_2017.txt +87 -0
  275. pydra_core/data/statistics/Zeewaterstand/Huibertgat/CondPovHuibertgat_12u_zichtjaar1985_2017_metOnzHeid.txt +87 -0
  276. pydra_core/data/statistics/Zeewaterstand/Huibertgat/CondPovHuibertgat_12u_zichtjaar2017.txt +86 -0
  277. pydra_core/data/statistics/Zeewaterstand/Huibertgat/CondPovHuibertgat_12u_zichtjaar2017_metOnzHeid.txt +86 -0
  278. pydra_core/data/statistics/Zeewaterstand/Huibertgat/OvkansZee_Huibertgat.txt +71 -0
  279. pydra_core/data/statistics/Zeewaterstand/IJmuiden/CondPovIJmuiden_12u_zichtjaar1985_2017.txt +86 -0
  280. pydra_core/data/statistics/Zeewaterstand/IJmuiden/CondPovIJmuiden_12u_zichtjaar1985_2017_metOnzHeid.txt +86 -0
  281. pydra_core/data/statistics/Zeewaterstand/IJmuiden/CondPovIJmuiden_12u_zichtjaar2017.txt +86 -0
  282. pydra_core/data/statistics/Zeewaterstand/IJmuiden/CondPovIJmuiden_12u_zichtjaar2017_metOnzHeid.txt +86 -0
  283. pydra_core/data/statistics/Zeewaterstand/IJmuiden/OvkansZee_IJmuiden.txt +71 -0
  284. pydra_core/data/statistics/Zeewaterstand/IJmuiden virtueel/CondPovIJmuiden-Additional_12u_zichtjaar1985_2017.txt +86 -0
  285. pydra_core/data/statistics/Zeewaterstand/IJmuiden virtueel/CondPovIJmuiden-Additional_12u_zichtjaar1985_2017_metOnzHeid.txt +86 -0
  286. pydra_core/data/statistics/Zeewaterstand/IJmuiden virtueel/CondPovIJmuiden-Additional_12u_zichtjaar2017.txt +86 -0
  287. pydra_core/data/statistics/Zeewaterstand/IJmuiden virtueel/CondPovIJmuiden-Additional_12u_zichtjaar2017_metOnzHeid.txt +86 -0
  288. pydra_core/data/statistics/Zeewaterstand/IJmuiden virtueel/OvkansZee_IJmuiden_virtueel.txt +71 -0
  289. pydra_core/data/statistics/Zeewaterstand/Lauwersoog/CondPovLauwersoog_12u_zichtjaar1985_2017.txt +86 -0
  290. pydra_core/data/statistics/Zeewaterstand/Lauwersoog/CondPovLauwersoog_12u_zichtjaar1985_2017_metOnzHeid.txt +86 -0
  291. pydra_core/data/statistics/Zeewaterstand/Lauwersoog/CondPovLauwersoog_12u_zichtjaar2017.txt +85 -0
  292. pydra_core/data/statistics/Zeewaterstand/Lauwersoog/CondPovLauwersoog_12u_zichtjaar2017_metOnzHeid.txt +85 -0
  293. pydra_core/data/statistics/Zeewaterstand/Lauwersoog/OvkansZee_Lauwersoog.txt +71 -0
  294. pydra_core/data/statistics/Zeewaterstand/Maasmond/CondPovMaasmond_12u_zichtjaar1985_2011.txt +89 -0
  295. pydra_core/data/statistics/Zeewaterstand/Maasmond/CondPovMaasmond_12u_zichtjaar1985_2017.txt +89 -0
  296. pydra_core/data/statistics/Zeewaterstand/Maasmond/CondPovMaasmond_12u_zichtjaar1985_2017_metOnzheid.txt +93 -0
  297. pydra_core/data/statistics/Zeewaterstand/Maasmond/CondPovMaasmond_12u_zichtjaar2017.txt +86 -0
  298. pydra_core/data/statistics/Zeewaterstand/Maasmond/CondPovMaasmond_12u_zichtjaar2017_metOnzheid.txt +86 -0
  299. pydra_core/data/statistics/Zeewaterstand/Oosterschelde/CondPovOS11_12u_zichtjaar1985_2017.txt +80 -0
  300. pydra_core/data/statistics/Zeewaterstand/Oosterschelde/CondPovOS11_12u_zichtjaar1985_2017_metOnzHeid.txt +80 -0
  301. pydra_core/data/statistics/Zeewaterstand/Oosterschelde/CondPovOS11_12u_zichtjaar2017.txt +80 -0
  302. pydra_core/data/statistics/Zeewaterstand/Oosterschelde/CondPovOS11_12u_zichtjaar2017_metOnzHeid.txt +80 -0
  303. pydra_core/data/statistics/Zeewaterstand/Oosterschelde/CondPovOS11_16sectoren_12u_2023.txt +75 -0
  304. pydra_core/data/statistics/Zeewaterstand/Oosterschelde/CondPovOS11_16sectoren_12u_2023_metOnzHeid.txt +74 -0
  305. pydra_core/data/statistics/Zeewaterstand/Oosterschelde/OvkansZee_OS11.txt +71 -0
  306. pydra_core/data/statistics/Zeewaterstand/Oosterschelde/OvkansZeewaterstand_OS.txt +72 -0
  307. pydra_core/data/statistics/Zeewaterstand/Vlissingen/CondPovVlissingen_12u_zichtjaar1985_2017.txt +75 -0
  308. pydra_core/data/statistics/Zeewaterstand/Vlissingen/CondPovVlissingen_12u_zichtjaar1985_2017_metOnzHeid.txt +75 -0
  309. pydra_core/data/statistics/Zeewaterstand/Vlissingen/CondPovVlissingen_12u_zichtjaar2017.txt +75 -0
  310. pydra_core/data/statistics/Zeewaterstand/Vlissingen/CondPovVlissingen_12u_zichtjaar2017_metOnzHeid.txt +75 -0
  311. pydra_core/data/statistics/Zeewaterstand/Vlissingen/OvkansZee_Vlissingen.txt +71 -0
  312. pydra_core/data/statistics/Zeewaterstand/Vlissingen virtueel/CondPovVlissingen-Additional_12u_zichtjaar1985_2017.txt +75 -0
  313. pydra_core/data/statistics/Zeewaterstand/Vlissingen virtueel/CondPovVlissingen-Additional_12u_zichtjaar1985_2017_metOnzHeid.txt +75 -0
  314. pydra_core/data/statistics/Zeewaterstand/Vlissingen virtueel/CondPovVlissingen-Additional_12u_zichtjaar2017.txt +75 -0
  315. pydra_core/data/statistics/Zeewaterstand/Vlissingen virtueel/CondPovVlissingen-Additional_12u_zichtjaar2017_metOnzHeid.txt +75 -0
  316. pydra_core/data/statistics/Zeewaterstand/Vlissingen virtueel/OvkansZee_Vlissingen_virtueel.txt +71 -0
  317. pydra_core/data/statistics/Zeewaterstand/West-Terschelling/CondPovWestTerschelling_12u_zichtjaar1985_2017.txt +88 -0
  318. pydra_core/data/statistics/Zeewaterstand/West-Terschelling/CondPovWestTerschelling_12u_zichtjaar1985_2017_metOnzHeid.txt +88 -0
  319. pydra_core/data/statistics/Zeewaterstand/West-Terschelling/CondPovWestTerschelling_12u_zichtjaar2017.txt +87 -0
  320. pydra_core/data/statistics/Zeewaterstand/West-Terschelling/CondPovWestTerschelling_12u_zichtjaar2017_metOnzHeid.txt +87 -0
  321. pydra_core/data/statistics/Zeewaterstand/West-Terschelling/OvkansZee_West-Terschelling.txt +71 -0
  322. pydra_core/hrdatabase/__init__.py +0 -0
  323. pydra_core/hrdatabase/hrdatabase.py +177 -0
  324. pydra_core/io/__init__.py +0 -0
  325. pydra_core/io/database_hr.py +598 -0
  326. pydra_core/io/database_settings.py +183 -0
  327. pydra_core/io/file_hydranl.py +92 -0
  328. pydra_core/location/__init__.py +0 -0
  329. pydra_core/location/location.py +115 -0
  330. pydra_core/location/model/__init__.py +0 -0
  331. pydra_core/location/model/base_model.py +270 -0
  332. pydra_core/location/model/loading/__init__.py +0 -0
  333. pydra_core/location/model/loading/loading.py +368 -0
  334. pydra_core/location/model/loading/loading_factory.py +89 -0
  335. pydra_core/location/model/loading/loading_model/__init__.py +0 -0
  336. pydra_core/location/model/loading/loading_model/loading_model.py +324 -0
  337. pydra_core/location/model/loading/other_systems/__init__.py +0 -0
  338. pydra_core/location/model/loading/other_systems/loading_wave_overtopping.py +122 -0
  339. pydra_core/location/model/loading/water_systems/__init__.py +0 -0
  340. pydra_core/location/model/loading/water_systems/loading_coast.py +54 -0
  341. pydra_core/location/model/loading/water_systems/loading_eastern_scheldt.py +169 -0
  342. pydra_core/location/model/loading/water_systems/loading_ijssel_vechtdelta.py +55 -0
  343. pydra_core/location/model/loading/water_systems/loading_lake.py +55 -0
  344. pydra_core/location/model/loading/water_systems/loading_lower_rivier.py +68 -0
  345. pydra_core/location/model/loading/water_systems/loading_upper_river.py +55 -0
  346. pydra_core/location/model/statistics/__init__.py +0 -0
  347. pydra_core/location/model/statistics/other_systems/__init__.py +0 -0
  348. pydra_core/location/model/statistics/other_systems/statistics_wave_overtopping.py +72 -0
  349. pydra_core/location/model/statistics/statistics.py +171 -0
  350. pydra_core/location/model/statistics/statistics_factory.py +89 -0
  351. pydra_core/location/model/statistics/stochastics/__init__.py +0 -0
  352. pydra_core/location/model/statistics/stochastics/barrier/__init__.py +0 -0
  353. pydra_core/location/model/statistics/stochastics/barrier/barrier.py +43 -0
  354. pydra_core/location/model/statistics/stochastics/barrier/barrier_easternscheldt.py +147 -0
  355. pydra_core/location/model/statistics/stochastics/barrier/barrier_europoort.py +209 -0
  356. pydra_core/location/model/statistics/stochastics/barrier/barrier_ramspol.py +41 -0
  357. pydra_core/location/model/statistics/stochastics/barrier/no_barrier.py +21 -0
  358. pydra_core/location/model/statistics/stochastics/discharge.py +108 -0
  359. pydra_core/location/model/statistics/stochastics/discrete_probability.py +55 -0
  360. pydra_core/location/model/statistics/stochastics/lake_level.py +158 -0
  361. pydra_core/location/model/statistics/stochastics/model_uncertainty.py +358 -0
  362. pydra_core/location/model/statistics/stochastics/sea_level/sea_level.py +53 -0
  363. pydra_core/location/model/statistics/stochastics/sea_level/sea_level_lower_river.py +93 -0
  364. pydra_core/location/model/statistics/stochastics/sea_level/sea_level_point.py +65 -0
  365. pydra_core/location/model/statistics/stochastics/sea_level/sea_level_triangular.py +158 -0
  366. pydra_core/location/model/statistics/stochastics/sigma_function.py +24 -0
  367. pydra_core/location/model/statistics/stochastics/wave_shape.py +624 -0
  368. pydra_core/location/model/statistics/stochastics/wind_speed.py +196 -0
  369. pydra_core/location/model/statistics/water_systems/__init__.py +0 -0
  370. pydra_core/location/model/statistics/water_systems/statistics_coast.py +153 -0
  371. pydra_core/location/model/statistics/water_systems/statistics_eastern_scheldt.py +177 -0
  372. pydra_core/location/model/statistics/water_systems/statistics_ijssel_vechtdelta.py +229 -0
  373. pydra_core/location/model/statistics/water_systems/statistics_lake.py +86 -0
  374. pydra_core/location/model/statistics/water_systems/statistics_lower_river.py +321 -0
  375. pydra_core/location/model/statistics/water_systems/statistics_upper_river.py +86 -0
  376. pydra_core/location/model/water_system.py +249 -0
  377. pydra_core/location/model/wave_overtopping.py +25 -0
  378. pydra_core/location/profile/__init__.py +0 -0
  379. pydra_core/location/profile/foreland.py +246 -0
  380. pydra_core/location/profile/lib/DikesOvertopping.LICENSE +619 -0
  381. pydra_core/location/profile/lib/README.MD +10 -0
  382. pydra_core/location/profile/lib/__init__.py +1 -0
  383. pydra_core/location/profile/profile.py +971 -0
  384. pydra_core/location/profile/profile_loading.py +473 -0
  385. pydra_core/location/settings/__init__.py +0 -0
  386. pydra_core/location/settings/settings.py +387 -0
  387. pydra_core-0.0.1.dist-info/METADATA +22 -0
  388. pydra_core-0.0.1.dist-info/RECORD +389 -0
  389. pydra_core-0.0.1.dist-info/WHEEL +5 -0
@@ -0,0 +1,293 @@
1
+ import numpy as np
2
+
3
+ from collections import namedtuple
4
+
5
+ pdstruct = namedtuple("pdstruct", ["delta", "probability", "density", "edges"])
6
+
7
+
8
+ class ProbabilityFunctions:
9
+ """
10
+ A class with common functions used within statistics.
11
+ """
12
+
13
+ @staticmethod
14
+ def probability_density(
15
+ values: np.ndarray,
16
+ exceedance_probability: np.ndarray,
17
+ bounded: bool = True,
18
+ check: bool = True,
19
+ axis: int = None,
20
+ ) -> pdstruct:
21
+ """
22
+ Function to convert the exceedance probability into a probability
23
+ density function.
24
+
25
+ Parameters
26
+ ----------
27
+ values : np.ndarray
28
+ Values, for example the wind speed discretisation
29
+ exceedance_probability : np.ndarray
30
+ Exceedance probability of the values
31
+ bounded : bool, optional
32
+ If bounded, add the first and last element based on the min and max
33
+ in the exceedance probability. Otherwise between 1.0 and 0.0
34
+ (default : True)
35
+ check : bool, optional
36
+ Check whether the values and exceedance probabilities are
37
+ monotonously increasing (default : True)
38
+ axis : int, optional
39
+ Axis (default : None)
40
+
41
+ Raises
42
+ ------
43
+ ValueError
44
+ If the values or exceedance probabilities are not monotonously
45
+ increasing
46
+
47
+ Returns
48
+ -------
49
+ pdstruct
50
+ Probability density structure
51
+ """
52
+ # For multiple dimensions, use the _nd function
53
+ if exceedance_probability.ndim > 1:
54
+ return ProbabilityFunctions.probability_density_nd(
55
+ values, exceedance_probability, bounded, axis=axis
56
+ )
57
+
58
+ # Check whether the values and exceedance probabilities are monotonously increasing
59
+ if check:
60
+ for arr, tag in zip(
61
+ [values, exceedance_probability], ["Values", "Exceedance probabilities"]
62
+ ):
63
+ diff = arr[1:] - arr[:-1]
64
+ if not (all(diff >= 0) or all(diff <= 0)):
65
+ raise ValueError(
66
+ tag + "are not monotonously increasing or decreasing.",
67
+ arr,
68
+ diff,
69
+ )
70
+
71
+ # Determine the exceedance probability bins
72
+ bins_edges = (exceedance_probability[1:] + exceedance_probability[:-1]) / 2.0
73
+
74
+ # If bounded, add the first and last element based on the min and max in the exceedance probability
75
+ if bounded:
76
+ bins_edges = np.concatenate(
77
+ [[exceedance_probability[0]], bins_edges, [exceedance_probability[-1]]]
78
+ )
79
+
80
+ # Else, determine the bins between the 0 and 1
81
+ else:
82
+ if exceedance_probability[0] < exceedance_probability[-1]:
83
+ bins_edges = np.concatenate([[0.0], bins_edges, [1.0]])
84
+ else:
85
+ bins_edges = np.concatenate([[1.0], bins_edges, [0.0]])
86
+
87
+ # The difference between the bin_edges are the bins_probabilities
88
+ bins_probability = np.absolute(bins_edges[1:] - bins_edges[:-1])
89
+
90
+ # Determine the delta of the values
91
+ bins_values = np.concatenate(
92
+ [[values[0]], (values[1:] + values[:-1]) / 2.0, [values[-1]]]
93
+ )
94
+ bins_deltas = np.absolute(np.diff(bins_values))
95
+
96
+ # Probability density is the bins_probability divided by the delta
97
+ probability_density = np.absolute(bins_probability / bins_deltas)
98
+
99
+ # Return as a structure
100
+ return pdstruct(bins_deltas, bins_probability, probability_density, bins_edges)
101
+
102
+ @staticmethod
103
+ def probability_density_nd(
104
+ values: np.ndarray,
105
+ exceedance_probability: np.ndarray,
106
+ bounded: bool = True,
107
+ axis: int = None,
108
+ ) -> pdstruct:
109
+ """
110
+ Convert the exceedance probability into a probability density function
111
+ for multidimensional arrays.
112
+
113
+ This function converts the exceedance probabilities
114
+ (exceedance_probability) into a probability density function (PDF) for
115
+ multidimensional arrays represented by 'values' and
116
+ 'exceedance_probability'.
117
+
118
+ Parameters
119
+ ----------
120
+ values : np.ndarray
121
+ Values, e.g., wind speed discretization, for which the PDF is
122
+ calculated.
123
+ exceedance_probability : np.ndarray
124
+ Exceedance probability of the values.
125
+ bounded (bool):
126
+ If True, add the first and last element based on the min and max in
127
+ the exceedance probability. Otherwise, create the PDF between 1.0
128
+ and 0.0.
129
+ axis : int, optional
130
+ The axis along which the PDF is calculated. By default, axis 0 is
131
+ used.
132
+
133
+ Returns
134
+ -------
135
+ pdstruct
136
+ Probability density structure containing the calculated PDF.
137
+ """
138
+ # If bounded, add the first and last element based on the min and max
139
+ # in the exceedance probability
140
+ if bounded:
141
+ bins_edges = np.concatenate(
142
+ [
143
+ [exceedance_probability[0]],
144
+ (exceedance_probability[1:] + exceedance_probability[:-1]) / 2.0,
145
+ [exceedance_probability[-1]],
146
+ ]
147
+ )
148
+
149
+ # If not
150
+ else:
151
+ bins_edges = np.pad(
152
+ (exceedance_probability[1:] + exceedance_probability[:-1]) / 2,
153
+ pad_width=(1, 1),
154
+ mode="constant",
155
+ constant_values=(0, 1)
156
+ if (exceedance_probability[0] < exceedance_probability[-1]).all()
157
+ else (1, 0),
158
+ )
159
+
160
+ # The difference between the bin_edges are the bins_probabilities
161
+ bins_probability = np.absolute(bins_edges[1:, ...] - bins_edges[:-1, ...])
162
+
163
+ # Edges between consecutive values, the difference gives the bin_deltas
164
+ bins_deltas = np.absolute(
165
+ np.diff(
166
+ np.concatenate(
167
+ [[values[0]], (values[1:] + values[:-1]) / 2.0, [values[-1]]]
168
+ )
169
+ )
170
+ )
171
+
172
+ # Probability density is the bins_probability divided by the delta
173
+ shp = [1] * bins_probability.ndim
174
+ if axis is None:
175
+ axis = 0
176
+ shp[axis] = -1
177
+ probability_density = np.absolute(
178
+ bins_probability / bins_deltas.reshape(tuple(shp))
179
+ )
180
+
181
+ # Return as a structure
182
+ return pdstruct(bins_deltas, bins_probability, probability_density, bins_edges)
183
+
184
+ @staticmethod
185
+ def get_hnl_disc_array(vmin: float, vmax: float, step: float) -> np.ndarray:
186
+ """
187
+ Get a discretized array of values between vmin and vmax with the given
188
+ step size.
189
+
190
+ This function generates a discretized array of values in the specified
191
+ range [vmin, vmax] with a given step size. The array includes the vmin
192
+ and vmax values and is uniformly spaced with steps of the specified
193
+ size.
194
+
195
+ Parameters
196
+ ----------
197
+ vmin : float
198
+ Minimum value of the range.
199
+ vmax : float
200
+ Maximum value of the range.
201
+ step : float
202
+ Step size between values.
203
+
204
+ Returns
205
+ -------
206
+ np.array
207
+ Discretized array of values.
208
+ """
209
+ # Calculate the number of steps between vmin and vmax and create the
210
+ # discretized array
211
+ n = round((vmax - vmin) / step)
212
+ levels = np.arange(vmin, vmin + (n + 0.1) * step, step)
213
+
214
+ # Ensure that the last element of the array is exactly equal to vmax
215
+ levels[-1] = vmax
216
+ return levels
217
+
218
+ @staticmethod
219
+ def conditional_probability(probability: np.ndarray, axis: int) -> np.ndarray:
220
+ """
221
+ Calculate the conditional probability along an axis, taking into account
222
+ dividing by zero.
223
+
224
+ This function calculates the conditional probability along the
225
+ specified 'axis' of the input 'probability' array. The conditional
226
+ probability is the probability of an event occurring given that another
227
+ event has occurred. If the denominator is zero along the specified
228
+ 'axis', the result is set to zero to avoid division by zero errors.
229
+
230
+ Parameters
231
+ ----------
232
+ probability : np.ndarray
233
+ Array with probabilities
234
+ axis : int
235
+ Axis for which the conditional probability has to be calculated
236
+
237
+ Returns
238
+ -------
239
+ np.ndarray
240
+ Conditional probability
241
+ """
242
+ # Calculate the denominator as the sum of probabilities along the
243
+ # specified 'axis'
244
+ denominator = np.sum(probability, axis=axis)
245
+
246
+ # Create a shape with all ones, except for the axis that will be used
247
+ # for broadcasting
248
+ shape = list(denominator.shape)
249
+ shape.insert(axis, -1)
250
+
251
+ # Calculate the conditional probability using element-wise division,
252
+ # handling division by zero
253
+ cond = np.divide(
254
+ probability,
255
+ denominator.reshape(shape),
256
+ out=np.zeros_like(probability),
257
+ where=(denominator != 0).reshape(shape),
258
+ )
259
+
260
+ return cond
261
+
262
+ @staticmethod
263
+ def calculate_boundaries(levels: np.ndarray):
264
+ """
265
+ Calculate the boundaries for the input array.
266
+
267
+ This function calculates the boundaries between adjacent elements in
268
+ the input 'arr' array. The boundaries are computed as the midpoints
269
+ between consecutive elements, with additional values added at the start
270
+ and end based on the step differences.
271
+
272
+ Parameters
273
+ ----------
274
+ levels : np.ndarray
275
+ Input array for which boundaries are to be calculated.
276
+
277
+ Returns
278
+ -------
279
+ ndarray
280
+ Array containing the calculated boundaries.
281
+ """
282
+ # Calculate the step differences between consecutive elements
283
+ lower_step = levels[2] - levels[1]
284
+ upper_step = levels[-1] - levels[-2]
285
+
286
+ # Calculate midpoints between consecutive elements
287
+ mid = (levels[1:] + levels[:-1]) / 2
288
+
289
+ # Calculate the boundaries array by concatenating the midpoints with
290
+ # additional boundary values
291
+ bounds = np.concatenate([[mid[0] - lower_step], mid, [mid[-1] + upper_step]])
292
+
293
+ return bounds
File without changes
@@ -0,0 +1,51 @@
1
+ from abc import ABC, abstractmethod
2
+ from typing import Union
3
+
4
+ from ..hrdatabase.hrdatabase import HRDatabase
5
+ from ..location.location import Location
6
+
7
+
8
+ class Calculation(ABC):
9
+ """
10
+ Base class for calculation modules
11
+ """
12
+
13
+ @abstractmethod
14
+ def __init__(self):
15
+ """
16
+ Init class, differs per calculation
17
+ """
18
+ pass
19
+
20
+ def calculate(self, input: Union[Location, HRDatabase]):
21
+ """
22
+ Execute a calculation
23
+
24
+ Parameters
25
+ ----------
26
+ input : Union[Location, HRDatabase]
27
+ The input
28
+ """
29
+ # Depending on the type of input, call CalculateLocation
30
+ if isinstance(input, Location):
31
+ return self.calculate_location(input)
32
+
33
+ elif isinstance(input, HRDatabase):
34
+ return {
35
+ loc: self.calculate_location(input.get_location(loc)) for loc in input
36
+ }
37
+
38
+ else:
39
+ raise NotImplementedError("[ERROR] Input type not implemented")
40
+
41
+ @abstractmethod
42
+ def calculate_location(self, location: Location):
43
+ """
44
+ Executes a calculation for a location
45
+
46
+ Parameter
47
+ ---------
48
+ location : Location
49
+ The Location object
50
+ """
51
+ pass
File without changes
@@ -0,0 +1,60 @@
1
+ import numpy as np
2
+
3
+ from dataclasses import dataclass
4
+ from pathlib import Path
5
+
6
+ from ...common.interpolate import Interpolate
7
+
8
+
9
+ @dataclass
10
+ class FrequencyLine:
11
+ """
12
+ Represents a frequency line with associated levels and exceedance frequencies.
13
+
14
+ Parameters
15
+ ----------
16
+ level : np.ndarray
17
+ An array of levels.
18
+ exceedance_frequency : np.ndarray
19
+ An array of corresponding exceedance frequencies.
20
+ """
21
+
22
+ # Init variables
23
+ level: np.ndarray
24
+ exceedance_frequency: np.ndarray
25
+
26
+ def interpolate_exceedance_probability(self, exceedance_probability: np.ndarray):
27
+ exceedance_probability = np.atleast_1d(exceedance_probability)
28
+ order_x = np.argsort(exceedance_probability)
29
+ order_xp = np.argsort(self.exceedance_frequency)
30
+ f = Interpolate.inextrp1d(
31
+ x=np.log(exceedance_probability)[order_x],
32
+ xp=np.log(self.exceedance_frequency)[order_xp],
33
+ fp=self.level[order_xp],
34
+ )
35
+ return f[np.argsort(order_x)]
36
+
37
+ def interpolate_level(self, level: np.ndarray):
38
+ return np.exp(
39
+ Interpolate.inextrp1d(
40
+ x=level, xp=self.level, fp=np.log(self.exceedance_frequency)
41
+ )
42
+ )
43
+
44
+ def to_file(self, path: Path, overwrite=False):
45
+ if not overwrite and path.exists():
46
+ raise OSError(
47
+ f'Path "{path}" already exists. Choose overwrite=True or give another path.'
48
+ )
49
+
50
+ with path.open("w") as f:
51
+ f.write(f"{len(self.level):5d}\n")
52
+ for niveau, ovfreq in zip(self.level, self.exceedance_frequency):
53
+ f.write(f"{niveau:11.6f} {ovfreq:14.7e}\n")
54
+
55
+ def drop_zeros(self):
56
+ idx = self.exceedance_frequency == 0.0
57
+ if idx.all():
58
+ raise ValueError("All exceedance frequencies are 0.")
59
+ self.exceedance_frequency = self.exceedance_frequency[~idx]
60
+ self.level = self.level[~idx]
@@ -0,0 +1,224 @@
1
+ import numpy as np
2
+
3
+ from copy import deepcopy
4
+ from scipy.stats import norm
5
+
6
+ from .calculation import Calculation
7
+ from .datamodels.frequency_line import FrequencyLine
8
+ from ..location.location import Location
9
+
10
+
11
+ class ExceedanceFrequencyLine(Calculation):
12
+ """
13
+ Calculate a frequency line for a result variable (e.g. h (waterlevel), hs (significant wave height)) for a location
14
+ """
15
+
16
+ def __init__(
17
+ self,
18
+ result_variable: str,
19
+ model_uncertainty: bool = True,
20
+ levels: list = None,
21
+ step_size: float = 0.1,
22
+ ):
23
+ """
24
+ The __init__ method initializes an instance of the ExceedanceFrequencyLine class. It takes in several parameters to configure the calculation of the frequency line.
25
+
26
+ Parameters
27
+ ----------
28
+ result_variable: str
29
+ The result variable for which the frequency line will be calculated.
30
+ model_uncertainty: bool
31
+ Enable or disable the use of model uncertainties when calculating the frequency line. Default is True.
32
+ levels: list (optional):
33
+ The levels at which the exceedance probability has to be calculated. If not specified, the levels will be chosen between the 1st and 99th percentile of the values in the HRDatabase.
34
+ step_size: float (optional)
35
+ The step size of the frequency line. Default is 0.1.
36
+ """
37
+ # Inherit
38
+ super().__init__()
39
+
40
+ # Save settings
41
+ self.set_result_variable(result_variable.lower())
42
+ self.use_model_uncertainty(model_uncertainty)
43
+ self.set_levels(levels)
44
+ self.set_step_size(step_size)
45
+ self.model_uncertainty_steps = None
46
+
47
+ def calculate_location(self, location: Location) -> FrequencyLine:
48
+ """
49
+ Calculate the exceedance probability of the variable at a given set of levels.
50
+ If the levels are not specified, they will be chosen at the 1st and 99th percentile of all values in the database.
51
+
52
+ Parameter
53
+ ---------
54
+ location : Location
55
+ The Location object
56
+
57
+ Returns
58
+ -------
59
+ FrequencyLine
60
+ Frequency line of the result variable
61
+ """
62
+ # Copy the levels
63
+ levels = self.levels
64
+
65
+ # Obtain location object
66
+ model = location.get_model()
67
+ loading = model.get_loading()
68
+ monz = model.get_statistics().get_model_uncertainties()
69
+
70
+ # Check if the levels are defined, if not, define it between the 1st and 99th percentile
71
+ if levels is None:
72
+ lower, upper = loading.get_quantile_range(
73
+ self.result_variable, 0.01, 0.99, 3
74
+ )
75
+ levels = np.arange(lower, upper + 0.5 * self.step_size, self.step_size)
76
+
77
+ # Model uncertainty
78
+ if self.model_uncertainty:
79
+ # Model uncertainty steps (if None use default)
80
+ if self.model_uncertainty_steps is None:
81
+ self.model_uncertainty_steps = monz.step_size[self.result_variable]
82
+
83
+ # Discretise
84
+ _, edges = monz.model_uncertainties[1, self.result_variable].discretise(
85
+ self.model_uncertainty_steps
86
+ )
87
+ p = np.diff(norm.cdf(edges))
88
+
89
+ # If not
90
+ else:
91
+ self.model_uncertainty_steps = 1
92
+ p = [1.0]
93
+
94
+ # Discretise
95
+ exp = 0
96
+ for _ip, _p in enumerate(p):
97
+ # Deepcopy
98
+ _model = deepcopy(model)
99
+ _loading = _model.get_loading()
100
+
101
+ # Adjust loading models
102
+ if self.model_uncertainty:
103
+ for deelmodel, result in _loading.model.items():
104
+ _unc = monz.model_uncertainties[deelmodel[1], self.result_variable]
105
+ _disc, _ = _unc.discretise(self.model_uncertainty_steps)
106
+ _data = getattr(result, self.result_variable)
107
+ _data = (
108
+ _data + _disc[_ip]
109
+ if self.result_variable == "h"
110
+ else _data * _disc[_ip]
111
+ )
112
+ setattr(result, self.result_variable, _data)
113
+
114
+ # Repair
115
+ _loading.repair_loadingmodels(self.result_variable)
116
+
117
+ # Splits uit naar trage stochasten en windrichting
118
+ p_h_slow = _model.calculate_probability_loading(
119
+ result_variable=self.result_variable,
120
+ levels=levels,
121
+ model_uncertainty=False,
122
+ split_input_variables=list(_model.statistics.stochastics_slow.keys()),
123
+ given=list(_model.statistics.stochastics_slow.keys()),
124
+ )
125
+
126
+ # Reken kansen om naar overschrijdingskansen door over de eerste te sommeren
127
+ ep_h_slow = np.cumsum(p_h_slow[::-1], axis=0)[-2::-1]
128
+
129
+ # Process slow stochastics (they are always at the last axes of the matrix)
130
+ if len(list(_model.statistics.stochastics_slow.keys())) > 0:
131
+ p_trapezoidal = _model.process_slow_stochastics(ep_h_slow)
132
+ exceedance_probability = (
133
+ p_trapezoidal * location.get_settings().periods_base_duration
134
+ )
135
+
136
+ # Zo niet, geef de overschrijdingskansen direct terug
137
+ else:
138
+ exceedance_probability = (
139
+ ep_h_slow * location.settings.periods_block_duration
140
+ )
141
+
142
+ # TODO: Check if this is correct?
143
+ # Save
144
+ if _ip:
145
+ exp = exp + exceedance_probability * _p
146
+ else:
147
+ exp = exceedance_probability * _p
148
+
149
+ # exp = (
150
+ # exp + exceedance_probability * _p
151
+ # if _ip
152
+ # else exceedance_probability * _p
153
+ # )
154
+
155
+ # Return the frequency line
156
+ return FrequencyLine(levels, exp)
157
+
158
+ def set_result_variable(self, result_variable: str):
159
+ """
160
+ Change the result variable for which the frequency line will be calculated.
161
+
162
+ Parameters
163
+ ----------
164
+ result_variable : str
165
+ The result variable for which the frequency line will be calculated
166
+ """
167
+ # Raise an error when assigning the wave direction (dir)
168
+ if result_variable == "dir":
169
+ raise ValueError(
170
+ "[ERROR] Cannot calculate a frequency line for the wave direction (dir)."
171
+ )
172
+
173
+ # Save result variable
174
+ self.result_variable = result_variable
175
+
176
+ def set_levels(self, levels: list = None):
177
+ """
178
+ Change the levels.
179
+ If levels is not defined, the frequency line is calculated based upon the 1st and 99th percentile.
180
+
181
+ Parameters
182
+ ----------
183
+ levels : list, optional
184
+ The levels at which the exceedance probability has to be calculated
185
+ """
186
+ self.levels = levels
187
+
188
+ def set_step_size(self, step_size: float):
189
+ """
190
+ Change the step size of the frequency line.
191
+
192
+ Parameters
193
+ ----------
194
+ step_size : float
195
+ The step size of the frequency line
196
+ """
197
+ # Cannot be smaller or equal to 0
198
+ if step_size <= 0:
199
+ raise ValueError("[ERROR] Step size should be larger than 0.")
200
+
201
+ # Save step size
202
+ self.step_size = step_size
203
+
204
+ def use_model_uncertainty(self, model_uncertainty: bool):
205
+ """
206
+ Use model uncertainty when calculating a frequency line.
207
+
208
+ Parameters
209
+ ----------
210
+ model_uncertainty : bool
211
+ Enable or disable the use of model uncertainties
212
+ """
213
+ self.model_uncertainty = model_uncertainty
214
+
215
+ def set_model_uncertainty_steps(self, model_uncertainty_steps: int):
216
+ """
217
+ Set the number of model uncertainty steps
218
+
219
+ Parameters
220
+ ----------
221
+ model_uncertainty_steps : int
222
+ Number of model uncertainty steps
223
+ """
224
+ self.model_uncertainty_steps = model_uncertainty_steps