flood-adapt 0.3.14__tar.gz → 1.0.0rc1__tar.gz

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 (149) hide show
  1. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/PKG-INFO +2 -2
  2. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/__init__.py +1 -1
  3. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/fiat_adapter.py +2 -1
  4. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/sfincs_adapter.py +10 -2
  5. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/sfincs_offshore.py +5 -1
  6. flood_adapt-1.0.0rc1/flood_adapt/config/__init__.py +92 -0
  7. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/config/fiat.py +9 -131
  8. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/config/gui.py +1 -1
  9. flood_adapt-0.3.14/flood_adapt/config/sfincs.py → flood_adapt-1.0.0rc1/flood_adapt/config/hazard.py +0 -115
  10. flood_adapt-1.0.0rc1/flood_adapt/config/impacts.py +140 -0
  11. flood_adapt-1.0.0rc1/flood_adapt/config/sfincs.py +124 -0
  12. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/database_builder.py +14 -10
  13. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/database.py +1 -1
  14. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/__init__.py +2 -2
  15. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/forcing.py +1 -1
  16. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/meteo_handler.py +5 -10
  17. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/measures/measures.py +1 -1
  18. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/workflows/floodmap.py +1 -1
  19. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt.egg-info/PKG-INFO +2 -2
  20. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt.egg-info/SOURCES.txt +2 -0
  21. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt.egg-info/requires.txt +1 -1
  22. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/pyproject.toml +2 -2
  23. flood_adapt-0.3.14/flood_adapt/workflows/__init__.py +0 -0
  24. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/LICENSE +0 -0
  25. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/README.md +0 -0
  26. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/__init__.py +0 -0
  27. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/interface/__init__.py +0 -0
  28. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/interface/hazard_adapter.py +0 -0
  29. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/interface/impact_adapter.py +0 -0
  30. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/interface/model_adapter.py +0 -0
  31. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/adapter/interface/offshore.py +0 -0
  32. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/config/config.py +0 -0
  33. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/config/site.py +0 -0
  34. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/__init__.py +0 -0
  35. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/default_units/imperial.toml +0 -0
  36. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/default_units/metric.toml +0 -0
  37. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/green_infra_table/green_infra_lookup_table.csv +0 -0
  38. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/black_down_48x48.png +0 -0
  39. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/black_left_48x48.png +0 -0
  40. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/black_right_48x48.png +0 -0
  41. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/black_up_48x48.png +0 -0
  42. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-16_white_down.png +0 -0
  43. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-16_white_left.png +0 -0
  44. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-16_white_right.png +0 -0
  45. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-16_white_up.png +0 -0
  46. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-24_black_down.png +0 -0
  47. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-24_black_left.png +0 -0
  48. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-24_black_right.png +0 -0
  49. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-24_black_up.png +0 -0
  50. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-24_white_left.png +0 -0
  51. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/icons8-triangle-arrow-24_white_right.png +0 -0
  52. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/white_down_48x48.png +0 -0
  53. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/white_left_48x48.png +0 -0
  54. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/white_right_48x48.png +0 -0
  55. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/icons/white_up_48x48.png +0 -0
  56. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/OSM/config_charts.toml +0 -0
  57. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/OSM/config_people.toml +0 -0
  58. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/OSM/config_risk_charts.toml +0 -0
  59. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/OSM/config_roads.toml +0 -0
  60. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/OSM/styles.css +0 -0
  61. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/US_NSI/config_charts.toml +0 -0
  62. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/US_NSI/config_people.toml +0 -0
  63. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/US_NSI/config_risk_charts.toml +0 -0
  64. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/US_NSI/config_roads.toml +0 -0
  65. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/US_NSI/styles.css +0 -0
  66. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/ambulance.png +0 -0
  67. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/car.png +0 -0
  68. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/cart.png +0 -0
  69. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/firetruck.png +0 -0
  70. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/hospital.png +0 -0
  71. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/house.png +0 -0
  72. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/info.png +0 -0
  73. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/money.png +0 -0
  74. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/person.png +0 -0
  75. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/school.png +0 -0
  76. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/truck.png +0 -0
  77. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infographics/images/walking_person.png +0 -0
  78. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/OSM/metrics_additional_risk_configs.toml +0 -0
  79. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/OSM/with_SVI/infographic_metrics_config.toml +0 -0
  80. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/OSM/with_SVI/infographic_metrics_config_risk.toml +0 -0
  81. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/OSM/without_SVI/infographic_metrics_config.toml +0 -0
  82. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/OSM/without_SVI/infographic_metrics_config_risk.toml +0 -0
  83. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/US_NSI/metrics_additional_risk_configs.toml +0 -0
  84. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/US_NSI/with_SVI/infographic_metrics_config.toml +0 -0
  85. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/US_NSI/with_SVI/infographic_metrics_config_risk.toml +0 -0
  86. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/US_NSI/without_SVI/infographic_metrics_config.toml +0 -0
  87. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/US_NSI/without_SVI/infographic_metrics_config_risk.toml +0 -0
  88. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/mandatory_metrics_config.toml +0 -0
  89. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/infometrics/mandatory_metrics_config_risk.toml +0 -0
  90. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/database_builder/templates/output_layers/bin_colors.toml +0 -0
  91. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/__init__.py +0 -0
  92. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/dbs_benefit.py +0 -0
  93. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/dbs_event.py +0 -0
  94. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/dbs_measure.py +0 -0
  95. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/dbs_projection.py +0 -0
  96. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/dbs_scenario.py +0 -0
  97. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/dbs_static.py +0 -0
  98. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/dbs_strategy.py +0 -0
  99. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/dbs_template.py +0 -0
  100. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/interface/database.py +0 -0
  101. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/interface/element.py +0 -0
  102. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/dbs_classes/interface/static.py +0 -0
  103. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/flood_adapt.py +0 -0
  104. {flood_adapt-0.3.14/flood_adapt/config → flood_adapt-1.0.0rc1/flood_adapt/misc}/__init__.py +0 -0
  105. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/misc/database_user.py +0 -0
  106. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/misc/exceptions.py +0 -0
  107. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/misc/log.py +0 -0
  108. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/misc/path_builder.py +0 -0
  109. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/misc/utils.py +0 -0
  110. {flood_adapt-0.3.14/flood_adapt/misc → flood_adapt-1.0.0rc1/flood_adapt/objects/benefits}/__init__.py +0 -0
  111. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/benefits/benefits.py +0 -0
  112. {flood_adapt-0.3.14/flood_adapt/objects/benefits → flood_adapt-1.0.0rc1/flood_adapt/objects/events}/__init__.py +0 -0
  113. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/events/event_factory.py +0 -0
  114. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/events/event_set.py +0 -0
  115. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/events/events.py +0 -0
  116. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/events/historical.py +0 -0
  117. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/events/hurricane.py +0 -0
  118. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/events/synthetic.py +0 -0
  119. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/__init__.py +0 -0
  120. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/csv.py +0 -0
  121. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/discharge.py +0 -0
  122. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/forcing_factory.py +0 -0
  123. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/netcdf.py +0 -0
  124. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/plotting.py +0 -0
  125. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/rainfall.py +0 -0
  126. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/tide_gauge.py +0 -0
  127. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/time_frame.py +0 -0
  128. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/timeseries.py +0 -0
  129. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/unit_system.py +0 -0
  130. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/waterlevels.py +0 -0
  131. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/forcing/wind.py +0 -0
  132. {flood_adapt-0.3.14/flood_adapt/objects/events → flood_adapt-1.0.0rc1/flood_adapt/objects/measures}/__init__.py +0 -0
  133. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/measures/measure_factory.py +0 -0
  134. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/object_model.py +0 -0
  135. {flood_adapt-0.3.14/flood_adapt/objects/measures → flood_adapt-1.0.0rc1/flood_adapt/objects/projections}/__init__.py +0 -0
  136. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/projections/projections.py +0 -0
  137. {flood_adapt-0.3.14/flood_adapt/objects/projections → flood_adapt-1.0.0rc1/flood_adapt/objects/scenarios}/__init__.py +0 -0
  138. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/scenarios/scenarios.py +0 -0
  139. {flood_adapt-0.3.14/flood_adapt/objects/scenarios → flood_adapt-1.0.0rc1/flood_adapt/objects/strategies}/__init__.py +0 -0
  140. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/objects/strategies/strategies.py +0 -0
  141. {flood_adapt-0.3.14/flood_adapt/objects/strategies → flood_adapt-1.0.0rc1/flood_adapt/workflows}/__init__.py +0 -0
  142. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/workflows/benefit_runner.py +0 -0
  143. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/workflows/impacts_integrator.py +0 -0
  144. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt/workflows/scenario_runner.py +0 -0
  145. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt.egg-info/dependency_links.txt +0 -0
  146. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt.egg-info/not-zip-safe +0 -0
  147. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/flood_adapt.egg-info/top_level.txt +0 -0
  148. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/setup.cfg +0 -0
  149. {flood_adapt-0.3.14 → flood_adapt-1.0.0rc1}/tests/test_flood_adapt.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: flood-adapt
