HydPy 6.2.dev1__cp313-cp313-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (890) hide show
  1. hydpy/__init__.py +275 -0
  2. hydpy/aliases.py +2554 -0
  3. hydpy/auxs/__init__.py +0 -0
  4. hydpy/auxs/anntools.py +1305 -0
  5. hydpy/auxs/armatools.py +883 -0
  6. hydpy/auxs/calibtools.py +3337 -0
  7. hydpy/auxs/interptools.py +1094 -0
  8. hydpy/auxs/iuhtools.py +543 -0
  9. hydpy/auxs/networktools.py +597 -0
  10. hydpy/auxs/ppolytools.py +809 -0
  11. hydpy/auxs/quadtools.py +61 -0
  12. hydpy/auxs/roottools.py +228 -0
  13. hydpy/auxs/smoothtools.py +273 -0
  14. hydpy/auxs/statstools.py +2125 -0
  15. hydpy/auxs/validtools.py +81 -0
  16. hydpy/conf/HydPyConfigBase.xsd +68637 -0
  17. hydpy/conf/HydPyConfigBase.xsdt +358 -0
  18. hydpy/conf/HydPyConfigMultipleRuns.xsd +25 -0
  19. hydpy/conf/HydPyConfigSingleRun.xsd +24 -0
  20. hydpy/conf/__init__.py +0 -0
  21. hydpy/conf/a_coefficients_explicit_lobatto_sequence.npy +0 -0
  22. hydpy/conf/support_points_for_smoothpar_logistic2.npy +0 -0
  23. hydpy/config.py +42 -0
  24. hydpy/core/__init__.py +0 -0
  25. hydpy/core/aliastools.py +214 -0
  26. hydpy/core/autodoctools.py +1947 -0
  27. hydpy/core/auxfiletools.py +1169 -0
  28. hydpy/core/devicetools.py +3810 -0
  29. hydpy/core/exceptiontools.py +269 -0
  30. hydpy/core/filetools.py +1985 -0
  31. hydpy/core/hydpytools.py +3089 -0
  32. hydpy/core/importtools.py +1398 -0
  33. hydpy/core/indextools.py +345 -0
  34. hydpy/core/itemtools.py +1849 -0
  35. hydpy/core/masktools.py +460 -0
  36. hydpy/core/modeltools.py +4868 -0
  37. hydpy/core/netcdftools.py +2683 -0
  38. hydpy/core/objecttools.py +2023 -0
  39. hydpy/core/optiontools.py +1045 -0
  40. hydpy/core/parametertools.py +4674 -0
  41. hydpy/core/printtools.py +222 -0
  42. hydpy/core/propertytools.py +643 -0
  43. hydpy/core/pubtools.py +254 -0
  44. hydpy/core/selectiontools.py +1571 -0
  45. hydpy/core/sequencetools.py +4476 -0
  46. hydpy/core/seriestools.py +339 -0
  47. hydpy/core/testtools.py +2483 -0
  48. hydpy/core/timetools.py +3567 -0
  49. hydpy/core/typingtools.py +333 -0
  50. hydpy/core/variabletools.py +2615 -0
  51. hydpy/cythons/__init__.py +24 -0
  52. hydpy/cythons/annutils.pxd +33 -0
  53. hydpy/cythons/annutils.pyi +25 -0
  54. hydpy/cythons/annutils.pyx +120 -0
  55. hydpy/cythons/autogen/__init__.py +0 -0
  56. hydpy/cythons/autogen/annutils.cp313-win_amd64.pyd +0 -0
  57. hydpy/cythons/autogen/annutils.pxd +42 -0
  58. hydpy/cythons/autogen/annutils.pyx +129 -0
  59. hydpy/cythons/autogen/c_arma.cp313-win_amd64.pyd +0 -0
  60. hydpy/cythons/autogen/c_arma.pxd +179 -0
  61. hydpy/cythons/autogen/c_arma.pyx +356 -0
  62. hydpy/cythons/autogen/c_arma_rimorido.cp313-win_amd64.pyd +0 -0
  63. hydpy/cythons/autogen/c_arma_rimorido.pxd +179 -0
  64. hydpy/cythons/autogen/c_arma_rimorido.pyx +356 -0
  65. hydpy/cythons/autogen/c_conv.cp313-win_amd64.pyd +0 -0
  66. hydpy/cythons/autogen/c_conv.pxd +198 -0
  67. hydpy/cythons/autogen/c_conv.pyx +491 -0
  68. hydpy/cythons/autogen/c_conv_idw.cp313-win_amd64.pyd +0 -0
  69. hydpy/cythons/autogen/c_conv_idw.pxd +124 -0
  70. hydpy/cythons/autogen/c_conv_idw.pyx +264 -0
  71. hydpy/cythons/autogen/c_conv_idw_ed.cp313-win_amd64.pyd +0 -0
  72. hydpy/cythons/autogen/c_conv_idw_ed.pxd +197 -0
  73. hydpy/cythons/autogen/c_conv_idw_ed.pyx +481 -0
  74. hydpy/cythons/autogen/c_conv_nn.cp313-win_amd64.pyd +0 -0
  75. hydpy/cythons/autogen/c_conv_nn.pxd +120 -0
  76. hydpy/cythons/autogen/c_conv_nn.pyx +224 -0
  77. hydpy/cythons/autogen/c_dam.cp313-win_amd64.pyd +0 -0
  78. hydpy/cythons/autogen/c_dam.pxd +805 -0
  79. hydpy/cythons/autogen/c_dam.pyx +1477 -0
  80. hydpy/cythons/autogen/c_dam_llake.cp313-win_amd64.pyd +0 -0
  81. hydpy/cythons/autogen/c_dam_llake.pxd +364 -0
  82. hydpy/cythons/autogen/c_dam_llake.pyx +705 -0
  83. hydpy/cythons/autogen/c_dam_lreservoir.cp313-win_amd64.pyd +0 -0
  84. hydpy/cythons/autogen/c_dam_lreservoir.pxd +365 -0
  85. hydpy/cythons/autogen/c_dam_lreservoir.pyx +708 -0
  86. hydpy/cythons/autogen/c_dam_lretention.cp313-win_amd64.pyd +0 -0
  87. hydpy/cythons/autogen/c_dam_lretention.pxd +340 -0
  88. hydpy/cythons/autogen/c_dam_lretention.pyx +625 -0
  89. hydpy/cythons/autogen/c_dam_pump.cp313-win_amd64.pyd +0 -0
  90. hydpy/cythons/autogen/c_dam_pump.pxd +402 -0
  91. hydpy/cythons/autogen/c_dam_pump.pyx +724 -0
  92. hydpy/cythons/autogen/c_dam_pump_sluice.cp313-win_amd64.pyd +0 -0
  93. hydpy/cythons/autogen/c_dam_pump_sluice.pxd +452 -0
  94. hydpy/cythons/autogen/c_dam_pump_sluice.pyx +829 -0
  95. hydpy/cythons/autogen/c_dam_sluice.cp313-win_amd64.pyd +0 -0
  96. hydpy/cythons/autogen/c_dam_sluice.pxd +404 -0
  97. hydpy/cythons/autogen/c_dam_sluice.pyx +726 -0
  98. hydpy/cythons/autogen/c_dam_v001.cp313-win_amd64.pyd +0 -0
  99. hydpy/cythons/autogen/c_dam_v001.pxd +452 -0
  100. hydpy/cythons/autogen/c_dam_v001.pyx +816 -0
  101. hydpy/cythons/autogen/c_dam_v002.cp313-win_amd64.pyd +0 -0
  102. hydpy/cythons/autogen/c_dam_v002.pxd +394 -0
  103. hydpy/cythons/autogen/c_dam_v002.pyx +703 -0
  104. hydpy/cythons/autogen/c_dam_v003.cp313-win_amd64.pyd +0 -0
  105. hydpy/cythons/autogen/c_dam_v003.pxd +417 -0
  106. hydpy/cythons/autogen/c_dam_v003.pyx +744 -0
  107. hydpy/cythons/autogen/c_dam_v004.cp313-win_amd64.pyd +0 -0
  108. hydpy/cythons/autogen/c_dam_v004.pxd +486 -0
  109. hydpy/cythons/autogen/c_dam_v004.pyx +891 -0
  110. hydpy/cythons/autogen/c_dam_v005.cp313-win_amd64.pyd +0 -0
  111. hydpy/cythons/autogen/c_dam_v005.pxd +524 -0
  112. hydpy/cythons/autogen/c_dam_v005.pyx +928 -0
  113. hydpy/cythons/autogen/c_dummy.cp313-win_amd64.pyd +0 -0
  114. hydpy/cythons/autogen/c_dummy.pxd +151 -0
  115. hydpy/cythons/autogen/c_dummy.pyx +263 -0
  116. hydpy/cythons/autogen/c_dummy_interceptedwater.cp313-win_amd64.pyd +0 -0
  117. hydpy/cythons/autogen/c_dummy_interceptedwater.pxd +69 -0
  118. hydpy/cythons/autogen/c_dummy_interceptedwater.pyx +104 -0
  119. hydpy/cythons/autogen/c_dummy_node2node.cp313-win_amd64.pyd +0 -0
  120. hydpy/cythons/autogen/c_dummy_node2node.pxd +89 -0
  121. hydpy/cythons/autogen/c_dummy_node2node.pyx +148 -0
  122. hydpy/cythons/autogen/c_dummy_snowalbedo.cp313-win_amd64.pyd +0 -0
  123. hydpy/cythons/autogen/c_dummy_snowalbedo.pxd +69 -0
  124. hydpy/cythons/autogen/c_dummy_snowalbedo.pyx +104 -0
  125. hydpy/cythons/autogen/c_dummy_snowcover.cp313-win_amd64.pyd +0 -0
  126. hydpy/cythons/autogen/c_dummy_snowcover.pxd +69 -0
  127. hydpy/cythons/autogen/c_dummy_snowcover.pyx +104 -0
  128. hydpy/cythons/autogen/c_dummy_snowycanopy.cp313-win_amd64.pyd +0 -0
  129. hydpy/cythons/autogen/c_dummy_snowycanopy.pxd +69 -0
  130. hydpy/cythons/autogen/c_dummy_snowycanopy.pyx +104 -0
  131. hydpy/cythons/autogen/c_dummy_soilwater.cp313-win_amd64.pyd +0 -0
  132. hydpy/cythons/autogen/c_dummy_soilwater.pxd +69 -0
  133. hydpy/cythons/autogen/c_dummy_soilwater.pyx +104 -0
  134. hydpy/cythons/autogen/c_evap.cp313-win_amd64.pyd +0 -0
  135. hydpy/cythons/autogen/c_evap.pxd +1029 -0
  136. hydpy/cythons/autogen/c_evap.pyx +2601 -0
  137. hydpy/cythons/autogen/c_evap_aet_hbv96.cp313-win_amd64.pyd +0 -0
  138. hydpy/cythons/autogen/c_evap_aet_hbv96.pxd +227 -0
  139. hydpy/cythons/autogen/c_evap_aet_hbv96.pyx +584 -0
  140. hydpy/cythons/autogen/c_evap_aet_minhas.cp313-win_amd64.pyd +0 -0
  141. hydpy/cythons/autogen/c_evap_aet_minhas.pxd +193 -0
  142. hydpy/cythons/autogen/c_evap_aet_minhas.pyx +478 -0
  143. hydpy/cythons/autogen/c_evap_aet_morsim.cp313-win_amd64.pyd +0 -0
  144. hydpy/cythons/autogen/c_evap_aet_morsim.pxd +681 -0
  145. hydpy/cythons/autogen/c_evap_aet_morsim.pyx +1642 -0
  146. hydpy/cythons/autogen/c_evap_pet_ambav1.cp313-win_amd64.pyd +0 -0
  147. hydpy/cythons/autogen/c_evap_pet_ambav1.pxd +532 -0
  148. hydpy/cythons/autogen/c_evap_pet_ambav1.pyx +1296 -0
  149. hydpy/cythons/autogen/c_evap_pet_hbv96.cp313-win_amd64.pyd +0 -0
  150. hydpy/cythons/autogen/c_evap_pet_hbv96.pxd +179 -0
  151. hydpy/cythons/autogen/c_evap_pet_hbv96.pyx +328 -0
  152. hydpy/cythons/autogen/c_evap_pet_m.cp313-win_amd64.pyd +0 -0
  153. hydpy/cythons/autogen/c_evap_pet_m.pxd +124 -0
  154. hydpy/cythons/autogen/c_evap_pet_m.pyx +214 -0
  155. hydpy/cythons/autogen/c_evap_pet_mlc.cp313-win_amd64.pyd +0 -0
  156. hydpy/cythons/autogen/c_evap_pet_mlc.pxd +126 -0
  157. hydpy/cythons/autogen/c_evap_pet_mlc.pyx +214 -0
  158. hydpy/cythons/autogen/c_evap_ret_fao56.cp313-win_amd64.pyd +0 -0
  159. hydpy/cythons/autogen/c_evap_ret_fao56.pxd +305 -0
  160. hydpy/cythons/autogen/c_evap_ret_fao56.pyx +624 -0
  161. hydpy/cythons/autogen/c_evap_ret_io.cp313-win_amd64.pyd +0 -0
  162. hydpy/cythons/autogen/c_evap_ret_io.pxd +112 -0
  163. hydpy/cythons/autogen/c_evap_ret_io.pyx +176 -0
  164. hydpy/cythons/autogen/c_evap_ret_tw2002.cp313-win_amd64.pyd +0 -0
  165. hydpy/cythons/autogen/c_evap_ret_tw2002.pxd +139 -0
  166. hydpy/cythons/autogen/c_evap_ret_tw2002.pyx +273 -0
  167. hydpy/cythons/autogen/c_exch.cp313-win_amd64.pyd +0 -0
  168. hydpy/cythons/autogen/c_exch.pxd +230 -0
  169. hydpy/cythons/autogen/c_exch.pyx +462 -0
  170. hydpy/cythons/autogen/c_exch_branch_hbv96.cp313-win_amd64.pyd +0 -0
  171. hydpy/cythons/autogen/c_exch_branch_hbv96.pxd +134 -0
  172. hydpy/cythons/autogen/c_exch_branch_hbv96.pyx +255 -0
  173. hydpy/cythons/autogen/c_exch_waterlevel.cp313-win_amd64.pyd +0 -0
  174. hydpy/cythons/autogen/c_exch_waterlevel.pxd +54 -0
  175. hydpy/cythons/autogen/c_exch_waterlevel.pyx +78 -0
  176. hydpy/cythons/autogen/c_exch_weir_hbv96.cp313-win_amd64.pyd +0 -0
  177. hydpy/cythons/autogen/c_exch_weir_hbv96.pxd +156 -0
  178. hydpy/cythons/autogen/c_exch_weir_hbv96.pyx +282 -0
  179. hydpy/cythons/autogen/c_ga.cp313-win_amd64.pyd +0 -0
  180. hydpy/cythons/autogen/c_ga.pxd +353 -0
  181. hydpy/cythons/autogen/c_ga.pyx +1204 -0
  182. hydpy/cythons/autogen/c_ga_garto.cp313-win_amd64.pyd +0 -0
  183. hydpy/cythons/autogen/c_ga_garto.pxd +330 -0
  184. hydpy/cythons/autogen/c_ga_garto.pyx +1105 -0
  185. hydpy/cythons/autogen/c_ga_garto_submodel1.cp313-win_amd64.pyd +0 -0
  186. hydpy/cythons/autogen/c_ga_garto_submodel1.pxd +236 -0
  187. hydpy/cythons/autogen/c_ga_garto_submodel1.pyx +944 -0
  188. hydpy/cythons/autogen/c_gland.cp313-win_amd64.pyd +0 -0
  189. hydpy/cythons/autogen/c_gland.pxd +437 -0
  190. hydpy/cythons/autogen/c_gland.pyx +726 -0
  191. hydpy/cythons/autogen/c_gland_gr4.cp313-win_amd64.pyd +0 -0
  192. hydpy/cythons/autogen/c_gland_gr4.pxd +382 -0
  193. hydpy/cythons/autogen/c_gland_gr4.pyx +605 -0
  194. hydpy/cythons/autogen/c_gland_gr5.cp313-win_amd64.pyd +0 -0
  195. hydpy/cythons/autogen/c_gland_gr5.pxd +368 -0
  196. hydpy/cythons/autogen/c_gland_gr5.pyx +568 -0
  197. hydpy/cythons/autogen/c_gland_gr6.cp313-win_amd64.pyd +0 -0
  198. hydpy/cythons/autogen/c_gland_gr6.pxd +420 -0
  199. hydpy/cythons/autogen/c_gland_gr6.pyx +673 -0
  200. hydpy/cythons/autogen/c_hland.cp313-win_amd64.pyd +0 -0
  201. hydpy/cythons/autogen/c_hland.pxd +855 -0
  202. hydpy/cythons/autogen/c_hland.pyx +2486 -0
  203. hydpy/cythons/autogen/c_hland_96.cp313-win_amd64.pyd +0 -0
  204. hydpy/cythons/autogen/c_hland_96.pxd +631 -0
  205. hydpy/cythons/autogen/c_hland_96.pyx +1724 -0
  206. hydpy/cythons/autogen/c_hland_96c.cp313-win_amd64.pyd +0 -0
  207. hydpy/cythons/autogen/c_hland_96c.pxd +621 -0
  208. hydpy/cythons/autogen/c_hland_96c.pyx +1822 -0
  209. hydpy/cythons/autogen/c_hland_96p.cp313-win_amd64.pyd +0 -0
  210. hydpy/cythons/autogen/c_hland_96p.pxd +683 -0
  211. hydpy/cythons/autogen/c_hland_96p.pyx +1911 -0
  212. hydpy/cythons/autogen/c_kinw.cp313-win_amd64.pyd +0 -0
  213. hydpy/cythons/autogen/c_kinw.pxd +509 -0
  214. hydpy/cythons/autogen/c_kinw.pyx +965 -0
  215. hydpy/cythons/autogen/c_kinw_williams.cp313-win_amd64.pyd +0 -0
  216. hydpy/cythons/autogen/c_kinw_williams.pxd +409 -0
  217. hydpy/cythons/autogen/c_kinw_williams.pyx +763 -0
  218. hydpy/cythons/autogen/c_kinw_williams_ext.cp313-win_amd64.pyd +0 -0
  219. hydpy/cythons/autogen/c_kinw_williams_ext.pxd +220 -0
  220. hydpy/cythons/autogen/c_kinw_williams_ext.pyx +440 -0
  221. hydpy/cythons/autogen/c_lland.cp313-win_amd64.pyd +0 -0
  222. hydpy/cythons/autogen/c_lland.pxd +1386 -0
  223. hydpy/cythons/autogen/c_lland.pyx +3679 -0
  224. hydpy/cythons/autogen/c_lland_dd.cp313-win_amd64.pyd +0 -0
  225. hydpy/cythons/autogen/c_lland_dd.pxd +679 -0
  226. hydpy/cythons/autogen/c_lland_dd.pyx +1719 -0
  227. hydpy/cythons/autogen/c_lland_knauf.cp313-win_amd64.pyd +0 -0
  228. hydpy/cythons/autogen/c_lland_knauf.pxd +1096 -0
  229. hydpy/cythons/autogen/c_lland_knauf.pyx +2784 -0
  230. hydpy/cythons/autogen/c_lland_knauf_ic.cp313-win_amd64.pyd +0 -0
  231. hydpy/cythons/autogen/c_lland_knauf_ic.pxd +1369 -0
  232. hydpy/cythons/autogen/c_lland_knauf_ic.pyx +3625 -0
  233. hydpy/cythons/autogen/c_meteo.cp313-win_amd64.pyd +0 -0
  234. hydpy/cythons/autogen/c_meteo.pxd +469 -0
  235. hydpy/cythons/autogen/c_meteo.pyx +879 -0
  236. hydpy/cythons/autogen/c_meteo_clear_glob_io.cp313-win_amd64.pyd +0 -0
  237. hydpy/cythons/autogen/c_meteo_clear_glob_io.pxd +75 -0
  238. hydpy/cythons/autogen/c_meteo_clear_glob_io.pyx +107 -0
  239. hydpy/cythons/autogen/c_meteo_glob_fao56.cp313-win_amd64.pyd +0 -0
  240. hydpy/cythons/autogen/c_meteo_glob_fao56.pxd +209 -0
  241. hydpy/cythons/autogen/c_meteo_glob_fao56.pyx +339 -0
  242. hydpy/cythons/autogen/c_meteo_glob_io.cp313-win_amd64.pyd +0 -0
  243. hydpy/cythons/autogen/c_meteo_glob_io.pxd +63 -0
  244. hydpy/cythons/autogen/c_meteo_glob_io.pyx +91 -0
  245. hydpy/cythons/autogen/c_meteo_glob_morsim.cp313-win_amd64.pyd +0 -0
  246. hydpy/cythons/autogen/c_meteo_glob_morsim.pxd +289 -0
  247. hydpy/cythons/autogen/c_meteo_glob_morsim.pyx +527 -0
  248. hydpy/cythons/autogen/c_meteo_precip_io.cp313-win_amd64.pyd +0 -0
  249. hydpy/cythons/autogen/c_meteo_precip_io.pxd +112 -0
  250. hydpy/cythons/autogen/c_meteo_precip_io.pyx +176 -0
  251. hydpy/cythons/autogen/c_meteo_psun_sun_glob_io.cp313-win_amd64.pyd +0 -0
  252. hydpy/cythons/autogen/c_meteo_psun_sun_glob_io.pxd +87 -0
  253. hydpy/cythons/autogen/c_meteo_psun_sun_glob_io.pyx +123 -0
  254. hydpy/cythons/autogen/c_meteo_sun_fao56.cp313-win_amd64.pyd +0 -0
  255. hydpy/cythons/autogen/c_meteo_sun_fao56.pxd +209 -0
  256. hydpy/cythons/autogen/c_meteo_sun_fao56.pyx +343 -0
  257. hydpy/cythons/autogen/c_meteo_sun_morsim.cp313-win_amd64.pyd +0 -0
  258. hydpy/cythons/autogen/c_meteo_sun_morsim.pxd +286 -0
  259. hydpy/cythons/autogen/c_meteo_sun_morsim.pyx +519 -0
  260. hydpy/cythons/autogen/c_meteo_temp_io.cp313-win_amd64.pyd +0 -0
  261. hydpy/cythons/autogen/c_meteo_temp_io.pxd +112 -0
  262. hydpy/cythons/autogen/c_meteo_temp_io.pyx +176 -0
  263. hydpy/cythons/autogen/c_musk.cp313-win_amd64.pyd +0 -0
  264. hydpy/cythons/autogen/c_musk.pxd +282 -0
  265. hydpy/cythons/autogen/c_musk.pyx +605 -0
  266. hydpy/cythons/autogen/c_musk_classic.cp313-win_amd64.pyd +0 -0
  267. hydpy/cythons/autogen/c_musk_classic.pxd +138 -0
  268. hydpy/cythons/autogen/c_musk_classic.pyx +226 -0
  269. hydpy/cythons/autogen/c_musk_mct.cp313-win_amd64.pyd +0 -0
  270. hydpy/cythons/autogen/c_musk_mct.pxd +282 -0
  271. hydpy/cythons/autogen/c_musk_mct.pyx +609 -0
  272. hydpy/cythons/autogen/c_rconc.cp313-win_amd64.pyd +0 -0
  273. hydpy/cythons/autogen/c_rconc.pxd +119 -0
  274. hydpy/cythons/autogen/c_rconc.pyx +174 -0
  275. hydpy/cythons/autogen/c_rconc_nash.cp313-win_amd64.pyd +0 -0
  276. hydpy/cythons/autogen/c_rconc_nash.pxd +111 -0
  277. hydpy/cythons/autogen/c_rconc_nash.pyx +185 -0
  278. hydpy/cythons/autogen/c_rconc_uh.cp313-win_amd64.pyd +0 -0
  279. hydpy/cythons/autogen/c_rconc_uh.pxd +92 -0
  280. hydpy/cythons/autogen/c_rconc_uh.pyx +125 -0
  281. hydpy/cythons/autogen/c_sw1d.cp313-win_amd64.pyd +0 -0
  282. hydpy/cythons/autogen/c_sw1d.pxd +511 -0
  283. hydpy/cythons/autogen/c_sw1d.pyx +1263 -0
  284. hydpy/cythons/autogen/c_sw1d_channel.cp313-win_amd64.pyd +0 -0
  285. hydpy/cythons/autogen/c_sw1d_channel.pxd +119 -0
  286. hydpy/cythons/autogen/c_sw1d_channel.pyx +300 -0
  287. hydpy/cythons/autogen/c_sw1d_gate_out.cp313-win_amd64.pyd +0 -0
  288. hydpy/cythons/autogen/c_sw1d_gate_out.pxd +240 -0
  289. hydpy/cythons/autogen/c_sw1d_gate_out.pyx +476 -0
  290. hydpy/cythons/autogen/c_sw1d_lias.cp313-win_amd64.pyd +0 -0
  291. hydpy/cythons/autogen/c_sw1d_lias.pxd +320 -0
  292. hydpy/cythons/autogen/c_sw1d_lias.pyx +619 -0
  293. hydpy/cythons/autogen/c_sw1d_lias_sluice.cp313-win_amd64.pyd +0 -0
  294. hydpy/cythons/autogen/c_sw1d_lias_sluice.pxd +325 -0
  295. hydpy/cythons/autogen/c_sw1d_lias_sluice.pyx +644 -0
  296. hydpy/cythons/autogen/c_sw1d_network.cp313-win_amd64.pyd +0 -0
  297. hydpy/cythons/autogen/c_sw1d_network.pxd +90 -0
  298. hydpy/cythons/autogen/c_sw1d_network.pyx +246 -0
  299. hydpy/cythons/autogen/c_sw1d_pump.cp313-win_amd64.pyd +0 -0
  300. hydpy/cythons/autogen/c_sw1d_pump.pxd +256 -0
  301. hydpy/cythons/autogen/c_sw1d_pump.pyx +502 -0
  302. hydpy/cythons/autogen/c_sw1d_q_in.cp313-win_amd64.pyd +0 -0
  303. hydpy/cythons/autogen/c_sw1d_q_in.pxd +224 -0
  304. hydpy/cythons/autogen/c_sw1d_q_in.pyx +383 -0
  305. hydpy/cythons/autogen/c_sw1d_q_out.cp313-win_amd64.pyd +0 -0
  306. hydpy/cythons/autogen/c_sw1d_q_out.pxd +224 -0
  307. hydpy/cythons/autogen/c_sw1d_q_out.pyx +383 -0
  308. hydpy/cythons/autogen/c_sw1d_storage.cp313-win_amd64.pyd +0 -0
  309. hydpy/cythons/autogen/c_sw1d_storage.pxd +193 -0
  310. hydpy/cythons/autogen/c_sw1d_storage.pyx +349 -0
  311. hydpy/cythons/autogen/c_sw1d_weir_out.cp313-win_amd64.pyd +0 -0
  312. hydpy/cythons/autogen/c_sw1d_weir_out.pxd +212 -0
  313. hydpy/cythons/autogen/c_sw1d_weir_out.pyx +404 -0
  314. hydpy/cythons/autogen/c_test.cp313-win_amd64.pyd +0 -0
  315. hydpy/cythons/autogen/c_test.pxd +175 -0
  316. hydpy/cythons/autogen/c_test.pyx +348 -0
  317. hydpy/cythons/autogen/c_test_discontinous.cp313-win_amd64.pyd +0 -0
  318. hydpy/cythons/autogen/c_test_discontinous.pxd +146 -0
  319. hydpy/cythons/autogen/c_test_discontinous.pyx +256 -0
  320. hydpy/cythons/autogen/c_test_stiff0d.cp313-win_amd64.pyd +0 -0
  321. hydpy/cythons/autogen/c_test_stiff0d.pxd +146 -0
  322. hydpy/cythons/autogen/c_test_stiff0d.pyx +250 -0
  323. hydpy/cythons/autogen/c_test_stiff1d.cp313-win_amd64.pyd +0 -0
  324. hydpy/cythons/autogen/c_test_stiff1d.pxd +145 -0
  325. hydpy/cythons/autogen/c_test_stiff1d.pyx +294 -0
  326. hydpy/cythons/autogen/c_whmod.cp313-win_amd64.pyd +0 -0
  327. hydpy/cythons/autogen/c_whmod.pxd +482 -0
  328. hydpy/cythons/autogen/c_whmod.pyx +1156 -0
  329. hydpy/cythons/autogen/c_whmod_rural.cp313-win_amd64.pyd +0 -0
  330. hydpy/cythons/autogen/c_whmod_rural.pxd +411 -0
  331. hydpy/cythons/autogen/c_whmod_rural.pyx +982 -0
  332. hydpy/cythons/autogen/c_whmod_urban.cp313-win_amd64.pyd +0 -0
  333. hydpy/cythons/autogen/c_whmod_urban.pxd +482 -0
  334. hydpy/cythons/autogen/c_whmod_urban.pyx +1155 -0
  335. hydpy/cythons/autogen/c_wland.cp313-win_amd64.pyd +0 -0
  336. hydpy/cythons/autogen/c_wland.pxd +842 -0
  337. hydpy/cythons/autogen/c_wland.pyx +1890 -0
  338. hydpy/cythons/autogen/c_wland_gd.cp313-win_amd64.pyd +0 -0
  339. hydpy/cythons/autogen/c_wland_gd.pxd +829 -0
  340. hydpy/cythons/autogen/c_wland_gd.pyx +1847 -0
  341. hydpy/cythons/autogen/c_wland_wag.cp313-win_amd64.pyd +0 -0
  342. hydpy/cythons/autogen/c_wland_wag.pxd +810 -0
  343. hydpy/cythons/autogen/c_wland_wag.pyx +1780 -0
  344. hydpy/cythons/autogen/c_wq.cp313-win_amd64.pyd +0 -0
  345. hydpy/cythons/autogen/c_wq.pxd +275 -0
  346. hydpy/cythons/autogen/c_wq.pyx +652 -0
  347. hydpy/cythons/autogen/c_wq_trapeze.cp313-win_amd64.pyd +0 -0
  348. hydpy/cythons/autogen/c_wq_trapeze.pxd +170 -0
  349. hydpy/cythons/autogen/c_wq_trapeze.pyx +400 -0
  350. hydpy/cythons/autogen/c_wq_trapeze_strickler.cp313-win_amd64.pyd +0 -0
  351. hydpy/cythons/autogen/c_wq_trapeze_strickler.pxd +243 -0
  352. hydpy/cythons/autogen/c_wq_trapeze_strickler.pyx +578 -0
  353. hydpy/cythons/autogen/c_wq_walrus.cp313-win_amd64.pyd +0 -0
  354. hydpy/cythons/autogen/c_wq_walrus.pxd +61 -0
  355. hydpy/cythons/autogen/c_wq_walrus.pyx +82 -0
  356. hydpy/cythons/autogen/configutils.cp313-win_amd64.pyd +0 -0
  357. hydpy/cythons/autogen/configutils.pxd +17 -0
  358. hydpy/cythons/autogen/configutils.pyx +119 -0
  359. hydpy/cythons/autogen/interfaceutils.cp313-win_amd64.pyd +0 -0
  360. hydpy/cythons/autogen/interfaceutils.pxd +31 -0
  361. hydpy/cythons/autogen/interfaceutils.pyx +82 -0
  362. hydpy/cythons/autogen/interputils.cp313-win_amd64.pyd +0 -0
  363. hydpy/cythons/autogen/interputils.pxd +42 -0
  364. hydpy/cythons/autogen/interputils.pyx +118 -0
  365. hydpy/cythons/autogen/masterinterface.cp313-win_amd64.pyd +0 -0
  366. hydpy/cythons/autogen/masterinterface.pxd +153 -0
  367. hydpy/cythons/autogen/masterinterface.pyx +222 -0
  368. hydpy/cythons/autogen/pointerutils.cp313-win_amd64.pyd +0 -0
  369. hydpy/cythons/autogen/pointerutils.pxd +31 -0
  370. hydpy/cythons/autogen/pointerutils.pyx +650 -0
  371. hydpy/cythons/autogen/ppolyutils.cp313-win_amd64.pyd +0 -0
  372. hydpy/cythons/autogen/ppolyutils.pxd +35 -0
  373. hydpy/cythons/autogen/ppolyutils.pyx +59 -0
  374. hydpy/cythons/autogen/quadutils.cp313-win_amd64.pyd +0 -0
  375. hydpy/cythons/autogen/quadutils.pxd +26 -0
  376. hydpy/cythons/autogen/quadutils.pyx +973 -0
  377. hydpy/cythons/autogen/rootutils.cp313-win_amd64.pyd +0 -0
  378. hydpy/cythons/autogen/rootutils.pxd +28 -0
  379. hydpy/cythons/autogen/rootutils.pyx +109 -0
  380. hydpy/cythons/autogen/sequenceutils.cp313-win_amd64.pyd +0 -0
  381. hydpy/cythons/autogen/sequenceutils.pxd +45 -0
  382. hydpy/cythons/autogen/sequenceutils.pyx +101 -0
  383. hydpy/cythons/autogen/smoothutils.cp313-win_amd64.pyd +0 -0
  384. hydpy/cythons/autogen/smoothutils.pxd +29 -0
  385. hydpy/cythons/autogen/smoothutils.pyx +833 -0
  386. hydpy/cythons/configutils.pxd +8 -0
  387. hydpy/cythons/configutils.pyi +5 -0
  388. hydpy/cythons/configutils.pyx +110 -0
  389. hydpy/cythons/interfaceutils.pxd +22 -0
  390. hydpy/cythons/interfaceutils.pyi +15 -0
  391. hydpy/cythons/interfaceutils.pyx +73 -0
  392. hydpy/cythons/interputils.pxd +33 -0
  393. hydpy/cythons/interputils.pyi +32 -0
  394. hydpy/cythons/interputils.pyx +109 -0
  395. hydpy/cythons/modelutils.py +2990 -0
  396. hydpy/cythons/pointerutils.pxd +22 -0
  397. hydpy/cythons/pointerutils.pyi +89 -0
  398. hydpy/cythons/pointerutils.pyx +641 -0
  399. hydpy/cythons/ppolyutils.pxd +26 -0
  400. hydpy/cythons/ppolyutils.pyi +21 -0
  401. hydpy/cythons/ppolyutils.pyx +50 -0
  402. hydpy/cythons/quadutils.pxd +17 -0
  403. hydpy/cythons/quadutils.pyi +13 -0
  404. hydpy/cythons/quadutils.pyx +964 -0
  405. hydpy/cythons/rootutils.pxd +19 -0
  406. hydpy/cythons/rootutils.pyi +21 -0
  407. hydpy/cythons/rootutils.pyx +100 -0
  408. hydpy/cythons/sequenceutils.pxd +36 -0
  409. hydpy/cythons/sequenceutils.pyi +7 -0
  410. hydpy/cythons/sequenceutils.pyx +92 -0
  411. hydpy/cythons/smoothutils.pxd +20 -0
  412. hydpy/cythons/smoothutils.pyi +15 -0
  413. hydpy/cythons/smoothutils.pyx +824 -0
  414. hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/land_dill_assl.py +13 -0
  415. hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/land_lahn_kalk.py +13 -0
  416. hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/land_lahn_leun.py +14 -0
  417. hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/land_lahn_marb.py +13 -0
  418. hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/stream_dill_assl_lahn_leun.py +5 -0
  419. hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/stream_lahn_leun_lahn_kalk.py +5 -0
  420. hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/stream_lahn_marb_lahn_leun.py +5 -0
  421. hydpy/data/HydPy-H-Lahn/control/default/land.py +9 -0
  422. hydpy/data/HydPy-H-Lahn/control/default/land_dill_assl.py +57 -0
  423. hydpy/data/HydPy-H-Lahn/control/default/land_lahn_kalk.py +57 -0
  424. hydpy/data/HydPy-H-Lahn/control/default/land_lahn_leun.py +56 -0
  425. hydpy/data/HydPy-H-Lahn/control/default/land_lahn_marb.py +57 -0
  426. hydpy/data/HydPy-H-Lahn/control/default/stream_dill_assl_lahn_leun.py +7 -0
  427. hydpy/data/HydPy-H-Lahn/control/default/stream_lahn_leun_lahn_kalk.py +7 -0
  428. hydpy/data/HydPy-H-Lahn/control/default/stream_lahn_marb_lahn_leun.py +7 -0
  429. hydpy/data/HydPy-H-Lahn/multiple_runs.xml +309 -0
  430. hydpy/data/HydPy-H-Lahn/multiple_runs_alpha.xml +71 -0
  431. hydpy/data/HydPy-H-Lahn/network/default/headwaters.py +11 -0
  432. hydpy/data/HydPy-H-Lahn/network/default/nonheadwaters.py +11 -0
  433. hydpy/data/HydPy-H-Lahn/network/default/streams.py +8 -0
  434. hydpy/data/HydPy-H-Lahn/series/default/dill_assl_obs_q.asc +11387 -0
  435. hydpy/data/HydPy-H-Lahn/series/default/evap_pet_hbv96_input_normalairtemperature.nc +0 -0
  436. hydpy/data/HydPy-H-Lahn/series/default/evap_pet_hbv96_input_normalevapotranspiration.nc +0 -0
  437. hydpy/data/HydPy-H-Lahn/series/default/hland_96_input_p.nc +0 -0
  438. hydpy/data/HydPy-H-Lahn/series/default/hland_96_input_t.nc +0 -0
  439. hydpy/data/HydPy-H-Lahn/series/default/lahn_kalk_obs_q.asc +11387 -0
  440. hydpy/data/HydPy-H-Lahn/series/default/lahn_leun_obs_q.asc +11387 -0
  441. hydpy/data/HydPy-H-Lahn/series/default/lahn_marb_obs_q.asc +11387 -0
  442. hydpy/data/HydPy-H-Lahn/series/default/land_dill_assl_evap_pet_hbv96_input_normalairtemperature.asc +11387 -0
  443. hydpy/data/HydPy-H-Lahn/series/default/land_dill_assl_evap_pet_hbv96_input_normalevapotranspiration.asc +11387 -0
  444. hydpy/data/HydPy-H-Lahn/series/default/land_dill_assl_hland_96_input_p.asc +11387 -0
  445. hydpy/data/HydPy-H-Lahn/series/default/land_dill_assl_hland_96_input_t.asc +11387 -0
  446. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_kalk_evap_pet_hbv96_input_normalairtemperature.asc +11387 -0
  447. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_kalk_evap_pet_hbv96_input_normalevapotranspiration.asc +11387 -0
  448. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_kalk_hland_96_input_p.asc +11387 -0
  449. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_kalk_hland_96_input_t.asc +11387 -0
  450. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_leun_evap_pet_hbv96_input_normalairtemperature.asc +11387 -0
  451. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_leun_evap_pet_hbv96_input_normalevapotranspiration.asc +11387 -0
  452. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_leun_hland_96_input_p.asc +11387 -0
  453. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_leun_hland_96_input_t.asc +11387 -0
  454. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_marb_evap_pet_hbv96_input_normalairtemperature.asc +11387 -0
  455. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_marb_evap_pet_hbv96_input_normalevapotranspiration.asc +11387 -0
  456. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_marb_hland_96_input_p.asc +11387 -0
  457. hydpy/data/HydPy-H-Lahn/series/default/land_lahn_marb_hland_96_input_t.asc +11387 -0
  458. hydpy/data/HydPy-H-Lahn/series/default/obs_q.nc +0 -0
  459. hydpy/data/HydPy-H-Lahn/single_run.xml +152 -0
  460. hydpy/data/HydPy-H-Lahn/single_run.xmlt +143 -0
  461. hydpy/data/__init__.py +17 -0
  462. hydpy/docs/__init__.py +0 -0
  463. hydpy/docs/autofigs/__init__.py +0 -0
  464. hydpy/docs/bib/__init__.py +0 -0
  465. hydpy/docs/bib/refs.bib +566 -0
  466. hydpy/docs/combine_docversions.py +133 -0
  467. hydpy/docs/draw_model_sketches.py +1301 -0
  468. hydpy/docs/enable_autodoc.py +7 -0
  469. hydpy/docs/figs/HydPy-G-GR4.png +0 -0
  470. hydpy/docs/figs/HydPy-G-GR5.png +0 -0
  471. hydpy/docs/figs/HydPy-G-GR6.png +0 -0
  472. hydpy/docs/figs/HydPy-H-HBV96-COSERO.png +0 -0
  473. hydpy/docs/figs/HydPy-H-HBV96-PREVAH.png +0 -0
  474. hydpy/docs/figs/HydPy-H-HBV96.png +0 -0
  475. hydpy/docs/figs/HydPy-H-Lahn.png +0 -0
  476. hydpy/docs/figs/HydPy-KinW-Williams.png +0 -0
  477. hydpy/docs/figs/HydPy-L-DD.png +0 -0
  478. hydpy/docs/figs/HydPy-W-Wag.png +0 -0
  479. hydpy/docs/figs/HydPy_Logo.png +0 -0
  480. hydpy/docs/figs/HydPy_Logo_Text.png +0 -0
  481. hydpy/docs/figs/IDLE-editor.png +0 -0
  482. hydpy/docs/figs/IDLE-shell.png +0 -0
  483. hydpy/docs/figs/LAWA_river-basin-bumbers.png +0 -0
  484. hydpy/docs/figs/__init__.py +0 -0
  485. hydpy/docs/html_/__init__.py +0 -0
  486. hydpy/docs/polish_html.py +57 -0
  487. hydpy/docs/prepare.py +224 -0
  488. hydpy/docs/publish_docs.py +53 -0
  489. hydpy/docs/rst/HydPy-ARMA.rst +27 -0
  490. hydpy/docs/rst/HydPy-Conv.rst +22 -0
  491. hydpy/docs/rst/HydPy-Dam.rst +79 -0
  492. hydpy/docs/rst/HydPy-Dummy.rst +21 -0
  493. hydpy/docs/rst/HydPy-Evap.rst +26 -0
  494. hydpy/docs/rst/HydPy-Exch.rst +36 -0
  495. hydpy/docs/rst/HydPy-G.rst +40 -0
  496. hydpy/docs/rst/HydPy-GA.rst +34 -0
  497. hydpy/docs/rst/HydPy-H.rst +24 -0
  498. hydpy/docs/rst/HydPy-KinW.rst +32 -0
  499. hydpy/docs/rst/HydPy-L.rst +42 -0
  500. hydpy/docs/rst/HydPy-Meteo.rst +28 -0
  501. hydpy/docs/rst/HydPy-Musk.rst +21 -0
  502. hydpy/docs/rst/HydPy-Rconc.rst +17 -0
  503. hydpy/docs/rst/HydPy-SW1D.rst +49 -0
  504. hydpy/docs/rst/HydPy-Test.rst +19 -0
  505. hydpy/docs/rst/HydPy-W.rst +20 -0
  506. hydpy/docs/rst/HydPy-WHMod.rst +19 -0
  507. hydpy/docs/rst/HydPy-WQ.rst +20 -0
  508. hydpy/docs/rst/__init__.py +0 -0
  509. hydpy/docs/rst/additional_repositories.rst +40 -0
  510. hydpy/docs/rst/auxiliaries.rst +31 -0
  511. hydpy/docs/rst/continuous_integration.rst +75 -0
  512. hydpy/docs/rst/core.rst +75 -0
  513. hydpy/docs/rst/cythons.rst +47 -0
  514. hydpy/docs/rst/definitions.rst +506 -0
  515. hydpy/docs/rst/developer_guide.rst +54 -0
  516. hydpy/docs/rst/example_projects.rst +40 -0
  517. hydpy/docs/rst/execution.rst +22 -0
  518. hydpy/docs/rst/framework_tools.rst +56 -0
  519. hydpy/docs/rst/how_to_read_the_reference_manual.rst +156 -0
  520. hydpy/docs/rst/hydpydependencies.rst +55 -0
  521. hydpy/docs/rst/index.rst +125 -0
  522. hydpy/docs/rst/installation.rst +155 -0
  523. hydpy/docs/rst/model_families.rst +79 -0
  524. hydpy/docs/rst/model_overview.rst +291 -0
  525. hydpy/docs/rst/modelimports.rst +10 -0
  526. hydpy/docs/rst/options.rst +119 -0
  527. hydpy/docs/rst/programming_style.rst +572 -0
  528. hydpy/docs/rst/project_structure.rst +520 -0
  529. hydpy/docs/rst/quickstart.rst +304 -0
  530. hydpy/docs/rst/reference_manual.rst +29 -0
  531. hydpy/docs/rst/required_tools.rst +50 -0
  532. hydpy/docs/rst/simulation.rst +514 -0
  533. hydpy/docs/rst/submodel_interfaces.rst +32 -0
  534. hydpy/docs/rst/tests_and_documentation.rst +85 -0
  535. hydpy/docs/rst/user_guide.rst +38 -0
  536. hydpy/docs/rst/version_control.rst +116 -0
  537. hydpy/docs/rst/zbibliography.rst +8 -0
  538. hydpy/docs/sphinx/__init__.py +0 -0
  539. hydpy/docs/sphinx/_themes/basic_hydpy/changes/frameset.html +11 -0
  540. hydpy/docs/sphinx/_themes/basic_hydpy/changes/rstsource.html +15 -0
  541. hydpy/docs/sphinx/_themes/basic_hydpy/changes/versionchanges.html +33 -0
  542. hydpy/docs/sphinx/_themes/basic_hydpy/defindex.html +35 -0
  543. hydpy/docs/sphinx/_themes/basic_hydpy/domainindex.html +56 -0
  544. hydpy/docs/sphinx/_themes/basic_hydpy/genindex-single.html +63 -0
  545. hydpy/docs/sphinx/_themes/basic_hydpy/genindex-split.html +41 -0
  546. hydpy/docs/sphinx/_themes/basic_hydpy/genindex.html +76 -0
  547. hydpy/docs/sphinx/_themes/basic_hydpy/globaltoc.html +11 -0
  548. hydpy/docs/sphinx/_themes/basic_hydpy/layout.html +221 -0
  549. hydpy/docs/sphinx/_themes/basic_hydpy/localtoc.html +15 -0
  550. hydpy/docs/sphinx/_themes/basic_hydpy/opensearch.xml +13 -0
  551. hydpy/docs/sphinx/_themes/basic_hydpy/page.html +13 -0
  552. hydpy/docs/sphinx/_themes/basic_hydpy/relations.html +23 -0
  553. hydpy/docs/sphinx/_themes/basic_hydpy/search.html +65 -0
  554. hydpy/docs/sphinx/_themes/basic_hydpy/searchbox.html +21 -0
  555. hydpy/docs/sphinx/_themes/basic_hydpy/searchfield.html +23 -0
  556. hydpy/docs/sphinx/_themes/basic_hydpy/sourcelink.html +18 -0
  557. hydpy/docs/sphinx/_themes/basic_hydpy/static/basic.css_t +925 -0
  558. hydpy/docs/sphinx/_themes/basic_hydpy/static/doctools.js +156 -0
  559. hydpy/docs/sphinx/_themes/basic_hydpy/static/documentation_options.js_t +13 -0
  560. hydpy/docs/sphinx/_themes/basic_hydpy/static/file.png +0 -0
  561. hydpy/docs/sphinx/_themes/basic_hydpy/static/language_data.js_t +26 -0
  562. hydpy/docs/sphinx/_themes/basic_hydpy/static/minus.png +0 -0
  563. hydpy/docs/sphinx/_themes/basic_hydpy/static/plus.png +0 -0
  564. hydpy/docs/sphinx/_themes/basic_hydpy/static/searchtools.js +574 -0
  565. hydpy/docs/sphinx/_themes/basic_hydpy/static/sphinx_highlight.js +154 -0
  566. hydpy/docs/sphinx/_themes/basic_hydpy/theme.conf +16 -0
  567. hydpy/docs/sphinx/_themes/classic_hydpy/layout.html +23 -0
  568. hydpy/docs/sphinx/_themes/classic_hydpy/static/classic.css_t +358 -0
  569. hydpy/docs/sphinx/_themes/classic_hydpy/static/sidebar.js_t +72 -0
  570. hydpy/docs/sphinx/_themes/classic_hydpy/theme.conf +32 -0
  571. hydpy/docs/sphinx/conf.py +398 -0
  572. hydpy/docs/sphinx/defaultlinks_extension.py +36 -0
  573. hydpy/docs/sphinx/integrationtest_extension.py +104 -0
  574. hydpy/docs/sphinx/projectstructure_extension.py +58 -0
  575. hydpy/docs/sphinx/submodelgraph_extension.py +53 -0
  576. hydpy/exe/__init__.py +0 -0
  577. hydpy/exe/commandtools.py +651 -0
  578. hydpy/exe/hyd.py +277 -0
  579. hydpy/exe/modelimports.py +41 -0
  580. hydpy/exe/replacetools.py +216 -0
  581. hydpy/exe/servertools.py +2348 -0
  582. hydpy/exe/xmltools.py +3280 -0
  583. hydpy/interfaces/__init__.py +0 -0
  584. hydpy/interfaces/aetinterfaces.py +94 -0
  585. hydpy/interfaces/dischargeinterfaces.py +45 -0
  586. hydpy/interfaces/petinterfaces.py +117 -0
  587. hydpy/interfaces/precipinterfaces.py +42 -0
  588. hydpy/interfaces/radiationinterfaces.py +79 -0
  589. hydpy/interfaces/rconcinterfaces.py +30 -0
  590. hydpy/interfaces/routinginterfaces.py +324 -0
  591. hydpy/interfaces/soilinterfaces.py +96 -0
  592. hydpy/interfaces/stateinterfaces.py +98 -0
  593. hydpy/interfaces/tempinterfaces.py +46 -0
  594. hydpy/models/__init__.py +0 -0
  595. hydpy/models/arma/__init__.py +14 -0
  596. hydpy/models/arma/arma_control.py +383 -0
  597. hydpy/models/arma/arma_derived.py +204 -0
  598. hydpy/models/arma/arma_fluxes.py +41 -0
  599. hydpy/models/arma/arma_inlets.py +11 -0
  600. hydpy/models/arma/arma_logs.py +19 -0
  601. hydpy/models/arma/arma_model.py +461 -0
  602. hydpy/models/arma/arma_outlets.py +11 -0
  603. hydpy/models/arma_rimorido.py +381 -0
  604. hydpy/models/conv/__init__.py +12 -0
  605. hydpy/models/conv/conv_control.py +303 -0
  606. hydpy/models/conv/conv_derived.py +271 -0
  607. hydpy/models/conv/conv_fluxes.py +54 -0
  608. hydpy/models/conv/conv_inlets.py +11 -0
  609. hydpy/models/conv/conv_model.py +687 -0
  610. hydpy/models/conv/conv_outlets.py +11 -0
  611. hydpy/models/conv_idw.py +120 -0
  612. hydpy/models/conv_idw_ed.py +184 -0
  613. hydpy/models/conv_nn.py +112 -0
  614. hydpy/models/dam/__init__.py +16 -0
  615. hydpy/models/dam/dam_aides.py +17 -0
  616. hydpy/models/dam/dam_control.py +346 -0
  617. hydpy/models/dam/dam_derived.py +559 -0
  618. hydpy/models/dam/dam_factors.py +46 -0
  619. hydpy/models/dam/dam_fluxes.py +179 -0
  620. hydpy/models/dam/dam_inlets.py +29 -0
  621. hydpy/models/dam/dam_logs.py +52 -0
  622. hydpy/models/dam/dam_model.py +5011 -0
  623. hydpy/models/dam/dam_outlets.py +23 -0
  624. hydpy/models/dam/dam_receivers.py +41 -0
  625. hydpy/models/dam/dam_senders.py +23 -0
  626. hydpy/models/dam/dam_solver.py +75 -0
  627. hydpy/models/dam/dam_states.py +11 -0
  628. hydpy/models/dam_llake.py +499 -0
  629. hydpy/models/dam_lreservoir.py +548 -0
  630. hydpy/models/dam_lretention.py +343 -0
  631. hydpy/models/dam_pump.py +278 -0
  632. hydpy/models/dam_pump_sluice.py +339 -0
  633. hydpy/models/dam_sluice.py +319 -0
  634. hydpy/models/dam_v001.py +1127 -0
  635. hydpy/models/dam_v002.py +381 -0
  636. hydpy/models/dam_v003.py +422 -0
  637. hydpy/models/dam_v004.py +665 -0
  638. hydpy/models/dam_v005.py +479 -0
  639. hydpy/models/dummy/__init__.py +15 -0
  640. hydpy/models/dummy/dummy_control.py +22 -0
  641. hydpy/models/dummy/dummy_fluxes.py +11 -0
  642. hydpy/models/dummy/dummy_inlets.py +11 -0
  643. hydpy/models/dummy/dummy_inputs.py +41 -0
  644. hydpy/models/dummy/dummy_model.py +196 -0
  645. hydpy/models/dummy/dummy_outlets.py +11 -0
  646. hydpy/models/dummy_interceptedwater.py +85 -0
  647. hydpy/models/dummy_node2node.py +83 -0
  648. hydpy/models/dummy_snowalbedo.py +84 -0
  649. hydpy/models/dummy_snowcover.py +84 -0
  650. hydpy/models/dummy_snowycanopy.py +86 -0
  651. hydpy/models/dummy_soilwater.py +85 -0
  652. hydpy/models/evap/__init__.py +13 -0
  653. hydpy/models/evap/evap_control.py +354 -0
  654. hydpy/models/evap/evap_derived.py +236 -0
  655. hydpy/models/evap/evap_factors.py +188 -0
  656. hydpy/models/evap/evap_fixed.py +68 -0
  657. hydpy/models/evap/evap_fluxes.py +150 -0
  658. hydpy/models/evap/evap_inputs.py +54 -0
  659. hydpy/models/evap/evap_logs.py +91 -0
  660. hydpy/models/evap/evap_masks.py +48 -0
  661. hydpy/models/evap/evap_model.py +9170 -0
  662. hydpy/models/evap/evap_parameters.py +149 -0
  663. hydpy/models/evap/evap_sequences.py +32 -0
  664. hydpy/models/evap/evap_states.py +18 -0
  665. hydpy/models/evap_aet_hbv96.py +372 -0
  666. hydpy/models/evap_aet_minhas.py +331 -0
  667. hydpy/models/evap_aet_morsim.py +627 -0
  668. hydpy/models/evap_pet_ambav1.py +483 -0
  669. hydpy/models/evap_pet_hbv96.py +147 -0
  670. hydpy/models/evap_pet_m.py +94 -0
  671. hydpy/models/evap_pet_mlc.py +107 -0
  672. hydpy/models/evap_ret_fao56.py +265 -0
  673. hydpy/models/evap_ret_io.py +74 -0
  674. hydpy/models/evap_ret_tw2002.py +165 -0
  675. hydpy/models/exch/__init__.py +14 -0
  676. hydpy/models/exch/exch_control.py +262 -0
  677. hydpy/models/exch/exch_derived.py +36 -0
  678. hydpy/models/exch/exch_factors.py +26 -0
  679. hydpy/models/exch/exch_fluxes.py +48 -0
  680. hydpy/models/exch/exch_inlets.py +11 -0
  681. hydpy/models/exch/exch_logs.py +12 -0
  682. hydpy/models/exch/exch_model.py +451 -0
  683. hydpy/models/exch/exch_outlets.py +17 -0
  684. hydpy/models/exch/exch_receivers.py +17 -0
  685. hydpy/models/exch_branch_hbv96.py +186 -0
  686. hydpy/models/exch_waterlevel.py +73 -0
  687. hydpy/models/exch_weir_hbv96.py +609 -0
  688. hydpy/models/ga/__init__.py +14 -0
  689. hydpy/models/ga/ga_aides.py +17 -0
  690. hydpy/models/ga/ga_control.py +208 -0
  691. hydpy/models/ga/ga_derived.py +77 -0
  692. hydpy/models/ga/ga_fluxes.py +83 -0
  693. hydpy/models/ga/ga_inputs.py +26 -0
  694. hydpy/models/ga/ga_logs.py +17 -0
  695. hydpy/models/ga/ga_model.py +2952 -0
  696. hydpy/models/ga/ga_states.py +87 -0
  697. hydpy/models/ga_garto.py +1001 -0
  698. hydpy/models/ga_garto_submodel1.py +79 -0
  699. hydpy/models/gland/__init__.py +14 -0
  700. hydpy/models/gland/gland_control.py +90 -0
  701. hydpy/models/gland/gland_derived.py +113 -0
  702. hydpy/models/gland/gland_fluxes.py +137 -0
  703. hydpy/models/gland/gland_inputs.py +12 -0
  704. hydpy/models/gland/gland_model.py +1439 -0
  705. hydpy/models/gland/gland_outlets.py +11 -0
  706. hydpy/models/gland/gland_states.py +90 -0
  707. hydpy/models/gland_gr4.py +501 -0
  708. hydpy/models/gland_gr5.py +463 -0
  709. hydpy/models/gland_gr6.py +487 -0
  710. hydpy/models/hland/__init__.py +20 -0
  711. hydpy/models/hland/hland_aides.py +19 -0
  712. hydpy/models/hland/hland_constants.py +37 -0
  713. hydpy/models/hland/hland_control.py +1530 -0
  714. hydpy/models/hland/hland_derived.py +683 -0
  715. hydpy/models/hland/hland_factors.py +57 -0
  716. hydpy/models/hland/hland_fixed.py +42 -0
  717. hydpy/models/hland/hland_fluxes.py +279 -0
  718. hydpy/models/hland/hland_inputs.py +19 -0
  719. hydpy/models/hland/hland_masks.py +107 -0
  720. hydpy/models/hland/hland_model.py +4664 -0
  721. hydpy/models/hland/hland_outlets.py +11 -0
  722. hydpy/models/hland/hland_parameters.py +227 -0
  723. hydpy/models/hland/hland_sequences.py +382 -0
  724. hydpy/models/hland/hland_states.py +236 -0
  725. hydpy/models/hland_96.py +1812 -0
  726. hydpy/models/hland_96c.py +1196 -0
  727. hydpy/models/hland_96p.py +1204 -0
  728. hydpy/models/kinw/__init__.py +18 -0
  729. hydpy/models/kinw/kinw_aides.py +306 -0
  730. hydpy/models/kinw/kinw_control.py +270 -0
  731. hydpy/models/kinw/kinw_derived.py +197 -0
  732. hydpy/models/kinw/kinw_fixed.py +33 -0
  733. hydpy/models/kinw/kinw_fluxes.py +37 -0
  734. hydpy/models/kinw/kinw_inlets.py +11 -0
  735. hydpy/models/kinw/kinw_model.py +3026 -0
  736. hydpy/models/kinw/kinw_outlets.py +11 -0
  737. hydpy/models/kinw/kinw_solver.py +45 -0
  738. hydpy/models/kinw/kinw_states.py +17 -0
  739. hydpy/models/kinw_williams.py +1299 -0
  740. hydpy/models/kinw_williams_ext.py +768 -0
  741. hydpy/models/lland/__init__.py +42 -0
  742. hydpy/models/lland/lland_aides.py +38 -0
  743. hydpy/models/lland/lland_constants.py +88 -0
  744. hydpy/models/lland/lland_control.py +1329 -0
  745. hydpy/models/lland/lland_derived.py +380 -0
  746. hydpy/models/lland/lland_factors.py +18 -0
  747. hydpy/models/lland/lland_fixed.py +128 -0
  748. hydpy/models/lland/lland_fluxes.py +626 -0
  749. hydpy/models/lland/lland_inlets.py +12 -0
  750. hydpy/models/lland/lland_inputs.py +33 -0
  751. hydpy/models/lland/lland_logs.py +17 -0
  752. hydpy/models/lland/lland_masks.py +212 -0
  753. hydpy/models/lland/lland_model.py +7690 -0
  754. hydpy/models/lland/lland_outlets.py +12 -0
  755. hydpy/models/lland/lland_parameters.py +195 -0
  756. hydpy/models/lland/lland_sequences.py +67 -0
  757. hydpy/models/lland/lland_states.py +280 -0
  758. hydpy/models/lland_dd.py +2270 -0
  759. hydpy/models/lland_knauf.py +2156 -0
  760. hydpy/models/lland_knauf_ic.py +1920 -0
  761. hydpy/models/meteo/__init__.py +12 -0
  762. hydpy/models/meteo/meteo_control.py +154 -0
  763. hydpy/models/meteo/meteo_derived.py +159 -0
  764. hydpy/models/meteo/meteo_factors.py +88 -0
  765. hydpy/models/meteo/meteo_fixed.py +19 -0
  766. hydpy/models/meteo/meteo_fluxes.py +46 -0
  767. hydpy/models/meteo/meteo_inputs.py +47 -0
  768. hydpy/models/meteo/meteo_logs.py +30 -0
  769. hydpy/models/meteo/meteo_model.py +2904 -0
  770. hydpy/models/meteo/meteo_parameters.py +14 -0
  771. hydpy/models/meteo/meteo_sequences.py +22 -0
  772. hydpy/models/meteo_clear_glob_io.py +77 -0
  773. hydpy/models/meteo_glob_fao56.py +217 -0
  774. hydpy/models/meteo_glob_io.py +68 -0
  775. hydpy/models/meteo_glob_morsim.py +444 -0
  776. hydpy/models/meteo_precip_io.py +76 -0
  777. hydpy/models/meteo_psun_sun_glob_io.py +83 -0
  778. hydpy/models/meteo_sun_fao56.py +188 -0
  779. hydpy/models/meteo_sun_morsim.py +466 -0
  780. hydpy/models/meteo_temp_io.py +76 -0
  781. hydpy/models/musk/__init__.py +15 -0
  782. hydpy/models/musk/musk_control.py +328 -0
  783. hydpy/models/musk/musk_derived.py +32 -0
  784. hydpy/models/musk/musk_factors.py +53 -0
  785. hydpy/models/musk/musk_fluxes.py +24 -0
  786. hydpy/models/musk/musk_inlets.py +11 -0
  787. hydpy/models/musk/musk_masks.py +15 -0
  788. hydpy/models/musk/musk_model.py +838 -0
  789. hydpy/models/musk/musk_outlets.py +11 -0
  790. hydpy/models/musk/musk_sequences.py +88 -0
  791. hydpy/models/musk/musk_solver.py +68 -0
  792. hydpy/models/musk/musk_states.py +64 -0
  793. hydpy/models/musk_classic.py +228 -0
  794. hydpy/models/musk_mct.py +1247 -0
  795. hydpy/models/rconc/__init__.py +12 -0
  796. hydpy/models/rconc/rconc_control.py +473 -0
  797. hydpy/models/rconc/rconc_derived.py +76 -0
  798. hydpy/models/rconc/rconc_fluxes.py +19 -0
  799. hydpy/models/rconc/rconc_logs.py +74 -0
  800. hydpy/models/rconc/rconc_model.py +260 -0
  801. hydpy/models/rconc/rconc_states.py +11 -0
  802. hydpy/models/rconc_nash.py +48 -0
  803. hydpy/models/rconc_uh.py +53 -0
  804. hydpy/models/sw1d/__init__.py +17 -0
  805. hydpy/models/sw1d/sw1d_control.py +356 -0
  806. hydpy/models/sw1d/sw1d_derived.py +85 -0
  807. hydpy/models/sw1d/sw1d_factors.py +78 -0
  808. hydpy/models/sw1d/sw1d_fixed.py +12 -0
  809. hydpy/models/sw1d/sw1d_fluxes.py +55 -0
  810. hydpy/models/sw1d/sw1d_inlets.py +17 -0
  811. hydpy/models/sw1d/sw1d_model.py +3385 -0
  812. hydpy/models/sw1d/sw1d_outlets.py +11 -0
  813. hydpy/models/sw1d/sw1d_receivers.py +11 -0
  814. hydpy/models/sw1d/sw1d_senders.py +11 -0
  815. hydpy/models/sw1d/sw1d_states.py +23 -0
  816. hydpy/models/sw1d_channel.py +2051 -0
  817. hydpy/models/sw1d_gate_out.py +599 -0
  818. hydpy/models/sw1d_lias.py +105 -0
  819. hydpy/models/sw1d_lias_sluice.py +531 -0
  820. hydpy/models/sw1d_network.py +1219 -0
  821. hydpy/models/sw1d_pump.py +448 -0
  822. hydpy/models/sw1d_q_in.py +79 -0
  823. hydpy/models/sw1d_q_out.py +81 -0
  824. hydpy/models/sw1d_storage.py +78 -0
  825. hydpy/models/sw1d_weir_out.py +75 -0
  826. hydpy/models/test/__init__.py +14 -0
  827. hydpy/models/test/test_control.py +28 -0
  828. hydpy/models/test/test_fluxes.py +17 -0
  829. hydpy/models/test/test_model.py +201 -0
  830. hydpy/models/test/test_solver.py +48 -0
  831. hydpy/models/test/test_states.py +17 -0
  832. hydpy/models/test_discontinous.py +46 -0
  833. hydpy/models/test_stiff0d.py +47 -0
  834. hydpy/models/test_stiff1d.py +42 -0
  835. hydpy/models/whmod/__init__.py +21 -0
  836. hydpy/models/whmod/whmod_constants.py +77 -0
  837. hydpy/models/whmod/whmod_control.py +333 -0
  838. hydpy/models/whmod/whmod_derived.py +210 -0
  839. hydpy/models/whmod/whmod_factors.py +9 -0
  840. hydpy/models/whmod/whmod_fluxes.py +105 -0
  841. hydpy/models/whmod/whmod_inputs.py +15 -0
  842. hydpy/models/whmod/whmod_masks.py +178 -0
  843. hydpy/models/whmod/whmod_model.py +2091 -0
  844. hydpy/models/whmod/whmod_parameters.py +155 -0
  845. hydpy/models/whmod/whmod_sequences.py +193 -0
  846. hydpy/models/whmod/whmod_states.py +73 -0
  847. hydpy/models/whmod_rural.py +794 -0
  848. hydpy/models/whmod_urban.py +1011 -0
  849. hydpy/models/wland/__init__.py +43 -0
  850. hydpy/models/wland/wland_aides.py +55 -0
  851. hydpy/models/wland/wland_constants.py +103 -0
  852. hydpy/models/wland/wland_control.py +508 -0
  853. hydpy/models/wland/wland_derived.py +330 -0
  854. hydpy/models/wland/wland_factors.py +11 -0
  855. hydpy/models/wland/wland_fixed.py +12 -0
  856. hydpy/models/wland/wland_fluxes.py +166 -0
  857. hydpy/models/wland/wland_inputs.py +33 -0
  858. hydpy/models/wland/wland_masks.py +54 -0
  859. hydpy/models/wland/wland_model.py +3755 -0
  860. hydpy/models/wland/wland_outlets.py +11 -0
  861. hydpy/models/wland/wland_parameters.py +214 -0
  862. hydpy/models/wland/wland_sequences.py +108 -0
  863. hydpy/models/wland/wland_solver.py +45 -0
  864. hydpy/models/wland/wland_states.py +56 -0
  865. hydpy/models/wland_gd.py +888 -0
  866. hydpy/models/wland_wag.py +1244 -0
  867. hydpy/models/wq/__init__.py +14 -0
  868. hydpy/models/wq/wq_control.py +117 -0
  869. hydpy/models/wq/wq_derived.py +182 -0
  870. hydpy/models/wq/wq_factors.py +79 -0
  871. hydpy/models/wq/wq_fluxes.py +17 -0
  872. hydpy/models/wq/wq_model.py +1889 -0
  873. hydpy/models/wq_trapeze.py +168 -0
  874. hydpy/models/wq_trapeze_strickler.py +101 -0
  875. hydpy/models/wq_walrus.py +57 -0
  876. hydpy/py.typed +0 -0
  877. hydpy/tests/.coveragerc +22 -0
  878. hydpy/tests/__init__.py +0 -0
  879. hydpy/tests/check_consistency.py +32 -0
  880. hydpy/tests/hydpydoctestcustomize.pth +1 -0
  881. hydpy/tests/hydpydoctestcustomize.py +15 -0
  882. hydpy/tests/iotesting/__init__.py +0 -0
  883. hydpy/tests/run_doctests.py +233 -0
  884. hydpy-6.2.dev1.data/scripts/hyd.py +277 -0
  885. hydpy-6.2.dev1.dist-info/LICENSE +165 -0
  886. hydpy-6.2.dev1.dist-info/METADATA +163 -0
  887. hydpy-6.2.dev1.dist-info/RECORD +890 -0
  888. hydpy-6.2.dev1.dist-info/WHEEL +5 -0
  889. hydpy-6.2.dev1.dist-info/licenses_hydpy_installer.txt +42 -0
  890. hydpy-6.2.dev1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,343 @@
