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.
- hydpy/__init__.py +275 -0
- hydpy/aliases.py +2554 -0
- hydpy/auxs/__init__.py +0 -0
- hydpy/auxs/anntools.py +1305 -0
- hydpy/auxs/armatools.py +883 -0
- hydpy/auxs/calibtools.py +3337 -0
- hydpy/auxs/interptools.py +1094 -0
- hydpy/auxs/iuhtools.py +543 -0
- hydpy/auxs/networktools.py +597 -0
- hydpy/auxs/ppolytools.py +809 -0
- hydpy/auxs/quadtools.py +61 -0
- hydpy/auxs/roottools.py +228 -0
- hydpy/auxs/smoothtools.py +273 -0
- hydpy/auxs/statstools.py +2125 -0
- hydpy/auxs/validtools.py +81 -0
- hydpy/conf/HydPyConfigBase.xsd +68637 -0
- hydpy/conf/HydPyConfigBase.xsdt +358 -0
- hydpy/conf/HydPyConfigMultipleRuns.xsd +25 -0
- hydpy/conf/HydPyConfigSingleRun.xsd +24 -0
- hydpy/conf/__init__.py +0 -0
- hydpy/conf/a_coefficients_explicit_lobatto_sequence.npy +0 -0
- hydpy/conf/support_points_for_smoothpar_logistic2.npy +0 -0
- hydpy/config.py +42 -0
- hydpy/core/__init__.py +0 -0
- hydpy/core/aliastools.py +214 -0
- hydpy/core/autodoctools.py +1947 -0
- hydpy/core/auxfiletools.py +1169 -0
- hydpy/core/devicetools.py +3810 -0
- hydpy/core/exceptiontools.py +269 -0
- hydpy/core/filetools.py +1985 -0
- hydpy/core/hydpytools.py +3089 -0
- hydpy/core/importtools.py +1398 -0
- hydpy/core/indextools.py +345 -0
- hydpy/core/itemtools.py +1849 -0
- hydpy/core/masktools.py +460 -0
- hydpy/core/modeltools.py +4868 -0
- hydpy/core/netcdftools.py +2683 -0
- hydpy/core/objecttools.py +2023 -0
- hydpy/core/optiontools.py +1045 -0
- hydpy/core/parametertools.py +4674 -0
- hydpy/core/printtools.py +222 -0
- hydpy/core/propertytools.py +643 -0
- hydpy/core/pubtools.py +254 -0
- hydpy/core/selectiontools.py +1571 -0
- hydpy/core/sequencetools.py +4476 -0
- hydpy/core/seriestools.py +339 -0
- hydpy/core/testtools.py +2483 -0
- hydpy/core/timetools.py +3567 -0
- hydpy/core/typingtools.py +333 -0
- hydpy/core/variabletools.py +2615 -0
- hydpy/cythons/__init__.py +24 -0
- hydpy/cythons/annutils.pxd +33 -0
- hydpy/cythons/annutils.pyi +25 -0
- hydpy/cythons/annutils.pyx +120 -0
- hydpy/cythons/autogen/__init__.py +0 -0
- hydpy/cythons/autogen/annutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/annutils.pxd +42 -0
- hydpy/cythons/autogen/annutils.pyx +129 -0
- hydpy/cythons/autogen/c_arma.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_arma.pxd +179 -0
- hydpy/cythons/autogen/c_arma.pyx +356 -0
- hydpy/cythons/autogen/c_arma_rimorido.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_arma_rimorido.pxd +179 -0
- hydpy/cythons/autogen/c_arma_rimorido.pyx +356 -0
- hydpy/cythons/autogen/c_conv.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_conv.pxd +198 -0
- hydpy/cythons/autogen/c_conv.pyx +491 -0
- hydpy/cythons/autogen/c_conv_idw.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_conv_idw.pxd +124 -0
- hydpy/cythons/autogen/c_conv_idw.pyx +264 -0
- hydpy/cythons/autogen/c_conv_idw_ed.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_conv_idw_ed.pxd +197 -0
- hydpy/cythons/autogen/c_conv_idw_ed.pyx +481 -0
- hydpy/cythons/autogen/c_conv_nn.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_conv_nn.pxd +120 -0
- hydpy/cythons/autogen/c_conv_nn.pyx +224 -0
- hydpy/cythons/autogen/c_dam.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam.pxd +805 -0
- hydpy/cythons/autogen/c_dam.pyx +1477 -0
- hydpy/cythons/autogen/c_dam_llake.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_llake.pxd +364 -0
- hydpy/cythons/autogen/c_dam_llake.pyx +705 -0
- hydpy/cythons/autogen/c_dam_lreservoir.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_lreservoir.pxd +365 -0
- hydpy/cythons/autogen/c_dam_lreservoir.pyx +708 -0
- hydpy/cythons/autogen/c_dam_lretention.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_lretention.pxd +340 -0
- hydpy/cythons/autogen/c_dam_lretention.pyx +625 -0
- hydpy/cythons/autogen/c_dam_pump.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_pump.pxd +402 -0
- hydpy/cythons/autogen/c_dam_pump.pyx +724 -0
- hydpy/cythons/autogen/c_dam_pump_sluice.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_pump_sluice.pxd +452 -0
- hydpy/cythons/autogen/c_dam_pump_sluice.pyx +829 -0
- hydpy/cythons/autogen/c_dam_sluice.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_sluice.pxd +404 -0
- hydpy/cythons/autogen/c_dam_sluice.pyx +726 -0
- hydpy/cythons/autogen/c_dam_v001.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_v001.pxd +452 -0
- hydpy/cythons/autogen/c_dam_v001.pyx +816 -0
- hydpy/cythons/autogen/c_dam_v002.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_v002.pxd +394 -0
- hydpy/cythons/autogen/c_dam_v002.pyx +703 -0
- hydpy/cythons/autogen/c_dam_v003.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_v003.pxd +417 -0
- hydpy/cythons/autogen/c_dam_v003.pyx +744 -0
- hydpy/cythons/autogen/c_dam_v004.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_v004.pxd +486 -0
- hydpy/cythons/autogen/c_dam_v004.pyx +891 -0
- hydpy/cythons/autogen/c_dam_v005.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dam_v005.pxd +524 -0
- hydpy/cythons/autogen/c_dam_v005.pyx +928 -0
- hydpy/cythons/autogen/c_dummy.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dummy.pxd +151 -0
- hydpy/cythons/autogen/c_dummy.pyx +263 -0
- hydpy/cythons/autogen/c_dummy_interceptedwater.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dummy_interceptedwater.pxd +69 -0
- hydpy/cythons/autogen/c_dummy_interceptedwater.pyx +104 -0
- hydpy/cythons/autogen/c_dummy_node2node.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dummy_node2node.pxd +89 -0
- hydpy/cythons/autogen/c_dummy_node2node.pyx +148 -0
- hydpy/cythons/autogen/c_dummy_snowalbedo.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dummy_snowalbedo.pxd +69 -0
- hydpy/cythons/autogen/c_dummy_snowalbedo.pyx +104 -0
- hydpy/cythons/autogen/c_dummy_snowcover.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dummy_snowcover.pxd +69 -0
- hydpy/cythons/autogen/c_dummy_snowcover.pyx +104 -0
- hydpy/cythons/autogen/c_dummy_snowycanopy.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dummy_snowycanopy.pxd +69 -0
- hydpy/cythons/autogen/c_dummy_snowycanopy.pyx +104 -0
- hydpy/cythons/autogen/c_dummy_soilwater.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_dummy_soilwater.pxd +69 -0
- hydpy/cythons/autogen/c_dummy_soilwater.pyx +104 -0
- hydpy/cythons/autogen/c_evap.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap.pxd +1029 -0
- hydpy/cythons/autogen/c_evap.pyx +2601 -0
- hydpy/cythons/autogen/c_evap_aet_hbv96.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_aet_hbv96.pxd +227 -0
- hydpy/cythons/autogen/c_evap_aet_hbv96.pyx +584 -0
- hydpy/cythons/autogen/c_evap_aet_minhas.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_aet_minhas.pxd +193 -0
- hydpy/cythons/autogen/c_evap_aet_minhas.pyx +478 -0
- hydpy/cythons/autogen/c_evap_aet_morsim.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_aet_morsim.pxd +681 -0
- hydpy/cythons/autogen/c_evap_aet_morsim.pyx +1642 -0
- hydpy/cythons/autogen/c_evap_pet_ambav1.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_pet_ambav1.pxd +532 -0
- hydpy/cythons/autogen/c_evap_pet_ambav1.pyx +1296 -0
- hydpy/cythons/autogen/c_evap_pet_hbv96.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_pet_hbv96.pxd +179 -0
- hydpy/cythons/autogen/c_evap_pet_hbv96.pyx +328 -0
- hydpy/cythons/autogen/c_evap_pet_m.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_pet_m.pxd +124 -0
- hydpy/cythons/autogen/c_evap_pet_m.pyx +214 -0
- hydpy/cythons/autogen/c_evap_pet_mlc.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_pet_mlc.pxd +126 -0
- hydpy/cythons/autogen/c_evap_pet_mlc.pyx +214 -0
- hydpy/cythons/autogen/c_evap_ret_fao56.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_ret_fao56.pxd +305 -0
- hydpy/cythons/autogen/c_evap_ret_fao56.pyx +624 -0
- hydpy/cythons/autogen/c_evap_ret_io.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_ret_io.pxd +112 -0
- hydpy/cythons/autogen/c_evap_ret_io.pyx +176 -0
- hydpy/cythons/autogen/c_evap_ret_tw2002.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_evap_ret_tw2002.pxd +139 -0
- hydpy/cythons/autogen/c_evap_ret_tw2002.pyx +273 -0
- hydpy/cythons/autogen/c_exch.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_exch.pxd +230 -0
- hydpy/cythons/autogen/c_exch.pyx +462 -0
- hydpy/cythons/autogen/c_exch_branch_hbv96.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_exch_branch_hbv96.pxd +134 -0
- hydpy/cythons/autogen/c_exch_branch_hbv96.pyx +255 -0
- hydpy/cythons/autogen/c_exch_waterlevel.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_exch_waterlevel.pxd +54 -0
- hydpy/cythons/autogen/c_exch_waterlevel.pyx +78 -0
- hydpy/cythons/autogen/c_exch_weir_hbv96.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_exch_weir_hbv96.pxd +156 -0
- hydpy/cythons/autogen/c_exch_weir_hbv96.pyx +282 -0
- hydpy/cythons/autogen/c_ga.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_ga.pxd +353 -0
- hydpy/cythons/autogen/c_ga.pyx +1204 -0
- hydpy/cythons/autogen/c_ga_garto.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_ga_garto.pxd +330 -0
- hydpy/cythons/autogen/c_ga_garto.pyx +1105 -0
- hydpy/cythons/autogen/c_ga_garto_submodel1.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_ga_garto_submodel1.pxd +236 -0
- hydpy/cythons/autogen/c_ga_garto_submodel1.pyx +944 -0
- hydpy/cythons/autogen/c_gland.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_gland.pxd +437 -0
- hydpy/cythons/autogen/c_gland.pyx +726 -0
- hydpy/cythons/autogen/c_gland_gr4.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_gland_gr4.pxd +382 -0
- hydpy/cythons/autogen/c_gland_gr4.pyx +605 -0
- hydpy/cythons/autogen/c_gland_gr5.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_gland_gr5.pxd +368 -0
- hydpy/cythons/autogen/c_gland_gr5.pyx +568 -0
- hydpy/cythons/autogen/c_gland_gr6.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_gland_gr6.pxd +420 -0
- hydpy/cythons/autogen/c_gland_gr6.pyx +673 -0
- hydpy/cythons/autogen/c_hland.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_hland.pxd +855 -0
- hydpy/cythons/autogen/c_hland.pyx +2486 -0
- hydpy/cythons/autogen/c_hland_96.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_hland_96.pxd +631 -0
- hydpy/cythons/autogen/c_hland_96.pyx +1724 -0
- hydpy/cythons/autogen/c_hland_96c.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_hland_96c.pxd +621 -0
- hydpy/cythons/autogen/c_hland_96c.pyx +1822 -0
- hydpy/cythons/autogen/c_hland_96p.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_hland_96p.pxd +683 -0
- hydpy/cythons/autogen/c_hland_96p.pyx +1911 -0
- hydpy/cythons/autogen/c_kinw.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_kinw.pxd +509 -0
- hydpy/cythons/autogen/c_kinw.pyx +965 -0
- hydpy/cythons/autogen/c_kinw_williams.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_kinw_williams.pxd +409 -0
- hydpy/cythons/autogen/c_kinw_williams.pyx +763 -0
- hydpy/cythons/autogen/c_kinw_williams_ext.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_kinw_williams_ext.pxd +220 -0
- hydpy/cythons/autogen/c_kinw_williams_ext.pyx +440 -0
- hydpy/cythons/autogen/c_lland.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_lland.pxd +1386 -0
- hydpy/cythons/autogen/c_lland.pyx +3679 -0
- hydpy/cythons/autogen/c_lland_dd.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_lland_dd.pxd +679 -0
- hydpy/cythons/autogen/c_lland_dd.pyx +1719 -0
- hydpy/cythons/autogen/c_lland_knauf.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_lland_knauf.pxd +1096 -0
- hydpy/cythons/autogen/c_lland_knauf.pyx +2784 -0
- hydpy/cythons/autogen/c_lland_knauf_ic.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_lland_knauf_ic.pxd +1369 -0
- hydpy/cythons/autogen/c_lland_knauf_ic.pyx +3625 -0
- hydpy/cythons/autogen/c_meteo.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo.pxd +469 -0
- hydpy/cythons/autogen/c_meteo.pyx +879 -0
- hydpy/cythons/autogen/c_meteo_clear_glob_io.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_clear_glob_io.pxd +75 -0
- hydpy/cythons/autogen/c_meteo_clear_glob_io.pyx +107 -0
- hydpy/cythons/autogen/c_meteo_glob_fao56.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_glob_fao56.pxd +209 -0
- hydpy/cythons/autogen/c_meteo_glob_fao56.pyx +339 -0
- hydpy/cythons/autogen/c_meteo_glob_io.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_glob_io.pxd +63 -0
- hydpy/cythons/autogen/c_meteo_glob_io.pyx +91 -0
- hydpy/cythons/autogen/c_meteo_glob_morsim.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_glob_morsim.pxd +289 -0
- hydpy/cythons/autogen/c_meteo_glob_morsim.pyx +527 -0
- hydpy/cythons/autogen/c_meteo_precip_io.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_precip_io.pxd +112 -0
- hydpy/cythons/autogen/c_meteo_precip_io.pyx +176 -0
- hydpy/cythons/autogen/c_meteo_psun_sun_glob_io.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_psun_sun_glob_io.pxd +87 -0
- hydpy/cythons/autogen/c_meteo_psun_sun_glob_io.pyx +123 -0
- hydpy/cythons/autogen/c_meteo_sun_fao56.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_sun_fao56.pxd +209 -0
- hydpy/cythons/autogen/c_meteo_sun_fao56.pyx +343 -0
- hydpy/cythons/autogen/c_meteo_sun_morsim.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_sun_morsim.pxd +286 -0
- hydpy/cythons/autogen/c_meteo_sun_morsim.pyx +519 -0
- hydpy/cythons/autogen/c_meteo_temp_io.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_meteo_temp_io.pxd +112 -0
- hydpy/cythons/autogen/c_meteo_temp_io.pyx +176 -0
- hydpy/cythons/autogen/c_musk.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_musk.pxd +282 -0
- hydpy/cythons/autogen/c_musk.pyx +605 -0
- hydpy/cythons/autogen/c_musk_classic.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_musk_classic.pxd +138 -0
- hydpy/cythons/autogen/c_musk_classic.pyx +226 -0
- hydpy/cythons/autogen/c_musk_mct.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_musk_mct.pxd +282 -0
- hydpy/cythons/autogen/c_musk_mct.pyx +609 -0
- hydpy/cythons/autogen/c_rconc.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_rconc.pxd +119 -0
- hydpy/cythons/autogen/c_rconc.pyx +174 -0
- hydpy/cythons/autogen/c_rconc_nash.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_rconc_nash.pxd +111 -0
- hydpy/cythons/autogen/c_rconc_nash.pyx +185 -0
- hydpy/cythons/autogen/c_rconc_uh.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_rconc_uh.pxd +92 -0
- hydpy/cythons/autogen/c_rconc_uh.pyx +125 -0
- hydpy/cythons/autogen/c_sw1d.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d.pxd +511 -0
- hydpy/cythons/autogen/c_sw1d.pyx +1263 -0
- hydpy/cythons/autogen/c_sw1d_channel.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_channel.pxd +119 -0
- hydpy/cythons/autogen/c_sw1d_channel.pyx +300 -0
- hydpy/cythons/autogen/c_sw1d_gate_out.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_gate_out.pxd +240 -0
- hydpy/cythons/autogen/c_sw1d_gate_out.pyx +476 -0
- hydpy/cythons/autogen/c_sw1d_lias.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_lias.pxd +320 -0
- hydpy/cythons/autogen/c_sw1d_lias.pyx +619 -0
- hydpy/cythons/autogen/c_sw1d_lias_sluice.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_lias_sluice.pxd +325 -0
- hydpy/cythons/autogen/c_sw1d_lias_sluice.pyx +644 -0
- hydpy/cythons/autogen/c_sw1d_network.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_network.pxd +90 -0
- hydpy/cythons/autogen/c_sw1d_network.pyx +246 -0
- hydpy/cythons/autogen/c_sw1d_pump.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_pump.pxd +256 -0
- hydpy/cythons/autogen/c_sw1d_pump.pyx +502 -0
- hydpy/cythons/autogen/c_sw1d_q_in.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_q_in.pxd +224 -0
- hydpy/cythons/autogen/c_sw1d_q_in.pyx +383 -0
- hydpy/cythons/autogen/c_sw1d_q_out.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_q_out.pxd +224 -0
- hydpy/cythons/autogen/c_sw1d_q_out.pyx +383 -0
- hydpy/cythons/autogen/c_sw1d_storage.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_storage.pxd +193 -0
- hydpy/cythons/autogen/c_sw1d_storage.pyx +349 -0
- hydpy/cythons/autogen/c_sw1d_weir_out.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_sw1d_weir_out.pxd +212 -0
- hydpy/cythons/autogen/c_sw1d_weir_out.pyx +404 -0
- hydpy/cythons/autogen/c_test.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_test.pxd +175 -0
- hydpy/cythons/autogen/c_test.pyx +348 -0
- hydpy/cythons/autogen/c_test_discontinous.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_test_discontinous.pxd +146 -0
- hydpy/cythons/autogen/c_test_discontinous.pyx +256 -0
- hydpy/cythons/autogen/c_test_stiff0d.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_test_stiff0d.pxd +146 -0
- hydpy/cythons/autogen/c_test_stiff0d.pyx +250 -0
- hydpy/cythons/autogen/c_test_stiff1d.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_test_stiff1d.pxd +145 -0
- hydpy/cythons/autogen/c_test_stiff1d.pyx +294 -0
- hydpy/cythons/autogen/c_whmod.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_whmod.pxd +482 -0
- hydpy/cythons/autogen/c_whmod.pyx +1156 -0
- hydpy/cythons/autogen/c_whmod_rural.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_whmod_rural.pxd +411 -0
- hydpy/cythons/autogen/c_whmod_rural.pyx +982 -0
- hydpy/cythons/autogen/c_whmod_urban.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_whmod_urban.pxd +482 -0
- hydpy/cythons/autogen/c_whmod_urban.pyx +1155 -0
- hydpy/cythons/autogen/c_wland.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_wland.pxd +842 -0
- hydpy/cythons/autogen/c_wland.pyx +1890 -0
- hydpy/cythons/autogen/c_wland_gd.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_wland_gd.pxd +829 -0
- hydpy/cythons/autogen/c_wland_gd.pyx +1847 -0
- hydpy/cythons/autogen/c_wland_wag.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_wland_wag.pxd +810 -0
- hydpy/cythons/autogen/c_wland_wag.pyx +1780 -0
- hydpy/cythons/autogen/c_wq.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_wq.pxd +275 -0
- hydpy/cythons/autogen/c_wq.pyx +652 -0
- hydpy/cythons/autogen/c_wq_trapeze.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_wq_trapeze.pxd +170 -0
- hydpy/cythons/autogen/c_wq_trapeze.pyx +400 -0
- hydpy/cythons/autogen/c_wq_trapeze_strickler.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_wq_trapeze_strickler.pxd +243 -0
- hydpy/cythons/autogen/c_wq_trapeze_strickler.pyx +578 -0
- hydpy/cythons/autogen/c_wq_walrus.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/c_wq_walrus.pxd +61 -0
- hydpy/cythons/autogen/c_wq_walrus.pyx +82 -0
- hydpy/cythons/autogen/configutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/configutils.pxd +17 -0
- hydpy/cythons/autogen/configutils.pyx +119 -0
- hydpy/cythons/autogen/interfaceutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/interfaceutils.pxd +31 -0
- hydpy/cythons/autogen/interfaceutils.pyx +82 -0
- hydpy/cythons/autogen/interputils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/interputils.pxd +42 -0
- hydpy/cythons/autogen/interputils.pyx +118 -0
- hydpy/cythons/autogen/masterinterface.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/masterinterface.pxd +153 -0
- hydpy/cythons/autogen/masterinterface.pyx +222 -0
- hydpy/cythons/autogen/pointerutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/pointerutils.pxd +31 -0
- hydpy/cythons/autogen/pointerutils.pyx +650 -0
- hydpy/cythons/autogen/ppolyutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/ppolyutils.pxd +35 -0
- hydpy/cythons/autogen/ppolyutils.pyx +59 -0
- hydpy/cythons/autogen/quadutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/quadutils.pxd +26 -0
- hydpy/cythons/autogen/quadutils.pyx +973 -0
- hydpy/cythons/autogen/rootutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/rootutils.pxd +28 -0
- hydpy/cythons/autogen/rootutils.pyx +109 -0
- hydpy/cythons/autogen/sequenceutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/sequenceutils.pxd +45 -0
- hydpy/cythons/autogen/sequenceutils.pyx +101 -0
- hydpy/cythons/autogen/smoothutils.cp313-win_amd64.pyd +0 -0
- hydpy/cythons/autogen/smoothutils.pxd +29 -0
- hydpy/cythons/autogen/smoothutils.pyx +833 -0
- hydpy/cythons/configutils.pxd +8 -0
- hydpy/cythons/configutils.pyi +5 -0
- hydpy/cythons/configutils.pyx +110 -0
- hydpy/cythons/interfaceutils.pxd +22 -0
- hydpy/cythons/interfaceutils.pyi +15 -0
- hydpy/cythons/interfaceutils.pyx +73 -0
- hydpy/cythons/interputils.pxd +33 -0
- hydpy/cythons/interputils.pyi +32 -0
- hydpy/cythons/interputils.pyx +109 -0
- hydpy/cythons/modelutils.py +2990 -0
- hydpy/cythons/pointerutils.pxd +22 -0
- hydpy/cythons/pointerutils.pyi +89 -0
- hydpy/cythons/pointerutils.pyx +641 -0
- hydpy/cythons/ppolyutils.pxd +26 -0
- hydpy/cythons/ppolyutils.pyi +21 -0
- hydpy/cythons/ppolyutils.pyx +50 -0
- hydpy/cythons/quadutils.pxd +17 -0
- hydpy/cythons/quadutils.pyi +13 -0
- hydpy/cythons/quadutils.pyx +964 -0
- hydpy/cythons/rootutils.pxd +19 -0
- hydpy/cythons/rootutils.pyi +21 -0
- hydpy/cythons/rootutils.pyx +100 -0
- hydpy/cythons/sequenceutils.pxd +36 -0
- hydpy/cythons/sequenceutils.pyi +7 -0
- hydpy/cythons/sequenceutils.pyx +92 -0
- hydpy/cythons/smoothutils.pxd +20 -0
- hydpy/cythons/smoothutils.pyi +15 -0
- hydpy/cythons/smoothutils.pyx +824 -0
- hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/land_dill_assl.py +13 -0
- hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/land_lahn_kalk.py +13 -0
- hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/land_lahn_leun.py +14 -0
- hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/land_lahn_marb.py +13 -0
- hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/stream_dill_assl_lahn_leun.py +5 -0
- hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/stream_lahn_leun_lahn_kalk.py +5 -0
- hydpy/data/HydPy-H-Lahn/conditions/init_1996_01_01_00_00_00/stream_lahn_marb_lahn_leun.py +5 -0
- hydpy/data/HydPy-H-Lahn/control/default/land.py +9 -0
- hydpy/data/HydPy-H-Lahn/control/default/land_dill_assl.py +57 -0
- hydpy/data/HydPy-H-Lahn/control/default/land_lahn_kalk.py +57 -0
- hydpy/data/HydPy-H-Lahn/control/default/land_lahn_leun.py +56 -0
- hydpy/data/HydPy-H-Lahn/control/default/land_lahn_marb.py +57 -0
- hydpy/data/HydPy-H-Lahn/control/default/stream_dill_assl_lahn_leun.py +7 -0
- hydpy/data/HydPy-H-Lahn/control/default/stream_lahn_leun_lahn_kalk.py +7 -0
- hydpy/data/HydPy-H-Lahn/control/default/stream_lahn_marb_lahn_leun.py +7 -0
- hydpy/data/HydPy-H-Lahn/multiple_runs.xml +309 -0
- hydpy/data/HydPy-H-Lahn/multiple_runs_alpha.xml +71 -0
- hydpy/data/HydPy-H-Lahn/network/default/headwaters.py +11 -0
- hydpy/data/HydPy-H-Lahn/network/default/nonheadwaters.py +11 -0
- hydpy/data/HydPy-H-Lahn/network/default/streams.py +8 -0
- hydpy/data/HydPy-H-Lahn/series/default/dill_assl_obs_q.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/evap_pet_hbv96_input_normalairtemperature.nc +0 -0
- hydpy/data/HydPy-H-Lahn/series/default/evap_pet_hbv96_input_normalevapotranspiration.nc +0 -0
- hydpy/data/HydPy-H-Lahn/series/default/hland_96_input_p.nc +0 -0
- hydpy/data/HydPy-H-Lahn/series/default/hland_96_input_t.nc +0 -0
- hydpy/data/HydPy-H-Lahn/series/default/lahn_kalk_obs_q.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/lahn_leun_obs_q.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/lahn_marb_obs_q.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_dill_assl_evap_pet_hbv96_input_normalairtemperature.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_dill_assl_evap_pet_hbv96_input_normalevapotranspiration.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_dill_assl_hland_96_input_p.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_dill_assl_hland_96_input_t.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_kalk_evap_pet_hbv96_input_normalairtemperature.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_kalk_evap_pet_hbv96_input_normalevapotranspiration.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_kalk_hland_96_input_p.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_kalk_hland_96_input_t.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_leun_evap_pet_hbv96_input_normalairtemperature.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_leun_evap_pet_hbv96_input_normalevapotranspiration.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_leun_hland_96_input_p.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_leun_hland_96_input_t.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_marb_evap_pet_hbv96_input_normalairtemperature.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_marb_evap_pet_hbv96_input_normalevapotranspiration.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_marb_hland_96_input_p.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/land_lahn_marb_hland_96_input_t.asc +11387 -0
- hydpy/data/HydPy-H-Lahn/series/default/obs_q.nc +0 -0
- hydpy/data/HydPy-H-Lahn/single_run.xml +152 -0
- hydpy/data/HydPy-H-Lahn/single_run.xmlt +143 -0
- hydpy/data/__init__.py +17 -0
- hydpy/docs/__init__.py +0 -0
- hydpy/docs/autofigs/__init__.py +0 -0
- hydpy/docs/bib/__init__.py +0 -0
- hydpy/docs/bib/refs.bib +566 -0
- hydpy/docs/combine_docversions.py +133 -0
- hydpy/docs/draw_model_sketches.py +1301 -0
- hydpy/docs/enable_autodoc.py +7 -0
- hydpy/docs/figs/HydPy-G-GR4.png +0 -0
- hydpy/docs/figs/HydPy-G-GR5.png +0 -0
- hydpy/docs/figs/HydPy-G-GR6.png +0 -0
- hydpy/docs/figs/HydPy-H-HBV96-COSERO.png +0 -0
- hydpy/docs/figs/HydPy-H-HBV96-PREVAH.png +0 -0
- hydpy/docs/figs/HydPy-H-HBV96.png +0 -0
- hydpy/docs/figs/HydPy-H-Lahn.png +0 -0
- hydpy/docs/figs/HydPy-KinW-Williams.png +0 -0
- hydpy/docs/figs/HydPy-L-DD.png +0 -0
- hydpy/docs/figs/HydPy-W-Wag.png +0 -0
- hydpy/docs/figs/HydPy_Logo.png +0 -0
- hydpy/docs/figs/HydPy_Logo_Text.png +0 -0
- hydpy/docs/figs/IDLE-editor.png +0 -0
- hydpy/docs/figs/IDLE-shell.png +0 -0
- hydpy/docs/figs/LAWA_river-basin-bumbers.png +0 -0
- hydpy/docs/figs/__init__.py +0 -0
- hydpy/docs/html_/__init__.py +0 -0
- hydpy/docs/polish_html.py +57 -0
- hydpy/docs/prepare.py +224 -0
- hydpy/docs/publish_docs.py +53 -0
- hydpy/docs/rst/HydPy-ARMA.rst +27 -0
- hydpy/docs/rst/HydPy-Conv.rst +22 -0
- hydpy/docs/rst/HydPy-Dam.rst +79 -0
- hydpy/docs/rst/HydPy-Dummy.rst +21 -0
- hydpy/docs/rst/HydPy-Evap.rst +26 -0
- hydpy/docs/rst/HydPy-Exch.rst +36 -0
- hydpy/docs/rst/HydPy-G.rst +40 -0
- hydpy/docs/rst/HydPy-GA.rst +34 -0
- hydpy/docs/rst/HydPy-H.rst +24 -0
- hydpy/docs/rst/HydPy-KinW.rst +32 -0
- hydpy/docs/rst/HydPy-L.rst +42 -0
- hydpy/docs/rst/HydPy-Meteo.rst +28 -0
- hydpy/docs/rst/HydPy-Musk.rst +21 -0
- hydpy/docs/rst/HydPy-Rconc.rst +17 -0
- hydpy/docs/rst/HydPy-SW1D.rst +49 -0
- hydpy/docs/rst/HydPy-Test.rst +19 -0
- hydpy/docs/rst/HydPy-W.rst +20 -0
- hydpy/docs/rst/HydPy-WHMod.rst +19 -0
- hydpy/docs/rst/HydPy-WQ.rst +20 -0
- hydpy/docs/rst/__init__.py +0 -0
- hydpy/docs/rst/additional_repositories.rst +40 -0
- hydpy/docs/rst/auxiliaries.rst +31 -0
- hydpy/docs/rst/continuous_integration.rst +75 -0
- hydpy/docs/rst/core.rst +75 -0
- hydpy/docs/rst/cythons.rst +47 -0
- hydpy/docs/rst/definitions.rst +506 -0
- hydpy/docs/rst/developer_guide.rst +54 -0
- hydpy/docs/rst/example_projects.rst +40 -0
- hydpy/docs/rst/execution.rst +22 -0
- hydpy/docs/rst/framework_tools.rst +56 -0
- hydpy/docs/rst/how_to_read_the_reference_manual.rst +156 -0
- hydpy/docs/rst/hydpydependencies.rst +55 -0
- hydpy/docs/rst/index.rst +125 -0
- hydpy/docs/rst/installation.rst +155 -0
- hydpy/docs/rst/model_families.rst +79 -0
- hydpy/docs/rst/model_overview.rst +291 -0
- hydpy/docs/rst/modelimports.rst +10 -0
- hydpy/docs/rst/options.rst +119 -0
- hydpy/docs/rst/programming_style.rst +572 -0
- hydpy/docs/rst/project_structure.rst +520 -0
- hydpy/docs/rst/quickstart.rst +304 -0
- hydpy/docs/rst/reference_manual.rst +29 -0
- hydpy/docs/rst/required_tools.rst +50 -0
- hydpy/docs/rst/simulation.rst +514 -0
- hydpy/docs/rst/submodel_interfaces.rst +32 -0
- hydpy/docs/rst/tests_and_documentation.rst +85 -0
- hydpy/docs/rst/user_guide.rst +38 -0
- hydpy/docs/rst/version_control.rst +116 -0
- hydpy/docs/rst/zbibliography.rst +8 -0
- hydpy/docs/sphinx/__init__.py +0 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/changes/frameset.html +11 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/changes/rstsource.html +15 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/changes/versionchanges.html +33 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/defindex.html +35 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/domainindex.html +56 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/genindex-single.html +63 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/genindex-split.html +41 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/genindex.html +76 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/globaltoc.html +11 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/layout.html +221 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/localtoc.html +15 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/opensearch.xml +13 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/page.html +13 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/relations.html +23 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/search.html +65 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/searchbox.html +21 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/searchfield.html +23 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/sourcelink.html +18 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/basic.css_t +925 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/doctools.js +156 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/documentation_options.js_t +13 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/file.png +0 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/language_data.js_t +26 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/minus.png +0 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/plus.png +0 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/searchtools.js +574 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/static/sphinx_highlight.js +154 -0
- hydpy/docs/sphinx/_themes/basic_hydpy/theme.conf +16 -0
- hydpy/docs/sphinx/_themes/classic_hydpy/layout.html +23 -0
- hydpy/docs/sphinx/_themes/classic_hydpy/static/classic.css_t +358 -0
- hydpy/docs/sphinx/_themes/classic_hydpy/static/sidebar.js_t +72 -0
- hydpy/docs/sphinx/_themes/classic_hydpy/theme.conf +32 -0
- hydpy/docs/sphinx/conf.py +398 -0
- hydpy/docs/sphinx/defaultlinks_extension.py +36 -0
- hydpy/docs/sphinx/integrationtest_extension.py +104 -0
- hydpy/docs/sphinx/projectstructure_extension.py +58 -0
- hydpy/docs/sphinx/submodelgraph_extension.py +53 -0
- hydpy/exe/__init__.py +0 -0
- hydpy/exe/commandtools.py +651 -0
- hydpy/exe/hyd.py +277 -0
- hydpy/exe/modelimports.py +41 -0
- hydpy/exe/replacetools.py +216 -0
- hydpy/exe/servertools.py +2348 -0
- hydpy/exe/xmltools.py +3280 -0
- hydpy/interfaces/__init__.py +0 -0
- hydpy/interfaces/aetinterfaces.py +94 -0
- hydpy/interfaces/dischargeinterfaces.py +45 -0
- hydpy/interfaces/petinterfaces.py +117 -0
- hydpy/interfaces/precipinterfaces.py +42 -0
- hydpy/interfaces/radiationinterfaces.py +79 -0
- hydpy/interfaces/rconcinterfaces.py +30 -0
- hydpy/interfaces/routinginterfaces.py +324 -0
- hydpy/interfaces/soilinterfaces.py +96 -0
- hydpy/interfaces/stateinterfaces.py +98 -0
- hydpy/interfaces/tempinterfaces.py +46 -0
- hydpy/models/__init__.py +0 -0
- hydpy/models/arma/__init__.py +14 -0
- hydpy/models/arma/arma_control.py +383 -0
- hydpy/models/arma/arma_derived.py +204 -0
- hydpy/models/arma/arma_fluxes.py +41 -0
- hydpy/models/arma/arma_inlets.py +11 -0
- hydpy/models/arma/arma_logs.py +19 -0
- hydpy/models/arma/arma_model.py +461 -0
- hydpy/models/arma/arma_outlets.py +11 -0
- hydpy/models/arma_rimorido.py +381 -0
- hydpy/models/conv/__init__.py +12 -0
- hydpy/models/conv/conv_control.py +303 -0
- hydpy/models/conv/conv_derived.py +271 -0
- hydpy/models/conv/conv_fluxes.py +54 -0
- hydpy/models/conv/conv_inlets.py +11 -0
- hydpy/models/conv/conv_model.py +687 -0
- hydpy/models/conv/conv_outlets.py +11 -0
- hydpy/models/conv_idw.py +120 -0
- hydpy/models/conv_idw_ed.py +184 -0
- hydpy/models/conv_nn.py +112 -0
- hydpy/models/dam/__init__.py +16 -0
- hydpy/models/dam/dam_aides.py +17 -0
- hydpy/models/dam/dam_control.py +346 -0
- hydpy/models/dam/dam_derived.py +559 -0
- hydpy/models/dam/dam_factors.py +46 -0
- hydpy/models/dam/dam_fluxes.py +179 -0
- hydpy/models/dam/dam_inlets.py +29 -0
- hydpy/models/dam/dam_logs.py +52 -0
- hydpy/models/dam/dam_model.py +5011 -0
- hydpy/models/dam/dam_outlets.py +23 -0
- hydpy/models/dam/dam_receivers.py +41 -0
- hydpy/models/dam/dam_senders.py +23 -0
- hydpy/models/dam/dam_solver.py +75 -0
- hydpy/models/dam/dam_states.py +11 -0
- hydpy/models/dam_llake.py +499 -0
- hydpy/models/dam_lreservoir.py +548 -0
- hydpy/models/dam_lretention.py +343 -0
- hydpy/models/dam_pump.py +278 -0
- hydpy/models/dam_pump_sluice.py +339 -0
- hydpy/models/dam_sluice.py +319 -0
- hydpy/models/dam_v001.py +1127 -0
- hydpy/models/dam_v002.py +381 -0
- hydpy/models/dam_v003.py +422 -0
- hydpy/models/dam_v004.py +665 -0
- hydpy/models/dam_v005.py +479 -0
- hydpy/models/dummy/__init__.py +15 -0
- hydpy/models/dummy/dummy_control.py +22 -0
- hydpy/models/dummy/dummy_fluxes.py +11 -0
- hydpy/models/dummy/dummy_inlets.py +11 -0
- hydpy/models/dummy/dummy_inputs.py +41 -0
- hydpy/models/dummy/dummy_model.py +196 -0
- hydpy/models/dummy/dummy_outlets.py +11 -0
- hydpy/models/dummy_interceptedwater.py +85 -0
- hydpy/models/dummy_node2node.py +83 -0
- hydpy/models/dummy_snowalbedo.py +84 -0
- hydpy/models/dummy_snowcover.py +84 -0
- hydpy/models/dummy_snowycanopy.py +86 -0
- hydpy/models/dummy_soilwater.py +85 -0
- hydpy/models/evap/__init__.py +13 -0
- hydpy/models/evap/evap_control.py +354 -0
- hydpy/models/evap/evap_derived.py +236 -0
- hydpy/models/evap/evap_factors.py +188 -0
- hydpy/models/evap/evap_fixed.py +68 -0
- hydpy/models/evap/evap_fluxes.py +150 -0
- hydpy/models/evap/evap_inputs.py +54 -0
- hydpy/models/evap/evap_logs.py +91 -0
- hydpy/models/evap/evap_masks.py +48 -0
- hydpy/models/evap/evap_model.py +9170 -0
- hydpy/models/evap/evap_parameters.py +149 -0
- hydpy/models/evap/evap_sequences.py +32 -0
- hydpy/models/evap/evap_states.py +18 -0
- hydpy/models/evap_aet_hbv96.py +372 -0
- hydpy/models/evap_aet_minhas.py +331 -0
- hydpy/models/evap_aet_morsim.py +627 -0
- hydpy/models/evap_pet_ambav1.py +483 -0
- hydpy/models/evap_pet_hbv96.py +147 -0
- hydpy/models/evap_pet_m.py +94 -0
- hydpy/models/evap_pet_mlc.py +107 -0
- hydpy/models/evap_ret_fao56.py +265 -0
- hydpy/models/evap_ret_io.py +74 -0
- hydpy/models/evap_ret_tw2002.py +165 -0
- hydpy/models/exch/__init__.py +14 -0
- hydpy/models/exch/exch_control.py +262 -0
- hydpy/models/exch/exch_derived.py +36 -0
- hydpy/models/exch/exch_factors.py +26 -0
- hydpy/models/exch/exch_fluxes.py +48 -0
- hydpy/models/exch/exch_inlets.py +11 -0
- hydpy/models/exch/exch_logs.py +12 -0
- hydpy/models/exch/exch_model.py +451 -0
- hydpy/models/exch/exch_outlets.py +17 -0
- hydpy/models/exch/exch_receivers.py +17 -0
- hydpy/models/exch_branch_hbv96.py +186 -0
- hydpy/models/exch_waterlevel.py +73 -0
- hydpy/models/exch_weir_hbv96.py +609 -0
- hydpy/models/ga/__init__.py +14 -0
- hydpy/models/ga/ga_aides.py +17 -0
- hydpy/models/ga/ga_control.py +208 -0
- hydpy/models/ga/ga_derived.py +77 -0
- hydpy/models/ga/ga_fluxes.py +83 -0
- hydpy/models/ga/ga_inputs.py +26 -0
- hydpy/models/ga/ga_logs.py +17 -0
- hydpy/models/ga/ga_model.py +2952 -0
- hydpy/models/ga/ga_states.py +87 -0
- hydpy/models/ga_garto.py +1001 -0
- hydpy/models/ga_garto_submodel1.py +79 -0
- hydpy/models/gland/__init__.py +14 -0
- hydpy/models/gland/gland_control.py +90 -0
- hydpy/models/gland/gland_derived.py +113 -0
- hydpy/models/gland/gland_fluxes.py +137 -0
- hydpy/models/gland/gland_inputs.py +12 -0
- hydpy/models/gland/gland_model.py +1439 -0
- hydpy/models/gland/gland_outlets.py +11 -0
- hydpy/models/gland/gland_states.py +90 -0
- hydpy/models/gland_gr4.py +501 -0
- hydpy/models/gland_gr5.py +463 -0
- hydpy/models/gland_gr6.py +487 -0
- hydpy/models/hland/__init__.py +20 -0
- hydpy/models/hland/hland_aides.py +19 -0
- hydpy/models/hland/hland_constants.py +37 -0
- hydpy/models/hland/hland_control.py +1530 -0
- hydpy/models/hland/hland_derived.py +683 -0
- hydpy/models/hland/hland_factors.py +57 -0
- hydpy/models/hland/hland_fixed.py +42 -0
- hydpy/models/hland/hland_fluxes.py +279 -0
- hydpy/models/hland/hland_inputs.py +19 -0
- hydpy/models/hland/hland_masks.py +107 -0
- hydpy/models/hland/hland_model.py +4664 -0
- hydpy/models/hland/hland_outlets.py +11 -0
- hydpy/models/hland/hland_parameters.py +227 -0
- hydpy/models/hland/hland_sequences.py +382 -0
- hydpy/models/hland/hland_states.py +236 -0
- hydpy/models/hland_96.py +1812 -0
- hydpy/models/hland_96c.py +1196 -0
- hydpy/models/hland_96p.py +1204 -0
- hydpy/models/kinw/__init__.py +18 -0
- hydpy/models/kinw/kinw_aides.py +306 -0
- hydpy/models/kinw/kinw_control.py +270 -0
- hydpy/models/kinw/kinw_derived.py +197 -0
- hydpy/models/kinw/kinw_fixed.py +33 -0
- hydpy/models/kinw/kinw_fluxes.py +37 -0
- hydpy/models/kinw/kinw_inlets.py +11 -0
- hydpy/models/kinw/kinw_model.py +3026 -0
- hydpy/models/kinw/kinw_outlets.py +11 -0
- hydpy/models/kinw/kinw_solver.py +45 -0
- hydpy/models/kinw/kinw_states.py +17 -0
- hydpy/models/kinw_williams.py +1299 -0
- hydpy/models/kinw_williams_ext.py +768 -0
- hydpy/models/lland/__init__.py +42 -0
- hydpy/models/lland/lland_aides.py +38 -0
- hydpy/models/lland/lland_constants.py +88 -0
- hydpy/models/lland/lland_control.py +1329 -0
- hydpy/models/lland/lland_derived.py +380 -0
- hydpy/models/lland/lland_factors.py +18 -0
- hydpy/models/lland/lland_fixed.py +128 -0
- hydpy/models/lland/lland_fluxes.py +626 -0
- hydpy/models/lland/lland_inlets.py +12 -0
- hydpy/models/lland/lland_inputs.py +33 -0
- hydpy/models/lland/lland_logs.py +17 -0
- hydpy/models/lland/lland_masks.py +212 -0
- hydpy/models/lland/lland_model.py +7690 -0
- hydpy/models/lland/lland_outlets.py +12 -0
- hydpy/models/lland/lland_parameters.py +195 -0
- hydpy/models/lland/lland_sequences.py +67 -0
- hydpy/models/lland/lland_states.py +280 -0
- hydpy/models/lland_dd.py +2270 -0
- hydpy/models/lland_knauf.py +2156 -0
- hydpy/models/lland_knauf_ic.py +1920 -0
- hydpy/models/meteo/__init__.py +12 -0
- hydpy/models/meteo/meteo_control.py +154 -0
- hydpy/models/meteo/meteo_derived.py +159 -0
- hydpy/models/meteo/meteo_factors.py +88 -0
- hydpy/models/meteo/meteo_fixed.py +19 -0
- hydpy/models/meteo/meteo_fluxes.py +46 -0
- hydpy/models/meteo/meteo_inputs.py +47 -0
- hydpy/models/meteo/meteo_logs.py +30 -0
- hydpy/models/meteo/meteo_model.py +2904 -0
- hydpy/models/meteo/meteo_parameters.py +14 -0
- hydpy/models/meteo/meteo_sequences.py +22 -0
- hydpy/models/meteo_clear_glob_io.py +77 -0
- hydpy/models/meteo_glob_fao56.py +217 -0
- hydpy/models/meteo_glob_io.py +68 -0
- hydpy/models/meteo_glob_morsim.py +444 -0
- hydpy/models/meteo_precip_io.py +76 -0
- hydpy/models/meteo_psun_sun_glob_io.py +83 -0
- hydpy/models/meteo_sun_fao56.py +188 -0
- hydpy/models/meteo_sun_morsim.py +466 -0
- hydpy/models/meteo_temp_io.py +76 -0
- hydpy/models/musk/__init__.py +15 -0
- hydpy/models/musk/musk_control.py +328 -0
- hydpy/models/musk/musk_derived.py +32 -0
- hydpy/models/musk/musk_factors.py +53 -0
- hydpy/models/musk/musk_fluxes.py +24 -0
- hydpy/models/musk/musk_inlets.py +11 -0
- hydpy/models/musk/musk_masks.py +15 -0
- hydpy/models/musk/musk_model.py +838 -0
- hydpy/models/musk/musk_outlets.py +11 -0
- hydpy/models/musk/musk_sequences.py +88 -0
- hydpy/models/musk/musk_solver.py +68 -0
- hydpy/models/musk/musk_states.py +64 -0
- hydpy/models/musk_classic.py +228 -0
- hydpy/models/musk_mct.py +1247 -0
- hydpy/models/rconc/__init__.py +12 -0
- hydpy/models/rconc/rconc_control.py +473 -0
- hydpy/models/rconc/rconc_derived.py +76 -0
- hydpy/models/rconc/rconc_fluxes.py +19 -0
- hydpy/models/rconc/rconc_logs.py +74 -0
- hydpy/models/rconc/rconc_model.py +260 -0
- hydpy/models/rconc/rconc_states.py +11 -0
- hydpy/models/rconc_nash.py +48 -0
- hydpy/models/rconc_uh.py +53 -0
- hydpy/models/sw1d/__init__.py +17 -0
- hydpy/models/sw1d/sw1d_control.py +356 -0
- hydpy/models/sw1d/sw1d_derived.py +85 -0
- hydpy/models/sw1d/sw1d_factors.py +78 -0
- hydpy/models/sw1d/sw1d_fixed.py +12 -0
- hydpy/models/sw1d/sw1d_fluxes.py +55 -0
- hydpy/models/sw1d/sw1d_inlets.py +17 -0
- hydpy/models/sw1d/sw1d_model.py +3385 -0
- hydpy/models/sw1d/sw1d_outlets.py +11 -0
- hydpy/models/sw1d/sw1d_receivers.py +11 -0
- hydpy/models/sw1d/sw1d_senders.py +11 -0
- hydpy/models/sw1d/sw1d_states.py +23 -0
- hydpy/models/sw1d_channel.py +2051 -0
- hydpy/models/sw1d_gate_out.py +599 -0
- hydpy/models/sw1d_lias.py +105 -0
- hydpy/models/sw1d_lias_sluice.py +531 -0
- hydpy/models/sw1d_network.py +1219 -0
- hydpy/models/sw1d_pump.py +448 -0
- hydpy/models/sw1d_q_in.py +79 -0
- hydpy/models/sw1d_q_out.py +81 -0
- hydpy/models/sw1d_storage.py +78 -0
- hydpy/models/sw1d_weir_out.py +75 -0
- hydpy/models/test/__init__.py +14 -0
- hydpy/models/test/test_control.py +28 -0
- hydpy/models/test/test_fluxes.py +17 -0
- hydpy/models/test/test_model.py +201 -0
- hydpy/models/test/test_solver.py +48 -0
- hydpy/models/test/test_states.py +17 -0
- hydpy/models/test_discontinous.py +46 -0
- hydpy/models/test_stiff0d.py +47 -0
- hydpy/models/test_stiff1d.py +42 -0
- hydpy/models/whmod/__init__.py +21 -0
- hydpy/models/whmod/whmod_constants.py +77 -0
- hydpy/models/whmod/whmod_control.py +333 -0
- hydpy/models/whmod/whmod_derived.py +210 -0
- hydpy/models/whmod/whmod_factors.py +9 -0
- hydpy/models/whmod/whmod_fluxes.py +105 -0
- hydpy/models/whmod/whmod_inputs.py +15 -0
- hydpy/models/whmod/whmod_masks.py +178 -0
- hydpy/models/whmod/whmod_model.py +2091 -0
- hydpy/models/whmod/whmod_parameters.py +155 -0
- hydpy/models/whmod/whmod_sequences.py +193 -0
- hydpy/models/whmod/whmod_states.py +73 -0
- hydpy/models/whmod_rural.py +794 -0
- hydpy/models/whmod_urban.py +1011 -0
- hydpy/models/wland/__init__.py +43 -0
- hydpy/models/wland/wland_aides.py +55 -0
- hydpy/models/wland/wland_constants.py +103 -0
- hydpy/models/wland/wland_control.py +508 -0
- hydpy/models/wland/wland_derived.py +330 -0
- hydpy/models/wland/wland_factors.py +11 -0
- hydpy/models/wland/wland_fixed.py +12 -0
- hydpy/models/wland/wland_fluxes.py +166 -0
- hydpy/models/wland/wland_inputs.py +33 -0
- hydpy/models/wland/wland_masks.py +54 -0
- hydpy/models/wland/wland_model.py +3755 -0
- hydpy/models/wland/wland_outlets.py +11 -0
- hydpy/models/wland/wland_parameters.py +214 -0
- hydpy/models/wland/wland_sequences.py +108 -0
- hydpy/models/wland/wland_solver.py +45 -0
- hydpy/models/wland/wland_states.py +56 -0
- hydpy/models/wland_gd.py +888 -0
- hydpy/models/wland_wag.py +1244 -0
- hydpy/models/wq/__init__.py +14 -0
- hydpy/models/wq/wq_control.py +117 -0
- hydpy/models/wq/wq_derived.py +182 -0
- hydpy/models/wq/wq_factors.py +79 -0
- hydpy/models/wq/wq_fluxes.py +17 -0
- hydpy/models/wq/wq_model.py +1889 -0
- hydpy/models/wq_trapeze.py +168 -0
- hydpy/models/wq_trapeze_strickler.py +101 -0
- hydpy/models/wq_walrus.py +57 -0
- hydpy/py.typed +0 -0
- hydpy/tests/.coveragerc +22 -0
- hydpy/tests/__init__.py +0 -0
- hydpy/tests/check_consistency.py +32 -0
- hydpy/tests/hydpydoctestcustomize.pth +1 -0
- hydpy/tests/hydpydoctestcustomize.py +15 -0
- hydpy/tests/iotesting/__init__.py +0 -0
- hydpy/tests/run_doctests.py +233 -0
- hydpy-6.2.dev1.data/scripts/hyd.py +277 -0
- hydpy-6.2.dev1.dist-info/LICENSE +165 -0
- hydpy-6.2.dev1.dist-info/METADATA +163 -0
- hydpy-6.2.dev1.dist-info/RECORD +890 -0
- hydpy-6.2.dev1.dist-info/WHEEL +5 -0
- hydpy-6.2.dev1.dist-info/licenses_hydpy_installer.txt +42 -0
- hydpy-6.2.dev1.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"""This subpackage provides tools for cythonizing hydrological models as
|
|
2
|
+
well as the resulting Cython extension files (in subpackage `autogen`)."""
|
|
3
|
+
|
|
4
|
+
# import...
|
|
5
|
+
# from standard library
|
|
6
|
+
import os
|
|
7
|
+
import sys
|
|
8
|
+
import importlib
|
|
9
|
+
|
|
10
|
+
# from HydPy
|
|
11
|
+
from hydpy.cythons import autogen
|
|
12
|
+
|
|
13
|
+
autogenpath: str = autogen.__path__[0]
|
|
14
|
+
modulenames = sorted(
|
|
15
|
+
str(fn.split(".")[0])
|
|
16
|
+
for fn in os.listdir(autogenpath)
|
|
17
|
+
if (fn.split(".")[-1] in ("pyd", "so") and not fn.startswith("c_"))
|
|
18
|
+
)
|
|
19
|
+
|
|
20
|
+
for modulename in modulenames:
|
|
21
|
+
if not modulename.startswith("callback_"):
|
|
22
|
+
module = importlib.import_module(f"hydpy.cythons.autogen.{modulename}")
|
|
23
|
+
sys.modules[f"hydpy.cythons.{modulename}"] = module
|
|
24
|
+
locals()[modulename] = module
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"""This module defines the Cython declarations related to module |anntools|."""
|
|
2
|
+
|
|
3
|
+
cimport numpy
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
cdef class ANN:
|
|
7
|
+
|
|
8
|
+
# required for usage as an "algorithm" by interputils:
|
|
9
|
+
|
|
10
|
+
cdef public int nmb_inputs
|
|
11
|
+
cdef public int nmb_outputs
|
|
12
|
+
cdef public double[:] inputs
|
|
13
|
+
cdef public double[:] outputs
|
|
14
|
+
cdef public double[:] output_derivatives
|
|
15
|
+
|
|
16
|
+
cpdef inline void calculate_values(self) noexcept nogil
|
|
17
|
+
cpdef inline void calculate_derivatives(self, int idx_input) noexcept nogil
|
|
18
|
+
|
|
19
|
+
# algorithm-specific requirements:
|
|
20
|
+
|
|
21
|
+
cdef public int nmb_layers
|
|
22
|
+
cdef public int[:] nmb_neurons
|
|
23
|
+
cdef public double[:, :] weights_input
|
|
24
|
+
cdef public double[:, :] weights_output
|
|
25
|
+
cdef public double[:, :, :] weights_hidden
|
|
26
|
+
cdef public double[:, :] intercepts_hidden
|
|
27
|
+
cdef public double[:] intercepts_output
|
|
28
|
+
cdef public int[:, :] activation
|
|
29
|
+
cdef public double[:, :] neurons
|
|
30
|
+
cdef public double[:, :] neuron_derivatives
|
|
31
|
+
|
|
32
|
+
cdef inline void apply_activationfunction(self, int idx_layer, int idx_neuron, double input_) noexcept nogil
|
|
33
|
+
cdef inline double apply_derivativefunction(self, int idx_layer, int idx_neuron, double inner) noexcept nogil
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# pylint: disable=missing-docstring
|
|
2
|
+
|
|
3
|
+
from hydpy.core.typingtools import *
|
|
4
|
+
|
|
5
|
+
class ANN:
|
|
6
|
+
# required for usage as an "algorithm" by interputils:
|
|
7
|
+
nmb_inputs: int
|
|
8
|
+
nmb_outputs: int
|
|
9
|
+
inputs: VectorFloat
|
|
10
|
+
outputs: VectorFloat
|
|
11
|
+
output_derivatives: VectorFloat
|
|
12
|
+
def calculate_values(self) -> None: ...
|
|
13
|
+
def calculate_derivatives( # pylint: disable=unused-argument
|
|
14
|
+
self, idx: int, /
|
|
15
|
+
) -> None: ...
|
|
16
|
+
# algorithm-specific requirements:
|
|
17
|
+
nmb_layers: int
|
|
18
|
+
nmb_neurons: VectorInt
|
|
19
|
+
weights_input: MatrixFloat
|
|
20
|
+
weights_output: MatrixFloat
|
|
21
|
+
weights_hidden: TensorFloat
|
|
22
|
+
intercepts_hidden: MatrixFloat
|
|
23
|
+
intercepts_output: VectorFloat
|
|
24
|
+
activation: MatrixInt
|
|
25
|
+
neurons: MatrixFloat
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
"""This Cython module implements the performance-critical methods of the
|
|
2
|
+
Python module |anntools|.
|
|
3
|
+
"""
|
|
4
|
+
|
|
5
|
+
# import...
|
|
6
|
+
from hydpy.cythons.autogen cimport smoothutils
|
|
7
|
+
# ...cimport
|
|
8
|
+
cimport cython
|
|
9
|
+
from libc.math cimport NAN as nan
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
@cython.final
|
|
13
|
+
cdef class ANN:
|
|
14
|
+
|
|
15
|
+
cdef inline void apply_activationfunction(self, int idx_layer, int idx_neuron, double input_) noexcept nogil:
|
|
16
|
+
if self.activation[idx_layer, idx_neuron] == 1:
|
|
17
|
+
self.neurons[idx_layer, idx_neuron] = \
|
|
18
|
+
smoothutils.smooth_logistic1(self.neurons[idx_layer, idx_neuron], 1.0)
|
|
19
|
+
elif self.activation[idx_layer, idx_neuron] == 2:
|
|
20
|
+
self.neurons[idx_layer, idx_neuron] = \
|
|
21
|
+
input_ * smoothutils.smooth_logistic1(self.neurons[idx_layer, idx_neuron], 1.0)
|
|
22
|
+
|
|
23
|
+
cdef inline double apply_derivativefunction(self, int idx_layer, int idx_neuron, double inner) noexcept nogil:
|
|
24
|
+
if self.activation[idx_layer, idx_neuron] in (1, 2):
|
|
25
|
+
return smoothutils.smooth_logistic1_derivative2(inner, 1.0)
|
|
26
|
+
return 1.0
|
|
27
|
+
|
|
28
|
+
cpdef inline void calculate_values(self) noexcept nogil:
|
|
29
|
+
cdef int idx_input, idx_neuron1, idx_neuron2, idx_output, idx_layer
|
|
30
|
+
cdef double input_
|
|
31
|
+
|
|
32
|
+
for idx_neuron1 in range(self.nmb_neurons[0]):
|
|
33
|
+
self.neurons[0, idx_neuron1] = \
|
|
34
|
+
self.intercepts_hidden[0, idx_neuron1]
|
|
35
|
+
for idx_input in range(self.nmb_inputs):
|
|
36
|
+
self.neurons[0, idx_neuron1] += (
|
|
37
|
+
self.weights_input[idx_input, idx_neuron1] *
|
|
38
|
+
self.inputs[idx_input])
|
|
39
|
+
if idx_neuron1 < self.nmb_inputs:
|
|
40
|
+
input_ = self.inputs[idx_neuron1]
|
|
41
|
+
else:
|
|
42
|
+
input_ = nan
|
|
43
|
+
self.apply_activationfunction(0, idx_neuron1, input_)
|
|
44
|
+
|
|
45
|
+
for idx_layer in range(1, self.nmb_layers):
|
|
46
|
+
for idx_neuron1 in range(self.nmb_neurons[idx_layer]):
|
|
47
|
+
self.neurons[idx_layer, idx_neuron1] = \
|
|
48
|
+
self.intercepts_hidden[idx_layer, idx_neuron1]
|
|
49
|
+
for idx_neuron2 in range(self.nmb_neurons[idx_layer-1]):
|
|
50
|
+
self.neurons[idx_layer, idx_neuron1] += (
|
|
51
|
+
self.weights_hidden[idx_layer-1, idx_neuron2, idx_neuron1] *
|
|
52
|
+
self.neurons[idx_layer-1, idx_neuron2]
|
|
53
|
+
)
|
|
54
|
+
if idx_neuron1 < self.nmb_neurons[idx_layer-1]:
|
|
55
|
+
input_ = self.neurons[idx_layer-1, idx_neuron1]
|
|
56
|
+
else:
|
|
57
|
+
input_ = nan
|
|
58
|
+
self.apply_activationfunction(idx_layer, idx_neuron1, input_)
|
|
59
|
+
|
|
60
|
+
for idx_output in range(self.nmb_outputs):
|
|
61
|
+
self.outputs[idx_output] = self.intercepts_output[idx_output]
|
|
62
|
+
for idx_neuron2 in range(self.nmb_neurons[self.nmb_layers-1]):
|
|
63
|
+
self.outputs[idx_output] += (
|
|
64
|
+
self.weights_output[idx_neuron2, idx_output] *
|
|
65
|
+
self.neurons[self.nmb_layers-1, idx_neuron2]
|
|
66
|
+
)
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
cpdef inline void calculate_derivatives(self, int idx_input) noexcept nogil:
|
|
70
|
+
cdef int idx_neuron1, idx_neuron2, idx_input_, idx_output, idx_layer
|
|
71
|
+
cdef double weight, input_
|
|
72
|
+
cdef double der1 # outer derivative
|
|
73
|
+
cdef double der2 # inner derivative
|
|
74
|
+
for idx_neuron1 in range(self.nmb_neurons[0]):
|
|
75
|
+
input_ = self.intercepts_hidden[0, idx_neuron1]
|
|
76
|
+
for idx_input_ in range(self.nmb_inputs):
|
|
77
|
+
input_ += (self.weights_input[idx_input_, idx_neuron1] *
|
|
78
|
+
self.inputs[idx_input_])
|
|
79
|
+
der1 = self.apply_derivativefunction(0, idx_neuron1, input_)
|
|
80
|
+
der2 = self.weights_input[idx_input, idx_neuron1]
|
|
81
|
+
self.neuron_derivatives[0, idx_neuron1] = der1 * der2
|
|
82
|
+
if self.activation[0, idx_neuron1] == 2:
|
|
83
|
+
if idx_neuron1 < self.nmb_inputs:
|
|
84
|
+
input_ = self.inputs[idx_neuron1]
|
|
85
|
+
else:
|
|
86
|
+
input_ = nan
|
|
87
|
+
self.neuron_derivatives[0, idx_neuron1] *= input_
|
|
88
|
+
if idx_neuron1 == idx_input:
|
|
89
|
+
self.neuron_derivatives[0, idx_neuron1] += \
|
|
90
|
+
self.neurons[0, idx_neuron1] / input_
|
|
91
|
+
for idx_layer in range(1, self.nmb_layers):
|
|
92
|
+
for idx_neuron1 in range(self.nmb_neurons[idx_layer]):
|
|
93
|
+
input_ = self.intercepts_hidden[idx_layer, idx_neuron1]
|
|
94
|
+
der2 = 0.0
|
|
95
|
+
for idx_neuron2 in range(self.nmb_neurons[idx_layer-1]):
|
|
96
|
+
weight = self.weights_hidden[
|
|
97
|
+
idx_layer-1, idx_neuron2, idx_neuron1]
|
|
98
|
+
input_ += weight * self.neurons[idx_layer-1, idx_neuron2]
|
|
99
|
+
der2 += weight * self.neuron_derivatives[
|
|
100
|
+
idx_layer-1, idx_neuron2]
|
|
101
|
+
der1 = self.apply_derivativefunction(idx_layer, idx_neuron1, input_)
|
|
102
|
+
self.neuron_derivatives[idx_layer, idx_neuron1] = der1 * der2
|
|
103
|
+
if self.activation[idx_layer, idx_neuron1] == 2:
|
|
104
|
+
if idx_neuron1 < self.nmb_neurons[idx_layer-1]:
|
|
105
|
+
input_ = self.neurons[idx_layer-1, idx_neuron1]
|
|
106
|
+
else:
|
|
107
|
+
input_ = nan
|
|
108
|
+
self.neuron_derivatives[idx_layer, idx_neuron1] *= input_
|
|
109
|
+
self.neuron_derivatives[idx_layer, idx_neuron1] += (
|
|
110
|
+
self.neurons[idx_layer, idx_neuron1] / input_ *
|
|
111
|
+
self.neuron_derivatives[idx_layer-1, idx_neuron1]
|
|
112
|
+
)
|
|
113
|
+
for idx_output in range(self.nmb_outputs):
|
|
114
|
+
der1 = 1.0
|
|
115
|
+
der2 = 0.0
|
|
116
|
+
for idx_neuron2 in range(self.nmb_neurons[self.nmb_layers-1]):
|
|
117
|
+
der2 += (
|
|
118
|
+
self.weights_output[idx_neuron2, idx_output] *
|
|
119
|
+
self.neuron_derivatives[self.nmb_layers-1, idx_neuron2])
|
|
120
|
+
self.output_derivatives[idx_output] = der1 * der2
|
|
File without changes
|
|
Binary file
|
|
@@ -0,0 +1,42 @@
|
|
|
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
|
+
|
|
10
|
+
"""This module defines the Cython declarations related to module |anntools|."""
|
|
11
|
+
|
|
12
|
+
cimport numpy
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
cdef class ANN:
|
|
16
|
+
|
|
17
|
+
# required for usage as an "algorithm" by interputils:
|
|
18
|
+
|
|
19
|
+
cdef public numpy.int64_t nmb_inputs
|
|
20
|
+
cdef public numpy.int64_t nmb_outputs
|
|
21
|
+
cdef public double[:] inputs
|
|
22
|
+
cdef public double[:] outputs
|
|
23
|
+
cdef public double[:] output_derivatives
|
|
24
|
+
|
|
25
|
+
cpdef inline void calculate_values(self) noexcept nogil
|
|
26
|
+
cpdef inline void calculate_derivatives(self, numpy.int64_t idx_input) noexcept nogil
|
|
27
|
+
|
|
28
|
+
# algorithm-specific requirements:
|
|
29
|
+
|
|
30
|
+
cdef public numpy.int64_t nmb_layers
|
|
31
|
+
cdef public numpy.int64_t[:] nmb_neurons
|
|
32
|
+
cdef public double[:, :] weights_input
|
|
33
|
+
cdef public double[:, :] weights_output
|
|
34
|
+
cdef public double[:, :, :] weights_hidden
|
|
35
|
+
cdef public double[:, :] intercepts_hidden
|
|
36
|
+
cdef public double[:] intercepts_output
|
|
37
|
+
cdef public numpy.int64_t[:, :] activation
|
|
38
|
+
cdef public double[:, :] neurons
|
|
39
|
+
cdef public double[:, :] neuron_derivatives
|
|
40
|
+
|
|
41
|
+
cdef inline void apply_activationfunction(self, numpy.int64_t idx_layer, numpy.int64_t idx_neuron, double input_) noexcept nogil
|
|
42
|
+
cdef inline double apply_derivativefunction(self, numpy.int64_t idx_layer, numpy.int64_t idx_neuron, double inner) noexcept nogil
|
|
@@ -0,0 +1,129 @@
|
|
|
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
|
+
|
|
10
|
+
"""This Cython module implements the performance-critical methods of the
|
|
11
|
+
Python module |anntools|.
|
|
12
|
+
"""
|
|
13
|
+
|
|
14
|
+
# import...
|
|
15
|
+
from hydpy.cythons.autogen cimport smoothutils
|
|
16
|
+
# ...cimport
|
|
17
|
+
cimport cython
|
|
18
|
+
from libc.math cimport NAN as nan
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
@cython.final
|
|
22
|
+
cdef class ANN:
|
|
23
|
+
|
|
24
|
+
cdef inline void apply_activationfunction(self, numpy.int64_t idx_layer, numpy.int64_t idx_neuron, double input_) noexcept nogil:
|
|
25
|
+
if self.activation[idx_layer, idx_neuron] == 1:
|
|
26
|
+
self.neurons[idx_layer, idx_neuron] = \
|
|
27
|
+
smoothutils.smooth_logistic1(self.neurons[idx_layer, idx_neuron], 1.0)
|
|
28
|
+
elif self.activation[idx_layer, idx_neuron] == 2:
|
|
29
|
+
self.neurons[idx_layer, idx_neuron] = \
|
|
30
|
+
input_ * smoothutils.smooth_logistic1(self.neurons[idx_layer, idx_neuron], 1.0)
|
|
31
|
+
|
|
32
|
+
cdef inline double apply_derivativefunction(self, numpy.int64_t idx_layer, numpy.int64_t idx_neuron, double inner) noexcept nogil:
|
|
33
|
+
if self.activation[idx_layer, idx_neuron] in (1, 2):
|
|
34
|
+
return smoothutils.smooth_logistic1_derivative2(inner, 1.0)
|
|
35
|
+
return 1.0
|
|
36
|
+
|
|
37
|
+
cpdef inline void calculate_values(self) noexcept nogil:
|
|
38
|
+
cdef numpy.int64_t idx_input, idx_neuron1, idx_neuron2, idx_output, idx_layer
|
|
39
|
+
cdef double input_
|
|
40
|
+
|
|
41
|
+
for idx_neuron1 in range(self.nmb_neurons[0]):
|
|
42
|
+
self.neurons[0, idx_neuron1] = \
|
|
43
|
+
self.intercepts_hidden[0, idx_neuron1]
|
|
44
|
+
for idx_input in range(self.nmb_inputs):
|
|
45
|
+
self.neurons[0, idx_neuron1] += (
|
|
46
|
+
self.weights_input[idx_input, idx_neuron1] *
|
|
47
|
+
self.inputs[idx_input])
|
|
48
|
+
if idx_neuron1 < self.nmb_inputs:
|
|
49
|
+
input_ = self.inputs[idx_neuron1]
|
|
50
|
+
else:
|
|
51
|
+
input_ = nan
|
|
52
|
+
self.apply_activationfunction(0, idx_neuron1, input_)
|
|
53
|
+
|
|
54
|
+
for idx_layer in range(1, self.nmb_layers):
|
|
55
|
+
for idx_neuron1 in range(self.nmb_neurons[idx_layer]):
|
|
56
|
+
self.neurons[idx_layer, idx_neuron1] = \
|
|
57
|
+
self.intercepts_hidden[idx_layer, idx_neuron1]
|
|
58
|
+
for idx_neuron2 in range(self.nmb_neurons[idx_layer-1]):
|
|
59
|
+
self.neurons[idx_layer, idx_neuron1] += (
|
|
60
|
+
self.weights_hidden[idx_layer-1, idx_neuron2, idx_neuron1] *
|
|
61
|
+
self.neurons[idx_layer-1, idx_neuron2]
|
|
62
|
+
)
|
|
63
|
+
if idx_neuron1 < self.nmb_neurons[idx_layer-1]:
|
|
64
|
+
input_ = self.neurons[idx_layer-1, idx_neuron1]
|
|
65
|
+
else:
|
|
66
|
+
input_ = nan
|
|
67
|
+
self.apply_activationfunction(idx_layer, idx_neuron1, input_)
|
|
68
|
+
|
|
69
|
+
for idx_output in range(self.nmb_outputs):
|
|
70
|
+
self.outputs[idx_output] = self.intercepts_output[idx_output]
|
|
71
|
+
for idx_neuron2 in range(self.nmb_neurons[self.nmb_layers-1]):
|
|
72
|
+
self.outputs[idx_output] += (
|
|
73
|
+
self.weights_output[idx_neuron2, idx_output] *
|
|
74
|
+
self.neurons[self.nmb_layers-1, idx_neuron2]
|
|
75
|
+
)
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
cpdef inline void calculate_derivatives(self, numpy.int64_t idx_input) noexcept nogil:
|
|
79
|
+
cdef numpy.int64_t idx_neuron1, idx_neuron2, idx_input_, idx_output, idx_layer
|
|
80
|
+
cdef double weight, input_
|
|
81
|
+
cdef double der1 # outer derivative
|
|
82
|
+
cdef double der2 # inner derivative
|
|
83
|
+
for idx_neuron1 in range(self.nmb_neurons[0]):
|
|
84
|
+
input_ = self.intercepts_hidden[0, idx_neuron1]
|
|
85
|
+
for idx_input_ in range(self.nmb_inputs):
|
|
86
|
+
input_ += (self.weights_input[idx_input_, idx_neuron1] *
|
|
87
|
+
self.inputs[idx_input_])
|
|
88
|
+
der1 = self.apply_derivativefunction(0, idx_neuron1, input_)
|
|
89
|
+
der2 = self.weights_input[idx_input, idx_neuron1]
|
|
90
|
+
self.neuron_derivatives[0, idx_neuron1] = der1 * der2
|
|
91
|
+
if self.activation[0, idx_neuron1] == 2:
|
|
92
|
+
if idx_neuron1 < self.nmb_inputs:
|
|
93
|
+
input_ = self.inputs[idx_neuron1]
|
|
94
|
+
else:
|
|
95
|
+
input_ = nan
|
|
96
|
+
self.neuron_derivatives[0, idx_neuron1] *= input_
|
|
97
|
+
if idx_neuron1 == idx_input:
|
|
98
|
+
self.neuron_derivatives[0, idx_neuron1] += \
|
|
99
|
+
self.neurons[0, idx_neuron1] / input_
|
|
100
|
+
for idx_layer in range(1, self.nmb_layers):
|
|
101
|
+
for idx_neuron1 in range(self.nmb_neurons[idx_layer]):
|
|
102
|
+
input_ = self.intercepts_hidden[idx_layer, idx_neuron1]
|
|
103
|
+
der2 = 0.0
|
|
104
|
+
for idx_neuron2 in range(self.nmb_neurons[idx_layer-1]):
|
|
105
|
+
weight = self.weights_hidden[
|
|
106
|
+
idx_layer-1, idx_neuron2, idx_neuron1]
|
|
107
|
+
input_ += weight * self.neurons[idx_layer-1, idx_neuron2]
|
|
108
|
+
der2 += weight * self.neuron_derivatives[
|
|
109
|
+
idx_layer-1, idx_neuron2]
|
|
110
|
+
der1 = self.apply_derivativefunction(idx_layer, idx_neuron1, input_)
|
|
111
|
+
self.neuron_derivatives[idx_layer, idx_neuron1] = der1 * der2
|
|
112
|
+
if self.activation[idx_layer, idx_neuron1] == 2:
|
|
113
|
+
if idx_neuron1 < self.nmb_neurons[idx_layer-1]:
|
|
114
|
+
input_ = self.neurons[idx_layer-1, idx_neuron1]
|
|
115
|
+
else:
|
|
116
|
+
input_ = nan
|
|
117
|
+
self.neuron_derivatives[idx_layer, idx_neuron1] *= input_
|
|
118
|
+
self.neuron_derivatives[idx_layer, idx_neuron1] += (
|
|
119
|
+
self.neurons[idx_layer, idx_neuron1] / input_ *
|
|
120
|
+
self.neuron_derivatives[idx_layer-1, idx_neuron1]
|
|
121
|
+
)
|
|
122
|
+
for idx_output in range(self.nmb_outputs):
|
|
123
|
+
der1 = 1.0
|
|
124
|
+
der2 = 0.0
|
|
125
|
+
for idx_neuron2 in range(self.nmb_neurons[self.nmb_layers-1]):
|
|
126
|
+
der2 += (
|
|
127
|
+
self.weights_output[idx_neuron2, idx_output] *
|
|
128
|
+
self.neuron_derivatives[self.nmb_layers-1, idx_neuron2])
|
|
129
|
+
self.output_derivatives[idx_output] = der1 * der2
|
|
Binary file
|
|
@@ -0,0 +1,179 @@
|
|
|
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
|
+
@cython.final
|
|
36
|
+
cdef class ControlParameters:
|
|
37
|
+
cdef public double responses
|
|
38
|
+
@cython.final
|
|
39
|
+
cdef class DerivedParameters:
|
|
40
|
+
cdef public numpy.int64_t nmb
|
|
41
|
+
cdef public double[:] maxq
|
|
42
|
+
cdef public double[:] diffq
|
|
43
|
+
cdef public numpy.int64_t[:] ar_order
|
|
44
|
+
cdef public numpy.int64_t[:] ma_order
|
|
45
|
+
cdef public double[:,:] ar_coefs
|
|
46
|
+
cdef public double[:,:] ma_coefs
|
|
47
|
+
@cython.final
|
|
48
|
+
cdef class Sequences:
|
|
49
|
+
cdef public InletSequences inlets
|
|
50
|
+
cdef public FluxSequences fluxes
|
|
51
|
+
cdef public LogSequences logs
|
|
52
|
+
cdef public OutletSequences outlets
|
|
53
|
+
@cython.final
|
|
54
|
+
cdef class InletSequences:
|
|
55
|
+
cdef double **q
|
|
56
|
+
cdef public numpy.int64_t len_q
|
|
57
|
+
cdef public numpy.int64_t[:] _q_ready
|
|
58
|
+
cdef public numpy.int64_t _q_ndim
|
|
59
|
+
cdef public numpy.int64_t _q_length
|
|
60
|
+
cdef public numpy.int64_t _q_length_0
|
|
61
|
+
cpdef inline alloc(self, name, numpy.int64_t length)
|
|
62
|
+
cpdef inline dealloc(self, name)
|
|
63
|
+
cpdef inline set_pointer1d(self, str name, pointerutils.Double value, numpy.int64_t idx)
|
|
64
|
+
cpdef get_value(self, str name)
|
|
65
|
+
cpdef set_value(self, str name, value)
|
|
66
|
+
@cython.final
|
|
67
|
+
cdef class FluxSequences:
|
|
68
|
+
cdef public double qin
|
|
69
|
+
cdef public numpy.int64_t _qin_ndim
|
|
70
|
+
cdef public numpy.int64_t _qin_length
|
|
71
|
+
cdef public bint _qin_ramflag
|
|
72
|
+
cdef public double[:] _qin_array
|
|
73
|
+
cdef public bint _qin_diskflag_reading
|
|
74
|
+
cdef public bint _qin_diskflag_writing
|
|
75
|
+
cdef public double[:] _qin_ncarray
|
|
76
|
+
cdef public bint _qin_outputflag
|
|
77
|
+
cdef double *_qin_outputpointer
|
|
78
|
+
cdef public double[:] qpin
|
|
79
|
+
cdef public numpy.int64_t _qpin_ndim
|
|
80
|
+
cdef public numpy.int64_t _qpin_length
|
|
81
|
+
cdef public numpy.int64_t _qpin_length_0
|
|
82
|
+
cdef public bint _qpin_ramflag
|
|
83
|
+
cdef public double[:,:] _qpin_array
|
|
84
|
+
cdef public bint _qpin_diskflag_reading
|
|
85
|
+
cdef public bint _qpin_diskflag_writing
|
|
86
|
+
cdef public double[:] _qpin_ncarray
|
|
87
|
+
cdef public double[:] qma
|
|
88
|
+
cdef public numpy.int64_t _qma_ndim
|
|
89
|
+
cdef public numpy.int64_t _qma_length
|
|
90
|
+
cdef public numpy.int64_t _qma_length_0
|
|
91
|
+
cdef public bint _qma_ramflag
|
|
92
|
+
cdef public double[:,:] _qma_array
|
|
93
|
+
cdef public bint _qma_diskflag_reading
|
|
94
|
+
cdef public bint _qma_diskflag_writing
|
|
95
|
+
cdef public double[:] _qma_ncarray
|
|
96
|
+
cdef public double[:] qar
|
|
97
|
+
cdef public numpy.int64_t _qar_ndim
|
|
98
|
+
cdef public numpy.int64_t _qar_length
|
|
99
|
+
cdef public numpy.int64_t _qar_length_0
|
|
100
|
+
cdef public bint _qar_ramflag
|
|
101
|
+
cdef public double[:,:] _qar_array
|
|
102
|
+
cdef public bint _qar_diskflag_reading
|
|
103
|
+
cdef public bint _qar_diskflag_writing
|
|
104
|
+
cdef public double[:] _qar_ncarray
|
|
105
|
+
cdef public double[:] qpout
|
|
106
|
+
cdef public numpy.int64_t _qpout_ndim
|
|
107
|
+
cdef public numpy.int64_t _qpout_length
|
|
108
|
+
cdef public numpy.int64_t _qpout_length_0
|
|
109
|
+
cdef public bint _qpout_ramflag
|
|
110
|
+
cdef public double[:,:] _qpout_array
|
|
111
|
+
cdef public bint _qpout_diskflag_reading
|
|
112
|
+
cdef public bint _qpout_diskflag_writing
|
|
113
|
+
cdef public double[:] _qpout_ncarray
|
|
114
|
+
cdef public double qout
|
|
115
|
+
cdef public numpy.int64_t _qout_ndim
|
|
116
|
+
cdef public numpy.int64_t _qout_length
|
|
117
|
+
cdef public bint _qout_ramflag
|
|
118
|
+
cdef public double[:] _qout_array
|
|
119
|
+
cdef public bint _qout_diskflag_reading
|
|
120
|
+
cdef public bint _qout_diskflag_writing
|
|
121
|
+
cdef public double[:] _qout_ncarray
|
|
122
|
+
cdef public bint _qout_outputflag
|
|
123
|
+
cdef double *_qout_outputpointer
|
|
124
|
+
cpdef inline void load_data(self, numpy.int64_t idx) noexcept nogil
|
|
125
|
+
cpdef inline void save_data(self, numpy.int64_t idx) noexcept nogil
|
|
126
|
+
cpdef inline set_pointeroutput(self, str name, pointerutils.PDouble value)
|
|
127
|
+
cpdef inline void update_outputs(self) noexcept nogil
|
|
128
|
+
@cython.final
|
|
129
|
+
cdef class LogSequences:
|
|
130
|
+
cdef public double[:,:] login
|
|
131
|
+
cdef public numpy.int64_t _login_ndim
|
|
132
|
+
cdef public numpy.int64_t _login_length
|
|
133
|
+
cdef public numpy.int64_t _login_length_0
|
|
134
|
+
cdef public numpy.int64_t _login_length_1
|
|
135
|
+
cdef public double[:,:] logout
|
|
136
|
+
cdef public numpy.int64_t _logout_ndim
|
|
137
|
+
cdef public numpy.int64_t _logout_length
|
|
138
|
+
cdef public numpy.int64_t _logout_length_0
|
|
139
|
+
cdef public numpy.int64_t _logout_length_1
|
|
140
|
+
@cython.final
|
|
141
|
+
cdef class OutletSequences:
|
|
142
|
+
cdef double *q
|
|
143
|
+
cdef public numpy.int64_t _q_ndim
|
|
144
|
+
cdef public numpy.int64_t _q_length
|
|
145
|
+
cpdef inline set_pointer0d(self, str name, pointerutils.Double value)
|
|
146
|
+
cpdef get_value(self, str name)
|
|
147
|
+
cpdef set_value(self, str name, value)
|
|
148
|
+
@cython.final
|
|
149
|
+
cdef class Model:
|
|
150
|
+
cdef public numpy.int64_t idx_sim
|
|
151
|
+
cdef public Parameters parameters
|
|
152
|
+
cdef public Sequences sequences
|
|
153
|
+
cpdef inline void simulate(self, numpy.int64_t idx) noexcept nogil
|
|
154
|
+
cpdef void reset_reuseflags(self) noexcept nogil
|
|
155
|
+
cpdef void save_data(self, numpy.int64_t idx) noexcept nogil
|
|
156
|
+
cpdef inline void run(self) noexcept nogil
|
|
157
|
+
cpdef inline void update_inlets(self) noexcept nogil
|
|
158
|
+
cpdef inline void update_outlets(self) noexcept nogil
|
|
159
|
+
cpdef inline void update_receivers(self, numpy.int64_t idx) noexcept nogil
|
|
160
|
+
cpdef inline void update_senders(self, numpy.int64_t idx) noexcept nogil
|
|
161
|
+
cpdef inline void update_outputs(self) noexcept nogil
|
|
162
|
+
cpdef inline void pick_q_v1(self) noexcept nogil
|
|
163
|
+
cpdef inline void calc_qpin_v1(self) noexcept nogil
|
|
164
|
+
cpdef inline void update_login_v1(self) noexcept nogil
|
|
165
|
+
cpdef inline void calc_qma_v1(self) noexcept nogil
|
|
166
|
+
cpdef inline void calc_qar_v1(self) noexcept nogil
|
|
167
|
+
cpdef inline void calc_qpout_v1(self) noexcept nogil
|
|
168
|
+
cpdef inline void update_logout_v1(self) noexcept nogil
|
|
169
|
+
cpdef inline void calc_qout_v1(self) noexcept nogil
|
|
170
|
+
cpdef inline void pass_q_v1(self) noexcept nogil
|
|
171
|
+
cpdef inline void pick_q(self) noexcept nogil
|
|
172
|
+
cpdef inline void calc_qpin(self) noexcept nogil
|
|
173
|
+
cpdef inline void update_login(self) noexcept nogil
|
|
174
|
+
cpdef inline void calc_qma(self) noexcept nogil
|
|
175
|
+
cpdef inline void calc_qar(self) noexcept nogil
|
|
176
|
+
cpdef inline void calc_qpout(self) noexcept nogil
|
|
177
|
+
cpdef inline void update_logout(self) noexcept nogil
|
|
178
|
+
cpdef inline void calc_qout(self) noexcept nogil
|
|
179
|
+
cpdef inline void pass_q(self) noexcept nogil
|