3
- Version: 0.3.14
3
+ Version: 1.0.0rc1
4
4
  Summary: A software package support system which can be used to assess the benefits and costs of flood resilience measures
5
5
  Author-email: Gundula Winter <Gundula.Winter@deltares.nl>, Panos Athanasiou <Panos.Athanasiou@deltares.nl>, Frederique de Groen <Frederique.deGroen@deltares.nl>, Tim de Wilde <Tim.deWilde@deltares.nl>, Julian Hofer <Julian.Hofer@deltares.nl>, Daley Adrichem <Daley.Adrichem@deltares.nl>, Luuk Blom <Luuk.Blom@deltares.nl>
6
6
  License: GNU GENERAL PUBLIC LICENSE
@@ -691,7 +691,7 @@ Requires-Dist: cht-observations==0.2.1
691
691
  Requires-Dist: cht-tide==0.1.1
692
692
  Requires-Dist: dask==2024.11.2
693
693
  Requires-Dist: numba_celltree==0.2.2
694
- Requires-Dist: fiat-toolbox==0.1.18
694
+ Requires-Dist: fiat-toolbox==0.1.20
695
695
  Requires-Dist: fiona<2.0,>=1.0
696
696
  Requires-Dist: geojson<4.0,>=3.0
697
697
  Requires-Dist: geopandas<2.0,>=1.0
