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,147 @@
1
+ import numpy as np
2
+
3
+ from .barrier import Barrier
4
+ from ..discrete_probability import DiscreteProbability
5
+ from ..sea_level.sea_level import SeaLevel
6
+ from ..wind_speed import WindSpeed
7
+ from ....loading.loading_model.loading_model import LoadingModel
8
+ from .....settings.settings import Settings
9
+ from ......common.interpolate import InterpStruct, Interpolate
10
+ from ......io.database_hr import DatabaseHR
11
+ from ......io.file_hydranl import FileHydraNL
12
+
13
+
14
+ class BarrierEasternScheldt(Barrier):
15
+ def __init__(
16
+ self,
17
+ settings: Settings,
18
+ wind_direction: DiscreteProbability,
19
+ wind_speed: WindSpeed,
20
+ sea_level: SeaLevel,
21
+ ):
22
+ # Inherit
23
+ super().__init__(settings, wind_direction)
24
+
25
+ # Lees kansen op sluitscenario's: de kans op bemand of onbemand
26
+ self.t = np.array([0.0, 1.0])
27
+
28
+ # pfk bevat de kans op een aantal falende schuiven (bijv 0, 16, 31, 62) voor
29
+ # een bemande dan wel onbemande sluiting, gegeven dat de kering faalt dus
30
+ self.k, self.p_fail_k = FileHydraNL.read_file_ncolumns(
31
+ settings.barrier_scenario_probability
32
+ )
33
+ self.k = self.k.astype(int)
34
+
35
+ # Lees kansen op sluitscenario's: de kans op sluiting gegeven de zeewaterstand en aantal falende sluizen
36
+ self.n_closing = len(self.k)
37
+ self.nk = len(self.t) * len(self.k)
38
+
39
+ # sluitkansenk bevat de kans op een sluitvraag (al dan niet succesvol) gegeven de zeewaterstand
40
+ # Voor een stategiesluiting, handmatige sluiting, noodsluiting door het systeem, of geen sluiting
41
+ self.m_closing, self.p_closing_k = FileHydraNL.read_file_ncolumns(
42
+ settings.barrier_closing_probability
43
+ )
44
+
45
+ # Database connection
46
+ with DatabaseHR(settings.database_path) as database:
47
+ # Read closing situations
48
+ self.closing_situations = database.get_closing_situations_eastern_scheldt()
49
+
50
+ # Maak sluitpeilen structure (u, m, r, d, p)
51
+ self.closing_levels = LoadingModel(
52
+ None, None, ["u", "m", "r", "d", "p"], ["h_rpb"]
53
+ )
54
+ self.closing_levels.initialise(
55
+ database.get_closing_levels_table_eastern_scheldt()
56
+ )
57
+
58
+ # h_roompot_buiten bevat de waterstand bij RPBU. Het sluitpeil van de oosterscheldekering is 3.0 m+NAP
59
+ # bij hogere waterstanden zal de kering dus (pogen) te sluiten. Nu is de kans op al dan niet sluiten
60
+ # ook afhankelijk van deze waterstand. Hoe hoger de waterstand, hoe groter de kans dat het misgaat.
61
+ # Daarom zit er in de database een tabel met optredende waterstanden bij Roompot Buiten. Wanneer
62
+ # Deze waterstand < 3.0 is, zit de waarde -9.0 in de database, om aan te geven dat de kering open blijft.
63
+
64
+ # Interpoleer sluitpeilen op het grid van de windsnelheid en zeewaterstand
65
+ # Eerst over de windsnelheid
66
+ intstr = InterpStruct(
67
+ x=wind_speed.get_discretisation(), xp=self.closing_levels.u
68
+ )
69
+ levels_u = intstr.interp(
70
+ fp=self.closing_levels.h_rpb,
71
+ axis=self.closing_levels.input_variables.index("u"),
72
+ )
73
+
74
+ # Dan over de zeewaterstand
75
+ intstr = InterpStruct(
76
+ x=sea_level.get_discretisation(), xp=self.closing_levels.m
77
+ )
78
+ self.h_rpb = intstr.interp(
79
+ fp=levels_u, axis=self.closing_levels.input_variables.index("m")
80
+ )
81
+
82
+ # Controleer op waarden van -9 en kleiner.
83
+ self.not_closing = self.h_rpb <= -9.0
84
+
85
+ def calculate_closing_probability(
86
+ self, wind_direction: float, closing_situation: int
87
+ ) -> np.ndarray:
88
+ """
89
+ Bereken de kans op het al dan niet falen van N sluizen
90
+ in de Oosterscheldekering en het type sluiting (nood of strategie)
91
+ De kansen zijn conditioneel op de zeewaterstand.
92
+ """
93
+ # Translate to wind direction id
94
+ ir = self.wind_direction.get_discretisation().tolist().index(wind_direction)
95
+
96
+ # Vertaal sluitsituatie (id) naar nood/strategie...
97
+ sluittype = self.closing_situations[closing_situation][0]
98
+ if sluittype not in ["Reguliere sluiting", "Noodsluiting"]:
99
+ raise KeyError(sluittype)
100
+
101
+ # ...en aantal schuiven
102
+ nfaal = self.closing_situations[closing_situation][1]
103
+ ik = self.k.tolist().index(nfaal)
104
+
105
+ # Hernoem voor beter begrip
106
+ kans_strategie_m = self.p_closing_k[:, 0]
107
+ kans_handmatig_m = self.p_closing_k[:, 1]
108
+ kans_noodsluit_m = self.p_closing_k[:, 2]
109
+ # kans_geensluit_m = self.p_closing_k[:, 3]
110
+
111
+ kansfalen_bemand = self.p_fail_k[:, 0]
112
+ kansfalen_onbemand = self.p_fail_k[:, 1]
113
+
114
+ # Kansen op noodsluiting, en N falende schuiven
115
+ # Noodsluiting door mens (bemand) of systeem (onbemand)
116
+ if sluittype == "Noodsluiting":
117
+ kansfalensluiting = (
118
+ kansfalen_bemand[ik] * kans_handmatig_m
119
+ + kansfalen_onbemand[ik] * kans_noodsluit_m
120
+ )
121
+
122
+ elif sluittype == "Reguliere sluiting":
123
+ # Strategiesluiting (bemand)
124
+ kansfalensluiting = kansfalen_bemand[ik] * kans_strategie_m
125
+
126
+ # En dan is er nog de kans dat de kering niet hoeft te sluiten (ongeacht bemand of onbemand)
127
+ # Deze kans moet ingedeeld worden in een van de sluitscenario's. Neem hiervoor het sluitscenario
128
+ # met zoveel mogelijk falende sluitingen, en de strategiesluiting
129
+ # if nfaal == self.k.max():
130
+ # kansfalensluiting[:] += kans_geensluit_m
131
+
132
+ # Bereken de faalkansen aan de hand van de zeewaterstanden die voor de belastingcombinaties
133
+ # optreden bij Roompot Buiten door te interpoleren op de zeewaterstanden
134
+ keringsituatiekansen = Interpolate.inextrp1d(
135
+ x=self.h_rpb[:, :, ir, :, :], xp=self.m_closing, fp=kansfalensluiting
136
+ )
137
+
138
+ # Als laatste is de kans op de keringsituatie nog afhankelijk van het al dan niet halen van het sluitpeil
139
+ # Als het sluitpeil niet gehaald wordt, is de kans op de keringsituatie met sluiting 0, tenzij het om de
140
+ # situatie zonder sluiting gaat
141
+ idx = self.not_closing[:, :, ir, :, :]
142
+ if (sluittype == "Reguliere sluiting") and (nfaal == self.k.max()):
143
+ keringsituatiekansen[idx] = 1.0
144
+ else:
145
+ keringsituatiekansen[idx] = 0.0
146
+
147
+ return keringsituatiekansen
@@ -0,0 +1,209 @@
1
+ import numpy as np
2
+
3
+ from scipy.stats import norm
4
+
5
+ from .barrier import Barrier
6
+ from ..discharge import Discharge
7
+ from ..discrete_probability import DiscreteProbability
8
+ from ..sea_level.sea_level import SeaLevel
9
+ from ..wind_speed import WindSpeed
10
+ from ....loading.loading_model.loading_model import LoadingModel
11
+ from .....settings.settings import Settings
12
+ from ......common.interpolate import InterpStruct
13
+ from ......io.database_hr import DatabaseHR
14
+
15
+
16
+ class BarrierEuropoort(Barrier):
17
+ def __init__(
18
+ self,
19
+ settings: Settings,
20
+ wind_direction: DiscreteProbability,
21
+ wind_speed: WindSpeed,
22
+ sea_level: SeaLevel,
23
+ discharge: Discharge,
24
+ ):
25
+ # Inherit
26
+ super().__init__(settings, wind_direction)
27
+
28
+ # Save statistics
29
+ self.discharge = discharge
30
+ self.sea_level = sea_level
31
+ self.wind_speed = wind_speed
32
+
33
+ # Assert barrier == 1
34
+ if self.settings.europoort_barrier != 1:
35
+ raise NotImplementedError("[ERROR] Barrier != 1 not implemented.")
36
+
37
+ # Init standard variables
38
+ self.k = [0, 11]
39
+ self.nk = len(self.k)
40
+
41
+ # Database connection
42
+ with DatabaseHR(settings.database_path) as database:
43
+ # Closing levels
44
+ self.closing_levels = LoadingModel(None, None, ["u", "q", "r"], ["m"])
45
+ self.closing_levels.initialise(
46
+ database.get_closing_levels_table_europoort()
47
+ )
48
+
49
+ # Extend
50
+ self.closing_levels.extend("q", [self.settings.q_min, self.settings.q_max])
51
+ self.closing_levels.extend("u", [self.settings.u_max])
52
+
53
+ # Prepare probabilities
54
+ self.prepare_barrier_probability(sea_level)
55
+
56
+ def calculate_closing_probability(
57
+ self, wind_direction: float, closing_situation: int = None
58
+ ) -> np.ndarray:
59
+ # Translate to wind direction id
60
+ ir = self.wind_direction.get_discretisation().tolist().index(wind_direction)
61
+ nqblok = len(self.discharge)
62
+ nmblok = len(self.sea_level)
63
+
64
+ # Bepaal de index van de richting in de sluitpeilen
65
+ if wind_direction not in self.closing_levels.r:
66
+ raise KeyError(
67
+ f"[ERROR] Wind direction {wind_direction} not defined in closing levels loading."
68
+ )
69
+
70
+ ir = self.closing_levels.r.tolist().index(wind_direction)
71
+ if closing_situation == 1: # Open
72
+ ik = 0 # 00
73
+ sluitkans = np.zeros((len(self.wind_speed), nmblok, nqblok))
74
+ elif closing_situation == 2: # Closed
75
+ ik = 1 # 11
76
+ sluitkans = np.zeros((len(self.wind_speed), nmblok, nqblok))
77
+ elif closing_situation is None: # Both
78
+ ik = slice(None)
79
+ sluitkans = np.zeros((len(self.wind_speed), nmblok, nqblok, len(self.k)))
80
+ else:
81
+ raise KeyError(closing_situation)
82
+
83
+ # De sluitpeilen (een zeewaterstand) zijn bekend per windsnelheid, windrichting en afvoer
84
+ # Eerste worden de sluitpeilen uitgebreid voor alle windsnelheden en afvoerniveaus in de statistiek
85
+
86
+ # Interpoleer over de windsnelheden, de eerste as van peilen
87
+ sluitpeil = InterpStruct(
88
+ x=self.wind_speed.get_discretisation(), xp=self.closing_levels.u
89
+ ).interp(fp=self.closing_levels.m[:, :, ir], axis=0)
90
+
91
+ # Interpoleer dit resultaat over de afvoeren, de tweede as van de peilen
92
+ sluitpeil = InterpStruct(
93
+ x=self.discharge.get_discretisation(), xp=self.closing_levels.q
94
+ ).interp(fp=sluitpeil, axis=1)
95
+
96
+ # Daarna wordt de sluitkans bepaald, door de zeewaterstanden bij deze windsnelheid, zeewaterstand en keringsituatie
97
+ # te interpoleren in de berekende sluitkansen per cm.
98
+
99
+ # De sluitkansen zijn afhankelijk van het sluitpeil, de zeewaterstand en (uiteraard) de sluitsituatie,
100
+ # de afmetingen van self.kansen is daarmee ncmsp, nmblok, nk
101
+
102
+ # De sluitkans moet bepaald worden per windsnelheid, zeewaterstand, afvoer en keringsituatie
103
+
104
+ # berekend voor de in de database aanwezig windsnelheden, windrichting, en elke centimeter zeewaterstand
105
+
106
+ # Voor elke afvoer, interpoleer de kansen
107
+ for iq in range(nqblok):
108
+ # bepaal de sluitkansen voor de combinatie van afvoer, kering en zeewaterstand
109
+ if isinstance(ik, int):
110
+ sluitkans[:, :, iq] = InterpStruct(
111
+ x=sluitpeil[:, iq], xp=self.cmsp
112
+ ).interp(self.kansen[:, :, ik], axis=0)
113
+ else:
114
+ sluitkans[:, :, iq, :] = InterpStruct(
115
+ x=sluitpeil[:, iq], xp=self.cmsp
116
+ ).interp(self.kansen[:, :, :], axis=0)
117
+
118
+ return sluitkans
119
+
120
+ def prepare_barrier_probability(self, sea_level: SeaLevel):
121
+ """
122
+ bereken het minimale sluitpeil, op cm's naar beneden afgerond
123
+
124
+ bepaal het aantal cm's van het minimale tot het maximale sluitpeil
125
+ alloceer geheugen
126
+
127
+ voor elke cm tussen het minimum en maximum
128
+ bepaal de hoogte van het sluitpeil
129
+
130
+ voor elke keringsituatie
131
+ bereken de keringskans per zeewaterstand en sluitpeil
132
+
133
+ Parameters
134
+ ----------
135
+ belasting : type (tprand2001)
136
+ structure met alle sluitpeilen
137
+ statistiek : type (tpstatistiek)
138
+ structure met waterstanden, golfparameters en hydraulische belastingen als gevolg daarvan
139
+ """
140
+ # bereken het minimale sluitpeil, op cm's naar beneden afgerond
141
+ step_size = 0.01
142
+ min_cl = np.floor(self.closing_levels.m.min() / step_size) * step_size
143
+ max_cl = np.ceil(self.closing_levels.m.max() / step_size) * step_size
144
+
145
+ # bepaal het aantal cm's van het minimale tot en met het maximale sluitpeil
146
+ self.nsp = int((max_cl - min_cl) / step_size) + 1
147
+
148
+ # alloceer geheugen
149
+ self.kansen = np.zeros((self.nsp, len(sea_level), len(self.k)))
150
+
151
+ # vul de vector met sluitpeilen voor elke cm
152
+ self.cmsp = min_cl + np.arange(self.nsp) * step_size
153
+
154
+ # Settings
155
+ barrier = int(self.settings.europoort_barrier)
156
+ distribution = self.settings.europoort_barrier_distribution
157
+ mu = self.settings.europoort_barrier_mu
158
+ sigma = self.settings.europoort_barrier_sigma
159
+ alfa = self.settings.europoort_barrier_alfa
160
+
161
+ # bereken de keringskans voor elke keringtoestand, zeewaterstand en sluitpeilcentimeter
162
+ for ik in range(self.nk):
163
+ # bepaal kans op commando keringen dicht
164
+ if barrier != 2:
165
+ # Normal distribution
166
+ if distribution == 0:
167
+ s = (
168
+ self.cmsp[:, None]
169
+ - sea_level.get_discretisation()[None, :]
170
+ - mu
171
+ ) / sigma
172
+ kansdicht = 1.0 - norm(loc=0.0, scale=1.0).cdf(x=s)
173
+
174
+ # Cosinus-squared distribution
175
+ elif distribution == 1:
176
+ s = np.pi * sigma * (3.0 / (np.pi * np.pi - 6.0)) ** 0.5
177
+ kansdicht = 0.5 * (
178
+ 1.0
179
+ + (
180
+ self.cmsp[:, None]
181
+ - sea_level.get_discretisation()[None, :]
182
+ - mu
183
+ )
184
+ / s
185
+ + np.sin(
186
+ np.pi
187
+ * (
188
+ self.cmsp[:, None]
189
+ - sea_level.get_discretisation()[None, :]
190
+ - mu
191
+ )
192
+ / s
193
+ )
194
+ / np.pi
195
+ )
196
+
197
+ # Undefined distribution
198
+ else:
199
+ raise ValueError("Fout type kansverdeling voorspelde zeewaterstand")
200
+
201
+ if barrier == 1:
202
+ if int(round(self.k[ik])) == 0:
203
+ self.kansen[:, :, ik] = 1.0 - (1.0 - alfa) * kansdicht
204
+ elif int(round(self.k[ik])) == 11:
205
+ self.kansen[:, :, ik] = (1.0 - alfa) * kansdicht
206
+
207
+ # Assert barrier == 1 (for now)
208
+ else:
209
+ raise NotImplementedError("[ERROR] Barrier != 1 not implemented.")
@@ -0,0 +1,41 @@
1
+ import numpy as np
2
+
3
+ # from scipy.stats import norm
4
+
5
+ from .barrier import Barrier
6
+
7
+ # from ..discharge import Discharge
8
+ from ..discrete_probability import DiscreteProbability
9
+
10
+ # from ..sea_level.sea_level import SeaLevel
11
+ # from ..wind_speed import WindSpeed
12
+ # from ....loading.loading_model.loading_model import LoadingModel
13
+ from .....settings.settings import Settings
14
+
15
+
16
+ class BarrierRamspol(Barrier):
17
+ def __init__(self, settings: Settings, wind_direction: DiscreteProbability):
18
+ # Inherit
19
+ super().__init__(settings, wind_direction)
20
+
21
+ # Init standard variables
22
+ self.k = [1, 2]
23
+ self.nk = len(self.k)
24
+
25
+ # Save failure probability of the Ramspol
26
+ self.failure_probability_ramspol = settings.failure_probability_ramspol
27
+
28
+ def calculate_closing_probability(
29
+ self, wind_direction: float, closing_situation: int
30
+ ) -> np.ndarray:
31
+ """
32
+ Calculate the failure probability of the Ramspol
33
+ """
34
+ if closing_situation == 1:
35
+ return self.failure_probability_ramspol
36
+ elif closing_situation == 2:
37
+ return 1 - self.failure_probability_ramspol
38
+ else:
39
+ raise KeyError(
40
+ f"[ERROR] Unknown closing situation: {closing_situation}, expecting 1 or 2."
41
+ )
@@ -0,0 +1,21 @@
1
+ import numpy as np
2
+
3
+ from .barrier import Barrier
4
+
5
+
6
+ class NoBarrier(Barrier):
7
+ def __init__(self):
8
+ # Inherit
9
+ super().__init__(None, None)
10
+
11
+ # Only 1 barrier state (= open)
12
+ self.k = [1]
13
+ self.nk = len(self.k)
14
+
15
+ def calculate_closing_probability(
16
+ self, wind_direction: float, closing_situation: int
17
+ ) -> np.ndarray:
18
+ """
19
+ Irrelevant for no barrier
20
+ """
21
+ return None
@@ -0,0 +1,108 @@
1
+ import numpy as np
2
+
3
+ from .wave_shape import WaveShape
4
+ from ....settings.settings import Settings
5
+ from .....common.enum import WaveShapeType
6
+ from .....common.interpolate import Interpolate
7
+ from .....io.file_hydranl import FileHydraNL
8
+
9
+
10
+ class Discharge:
11
+ """
12
+ Class to describe the discharge statistics.
13
+ """
14
+
15
+ def __init__(self, settings: Settings):
16
+ """
17
+ Constructor for discharge statistics
18
+
19
+ Parameters
20
+ ----------
21
+ settings : Settings
22
+ The Settings object
23
+ """
24
+ # Read exceedance probability peak discharge
25
+ qpeak, epqeak = FileHydraNL.read_file_2columns(settings.discharge_probability)
26
+
27
+ # Create grid for peak discharges
28
+ self.qpeak = np.r_[
29
+ np.arange(settings.q_min, settings.q_max, settings.q_step), settings.q_max
30
+ ]
31
+ self.nqpeak = len(self.qpeak)
32
+
33
+ # Inter/extrapolate the exceedance probability of the discharge
34
+ self.epqpeak = np.exp(
35
+ Interpolate.inextrp1d(x=self.qpeak, xp=qpeak, fp=np.log(epqeak))
36
+ )
37
+
38
+ # Transformatie van de tabel met OVERschrijdingskansen naar exponentiële ruimte
39
+ # Zie ook vgl. 4.5 van [Geerse, 2003], merk op dat het daar ONDERschrijdingskansen betreft#
40
+ self.eqpeak_exp = -np.log(self.epqpeak)
41
+
42
+ # Init the wave forms
43
+ self.wave_shape = WaveShape(settings, type=WaveShapeType.DISCHARGE)
44
+ self.wave_shape.initialise_wave_shapes(self.qpeak)
45
+
46
+ # Create grid with blok discharges
47
+ if settings.q_min < np.min(self.qpeak):
48
+ step = self.qpeak[1] - self.qpeak[0]
49
+ self.qblok = np.r_[
50
+ np.arange(settings.q_min, np.min(self.qpeak), step), self.qpiek
51
+ ]
52
+ elif settings.q_min > np.min(self.qpeak):
53
+ raise ValueError("[ERROR] Q_min is larger than the lowest Q_peak.")
54
+ else:
55
+ self.qblok = self.qpeak
56
+ self.nqblok = len(self.qblok)
57
+
58
+ # Calculate the instantaneous exceedance probability
59
+ inst_epq = self.wave_shape.instantaneous_exceedance_probability(
60
+ self.epqpeak, self.qblok
61
+ )
62
+
63
+ # Make sure the exceedance probability is not larger than 1 or smaller than 0
64
+ self.upqblok = np.clip(1.0 - inst_epq, 0.0, 1.0)
65
+
66
+ def __len__(self):
67
+ """
68
+ Return the number of discharge discretisations.
69
+
70
+ Returns
71
+ -------
72
+ int
73
+ Number of discretisations
74
+ """
75
+ return self.nqblok
76
+
77
+ def get_discretisation(self) -> np.ndarray:
78
+ """
79
+ Return the discharge discretisation.
80
+
81
+ Returns
82
+ -------
83
+ np.ndarray
84
+ 1D array with discretisation
85
+ """
86
+ return self.qblok
87
+
88
+ def get_exceedance_probability(self) -> np.ndarray:
89
+ """
90
+ Return exceedance probility of the discharge
91
+
92
+ Returns
93
+ -------
94
+ np.ndarray
95
+ A 1D array with the discharge exceedance probability
96
+ """
97
+ return self.upqblok
98
+
99
+ def get_wave_shape(self) -> WaveShape:
100
+ """
101
+ Return the wave form statistics object.
102
+
103
+ Returns
104
+ -------
105
+ WaveShape
106
+ The WaveShape statistics
107
+ """
108
+ return self.wave_shape
@@ -0,0 +1,55 @@
1
+ import numpy as np
2
+
3
+ from .....io.file_hydranl import FileHydraNL
4
+
5
+
6
+ class DiscreteProbability:
7
+ """
8
+ Class to describe the discrete statistics.
9
+ """
10
+
11
+ def __init__(self, statistics_file_path: str):
12
+ """
13
+ Constructor class for the discrete statistics.
14
+
15
+ Parameters
16
+ ----------
17
+ statistics_file_path : str
18
+ Path to the statistics file
19
+ """
20
+ self.discretisation, self.probability = FileHydraNL.read_file_2columns(
21
+ statistics_file_path
22
+ )
23
+
24
+ def __len__(self):
25
+ """
26
+ Return the number discretisations.
27
+
28
+ Returns
29
+ -------
30
+ int
31
+ Number of discretisations
32
+ """
33
+ return len(self.discretisation)
34
+
35
+ def get_discretisation(self) -> np.ndarray:
36
+ """
37
+ Return the discretisation.
38
+
39
+ Returns
40
+ -------
41
+ np.ndarray
42
+ 1D array with discretisation
43
+ """
44
+ return self.discretisation
45
+
46
+ def get_probability(self) -> np.ndarray:
47
+ """
48
+ Return the probability of each discretisation.
49
+
50
+ Returns
51
+ -------
52
+ np.ndarray
53
+ 1D array with probabilities
54
+ """
55
+ return self.probability