1
+ #!python
2
+ # distutils: define_macros=NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION
3
+ # cython: language_level=3
4
+ # cython: cpow=True
5
+ # cython: boundscheck=False
6
+ # cython: wraparound=False
7
+ # cython: initializedcheck=False
8
+ # cython: cdivision=True
9
+ from typing import Optional
10
+ import numpy
11
+ cimport numpy
12
+ from libc.math cimport exp, fabs, log, sin, cos, tan, tanh, asin, acos, atan, isnan, isinf
13
+ from libc.math cimport NAN as nan
14
+ from libc.math cimport INFINITY as inf
15
+ import cython
16
+ from cpython.mem cimport PyMem_Malloc
17
+ from cpython.mem cimport PyMem_Realloc
18
+ from cpython.mem cimport PyMem_Free
19
+ from hydpy.cythons.autogen cimport configutils
20
+ from hydpy.cythons.autogen cimport interfaceutils
21
+ from hydpy.cythons.autogen cimport interputils
22
+ from hydpy.cythons.autogen import pointerutils
23
+ from hydpy.cythons.autogen cimport pointerutils
24
+ from hydpy.cythons.autogen cimport quadutils
25
+ from hydpy.cythons.autogen cimport rootutils
26
+ from hydpy.cythons.autogen cimport smoothutils
27
+ from hydpy.cythons.autogen cimport masterinterface
28
+
29
+
30
+ cdef void do_nothing(Model model) noexcept nogil:
31
+ pass
32
+
33
+ cpdef get_wrapper():
34
+ cdef CallbackWrapper wrapper = CallbackWrapper()
35
+ wrapper.callback = do_nothing
36
+ return wrapper
37
+
38
+ @cython.final
39
+ cdef class Parameters:
40
+ pass
41
+ @cython.final
42
+ cdef class ControlParameters:
43
+ pass
44
+ @cython.final
45
+ cdef class DerivedParameters:
46
+ pass
47
+ @cython.final
48
+ cdef class FixedParameters:
49
+ pass
50
+ @cython.final
51
+ cdef class Sequences:
52
+ pass
53
+ @cython.final
54
+ cdef class InputSequences:
55
+ cpdef inline void load_data(self, numpy.int64_t idx) noexcept nogil:
56
+ cdef numpy.int64_t k
57
+ if self._globalradiation_inputflag:
58
+ self.globalradiation = self._globalradiation_inputpointer[0]
59
+ elif self._globalradiation_diskflag_reading:
60
+ self.globalradiation = self._globalradiation_ncarray[0]
61
+ elif self._globalradiation_ramflag:
62
+ self.globalradiation = self._globalradiation_array[idx]
63
+ cpdef inline void save_data(self, numpy.int64_t idx) noexcept nogil:
64
+ cdef numpy.int64_t k
65
+ if self._globalradiation_diskflag_writing:
66
+ self._globalradiation_ncarray[0] = self.globalradiation
67
+ if self._globalradiation_ramflag:
68
+ self._globalradiation_array[idx] = self.globalradiation
69
+ cpdef inline set_pointerinput(self, str name, pointerutils.PDouble value):
70
+ if name == "globalradiation":
71
+ self._globalradiation_inputpointer = value.p_value
72
+ @cython.final
73
+ cdef class FactorSequences:
74
+ cpdef inline void load_data(self, numpy.int64_t idx) noexcept nogil:
75
+ cdef numpy.int64_t k
76
+ if self._earthsundistance_diskflag_reading:
77
+ self.earthsundistance = self._earthsundistance_ncarray[0]
78
+ elif self._earthsundistance_ramflag:
79
+ self.earthsundistance = self._earthsundistance_array[idx]
80
+ if self._solardeclination_diskflag_reading:
81
+ self.solardeclination = self._solardeclination_ncarray[0]
82
+ elif self._solardeclination_ramflag:
83
+ self.solardeclination = self._solardeclination_array[idx]
84
+ if self._sunsethourangle_diskflag_reading:
85
+ self.sunsethourangle = self._sunsethourangle_ncarray[0]
86
+ elif self._sunsethourangle_ramflag:
87
+ self.sunsethourangle = self._sunsethourangle_array[idx]
88
+ if self._solartimeangle_diskflag_reading:
89
+ self.solartimeangle = self._solartimeangle_ncarray[0]
90
+ elif self._solartimeangle_ramflag:
91
+ self.solartimeangle = self._solartimeangle_array[idx]
92
+ if self._possiblesunshineduration_diskflag_reading:
93
+ self.possiblesunshineduration = self._possiblesunshineduration_ncarray[0]
94
+ elif self._possiblesunshineduration_ramflag:
95
+ self.possiblesunshineduration = self._possiblesunshineduration_array[idx]
96
+ if self._sunshineduration_diskflag_reading:
97
+ self.sunshineduration = self._sunshineduration_ncarray[0]
98
+ elif self._sunshineduration_ramflag:
99
+ self.sunshineduration = self._sunshineduration_array[idx]
100
+ cpdef inline void save_data(self, numpy.int64_t idx) noexcept nogil:
101
+ cdef numpy.int64_t k
102
+ if self._earthsundistance_diskflag_writing:
103
+ self._earthsundistance_ncarray[0] = self.earthsundistance
104
+ if self._earthsundistance_ramflag:
105
+ self._earthsundistance_array[idx] = self.earthsundistance
106
+ if self._solardeclination_diskflag_writing:
107
+ self._solardeclination_ncarray[0] = self.solardeclination
108
+ if self._solardeclination_ramflag:
109
+ self._solardeclination_array[idx] = self.solardeclination
110
+ if self._sunsethourangle_diskflag_writing:
111
+ self._sunsethourangle_ncarray[0] = self.sunsethourangle
112
+ if self._sunsethourangle_ramflag:
113
+ self._sunsethourangle_array[idx] = self.sunsethourangle
114
+ if self._solartimeangle_diskflag_writing:
115
+ self._solartimeangle_ncarray[0] = self.solartimeangle
116
+ if self._solartimeangle_ramflag:
117
+ self._solartimeangle_array[idx] = self.solartimeangle
118
+ if self._possiblesunshineduration_diskflag_writing:
119
+ self._possiblesunshineduration_ncarray[0] = self.possiblesunshineduration
120
+ if self._possiblesunshineduration_ramflag:
121
+ self._possiblesunshineduration_array[idx] = self.possiblesunshineduration
122
+ if self._sunshineduration_diskflag_writing:
123
+ self._sunshineduration_ncarray[0] = self.sunshineduration
124
+ if self._sunshineduration_ramflag:
125
+ self._sunshineduration_array[idx] = self.sunshineduration
126
+ cpdef inline set_pointeroutput(self, str name, pointerutils.PDouble value):
127
+ if name == "earthsundistance":
128
+ self._earthsundistance_outputpointer = value.p_value
129
+ if name == "solardeclination":
130
+ self._solardeclination_outputpointer = value.p_value
131
+ if name == "sunsethourangle":
132
+ self._sunsethourangle_outputpointer = value.p_value
133
+ if name == "solartimeangle":
134
+ self._solartimeangle_outputpointer = value.p_value
135
+ if name == "possiblesunshineduration":
136
+ self._possiblesunshineduration_outputpointer = value.p_value
137
+ if name == "sunshineduration":
138
+ self._sunshineduration_outputpointer = value.p_value
139
+ cpdef inline void update_outputs(self) noexcept nogil:
140
+ if self._earthsundistance_outputflag:
141
+ self._earthsundistance_outputpointer[0] = self.earthsundistance
142
+ if self._solardeclination_outputflag:
143
+ self._solardeclination_outputpointer[0] = self.solardeclination
144
+ if self._sunsethourangle_outputflag:
145
+ self._sunsethourangle_outputpointer[0] = self.sunsethourangle
146
+ if self._solartimeangle_outputflag:
147
+ self._solartimeangle_outputpointer[0] = self.solartimeangle
148
+ if self._possiblesunshineduration_outputflag:
149
+ self._possiblesunshineduration_outputpointer[0] = self.possiblesunshineduration
150
+ if self._sunshineduration_outputflag:
151
+ self._sunshineduration_outputpointer[0] = self.sunshineduration
152
+ @cython.final
153
+ cdef class FluxSequences:
154
+ cpdef inline void load_data(self, numpy.int64_t idx) noexcept nogil:
155
+ cdef numpy.int64_t k
156
+ if self._extraterrestrialradiation_diskflag_reading:
157
+ self.extraterrestrialradiation = self._extraterrestrialradiation_ncarray[0]
158
+ elif self._extraterrestrialradiation_ramflag:
159
+ self.extraterrestrialradiation = self._extraterrestrialradiation_array[idx]
160
+ if self._clearskysolarradiation_diskflag_reading:
161
+ self.clearskysolarradiation = self._clearskysolarradiation_ncarray[0]
162
+ elif self._clearskysolarradiation_ramflag:
163
+ self.clearskysolarradiation = self._clearskysolarradiation_array[idx]
164
+ cpdef inline void save_data(self, numpy.int64_t idx) noexcept nogil:
165
+ cdef numpy.int64_t k
166
+ if self._extraterrestrialradiation_diskflag_writing:
167
+ self._extraterrestrialradiation_ncarray[0] = self.extraterrestrialradiation
168
+ if self._extraterrestrialradiation_ramflag:
169
+ self._extraterrestrialradiation_array[idx] = self.extraterrestrialradiation
170
+ if self._clearskysolarradiation_diskflag_writing:
171
+ self._clearskysolarradiation_ncarray[0] = self.clearskysolarradiation
172
+ if self._clearskysolarradiation_ramflag:
173
+ self._clearskysolarradiation_array[idx] = self.clearskysolarradiation
174
+ cpdef inline set_pointeroutput(self, str name, pointerutils.PDouble value):
175
+ if name == "extraterrestrialradiation":
176
+ self._extraterrestrialradiation_outputpointer = value.p_value
177
+ if name == "clearskysolarradiation":
178
+ self._clearskysolarradiation_outputpointer = value.p_value
179
+ cpdef inline void update_outputs(self) noexcept nogil:
180
+ if self._extraterrestrialradiation_outputflag:
181
+ self._extraterrestrialradiation_outputpointer[0] = self.extraterrestrialradiation
182
+ if self._clearskysolarradiation_outputflag:
183
+ self._clearskysolarradiation_outputpointer[0] = self.clearskysolarradiation
184
+ @cython.final
185
+ cdef class Model(masterinterface.MasterInterface):
186
+ cpdef inline void simulate(self, numpy.int64_t idx) noexcept nogil:
187
+ self.idx_sim = idx
188
+ self.reset_reuseflags()
189
+ self.load_data(idx)
190
+ self.run()
191
+ self.update_outputs()
192
+ cpdef void reset_reuseflags(self) noexcept nogil:
193
+ self.__hydpy_reuse_process_radiation_v1__ = False
194
+ cpdef void load_data(self, numpy.int64_t idx) noexcept nogil:
195
+ self.idx_sim = idx
196
+ self.sequences.inputs.load_data(idx)
197
+ cpdef void save_data(self, numpy.int64_t idx) noexcept nogil:
198
+ self.idx_sim = idx
199
+ self.sequences.inputs.save_data(idx)
200
+ self.sequences.factors.save_data(idx)
201
+ self.sequences.fluxes.save_data(idx)
202
+ cpdef inline void run(self) noexcept nogil:
203
+ self.calc_earthsundistance_v1()
204
+ self.calc_solardeclination_v1()
205
+ self.calc_sunsethourangle_v1()
206
+ self.calc_solartimeangle_v1()
207
+ self.calc_possiblesunshineduration_v1()
208
+ self.calc_extraterrestrialradiation_v1()
209
+ self.calc_clearskysolarradiation_v1()
210
+ self.calc_sunshineduration_v1()
211
+ cpdef inline void update_inlets(self) noexcept nogil:
212
+ pass
213
+ cpdef inline void update_outlets(self) noexcept nogil:
214
+ pass
215
+ cpdef inline void update_receivers(self, numpy.int64_t idx) noexcept nogil:
216
+ self.idx_sim = idx
217
+ pass
218
+ cpdef inline void update_senders(self, numpy.int64_t idx) noexcept nogil:
219
+ self.idx_sim = idx
220
+ pass
221
+ cpdef inline void update_outputs(self) noexcept nogil:
222
+ self.sequences.factors.update_outputs()
223
+ self.sequences.fluxes.update_outputs()
224
+ cpdef inline void calc_earthsundistance_v1(self) noexcept nogil:
225
+ self.sequences.factors.earthsundistance = 1.0 + 0.033 * cos( 2 * self.parameters.fixed.pi / 366.0 * (self.parameters.derived.doy[self.idx_sim] + 1) )
226
+ cpdef inline void calc_solardeclination_v1(self) noexcept nogil:
227
+ self.sequences.factors.solardeclination = 0.409 * sin( 2 * self.parameters.fixed.pi / 366 * (self.parameters.derived.doy[self.idx_sim] + 1) - 1.39 )
228
+ cpdef inline void calc_sunsethourangle_v1(self) noexcept nogil:
229
+ self.sequences.factors.sunsethourangle = acos( -tan(self.parameters.derived.latituderad) * tan(self.sequences.factors.solardeclination) )
230
+ cpdef inline void calc_solartimeangle_v1(self) noexcept nogil:
231
+ cdef double d_time
232
+ cdef double d_sc
233
+ cdef double d_b
234
+ d_b = 2.0 * self.parameters.fixed.pi * (self.parameters.derived.doy[self.idx_sim] - 80.0) / 365.0
235
+ d_sc = ( 0.1645 * sin(2.0 * d_b) - 0.1255 * cos(d_b) - 0.025 * sin(d_b) )
236
+ d_time = ( self.parameters.derived.sct[self.idx_sim] + (self.parameters.control.longitude - self.parameters.derived.utclongitude) / 15.0 + d_sc )
237
+ self.sequences.factors.solartimeangle = self.parameters.fixed.pi / 12.0 * (d_time - 12.0)
238
+ cpdef inline void calc_possiblesunshineduration_v1(self) noexcept nogil:
239
+ cdef double d_thresh
240
+ if self.parameters.derived.hours < 24.0:
241
+ if self.sequences.factors.solartimeangle <= 0.0:
242
+ d_thresh = -self.sequences.factors.solartimeangle - self.parameters.fixed.pi * self.parameters.derived.days
243
+ else:
244
+ d_thresh = self.sequences.factors.solartimeangle - self.parameters.fixed.pi * self.parameters.derived.days
245
+ self.sequences.factors.possiblesunshineduration = min( max(12.0 / self.parameters.fixed.pi * (self.sequences.factors.sunsethourangle - d_thresh), 0.0), self.parameters.derived.hours )
246
+ else:
247
+ self.sequences.factors.possiblesunshineduration = 24.0 / self.parameters.fixed.pi * self.sequences.factors.sunsethourangle
248
+ cpdef inline void calc_extraterrestrialradiation_v1(self) noexcept nogil:
249
+ cdef double d_omega2
250
+ cdef double d_omega1
251
+ cdef double d_delta
252
+ if self.parameters.derived.days < 1.0:
253
+ d_delta = self.parameters.fixed.pi * self.parameters.derived.days
254
+ d_omega1 = self.sequences.factors.solartimeangle - d_delta
255
+ d_omega2 = self.sequences.factors.solartimeangle + d_delta
256
+ self.sequences.fluxes.extraterrestrialradiation = max( (12.0 * self.parameters.fixed.solarconstant / self.parameters.fixed.pi * self.sequences.factors.earthsundistance) * ( ( (d_omega2 - d_omega1) * sin(self.parameters.derived.latituderad) * sin(self.sequences.factors.solardeclination) ) + ( cos(self.parameters.derived.latituderad) * cos(self.sequences.factors.solardeclination) * (sin(d_omega2) - sin(d_omega1)) ) ), 0.0, )
257
+ else:
258
+ self.sequences.fluxes.extraterrestrialradiation = ( self.parameters.fixed.solarconstant / self.parameters.fixed.pi * self.sequences.factors.earthsundistance ) * ( ( self.sequences.factors.sunsethourangle * sin(self.parameters.derived.latituderad) * sin(self.sequences.factors.solardeclination) ) + ( cos(self.parameters.derived.latituderad) * cos(self.sequences.factors.solardeclination) * sin(self.sequences.factors.sunsethourangle) ) )
259
+ cpdef inline void calc_clearskysolarradiation_v1(self) noexcept nogil:
260
+ cdef numpy.int64_t idx
261
+ idx = self.parameters.derived.moy[self.idx_sim]
262
+ self.sequences.fluxes.clearskysolarradiation = self.sequences.fluxes.extraterrestrialradiation * ( self.parameters.control.angstromconstant[idx] + self.parameters.control.angstromfactor[idx] )
263
+ cpdef inline void calc_sunshineduration_v1(self) noexcept nogil:
264
+ cdef double d_sd
265
+ cdef numpy.int64_t idx
266
+ if self.sequences.fluxes.extraterrestrialradiation > 0.0:
267
+ idx = self.parameters.derived.moy[self.idx_sim]
268
+ d_sd = ( (self.sequences.inputs.globalradiation / self.sequences.fluxes.extraterrestrialradiation) - self.parameters.control.angstromconstant[idx] ) * (self.sequences.factors.possiblesunshineduration / self.parameters.control.angstromfactor[idx])
269
+ self.sequences.factors.sunshineduration = min(max(d_sd, 0.0), self.sequences.factors.possiblesunshineduration)
270
+ else:
271
+ self.sequences.factors.sunshineduration = 0.0
272
+ cpdef void process_radiation_v1(self) noexcept nogil:
273
+ if not self.__hydpy_reuse_process_radiation_v1__:
274
+ self.run()
275
+ self.__hydpy_reuse_process_radiation_v1__ = True
276
+ cpdef double get_possiblesunshineduration_v1(self) noexcept nogil:
277
+ return self.sequences.factors.possiblesunshineduration
278
+ cpdef double get_sunshineduration_v1(self) noexcept nogil:
279
+ return self.sequences.factors.sunshineduration
280
+ cpdef double get_clearskysolarradiation_v1(self) noexcept nogil:
281
+ return self.sequences.fluxes.clearskysolarradiation
282
+ cpdef double get_globalradiation_v2(self) noexcept nogil:
283
+ return self.sequences.inputs.globalradiation
284
+ cpdef inline void calc_earthsundistance(self) noexcept nogil:
285
+ self.sequences.factors.earthsundistance = 1.0 + 0.033 * cos( 2 * self.parameters.fixed.pi / 366.0 * (self.parameters.derived.doy[self.idx_sim] + 1) )
286
+ cpdef inline void calc_solardeclination(self) noexcept nogil:
287
+ self.sequences.factors.solardeclination = 0.409 * sin( 2 * self.parameters.fixed.pi / 366 * (self.parameters.derived.doy[self.idx_sim] + 1) - 1.39 )
288
+ cpdef inline void calc_sunsethourangle(self) noexcept nogil:
289
+ self.sequences.factors.sunsethourangle = acos( -tan(self.parameters.derived.latituderad) * tan(self.sequences.factors.solardeclination) )
290
+ cpdef inline void calc_solartimeangle(self) noexcept nogil:
291
+ cdef double d_time
292
+ cdef double d_sc
293
+ cdef double d_b
294
+ d_b = 2.0 * self.parameters.fixed.pi * (self.parameters.derived.doy[self.idx_sim] - 80.0) / 365.0
295
+ d_sc = ( 0.1645 * sin(2.0 * d_b) - 0.1255 * cos(d_b) - 0.025 * sin(d_b) )
296
+ d_time = ( self.parameters.derived.sct[self.idx_sim] + (self.parameters.control.longitude - self.parameters.derived.utclongitude) / 15.0 + d_sc )
297
+ self.sequences.factors.solartimeangle = self.parameters.fixed.pi / 12.0 * (d_time - 12.0)
298
+ cpdef inline void calc_possiblesunshineduration(self) noexcept nogil:
299
+ cdef double d_thresh
300
+ if self.parameters.derived.hours < 24.0:
301
+ if self.sequences.factors.solartimeangle <= 0.0:
302
+ d_thresh = -self.sequences.factors.solartimeangle - self.parameters.fixed.pi * self.parameters.derived.days
303
+ else:
304
+ d_thresh = self.sequences.factors.solartimeangle - self.parameters.fixed.pi * self.parameters.derived.days
305
+ self.sequences.factors.possiblesunshineduration = min( max(12.0 / self.parameters.fixed.pi * (self.sequences.factors.sunsethourangle - d_thresh), 0.0), self.parameters.derived.hours )
306
+ else:
307
+ self.sequences.factors.possiblesunshineduration = 24.0 / self.parameters.fixed.pi * self.sequences.factors.sunsethourangle
308
+ cpdef inline void calc_extraterrestrialradiation(self) noexcept nogil:
309
+ cdef double d_omega2
310
+ cdef double d_omega1
311
+ cdef double d_delta
312
+ if self.parameters.derived.days < 1.0:
313
+ d_delta = self.parameters.fixed.pi * self.parameters.derived.days
314
+ d_omega1 = self.sequences.factors.solartimeangle - d_delta
315
+ d_omega2 = self.sequences.factors.solartimeangle + d_delta
316
+ self.sequences.fluxes.extraterrestrialradiation = max( (12.0 * self.parameters.fixed.solarconstant / self.parameters.fixed.pi * self.sequences.factors.earthsundistance) * ( ( (d_omega2 - d_omega1) * sin(self.parameters.derived.latituderad) * sin(self.sequences.factors.solardeclination) ) + ( cos(self.parameters.derived.latituderad) * cos(self.sequences.factors.solardeclination) * (sin(d_omega2) - sin(d_omega1)) ) ), 0.0, )
317
+ else:
318
+ self.sequences.fluxes.extraterrestrialradiation = ( self.parameters.fixed.solarconstant / self.parameters.fixed.pi * self.sequences.factors.earthsundistance ) * ( ( self.sequences.factors.sunsethourangle * sin(self.parameters.derived.latituderad) * sin(self.sequences.factors.solardeclination) ) + ( cos(self.parameters.derived.latituderad) * cos(self.sequences.factors.solardeclination) * sin(self.sequences.factors.sunsethourangle) ) )
319
+ cpdef inline void calc_clearskysolarradiation(self) noexcept nogil:
320
+ cdef numpy.int64_t idx
321
+ idx = self.parameters.derived.moy[self.idx_sim]
322
+ self.sequences.fluxes.clearskysolarradiation = self.sequences.fluxes.extraterrestrialradiation * ( self.parameters.control.angstromconstant[idx] + self.parameters.control.angstromfactor[idx] )
323
+ cpdef inline void calc_sunshineduration(self) noexcept nogil:
324
+ cdef double d_sd
325
+ cdef numpy.int64_t idx
326
+ if self.sequences.fluxes.extraterrestrialradiation > 0.0:
327
+ idx = self.parameters.derived.moy[self.idx_sim]
328
+ d_sd = ( (self.sequences.inputs.globalradiation / self.sequences.fluxes.extraterrestrialradiation) - self.parameters.control.angstromconstant[idx] ) * (self.sequences.factors.possiblesunshineduration / self.parameters.control.angstromfactor[idx])
329
+ self.sequences.factors.sunshineduration = min(max(d_sd, 0.0), self.sequences.factors.possiblesunshineduration)
330
+ else:
331
+ self.sequences.factors.sunshineduration = 0.0
332
+ cpdef void process_radiation(self) noexcept nogil:
333
+ if not self.__hydpy_reuse_process_radiation_v1__:
334
+ self.run()
335
+ self.__hydpy_reuse_process_radiation_v1__ = True
336
+ cpdef double get_possiblesunshineduration(self) noexcept nogil:
337
+ return self.sequences.factors.possiblesunshineduration
338
+ cpdef double get_sunshineduration(self) noexcept nogil:
339
+ return self.sequences.factors.sunshineduration
340
+ cpdef double get_clearskysolarradiation(self) noexcept nogil:
341
+ return self.sequences.fluxes.clearskysolarradiation
342
+ cpdef double get_globalradiation(self) noexcept nogil:
343
+ return self.sequences.inputs.globalradiation
@@ -0,0 +1,286 @@
1
+ #!python
2
+ # distutils: define_macros=NPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION
3
+ # cython: language_level=3
4
+ # cython: cpow=True
5
+ # cython: boundscheck=False
6
+ # cython: wraparound=False
7
+ # cython: initializedcheck=False
8
+ # cython: cdivision=True
9
+ from typing import Optional
10
+ import numpy
11
+ cimport numpy
12
+ from libc.math cimport exp, fabs, log, sin, cos, tan, tanh, asin, acos, atan, isnan, isinf
13
+ from libc.math cimport NAN as nan
14
+ from libc.math cimport INFINITY as inf
15
+ import cython
16
+ from cpython.mem cimport PyMem_Malloc
17
+ from cpython.mem cimport PyMem_Realloc
18
+ from cpython.mem cimport PyMem_Free
19
+ from hydpy.cythons.autogen cimport configutils
20
+ from hydpy.cythons.autogen cimport interfaceutils
21
+ from hydpy.cythons.autogen cimport interputils
22
+ from hydpy.cythons.autogen import pointerutils
23
+ from hydpy.cythons.autogen cimport pointerutils
24
+ from hydpy.cythons.autogen cimport quadutils
25
+ from hydpy.cythons.autogen cimport rootutils
26
+ from hydpy.cythons.autogen cimport smoothutils
27
+ from hydpy.cythons.autogen cimport masterinterface
28
+ ctypedef void (*CallbackType) (Model) noexcept nogil
29
+ cdef class CallbackWrapper:
30
+ cdef CallbackType callback
31
+ @cython.final
32
+ cdef class Parameters:
33
+ cdef public ControlParameters control
34
+ cdef public DerivedParameters derived
35
+ cdef public FixedParameters fixed
36
+ @cython.final
37
+ cdef class ControlParameters:
38
+ cdef public double latitude
39
+ cdef public double longitude
40
+ cdef public double[:] angstromconstant
41
+ cdef public numpy.int64_t _angstromconstant_entrymin
42
+ cdef public double[:] angstromfactor
43
+ cdef public numpy.int64_t _angstromfactor_entrymin
44
+ @cython.final
45
+ cdef class DerivedParameters:
46
+ cdef public numpy.int64_t[:] doy
47
+ cdef public numpy.int64_t[:] moy
48
+ cdef public double hours
49
+ cdef public double[:] sct
50
+ cdef public numpy.int64_t nmblogentries
51
+ cdef public numpy.int64_t utclongitude
52
+ cdef public double latituderad
53
+ @cython.final
54
+ cdef class FixedParameters:
55
+ cdef public double pi
56
+ cdef public double solarconstant
57
+ @cython.final
58
+ cdef class Sequences:
59
+ cdef public InputSequences inputs
60
+ cdef public FactorSequences factors
61
+ cdef public FluxSequences fluxes
62
+ cdef public LogSequences logs
63
+ @cython.final
64
+ cdef class InputSequences:
65
+ cdef public double globalradiation
66
+ cdef public numpy.int64_t _globalradiation_ndim
67
+ cdef public numpy.int64_t _globalradiation_length
68
+ cdef public bint _globalradiation_ramflag
69
+ cdef public double[:] _globalradiation_array
70
+ cdef public bint _globalradiation_diskflag_reading
71
+ cdef public bint _globalradiation_diskflag_writing
72
+ cdef public double[:] _globalradiation_ncarray
73
+ cdef public bint _globalradiation_inputflag
74
+ cdef double *_globalradiation_inputpointer
75
+ cpdef inline void load_data(self, numpy.int64_t idx) noexcept nogil
76
+ cpdef inline void save_data(self, numpy.int64_t idx) noexcept nogil
77
+ cpdef inline set_pointerinput(self, str name, pointerutils.PDouble value)
78
+ @cython.final
79
+ cdef class FactorSequences:
80
+ cdef public double earthsundistance
81
+ cdef public numpy.int64_t _earthsundistance_ndim
82
+ cdef public numpy.int64_t _earthsundistance_length
83
+ cdef public bint _earthsundistance_ramflag
84
+ cdef public double[:] _earthsundistance_array
85
+ cdef public bint _earthsundistance_diskflag_reading
86
+ cdef public bint _earthsundistance_diskflag_writing
87
+ cdef public double[:] _earthsundistance_ncarray
88
+ cdef public bint _earthsundistance_outputflag
89
+ cdef double *_earthsundistance_outputpointer
90
+ cdef public double solardeclination
91
+ cdef public numpy.int64_t _solardeclination_ndim
92
+ cdef public numpy.int64_t _solardeclination_length
93
+ cdef public bint _solardeclination_ramflag
94
+ cdef public double[:] _solardeclination_array
95
+ cdef public bint _solardeclination_diskflag_reading
96
+ cdef public bint _solardeclination_diskflag_writing
97
+ cdef public double[:] _solardeclination_ncarray
98
+ cdef public bint _solardeclination_outputflag
99
+ cdef double *_solardeclination_outputpointer
100
+ cdef public double timeofsunrise
101
+ cdef public numpy.int64_t _timeofsunrise_ndim
102
+ cdef public numpy.int64_t _timeofsunrise_length
103
+ cdef public bint _timeofsunrise_ramflag
104
+ cdef public double[:] _timeofsunrise_array
105
+ cdef public bint _timeofsunrise_diskflag_reading
106
+ cdef public bint _timeofsunrise_diskflag_writing
107
+ cdef public double[:] _timeofsunrise_ncarray
108
+ cdef public bint _timeofsunrise_outputflag
109
+ cdef double *_timeofsunrise_outputpointer
110
+ cdef public double timeofsunset
111
+ cdef public numpy.int64_t _timeofsunset_ndim
112
+ cdef public numpy.int64_t _timeofsunset_length
113
+ cdef public bint _timeofsunset_ramflag
114
+ cdef public double[:] _timeofsunset_array
115
+ cdef public bint _timeofsunset_diskflag_reading
116
+ cdef public bint _timeofsunset_diskflag_writing
117
+ cdef public double[:] _timeofsunset_ncarray
118
+ cdef public bint _timeofsunset_outputflag
119
+ cdef double *_timeofsunset_outputpointer
120
+ cdef public double possiblesunshineduration
121
+ cdef public numpy.int64_t _possiblesunshineduration_ndim
122
+ cdef public numpy.int64_t _possiblesunshineduration_length
123
+ cdef public bint _possiblesunshineduration_ramflag
124
+ cdef public double[:] _possiblesunshineduration_array
125
+ cdef public bint _possiblesunshineduration_diskflag_reading
126
+ cdef public bint _possiblesunshineduration_diskflag_writing
127
+ cdef public double[:] _possiblesunshineduration_ncarray
128
+ cdef public bint _possiblesunshineduration_outputflag
129
+ cdef double *_possiblesunshineduration_outputpointer
130
+ cdef public double dailypossiblesunshineduration
131
+ cdef public numpy.int64_t _dailypossiblesunshineduration_ndim
132
+ cdef public numpy.int64_t _dailypossiblesunshineduration_length
133
+ cdef public bint _dailypossiblesunshineduration_ramflag
134
+ cdef public double[:] _dailypossiblesunshineduration_array
135
+ cdef public bint _dailypossiblesunshineduration_diskflag_reading
136
+ cdef public bint _dailypossiblesunshineduration_diskflag_writing
137
+ cdef public double[:] _dailypossiblesunshineduration_ncarray
138
+ cdef public bint _dailypossiblesunshineduration_outputflag
139
+ cdef double *_dailypossiblesunshineduration_outputpointer
140
+ cdef public double unadjustedsunshineduration
141
+ cdef public numpy.int64_t _unadjustedsunshineduration_ndim
142
+ cdef public numpy.int64_t _unadjustedsunshineduration_length
143
+ cdef public bint _unadjustedsunshineduration_ramflag
144
+ cdef public double[:] _unadjustedsunshineduration_array
145
+ cdef public bint _unadjustedsunshineduration_diskflag_reading
146
+ cdef public bint _unadjustedsunshineduration_diskflag_writing
147
+ cdef public double[:] _unadjustedsunshineduration_ncarray
148
+ cdef public bint _unadjustedsunshineduration_outputflag
149
+ cdef double *_unadjustedsunshineduration_outputpointer
150
+ cdef public double sunshineduration
151
+ cdef public numpy.int64_t _sunshineduration_ndim
152
+ cdef public numpy.int64_t _sunshineduration_length
153
+ cdef public bint _sunshineduration_ramflag
154
+ cdef public double[:] _sunshineduration_array
155
+ cdef public bint _sunshineduration_diskflag_reading
156
+ cdef public bint _sunshineduration_diskflag_writing
157
+ cdef public double[:] _sunshineduration_ncarray
158
+ cdef public bint _sunshineduration_outputflag
159
+ cdef double *_sunshineduration_outputpointer
160
+ cdef public double dailysunshineduration
161
+ cdef public numpy.int64_t _dailysunshineduration_ndim
162
+ cdef public numpy.int64_t _dailysunshineduration_length
163
+ cdef public bint _dailysunshineduration_ramflag
164
+ cdef public double[:] _dailysunshineduration_array
165
+ cdef public bint _dailysunshineduration_diskflag_reading
166
+ cdef public bint _dailysunshineduration_diskflag_writing
167
+ cdef public double[:] _dailysunshineduration_ncarray
168
+ cdef public bint _dailysunshineduration_outputflag
169
+ cdef double *_dailysunshineduration_outputpointer
170
+ cdef public double portiondailyradiation
171
+ cdef public numpy.int64_t _portiondailyradiation_ndim
172
+ cdef public numpy.int64_t _portiondailyradiation_length
173
+ cdef public bint _portiondailyradiation_ramflag
174
+ cdef public double[:] _portiondailyradiation_array
175
+ cdef public bint _portiondailyradiation_diskflag_reading
176
+ cdef public bint _portiondailyradiation_diskflag_writing
177
+ cdef public double[:] _portiondailyradiation_ncarray
178
+ cdef public bint _portiondailyradiation_outputflag
179
+ cdef double *_portiondailyradiation_outputpointer
180
+ cpdef inline void load_data(self, numpy.int64_t idx) noexcept nogil
181
+ cpdef inline void save_data(self, numpy.int64_t idx) noexcept nogil
182
+ cpdef inline set_pointeroutput(self, str name, pointerutils.PDouble value)
183
+ cpdef inline void update_outputs(self) noexcept nogil
184
+ @cython.final
185
+ cdef class FluxSequences:
186
+ cdef public double extraterrestrialradiation
187
+ cdef public numpy.int64_t _extraterrestrialradiation_ndim
188
+ cdef public numpy.int64_t _extraterrestrialradiation_length
189
+ cdef public bint _extraterrestrialradiation_ramflag
190
+ cdef public double[:] _extraterrestrialradiation_array
191
+ cdef public bint _extraterrestrialradiation_diskflag_reading
192
+ cdef public bint _extraterrestrialradiation_diskflag_writing
193
+ cdef public double[:] _extraterrestrialradiation_ncarray
194
+ cdef public bint _extraterrestrialradiation_outputflag
195
+ cdef double *_extraterrestrialradiation_outputpointer
196
+ cdef public double clearskysolarradiation
197
+ cdef public numpy.int64_t _clearskysolarradiation_ndim
198
+ cdef public numpy.int64_t _clearskysolarradiation_length
199
+ cdef public bint _clearskysolarradiation_ramflag
200
+ cdef public double[:] _clearskysolarradiation_array
201
+ cdef public bint _clearskysolarradiation_diskflag_reading
202
+ cdef public bint _clearskysolarradiation_diskflag_writing
203
+ cdef public double[:] _clearskysolarradiation_ncarray
204
+ cdef public bint _clearskysolarradiation_outputflag
205
+ cdef double *_clearskysolarradiation_outputpointer
206
+ cdef public double dailyglobalradiation
207
+ cdef public numpy.int64_t _dailyglobalradiation_ndim
208
+ cdef public numpy.int64_t _dailyglobalradiation_length
209
+ cdef public bint _dailyglobalradiation_ramflag
210
+ cdef public double[:] _dailyglobalradiation_array
211
+ cdef public bint _dailyglobalradiation_diskflag_reading
212
+ cdef public bint _dailyglobalradiation_diskflag_writing
213
+ cdef public double[:] _dailyglobalradiation_ncarray
214
+ cdef public bint _dailyglobalradiation_outputflag
215
+ cdef double *_dailyglobalradiation_outputpointer
216
+ cpdef inline void load_data(self, numpy.int64_t idx) noexcept nogil
217
+ cpdef inline void save_data(self, numpy.int64_t idx) noexcept nogil
218
+ cpdef inline set_pointeroutput(self, str name, pointerutils.PDouble value)
219
+ cpdef inline void update_outputs(self) noexcept nogil
220
+ @cython.final
221
+ cdef class LogSequences:
222
+ cdef public double[:] loggedglobalradiation
223
+ cdef public numpy.int64_t _loggedglobalradiation_ndim
224
+ cdef public numpy.int64_t _loggedglobalradiation_length
225
+ cdef public numpy.int64_t _loggedglobalradiation_length_0
226
+ cdef public double[:] loggedunadjustedsunshineduration
227
+ cdef public numpy.int64_t _loggedunadjustedsunshineduration_ndim
228
+ cdef public numpy.int64_t _loggedunadjustedsunshineduration_length
229
+ cdef public numpy.int64_t _loggedunadjustedsunshineduration_length_0
230
+ @cython.final
231
+ cdef class Model(masterinterface.MasterInterface):
232
+ cdef public Parameters parameters
233
+ cdef public Sequences sequences
234
+ cdef bint __hydpy_reuse_process_radiation_v1__
235
+ cpdef inline void simulate(self, numpy.int64_t idx) noexcept nogil
236
+ cpdef void reset_reuseflags(self) noexcept nogil
237
+ cpdef void load_data(self, numpy.int64_t idx) noexcept nogil
238
+ cpdef void save_data(self, numpy.int64_t idx) noexcept nogil
239
+ cpdef inline void run(self) noexcept nogil
240
+ cpdef inline void update_inlets(self) noexcept nogil
241
+ cpdef inline void update_outlets(self) noexcept nogil
242
+ cpdef inline void update_receivers(self, numpy.int64_t idx) noexcept nogil
243
+ cpdef inline void update_senders(self, numpy.int64_t idx) noexcept nogil
244
+ cpdef inline void update_outputs(self) noexcept nogil
245
+ cpdef inline void calc_earthsundistance_v1(self) noexcept nogil
246
+ cpdef inline void calc_solardeclination_v2(self) noexcept nogil
247
+ cpdef inline void calc_timeofsunrise_timeofsunset_v1(self) noexcept nogil
248
+ cpdef inline void calc_dailypossiblesunshineduration_v1(self) noexcept nogil
249
+ cpdef inline void calc_possiblesunshineduration_v2(self) noexcept nogil
250
+ cpdef inline void update_loggedglobalradiation_v1(self) noexcept nogil
251
+ cpdef inline void calc_dailyglobalradiation_v2(self) noexcept nogil
252
+ cpdef inline void calc_extraterrestrialradiation_v2(self) noexcept nogil
253
+ cpdef inline void calc_clearskysolarradiation_v1(self) noexcept nogil
254
+ cpdef inline void calc_dailysunshineduration_v2(self) noexcept nogil
255
+ cpdef inline void calc_portiondailyradiation_v1(self) noexcept nogil
256
+ cpdef inline void adjust_clearskysolarradiation_v1(self) noexcept nogil
257
+ cpdef inline void calc_unadjustedsunshineduration_v1(self) noexcept nogil
258
+ cpdef inline void update_loggedunadjustedsunshineduration_v1(self) noexcept nogil
259
+ cpdef inline void calc_sunshineduration_v2(self) noexcept nogil
260
+ cpdef void process_radiation_v1(self) noexcept nogil
261
+ cpdef double get_possiblesunshineduration_v1(self) noexcept nogil
262
+ cpdef double get_sunshineduration_v1(self) noexcept nogil
263
+ cpdef double get_clearskysolarradiation_v1(self) noexcept nogil
264
+ cpdef double get_globalradiation_v2(self) noexcept nogil
265
+ cpdef inline double return_sunshineduration_v1(self, double globalradiation, double extraterrestrialradiation, double possiblesunshineduration) noexcept nogil
266
+ cpdef inline void calc_earthsundistance(self) noexcept nogil
267
+ cpdef inline void calc_solardeclination(self) noexcept nogil
268
+ cpdef inline void calc_timeofsunrise_timeofsunset(self) noexcept nogil
269
+ cpdef inline void calc_dailypossiblesunshineduration(self) noexcept nogil
270
+ cpdef inline void calc_possiblesunshineduration(self) noexcept nogil
271
+ cpdef inline void update_loggedglobalradiation(self) noexcept nogil
272
+ cpdef inline void calc_dailyglobalradiation(self) noexcept nogil
273
+ cpdef inline void calc_extraterrestrialradiation(self) noexcept nogil
274
+ cpdef inline void calc_clearskysolarradiation(self) noexcept nogil
275
+ cpdef inline void calc_dailysunshineduration(self) noexcept nogil
276
+ cpdef inline void calc_portiondailyradiation(self) noexcept nogil
277
+ cpdef inline void adjust_clearskysolarradiation(self) noexcept nogil
278
+ cpdef inline void calc_unadjustedsunshineduration(self) noexcept nogil
279
+ cpdef inline void update_loggedunadjustedsunshineduration(self) noexcept nogil
280
+ cpdef inline void calc_sunshineduration(self) noexcept nogil
281
+ cpdef void process_radiation(self) noexcept nogil
282
+ cpdef double get_possiblesunshineduration(self) noexcept nogil
283
+ cpdef double get_sunshineduration(self) noexcept nogil
284
+ cpdef double get_clearskysolarradiation(self) noexcept nogil
285
+ cpdef double get_globalradiation(self) noexcept nogil
286
+ cpdef inline double return_sunshineduration(self, double globalradiation, double extraterrestrialradiation, double possiblesunshineduration) noexcept nogil