@@ -1,5 +1,5 @@
1
1
  # has to be here at the start to avoid circular imports
2
- __version__ = "0.3.14"
2
+ __version__ = "1.0.0-rc1"
3
3
 
4
4
  from flood_adapt import adapter, database_builder, dbs_classes, objects
5
5
  from flood_adapt.config.config import Settings
@@ -23,6 +23,7 @@ from hydromt_fiat.fiat import FiatModel
23
23
 
24
24
  from flood_adapt.adapter.interface.impact_adapter import IImpactAdapter
25
25
  from flood_adapt.config.fiat import FiatConfigModel
26
+ from flood_adapt.config.impacts import FloodmapType
26
27
  from flood_adapt.misc.log import FloodAdaptLogging
27
28
  from flood_adapt.misc.path_builder import (
28
29
  ObjectDir,
@@ -39,7 +40,7 @@ from flood_adapt.objects.measures.measures import (
39
40
  )
40
41
  from flood_adapt.objects.projections.projections import Projection
41
42
  from flood_adapt.objects.scenarios.scenarios import Scenario
42
- from flood_adapt.workflows.floodmap import FloodMap, FloodmapType
43
+ from flood_adapt.workflows.floodmap import FloodMap
43
44
  from flood_adapt.workflows.impacts_integrator import Impacts
44
45
 
45
46
  # Define naming structure for saved files
@@ -934,7 +934,11 @@ class SfincsAdapter(IHazardAdapter):
934
934
  timeseries=tmp_path, magnitude=None, direction=None
935
935
  )
936
936
  elif isinstance(wind, WindMeteo):
937
- ds = MeteoHandler().read(time_frame)
937
+ ds = MeteoHandler(
938
+ dir=self.database.static_path / "meteo",
939
+ lat=self.database.site.lat,
940
+ lon=self.database.site.lon,
941
+ ).read(time_frame)
938
942
  # data already in metric units so no conversion needed
939
943
 
940
944
  # HydroMT function: set wind forcing from grid
@@ -1018,7 +1022,11 @@ class SfincsAdapter(IHazardAdapter):
1018
1022
 
1019
1023
  self._model.setup_precip_forcing(timeseries=tmp_path)
1020
1024
  elif isinstance(rainfall, RainfallMeteo):
1021
- ds = MeteoHandler().read(time_frame)
1025
+ ds = MeteoHandler(
1026
+ dir=self.database.static_path / "meteo",
1027
+ lat=self.database.site.lat,
1028
+ lon=self.database.site.lon,
1029
+ ).read(time_frame)
1022
1030
  # MeteoHandler always return metric so no conversion needed
1023
1031
  self._model.setup_precip_forcing_from_grid(precip=ds, aggregate=False)
1024
1032
  elif isinstance(rainfall, RainfallTrack):
@@ -138,7 +138,11 @@ class OffshoreSfincsHandler(IOffshoreSfincsHandler, DatabaseUser):
138
138
 
139
139
  # Add pressure forcing for the offshore model (this doesnt happen normally in _add_forcing_wind() for overland models)
140
140
  if isinstance(wind_forcing, WindMeteo):
141
- ds = MeteoHandler().read(_offshore_model._event.time)
141
+ ds = MeteoHandler(
142
+ dir=self.database.static_path / "meteo",
143
+ lat=self.database.site.lat,
144
+ lon=self.database.site.lon,
145
+ ).read(_offshore_model._event.time)
142
146
  _offshore_model._add_pressure_forcing_from_grid(ds=ds)
143
147
 
144
148
  # write sfincs model in output destination
@@ -0,0 +1,92 @@
1
+ from flood_adapt.config.config import Settings
2
+ from flood_adapt.config.fiat import (
3
+ FiatConfigModel,
4
+ FiatModel,
5
+ )
6
+ from flood_adapt.config.gui import (
7
+ AggregationDmgLayer,
8
+ BenefitsLayer,
9
+ FloodMapLayer,
10
+ FootprintsDmgLayer,
11
+ GuiModel,
12
+ GuiUnitModel,
13
+ Layer,
14
+ OutputLayers,
15
+ PlottingModel,
16
+ VisualizationLayer,
17
+ VisualizationLayers,
18
+ )
19
+ from flood_adapt.config.hazard import (
20
+ AsciiStr,
21
+ Cstype,
22
+ CycloneTrackDatabaseModel,
23
+ DatumModel,
24
+ DemModel,
25
+ FloodFrequencyModel,
26
+ FloodModel,
27
+ ObsPointModel,
28
+ RiverModel,
29
+ SCSModel,
30
+ Scstype,
31
+ SlrScenariosModel,
32
+ WaterlevelReferenceModel,
33
+ )
34
+ from flood_adapt.config.impacts import (
35
+ AggregationModel,
36
+ BenefitsModel,
37
+ EquityModel,
38
+ FloodmapType,
39
+ NoFootprintsModel,
40
+ RiskModel,
41
+ )
42
+ from flood_adapt.config.sfincs import (
43
+ SfincsConfigModel,
44
+ SfincsModel,
45
+ )
46
+ from flood_adapt.config.site import Site, SiteBuilder, StandardObjectModel
47
+
48
+ __all__ = [
49
+ # GUI
50
+ "GuiModel",
51
+ "GuiUnitModel",
52
+ "PlottingModel",
53
+ "Layer",
54
+ "OutputLayers",
55
+ "BenefitsLayer",
56
+ "FloodMapLayer",
57
+ "FootprintsDmgLayer",
58
+ "VisualizationLayer",
59
+ "VisualizationLayers",
60
+ "AggregationDmgLayer",
61
+ # FIAT
62
+ "FiatModel",
63
+ "FiatConfigModel",
64
+ "FloodmapType",
65
+ "NoFootprintsModel",
66
+ "RiskModel",
67
+ "EquityModel",
68
+ "BenefitsModel",
69
+ "AggregationModel",
70
+ # Config
71
+ "Settings",
72
+ # Sfincs
73
+ "SfincsModel",
74
+ "SfincsConfigModel",
75
+ "SCSModel",
76
+ "Scstype",
77
+ "Cstype",
78
+ "DemModel",
79
+ "DatumModel",
80
+ "FloodModel",
81
+ "RiverModel",
82
+ "ObsPointModel",
83
+ "SlrScenariosModel",
84
+ "FloodFrequencyModel",
85
+ "WaterlevelReferenceModel",
86
+ "CycloneTrackDatabaseModel",
87
+ "AsciiStr",
88
+ # Site
89
+ "Site",
90
+ "SiteBuilder",
91
+ "StandardObjectModel",
92
+ ]
@@ -1,140 +1,18 @@
1
- from enum import Enum
2
1
  from pathlib import Path
3
2
  from typing import Optional
4
3
 
5
4
  from pydantic import BaseModel
6
5
  from tomli import load as load_toml
7
6
 
8
- from flood_adapt.config.sfincs import FloodmapType
9
-
10
-
11
- class BenefitsModel(BaseModel):
12
- """The accepted input for the variable benefits in Site.
13
-
14
- Attributes
15
- ----------
16
- current_year : int
17
- The current year used in benefits calculations.
18
- current_projection : str
19
- The current projection used in benefits calculations.
20
- baseline_strategy : str
21
- The baseline strategy used in benefits calculations.
22
- event_set : str
23
- The event set used in benefits calculations.
24
- """
25
-
26
- current_year: int
27
- current_projection: str
28
- baseline_strategy: str
29
- event_set: str
30
-
31
-
32
- class EquityModel(BaseModel):
33
- """
34
- The accepted input for the variable equity in Site.
35
-
36
- Attributes
37
- ----------
38
- census_data : str
39
- TODO
40
- percapitaincome_label : Optional[str], default="PerCapitaIncome"
41
- TODO
42
- totalpopulation_label : Optional[str], default="TotalPopulation"
43
- TODO
44
- """
45
-
46
- census_data: str
47
- percapitaincome_label: Optional[str] = "PerCapitaIncome"
48
- totalpopulation_label: Optional[str] = "TotalPopulation"
49
-
50
-
51
- class AggregationModel(BaseModel):
52
- """The accepted input for the variable aggregation in Site.
53
-
54
- Attributes
55
- ----------
56
- name : str
57
- TODO
58
- file : str
59
- TODO
60
- field_name : str
61
- TODO
62
- equity : Optional[EquityModel], default=None
63
- TODO
64
- """
65
-
66
- name: str
67
- file: str
68
- field_name: str
69
- equity: Optional[EquityModel] = None
70
-
71
-
72
- class BFEModel(BaseModel):
73
- """The accepted input for the variable bfe in Site.
74
-
75
- Attributes
76
- ----------
77
- geom : str
78
- TODO
79
- table : Optional[str], default=None
80
- TODO
81
- field_name : str
82
- TODO
83
- """
84
-
85
- geom: str
86
- table: Optional[str] = None
87
- field_name: str
88
-
89
-
90
- class SVIModel(BaseModel):
91
- """The accepted input for the variable svi in Site.
92
-
93
- Attributes
94
- ----------
95
- geom : str
96
- TODO
97
- field_name : str
98
- TODO
99
- """
100
-
101
- geom: str
102
- field_name: str
103
-
104
-
105
- class NoFootprintsModel(BaseModel):
106
- """
107
- The configuration on the how to show objects with no footprints.
108
-
109
- Attributes
110
- ----------
111
- shape : Optional[str], default="triangle"
112
- The shape of the object with no footprints.
113
- diameter_meters : Optional[float], default=10
114
- The diameter of the object with no footprints in meters.
115
- """
116
-
117
- shape: Optional[str] = "triangle"
118
- diameter_meters: Optional[float] = 10
119
-
120
-
121
- class RiskModel(BaseModel):
122
- """The accepted input for the variable risk in Site.
123
-
124
- Attributes
125
- ----------
126
- return_periods : list[int]
127
- The return periods for the risk model.
128
- """
129
-
130
- return_periods: list = [1, 2, 5, 10, 25, 50, 100]
131
-
132
-
133
- class DamageType(str, Enum):
134
- """The accepted input for the variable footprints_dmg_type."""
135
-
136
- absolute = "absolute"
137
- relative = "relative"
7
+ from flood_adapt.config.impacts import (
8
+ AggregationModel,
9
+ BenefitsModel,
10
+ BFEModel,
11
+ FloodmapType,
12
+ NoFootprintsModel,
13
+ RiskModel,
14
+ SVIModel,
15
+ )
138
16
 
139
17
 
140
18
  class FiatConfigModel(BaseModel):
@@ -7,7 +7,7 @@ import pandas as pd
7
7
  import tomli
8
8
  from pydantic import BaseModel, Field, model_validator
9
9
 
10
- from flood_adapt.config.fiat import DamageType
10
+ from flood_adapt.config.impacts import DamageType
11
11
  from flood_adapt.objects.forcing import unit_system as us
12
12
 
13
13
 
@@ -8,11 +8,9 @@ import pandas as pd
8
8
  from plotly.express import line
9
9
  from plotly.express.colors import sample_colorscale
10
10
  from pydantic import AfterValidator, BaseModel, Field, model_validator
11
- from tomli import load as load_toml
12
11
  from typing_extensions import Annotated
13
12
 
14
13
  from flood_adapt.objects.forcing import unit_system as us
15
- from flood_adapt.objects.forcing.tide_gauge import TideGauge
16
14
  from flood_adapt.objects.forcing.timeseries import Scstype
17
15
 
18
16
 
@@ -120,13 +118,6 @@ class DemModel(BaseModel):
120
118
  units: us.UnitTypesLength
121
119
 
122
120
 
123
- class FloodmapType(str, Enum):
124
- """The accepted input for the variable floodmap in Site."""
125
-
126
- water_level = "water_level"
127
- water_depth = "water_depth"
128
-
129
-
130
121
  class DatumModel(BaseModel):
131
122
  """
132
123
  The accepted input for the variable datums in WaterlevelReferenceModel.
@@ -223,8 +214,6 @@ class SlrScenariosModel(BaseModel):
223
214
 
224
215
  Parameters
225
216
  ----------
226
- csv_path : Path
227
- Path to the slr.csv file containing the SLR scenarios.
228
217
  scenario : str
229
218
  SLR scenario name to use from the column names in self.file
230
219
  year : float
@@ -375,107 +364,3 @@ class FloodModel(BaseModel):
375
364
 
376
365
  # this used to be water_level_offset from events
377
366
  vertical_offset: Optional[us.UnitfulLength] = None
378
-
379
-
380
- class SfincsConfigModel(BaseModel):
381
- """The expected variables and data types of attributes of the SfincsConfig class.
382
-
383
- Attributes
384
- ----------
385
- csname : str
386
- The name of the CS model.
387
- cstype : Cstype
388
- Cstype of the CS model. must be either "projected" or "spherical".
389
- version : Optional[str], default = None
390
- The version of the CS model. If None, the version is not specified.
391
- offshore_model : Optional[FloodModel], default = None
392
- The offshore model. If None, the offshore model is not specified.
393
- overland_model : FloodModel
394
- The overland model. This is the main model used for the simulation.
395
- floodmap_units : us.UnitTypesLength
396
- The units used for the output floodmap. Sfincs always produces in metric units, this is used to convert the floodmap to the correct units.
397
- save_simulation : Optional[bool], default = False
398
- Whether to keep or delete the simulation files after the simulation is finished and all output files are created.
399
- If True, the simulation files are kept. If False, the simulation files are deleted.
400
- """
401
-
402
- csname: str
403
- cstype: Cstype
404
- version: Optional[str] = None
405
- offshore_model: Optional[FloodModel] = None
406
- overland_model: FloodModel
407
- floodmap_units: us.UnitTypesLength
408
- save_simulation: Optional[bool] = False
409
-
410
-
411
- class SfincsModel(BaseModel):
412
- """The expected variables and data types of attributes of the Sfincs class.
413
-
414
- Attributes
415
- ----------
416
- config : SfincsConfigModel
417
- The configuration of the Sfincs model.
418
- water_level : WaterlevelReferenceModel
419
- The collection of all datums and the main reference datum.
420
- dem : DemModel
421
- The digital elevation model.
422
- flood_frequency : FloodFrequencyModel, default = FloodFrequencyModel()
423
- The flood frequency model.
424
- slr : SlrScenariosModel
425
- Specification of the sea level rise scenarios.
426
- cyclone_track_database : CycloneTrackDatabaseModel, optional, default = None
427
- The cyclone track database model.
428
- scs : SCSModel, optional, default = None
429
- The SCS model.
430
- tide_gauge : TideGauge, optional, default = None
431
- The tide gauge model.
432
- river : list[RiverModel], optional, default = None
433
- The river model.
434
- obs_point : list[ObsPointModel], optional, default = None
435
- The observation point model.
436
- """
437
-
438
- config: SfincsConfigModel
439
- water_level: WaterlevelReferenceModel
440
- cyclone_track_database: Optional[CycloneTrackDatabaseModel] = None
441
- slr_scenarios: Optional[SlrScenariosModel] = None
442
- scs: Optional[SCSModel] = None # optional for the US to use SCS rainfall curves
443
- dem: DemModel
444
-
445
- flood_frequency: FloodFrequencyModel = FloodFrequencyModel(
446
- flooding_threshold=us.UnitfulLength(value=0.0, units=us.UnitTypesLength.meters)
447
- ) # TODO we dont actually use this anywhere?
448
-
449
- tide_gauge: Optional[TideGauge] = None
450
- river: Optional[list[RiverModel]] = None
451
- obs_point: Optional[list[ObsPointModel]] = None
452
-
453
- @staticmethod
454
- def read_toml(path: Path) -> "SfincsModel":
455
- with open(path, mode="rb") as fp:
456
- toml_contents = load_toml(fp)
457
-
458
- return SfincsModel(**toml_contents)
459
-
460
- @model_validator(mode="after")
461
- def ensure_references_exist(self):
462
- datum_names = [d.name for d in self.water_level.datums]
463
-
464
- if self.config.overland_model.reference not in datum_names:
465
- raise ValueError(
466
- f"Could not find reference `{self.config.overland_model.reference}` in available datums: {datum_names}."
467
- )
468
-
469
- if self.config.offshore_model is not None:
470
- if self.config.offshore_model.reference not in datum_names:
471
- raise ValueError(
472
- f"Could not find reference `{self.config.offshore_model.reference}` in available datums: {datum_names}."
473
- )
474
-
475
- if self.tide_gauge is not None:
476
- if self.tide_gauge.reference not in datum_names:
477
- raise ValueError(
478
- f"Could not find reference `{self.tide_gauge.reference}` in available datums: {datum_names}."
479
- )
480
-
481
- return self
@@ -0,0 +1,140 @@
1
+ from enum import Enum
2
+ from typing import Optional
3
+
4
+ from pydantic import BaseModel
5
+
6
+
7
+ class FloodmapType(str, Enum):
8
+ """The accepted input for the variable floodmap in Site."""
9
+
10
+ water_level = "water_level"
11
+ water_depth = "water_depth"
12
+
13
+
14
+ class BenefitsModel(BaseModel):
15
+ """The accepted input for the variable benefits in Site.
16
+
17
+ Attributes
18
+ ----------
19
+ current_year : int
20
+ The current year used in benefits calculations.
21
+ current_projection : str
22
+ The current projection used in benefits calculations.
23
+ baseline_strategy : str
24
+ The baseline strategy used in benefits calculations.
25
+ event_set : str
26
+ The event set used in benefits calculations.
27
+ """
28
+
29
+ current_year: int
30
+ current_projection: str
31
+ baseline_strategy: str
32
+ event_set: str
33
+
34
+
35
+ class EquityModel(BaseModel):
36
+ """
37
+ The accepted input for the variable equity in Site.
38
+
39
+ Attributes
40
+ ----------
41
+ census_data : str
42
+ TODO
43
+ percapitaincome_label : Optional[str], default="PerCapitaIncome"
44
+ TODO
45
+ totalpopulation_label : Optional[str], default="TotalPopulation"
46
+ TODO
47
+ """
48
+
49
+ census_data: str
50
+ percapitaincome_label: Optional[str] = "PerCapitaIncome"
51
+ totalpopulation_label: Optional[str] = "TotalPopulation"
52
+
53
+
54
+ class AggregationModel(BaseModel):
55
+ """The accepted input for the variable aggregation in Site.
56
+
57
+ Attributes
58
+ ----------
59
+ name : str
60
+ TODO
61
+ file : str
62
+ TODO
63
+ field_name : str
64
+ TODO
65
+ equity : Optional[EquityModel], default=None
66
+ TODO
67
+ """
68
+
69
+ name: str
70
+ file: str
71
+ field_name: str
72
+ equity: Optional[EquityModel] = None
73
+
74
+
75
+ class BFEModel(BaseModel):
76
+ """The accepted input for the variable bfe in Site.
77
+
78
+ Attributes
79
+ ----------
80
+ geom : str
81
+ TODO
82
+ table : Optional[str], default=None
83
+ TODO
84
+ field_name : str
85
+ TODO
86
+ """
87
+
88
+ geom: str
89
+ table: Optional[str] = None
90
+ field_name: str
91
+
92
+
93
+ class SVIModel(BaseModel):
94
+ """The accepted input for the variable svi in Site.
95
+
96
+ Attributes
97
+ ----------
98
+ geom : str
99
+ TODO
100
+ field_name : str
101
+ TODO
102
+ """
103
+
104
+ geom: str
105
+ field_name: str
106
+
107
+
108
+ class NoFootprintsModel(BaseModel):
109
+ """
110
+ The configuration on the how to show objects with no footprints.
111
+
112
+ Attributes
113
+ ----------
114
+ shape : Optional[str], default="triangle"
115
+ The shape of the object with no footprints.
116
+ diameter_meters : Optional[float], default=10
117
+ The diameter of the object with no footprints in meters.
118
+ """
119
+
120
+ shape: Optional[str] = "triangle"
121
+ diameter_meters: Optional[float] = 10
122
+
123
+
124
+ class RiskModel(BaseModel):
125
+ """The accepted input for the variable risk in Site.
126
+
127
+ Attributes
128
+ ----------
129
+ return_periods : list[int]
130
+ The return periods for the risk model.
131
+ """
132
+
133
+ return_periods: list = [1, 2, 5, 10, 25, 50, 100]
134
+
135
+
136
+ class DamageType(str, Enum):
137
+ """The accepted input for the variable footprints_dmg_type."""
138
+
139
+ absolute = "absolute"
140
+ relative = "relative"