Repository navigation
Risk Trajectory Split 5: Interpolated Risk Trajectories - #1201
Conversation
…ated-trajectories
…ated-trajectories
…erpolated-trajectories
Excellent, thanks for the guidance! |
|
I have so far looked at the tutorial. Great job, it is very comprehensive, and the quick intro at the beginning is very useful. I would suggest the following small improvements. Quick example:
with a direct future exposure file? I recall a few discussion with users that seem to believe that scaling the value is the only way to get future exposures, and I think this is because of such examples in our documentation.
Others:
|
I agree that adding a custom made TOC is not ideal. Can you adjust the current headings such that the subsections in the advance usage are shown? I think these need to be easily accessible without having to scroll through the whole thing. |
|
Thanks for the updates already! Are you @spjuhel already satisfied with the changes in the tutorial or is it planned to implement more of the suggestions above? And a little note, for the quick example, can one also replace the future hazard by a file instead of the multiplication of the frequency? I will come to the content afterwards. |
|
Not entirely, The ToC thing I want to have a look, I am pretty sure making deeper title visible will be messy (wrt the rest of documentation), but I think I can adjust that by just removing the "Using the For the I think I addressed everything else? |
Yes, I think this is a good solution (the title is anyway a bit redundant for a tutorial). I would also remove the
Then we need to make one ;).
Yes thanks! Just maybe I missed it, but I do not see "when one would use StaticRiskTrajectory and when the InterpolatedRiskTrajectory?". |
Will work ASAP on your other comments. |
chahank
left a comment
There was a problem hiding this comment.
Some modest changes and I think otherwise the code is already very nice. Maybe check merge conflicts should be checked though ;).
|
Ok, I'm merging as soon as the tests are green :) |
|
OK the failures are related to #1292, nothing to worry. @emanuel-schmid the integration tests ran fine locally, please tell me if anything is wrong on jenkins (no reason a priori) |
|
Fantastic, great job @spjuhel |
commit 48c6c43 Author: spjuhel <pro@sjuhel.org> Date: Thu Oct 15 11:01:44 2026 +0200 Removes deprecated test commit 7090874 Merge: 6f450c6 399120f Author: spjuhel <pro@sjuhel.org> Date: Thu Oct 15 11:00:38 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-new-measure-base commit 6f450c6 Author: spjuhel <pro@sjuhel.org> Date: Thu Oct 15 10:55:21 2026 +0200 Tutorial update, advanced examples commit b8492fe Author: spjuhel <pro@sjuhel.org> Date: Thu Oct 15 10:54:42 2026 +0200 url typo commit eb196eb Author: spjuhel <pro@sjuhel.org> Date: Thu Oct 15 10:52:25 2026 +0200 Fixed calc_impact (kwargs, args for `ImpactCalc.impact()`, docstring) commit f9f9009 Author: spjuhel <pro@sjuhel.org> Date: Thu Oct 15 10:51:55 2026 +0200 Typos commit 7e34485 Author: spjuhel <pro@sjuhel.org> Date: Wed Oct 14 17:34:46 2026 +0200 Removes unused `implementation_duration` commit 0f25f96 Author: spjuhel <pro@sjuhel.org> Date: Wed Oct 14 17:32:01 2026 +0200 Squashed commit of the following: commit 45f8885 Merge: 6ba1f6f 720b31d Author: spjuhel <pro@sjuhel.org> Date: Wed Oct 14 17:14:18 2026 +0200 Merge branch 'feature/option-appraisal-costincome' of github.com:CLIMADA-project/climada_python into feature/option-appraisal-costincome commit 6ba1f6f Author: spjuhel <pro@sjuhel.org> Date: Wed Oct 14 17:13:25 2026 +0200 fixes tests commit d2d891f Author: spjuhel <pro@sjuhel.org> Date: Wed Oct 14 17:10:24 2026 +0200 other minor fixes commit bf7fb2e Author: spjuhel <pro@sjuhel.org> Date: Wed Oct 14 16:50:52 2026 +0200 Fixes some linter issues, removes datetime commit b5da6bf Author: spjuhel <pro@sjuhel.org> Date: Wed Oct 14 16:13:40 2026 +0200 Tuple -> tuple commit 720b31d Merge: d5778d9 c0fcc8d Author: emanuel-schmid <schmide@ethz.ch> Date: Wed Sep 23 17:57:36 2026 +0200 Merge branch 'develop' into feature/option-appraisal-costincome commit c0fcc8d Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Tue Sep 22 16:13:26 2026 +0200 Fix exposure coordinate extraction for `CalcDeltaImpact` (#1304) * Use final exposure for centroid coords * Fix querying exposure coords in CalcDeltaImpact --------- Co-authored-by: emanuel-schmid <schmide@ethz.ch> commit b158053 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Tue Sep 15 16:49:20 2026 +0200 Trigger pipeline for pull requests (#1318) * Trigger pipeline for pull requests and pushes to main, develop, releases. * Add info on approving workflow runs to CONTRIBUTING.md commit dea46fa Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Sep 4 11:03:56 2026 +0200 pin rasterio to 1.4 commit 4f4a1bd Author: emanuel-schmid <schmide@ethz.ch> Date: Thu Sep 3 19:33:41 2026 +0200 remove noaa nightlight test commit 697e8d6 Author: EnvDroneSense <thomas.remote.sensing@outlook.com> Date: Wed Sep 2 14:56:20 2026 +0200 Compute forecast quantiles block-wise to bound memory (#1313) Add `sparse_quantile_axis0` to densify sparse matrices blockwise before computing the column quantiles. --------- Co-authored-by: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> commit 9efa386 Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Aug 28 17:42:20 2026 +0200 fix damage commit 05481fd Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Fri Aug 28 16:27:33 2026 +0200 Upgrade GitHub Actions and Python versions (#1281) * Upgrade actions and Python versions Python 3.11 to 3.13. * Upgrade Python version in pyproject.toml * docs: Update supported versions * pin pandas --------- Co-authored-by: emanuel-schmid <schmide@ethz.ch> commit 6b921e3 Merge: 6c7e3c8 bd6b09a Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Aug 28 13:40:30 2026 +0200 Merge branch 'develop' of github.com:CLIMADA-project/climada_python into develop commit bd6b09a Author: ankurmahiwal118028 <mahiinfo10@gmail.com> Date: Fri Aug 28 17:08:07 2026 +0530 Fix #814: raise clear error for empty Hazard in ImpactCalc.impact (#1290) * Raise clear error for empty Hazard in ImpactCalc.impact Computing impact with a Hazard containing zero events previously crashed deep inside ``np.array_split`` with the obscure message "number sections must be larger than 0". This adds an early guard in ``ImpactCalc.impact`` that raises a ``ValueError`` with a clear explanation when ``self.hazard.size == 0``. Closes #814 * Update climada/engine/test/test_impact_calc.py Co-authored-by: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> --------- Co-authored-by: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> Co-authored-by: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Co-authored-by: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> commit 6c7e3c8 Merge: 54d100c ca00465 Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Aug 28 13:33:06 2026 +0200 Merge branch 'develop' of github.com:CLIMADA-project/climada_python into develop commit ca00465 Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Fri Aug 28 13:32:17 2026 +0200 fix future warning: H is deprecated (#1307) * use h (H is deprecated) * add comment to affine pin commit a694663 Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Fri Aug 28 13:31:06 2026 +0200 fix fiona deprecation warning (#1308) * remove obsolete DEF_CRS_FIONA * add comment to affine pin commit 54d100c Merge: 5b03edb d2af313 Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Aug 28 13:05:56 2026 +0200 Merge branch 'develop' of github.com:CLIMADA-project/climada_python into develop commit d2af313 Author: Giovanni Cozzolongo <79092266+giovannicozzolongo@users.noreply.github.com> Date: Thu Aug 20 11:24:41 2026 +0200 Read forecast dates from xarray (#1310) Preserve explicitly mapped date variables in HazardForecast.from_xarray_raster. commit 5b03edb Author: emanuel-schmid <schmide@ethz.ch> Date: Wed Aug 19 11:02:31 2026 +0200 add comment to affine pin commit 80a2975 Author: emanuel-schmid <schmide@ethz.ch> Date: Wed Aug 19 10:36:03 2026 +0200 dependencies: pin affine to 2.4 commit 8100a31 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Wed Jul 15 12:18:41 2026 +0200 Use Zenodo for downloading distance to coastline dataset (#1301) commit cf0aa86 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Mon Jul 13 16:22:25 2026 +0200 Handle 0-dim arrays being passed to ordinal converter (#1300) commit 222a6e5 Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Jun 19 16:11:18 2026 +0200 pin matplotlib to 3.10 commit 5d0a985 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Wed Jun 17 11:23:05 2026 +0200 Update installation guide (#1296) * Fix formatting errors. * Move switching branches to FAQ. * Fix some links. commit d5778d9 Merge: a56dcc6 7094124 Author: spjuhel <pro@sjuhel.org> Date: Wed Jun 10 15:13:21 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-costincome commit 7094124 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Wed Jun 10 11:55:53 2026 +0200 Fix README links and update structure (#1101) * Fix README links and structure * Improve petals description --------- Co-authored-by: emanuel-schmid <schmide@ethz.ch> Co-authored-by: Chahan M. Kropf <chahan.kropf@usys.ethz.ch> Co-authored-by: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> commit a1e7107 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Wed Jun 10 11:31:14 2026 +0200 Add forecast classes (#1115) * Add HazardForecast and ImpactForecast classes. * Add tests. * Add new forecast tutorial. --------- Co-authored-by: Evelyn Mühlhofer <42063186+Evelyn-M@users.noreply.github.com> Co-authored-by: Luca Severino <91593121+luseverin@users.noreply.github.com> Co-authored-by: Valentin Gebhart <60438839+ValentinGebhart@users.noreply.github.com> Co-authored-by: Chahan M. Kropf <chahan.kropf@usys.ethz.ch> Co-authored-by: Chahan Kropf <chahan.kropf@posteo.com> Co-authored-by: elianekobler <138141646+elianekobler@users.noreply.github.com> commit a56dcc6 Author: spjuhel <pro@sjuhel.org> Date: Wed Jun 10 09:50:52 2026 +0200 removes tests for removed method commit 7e30183 Merge: dd9c738 a99b10b Author: spjuhel <pro@sjuhel.org> Date: Wed Jun 10 09:36:03 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-costincome commit a99b10b Merge: 805e2da aae360f Author: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> Date: Wed Jun 10 09:33:31 2026 +0200 MeasureConfig dataclasses [Option Appraisal Module] [Package 1: Measures] Split 1: Adds `MeasureConfig` dataclasses for serializable measure configuration. commit aae360f Merge: 92990e4 a423c78 Author: spjuhel <pro@sjuhel.org> Date: Wed Jun 10 09:12:00 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-dataclasses commit 805e2da Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Mon Jun 8 16:08:27 2026 +0200 Docs/pixi installation (#1295) * first draft * improvments * notice about windows * make installation instructions more concise, add comments * layout corrections * improve section order commit dd9c738 Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 11:59:34 2026 +0200 Adds test for custom cost incomes and cash flow computation commit f191980 Merge: d09d18f a423c78 Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:11:15 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-costincome commit 92990e4 Merge: 8a4d13b 5ae3f7f Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:10:34 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-dataclasses commit 8a4d13b Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:10:06 2026 +0200 updates notebook outputs commit 6ef99a2 Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:09:14 2026 +0200 Updates custom cash flow values commit d09d18f Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:01:30 2026 +0200 Removes method not in use commit 3165652 Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 09:57:37 2026 +0200 Removes double checks commit dc29f9b Author: spjuhel <pro@sjuhel.org> Date: Thu May 28 16:55:16 2026 +0200 Implement somes comments from Vale commit ee1e854 Author: spjuhel <pro@sjuhel.org> Date: Thu May 28 16:06:58 2026 +0200 idem commit 1264c8e Author: spjuhel <pro@sjuhel.org> Date: Thu May 28 15:59:51 2026 +0200 Implements comments from Vale commit 991562d Author: Valentin Gebhart <valentin.gebhart@usys.ethz.ch> Date: Fri May 22 08:15:13 2026 +0200 some typos and rephrasing commit 3e8c51a Merge: 044b7f4 3133447 Author: spjuhel <pro@sjuhel.org> Date: Wed May 13 14:47:26 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-costincome commit 044b7f4 Merge: 2ee944b 2b19cf8 Author: spjuhel <pro@sjuhel.org> Date: Wed May 13 14:43:27 2026 +0200 Merge branch 'develop' into feature/option-appraisal-costincome commit 7803112 Merge: 0423a6f 3133447 Author: spjuhel <pro@sjuhel.org> Date: Wed May 13 14:27:52 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-dataclasses commit a9e9c5f Author: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> Date: Wed Oct 14 17:30:12 2026 +0200 Apply batched suggestions from code review Co-authored-by: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> commit 399120f Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Mon Oct 5 08:44:31 2026 +0200 remove Euler installation docs (#1329) * remove Euler installation docs * update pr number commit f6b5f41 Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Thu Sep 24 15:52:54 2026 +0200 minimal fixes (#1325) commit f7272d7 Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Thu Sep 24 15:52:03 2026 +0200 fix shapely deprecations (#1324) * fix shapely deprecations * fix import * fix contains_xy location * blacken * fix more imports commit dac0947 Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Thu Sep 24 15:51:01 2026 +0200 fix arguments in compute_angular_windspeeds (#1323) commit c0fcc8d Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Tue Sep 22 16:13:26 2026 +0200 Fix exposure coordinate extraction for `CalcDeltaImpact` (#1304) * Use final exposure for centroid coords * Fix querying exposure coords in CalcDeltaImpact --------- Co-authored-by: emanuel-schmid <schmide@ethz.ch> commit b158053 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Tue Sep 15 16:49:20 2026 +0200 Trigger pipeline for pull requests (#1318) * Trigger pipeline for pull requests and pushes to main, develop, releases. * Add info on approving workflow runs to CONTRIBUTING.md commit dea46fa Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Sep 4 11:03:56 2026 +0200 pin rasterio to 1.4 commit 4f4a1bd Author: emanuel-schmid <schmide@ethz.ch> Date: Thu Sep 3 19:33:41 2026 +0200 remove noaa nightlight test commit 697e8d6 Author: EnvDroneSense <thomas.remote.sensing@outlook.com> Date: Wed Sep 2 14:56:20 2026 +0200 Compute forecast quantiles block-wise to bound memory (#1313) Add `sparse_quantile_axis0` to densify sparse matrices blockwise before computing the column quantiles. --------- Co-authored-by: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> commit 9efa386 Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Aug 28 17:42:20 2026 +0200 fix damage commit 05481fd Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Fri Aug 28 16:27:33 2026 +0200 Upgrade GitHub Actions and Python versions (#1281) * Upgrade actions and Python versions Python 3.11 to 3.13. * Upgrade Python version in pyproject.toml * docs: Update supported versions * pin pandas --------- Co-authored-by: emanuel-schmid <schmide@ethz.ch> commit 6b921e3 Merge: 6c7e3c8 bd6b09a Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Aug 28 13:40:30 2026 +0200 Merge branch 'develop' of github.com:CLIMADA-project/climada_python into develop commit bd6b09a Author: ankurmahiwal118028 <mahiinfo10@gmail.com> Date: Fri Aug 28 17:08:07 2026 +0530 Fix #814: raise clear error for empty Hazard in ImpactCalc.impact (#1290) * Raise clear error for empty Hazard in ImpactCalc.impact Computing impact with a Hazard containing zero events previously crashed deep inside ``np.array_split`` with the obscure message "number sections must be larger than 0". This adds an early guard in ``ImpactCalc.impact`` that raises a ``ValueError`` with a clear explanation when ``self.hazard.size == 0``. Closes #814 * Update climada/engine/test/test_impact_calc.py Co-authored-by: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> --------- Co-authored-by: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> Co-authored-by: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Co-authored-by: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> commit 6c7e3c8 Merge: 54d100c ca00465 Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Aug 28 13:33:06 2026 +0200 Merge branch 'develop' of github.com:CLIMADA-project/climada_python into develop commit ca00465 Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Fri Aug 28 13:32:17 2026 +0200 fix future warning: H is deprecated (#1307) * use h (H is deprecated) * add comment to affine pin commit a694663 Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Fri Aug 28 13:31:06 2026 +0200 fix fiona deprecation warning (#1308) * remove obsolete DEF_CRS_FIONA * add comment to affine pin commit 54d100c Merge: 5b03edb d2af313 Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Aug 28 13:05:56 2026 +0200 Merge branch 'develop' of github.com:CLIMADA-project/climada_python into develop commit d2af313 Author: Giovanni Cozzolongo <79092266+giovannicozzolongo@users.noreply.github.com> Date: Thu Aug 20 11:24:41 2026 +0200 Read forecast dates from xarray (#1310) Preserve explicitly mapped date variables in HazardForecast.from_xarray_raster. commit 5b03edb Author: emanuel-schmid <schmide@ethz.ch> Date: Wed Aug 19 11:02:31 2026 +0200 add comment to affine pin commit 80a2975 Author: emanuel-schmid <schmide@ethz.ch> Date: Wed Aug 19 10:36:03 2026 +0200 dependencies: pin affine to 2.4 commit 8100a31 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Wed Jul 15 12:18:41 2026 +0200 Use Zenodo for downloading distance to coastline dataset (#1301) commit cf0aa86 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Mon Jul 13 16:22:25 2026 +0200 Handle 0-dim arrays being passed to ordinal converter (#1300) commit 222a6e5 Author: emanuel-schmid <schmide@ethz.ch> Date: Fri Jun 19 16:11:18 2026 +0200 pin matplotlib to 3.10 commit 5d0a985 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Wed Jun 17 11:23:05 2026 +0200 Update installation guide (#1296) * Fix formatting errors. * Move switching branches to FAQ. * Fix some links. commit 7094124 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Wed Jun 10 11:55:53 2026 +0200 Fix README links and update structure (#1101) * Fix README links and structure * Improve petals description --------- Co-authored-by: emanuel-schmid <schmide@ethz.ch> Co-authored-by: Chahan M. Kropf <chahan.kropf@usys.ethz.ch> Co-authored-by: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> commit a1e7107 Author: Lukas Riedel <34276446+peanutfun@users.noreply.github.com> Date: Wed Jun 10 11:31:14 2026 +0200 Add forecast classes (#1115) * Add HazardForecast and ImpactForecast classes. * Add tests. * Add new forecast tutorial. --------- Co-authored-by: Evelyn Mühlhofer <42063186+Evelyn-M@users.noreply.github.com> Co-authored-by: Luca Severino <91593121+luseverin@users.noreply.github.com> Co-authored-by: Valentin Gebhart <60438839+ValentinGebhart@users.noreply.github.com> Co-authored-by: Chahan M. Kropf <chahan.kropf@usys.ethz.ch> Co-authored-by: Chahan Kropf <chahan.kropf@posteo.com> Co-authored-by: elianekobler <138141646+elianekobler@users.noreply.github.com> commit a99b10b Merge: 805e2da aae360f Author: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> Date: Wed Jun 10 09:33:31 2026 +0200 MeasureConfig dataclasses [Option Appraisal Module] [Package 1: Measures] Split 1: Adds `MeasureConfig` dataclasses for serializable measure configuration. commit aae360f Merge: 92990e4 a423c78 Author: spjuhel <pro@sjuhel.org> Date: Wed Jun 10 09:12:00 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-dataclasses commit 805e2da Author: Emanuel Schmid <51439563+emanuel-schmid@users.noreply.github.com> Date: Mon Jun 8 16:08:27 2026 +0200 Docs/pixi installation (#1295) * first draft * improvments * notice about windows * make installation instructions more concise, add comments * layout corrections * improve section order commit 96f6f95 Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:21:42 2026 +0200 Adds guide commit e53690b Merge: 3ed1b5c a423c78 Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:14:51 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-new-measure-base commit 92990e4 Merge: 8a4d13b 5ae3f7f Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:10:34 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-dataclasses commit 8a4d13b Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:10:06 2026 +0200 updates notebook outputs commit 6ef99a2 Author: spjuhel <pro@sjuhel.org> Date: Fri May 29 10:09:14 2026 +0200 Updates custom cash flow values commit ee1e854 Author: spjuhel <pro@sjuhel.org> Date: Thu May 28 16:06:58 2026 +0200 idem commit 1264c8e Author: spjuhel <pro@sjuhel.org> Date: Thu May 28 15:59:51 2026 +0200 Implements comments from Vale commit 991562d Author: Valentin Gebhart <valentin.gebhart@usys.ethz.ch> Date: Fri May 22 08:15:13 2026 +0200 some typos and rephrasing commit a423c78 Author: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> Date: Wed May 20 16:13:44 2026 +0200 Fixes CHANGELOG.md not updated in [#1201] commit a74b03c Merge: 5ae3f7f bb0c406 Author: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> Date: Tue May 19 14:18:07 2026 +0200 Merge pull request #1201 from CLIMADA-project/feature/interpolated-trajectories Risk Trajectory Split 5: Interpolated Risk Trajectories commit bb0c406 Author: spjuhel <pro@sjuhel.org> Date: Tue May 19 14:01:41 2026 +0200 Fix tests and period aggregation commit e609c32 Author: spjuhel <pro@sjuhel.org> Date: Mon May 18 15:51:25 2026 +0200 Tests to pytest format commit 0a52333 Author: spjuhel <pro@sjuhel.org> Date: Mon May 18 15:50:12 2026 +0200 Better bounds inclusion in per_period_risk_metrics commit f903cbf Author: spjuhel <pro@sjuhel.org> Date: Mon May 18 13:20:03 2026 +0200 Implement much better period aggregation commit 1ff0a98 Author: spjuhel <pro@sjuhel.org> Date: Mon May 18 13:19:39 2026 +0200 Implement comments from Chahan commit 59f8a78 Merge: 39d557c 5ae3f7f Author: spjuhel <pro@sjuhel.org> Date: Mon May 18 09:21:20 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/interpolated-trajectories commit 5ae3f7f Author: Simona Meiler <47355042+simonameiler@users.noreply.github.com> Date: Fri May 15 03:58:37 2026 -0700 Fix TCTracks.from_FAST duplicate loading from year loop (#1269) * Fix TCTracks.from_FAST duplicate loading from year loop * Refactor test_from_FAST: extend fixture to 2 years, remove separate regression test The test fixture FAST_test_tracks.nc now has year=[2025,2026] (only seeds_per_month is extended; track variables retain their n_trk dim). The existing len(tc_track.data)==5 assertion now acts as the regression check: the buggy year-loop code would return 5x2=10 tracks. The separate test_from_FAST_not_multiplied_by_year_dim (with its temporary-file scaffolding) is removed. * Update changelo --------- Co-authored-by: Simona Meiler <simona.meiler@usys.ethz.ch> Co-authored-by: Chahan Kropf <chahan.kropf@posteo.com> commit 7803112 Merge: 0423a6f 3133447 Author: spjuhel <pro@sjuhel.org> Date: Wed May 13 14:27:52 2026 +0200 Merge remote-tracking branch 'origin/develop' into feature/option-appraisal-dataclasses commit 3133447 Merge: cb38e22 20f8485 Author: Samuel Juhel <10011382+spjuhel@users.noreply.github.com> Date: Wed May 13 14:24:57 2026 +0200 Merge pull request #1274 from CLIMADA-project/feature/option-appraisal-split-make-legacy [Option Appraisal Module] [Package 1: Measures] Split 0: Move old measures to _legacy module commit 20f8485 Merge: 7986917 2b19cf8 Author: spjuhel <pro@sjuhel.org> Date: Wed May 13 10:23:02 2026 +0200 Merge branch 'develop' into feature/option-appraisal-split-make-legacy commit 3ed1b5c Author: spjuhel <pro@sjuhel.org> Date: Tue May 12 15:34:47 2026 +0200 Updates calc_impact code and docstring commit 8d6ef87 Author: spjuhel <pro@sjuhel.org> Date: Mon May 11 14:58:40 2026 +0200 propagates name change commit 05cd6c4 Author: spjuhel <pro@sjuhel.org> Date: Mon May 11 14:56:03 2026 +0200 Rename base.py -> measure.py commit cb38e22 Author: emanuel-schmid <schmide@ethz.ch> Date: Tue Apr 21 15:21:50 2026 +0200 purge .gitignore commit 2b19cf8 Author: emanuel-schmid <schmide@ethz.ch> Date: Tue Apr 21 14:47:27 2026 +0200 recover common_test_fixtures commit 39d557c Author: spjuhel <pro@sjuhel.org> Date: Wed Apr 8 08:47:37 2026 +0200 Update tests commit da737ae Merge: 6528721 12713e4 Author: spjuhel <pro@sjuhel.org> Date: Wed Apr 8 08:42:40 2026 +0200 Merge branch 'feature/conftest-for-common-fixtures' into feature/interpolated-trajectories commit 6528721 Author: spjuhel <pro@sjuhel.org> Date: Tue Apr 7 16:40:24 2026 +0200 Better TOC commit b815433 Author: spjuhel <pro@sjuhel.org> Date: Fri Mar 27 14:43:19 2026 +0100 Forgot to run all cells commit f7927f2 Author: spjuhel <pro@sjuhel.org> Date: Fri Mar 27 14:37:25 2026 +0100 Implements comments from Chahan commit 63535f5 Merge: 7aca568 60d3957 Author: spjuhel <pro@sjuhel.org> Date: Thu Mar 26 11:36:38 2026 +0100 Merge remote-tracking branch 'origin/develop' into feature/interpolated-trajectories commit 7aca568 Merge: f5f484f 8895be3 Author: spjuhel <pro@sjuhel.org> Date: Thu Mar 26 11:24:26 2026 +0100 Merge remote-tracking branch 'origin/develop' into feature/interpolated-trajectories commit f5f484f Author: spjuhel <pro@sjuhel.org> Date: Wed Mar 25 17:13:12 2026 +0100 Update tuto commit d25ed40 Merge: 5dffa17 ea8e9b6 Author: spjuhel <pro@sjuhel.org> Date: Wed Mar 25 16:47:54 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit 5dffa17 Merge: bbec035 99703d3 Author: spjuhel <pro@sjuhel.org> Date: Wed Mar 25 16:47:50 2026 +0100 Merge remote-tracking branch 'origin/develop' into feature/interpolated-trajectories commit bbec035 Author: spjuhel <pro@sjuhel.org> Date: Thu Mar 12 13:56:34 2026 +0100 Added a test for negative intensity hazards commit bb4fbba Author: spjuhel <pro@sjuhel.org> Date: Wed Mar 11 11:29:12 2026 +0100 Polish (unused imports, lsp/pylint errors) commit a032cc5 Merge: 7c2426c 152f594 Author: spjuhel <pro@sjuhel.org> Date: Wed Mar 11 10:55:23 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit 7c2426c Author: spjuhel <pro@sjuhel.org> Date: Thu Feb 26 10:52:10 2026 +0100 Fixes header display in doc commit 6922834 Merge: be86a85 0ba7e35 Author: spjuhel <pro@sjuhel.org> Date: Thu Feb 26 10:34:19 2026 +0100 Merge branch 'feature/docbuild-fixes' into feature/interpolated-trajectories commit be86a85 Author: spjuhel <pro@sjuhel.org> Date: Thu Feb 26 10:33:04 2026 +0100 updates notebook commit d3a37cf Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 25 17:05:15 2026 +0100 Fixes integration tests commit f8ba95c Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 25 16:59:49 2026 +0100 Fixes names commit 9ca3940 Merge: 402b173 e55a481 Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 25 16:51:18 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit 402b173 Merge: 495a1dc 33e7bac Author: spjuhel <pro@sjuhel.org> Date: Fri Feb 13 15:47:07 2026 +0100 Merge remote-tracking branch 'origin/develop' into feature/interpolated-trajectories commit 495a1dc Merge: 50cc9ee bb08305 Author: spjuhel <pro@sjuhel.org> Date: Thu Feb 12 10:46:49 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit 50cc9ee Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 11 12:05:18 2026 +0100 Updates Notebook commit 4f3fb40 Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 11 11:49:26 2026 +0100 Tiny fix from notebook warning commit 592a84c Merge: 9d646e0 0cda1e2 Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 11 11:31:58 2026 +0100 Merge branch 'feature/conftest-for-common-fixtures' into feature/interpolated-trajectories commit 9d646e0 Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 11 11:29:12 2026 +0100 wrong branch commit 989fe9e Merge: 006ab46 5f96532 Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 11 11:26:15 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit 006ab46 Merge: a221770 dea5796 Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 11 11:16:26 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit a221770 Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 11 11:16:10 2026 +0100 test update commit e12b755 Author: spjuhel <pro@sjuhel.org> Date: Wed Feb 11 11:11:39 2026 +0100 Updates integration tests commit 58f4e84 Merge: 723f7f4 e83b768 Author: spjuhel <pro@sjuhel.org> Date: Tue Feb 10 10:43:45 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit 723f7f4 Merge: 628c427 7a58d5b Author: spjuhel <pro@sjuhel.org> Date: Tue Feb 10 09:52:08 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit 628c427 Merge: b04a5e3 f334b8c Author: spjuhel <pro@sjuhel.org> Date: Tue Feb 10 09:49:13 2026 +0100 Merge branch 'feature/snapshots' into feature/interpolated-trajectories commit b04a5e3 Author: spjuhel <pro@sjuhel.org> Date: Thu Jan 8 10:32:16 2026 +0100 Removes low level thingy from high level interface (and docs) commit 26ac588 Author: spjuhel <pro@sjuhel.org> Date: Thu Jan 8 10:25:28 2026 +0100 Fix name in docstring commit 4f7c336 Author: spjuhel <pro@sjuhel.org> Date: Wed Jan 7 17:22:59 2026 +0100 Removed unused attribute commit 8f537cf Merge: fa3ae24 77b76c4 Author: spjuhel <pro@sjuhel.org> Date: Wed Jan 7 16:54:19 2026 +0100 Merge branch 'feature/snapshots' into feature/interpolated-trajectories commit fa3ae24 Author: spjuhel <pro@sjuhel.org> Date: Wed Jan 7 16:53:52 2026 +0100 fix lsp complaints about type hints commit 8053554 Author: spjuhel <pro@sjuhel.org> Date: Wed Jan 7 16:53:35 2026 +0100 better type hint commit fc3825e Author: spjuhel <pro@sjuhel.org> Date: Wed Jan 7 16:53:13 2026 +0100 naming, type hint commit 71d23d9 Author: spjuhel <pro@sjuhel.org> Date: Wed Jan 7 16:52:55 2026 +0100 fix commit b7d39d3 Author: spjuhel <pro@sjuhel.org> Date: Tue Jan 6 10:53:10 2026 +0100 updates API reference commit 7db2d26 Merge: d63e606 183783f Author: spjuhel <pro@sjuhel.org> Date: Tue Jan 6 10:51:47 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit d63e606 Merge: e8741c0 cf40e8f Author: spjuhel <pro@sjuhel.org> Date: Tue Jan 6 10:51:06 2026 +0100 Merge branch 'feature/impact-computation-strategies' into feature/interpolated-trajectories commit e8741c0 Merge: e837b46 76e237f Author: spjuhel <pro@sjuhel.org> Date: Tue Jan 6 10:50:22 2026 +0100 Merge branch 'feature/interpolation-strategies' into feature/interpolated-trajectories commit e837b46 Merge: 36e078d 25fbcda Author: spjuhel <pro@sjuhel.org> Date: Tue Jan 6 10:49:42 2026 +0100 Merge branch 'feature/snapshots' into feature/interpolated-trajectories commit 36e078d Author: spjuhel <pro@sjuhel.org> Date: Tue Jan 6 10:06:59 2026 +0100 pylint compliance commit 68ee822 Author: spjuhel <pro@sjuhel.org> Date: Mon Jan 5 18:08:27 2026 +0100 Pylint compliance commit 09e7af9 Merge: 94e292a 463568c Author: spjuhel <pro@sjuhel.org> Date: Mon Jan 5 16:08:10 2026 +0100 Merge branch 'feature/interpolation-strategies' into feature/interpolated-trajectories commit 94e292a Merge: ca23d19 1ec88bf Author: spjuhel <pro@sjuhel.org> Date: Mon Jan 5 16:06:09 2026 +0100 Merge branch 'feature/static-risk-traj' into feature/interpolated-trajectories commit ca23d19 Author: spjuhel <pro@sjuhel.org> Date: Mon Jan 5 14:23:23 2026 +0100 updates tests and fixtures commit ebd91bf Merge: a2ae1f0 765bb00 Author: spjuhel <pro@sjuhel.org> Date: Tue Dec 23 10:35:16 2025 +0100 Merge branch 'feature/common_test_fixtures' into feature/interpolated-trajectories commit 765bb00 Author: spjuhel <pro@sjuhel.org> Date: Tue Dec 23 10:33:17 2025 +0100 First suggestion commit a2ae1f0 Author: spjuhel <pro@sjuhel.org> Date: Mon Dec 22 14:00:24 2025 +0100 Adds ref to notebook in rst index commit ad941d8 Author: spjuhel <pro@sjuhel.org> Date: Mon Dec 22 13:54:18 2025 +0100 clean Notebook commit ed8ed0f Author: spjuhel <pro@sjuhel.org> Date: Mon Dec 22 13:45:52 2025 +0100 Fixes legend colors for non always negative contributions commit 08ebe0e Author: spjuhel <pro@sjuhel.org> Date: Mon Dec 22 13:45:19 2025 +0100 Makes caching configurable commit 50b4286 Author: spjuhel <pro@sjuhel.org> Date: Fri Dec 19 17:40:42 2025 +0100 updates tutorial commit 2a95391 Author: spjuhel <pro@sjuhel.org> Date: Fri Dec 19 17:40:16 2025 +0100 waterfall time plot with negative contributions commit e4ec92d Author: spjuhel <pro@sjuhel.org> Date: Fri Dec 19 17:39:57 2025 +0100 fixes init imports commit 2068ee8 Merge: 480c89d e12e014 Author: spjuhel <pro@sjuhel.org> Date: Fri Dec 19 15:23:57 2025 +0100 Merge branch 'feature/snapshots' into feature/interpolated-trajectories commit 480c89d Author: spjuhel <pro@sjuhel.org> Date: Fri Dec 19 15:18:22 2025 +0100 updates Tutorial [wip] commit 063a4ce Author: spjuhel <pro@sjuhel.org> Date: Fri Dec 19 09:45:00 2025 +0100 fixes imports commit f0f635b Author: spjuhel <pro@sjuhel.org> Date: Thu Dec 18 16:29:51 2025 +0100 Tidies up `calc_risk_metrics` commit 2a0cf66 Author: spjuhel <pro@sjuhel.org> Date: Thu Dec 18 15:21:01 2025 +0100 fixes namespace commit 6443876 Author: spjuhel <pro@sjuhel.org> Date: Thu Dec 18 15:18:11 2025 +0100 updates from feature/risk_trajectory commit b8b4881 Author: spjuhel <pro@sjuhel.org> Date: Thu Dec 18 15:16:11 2025 +0100 Updates from feature/risk_trajectory commit cf7a80a Author: spjuhel <pro@sjuhel.org> Date: Thu Dec 18 15:12:25 2025 +0100 cherry pick

As the Risk trajectory PR is too substantial, this is the fifth (and final) split.
This PR builds on all previous splits (#1197 #1198 #1199 #1200).
It implements the high level
InterpolatedRiskTrajectoryclass and the low level computing classCalcRiskMetricsPeriod, similarly as Split 4, but with interpolation in between pairs of consecutiveSnapshot. The additional complexity and the differences with Split 4 are summarized below.It also ships the tutorial for the
trajectorymodule.Core differences
Instead of having one
CalcRiskMetricsPointsfor all snapshot, the high level class holds a list ofCalcRiskMetricsPeriodobjects (one for each pair of consecutive snapshots), each having the role of computing the metrics for the period defined by the two snapshots.CalcRiskMetricsPeriodthus takes a starting (0) and ending (1)Snapshotinstead of a list of them.It also takes an
InterpolationStrategyin addition to theImpactComputationStrategy, and a "time resolution", which defines the number of time points to have for the metrics (including start and end).Interpolation conceptual flow (in
calc_risk_metrics)Instead of "simply" computing the impacts for each snapshot, it computes all corners of the so-called Risk Cube™ (all 2³ convolutions of (exp,haz,vul) Impact triplet), and the interpolated risk metrics based on these.
The eight corners are
@lazy_property, and labelledEiHjVk(where i,j,k are 0 or 1), such that for instanceE0H0V0is the impact object corresponding to Exposure, Hazard and Vulnerability of Snapshot 0.From then, arrays of impact matrices are interpolated between corners for as many points as needed by the given time resolution. (i.e. if start date is 2020, end date is 2025 and resolution is yearly, arrays of 5 impact matrices will be computed).
As it is not feasible (in general) to interpolate between corners with a different hazard (shapes of impact matrices may differ), this interpolation of impact matrices is only done "along the exposure dimension", that is for the four edges of the Risk Cube™ where hazard and vulnerability remain constant along the edge. (side note here, it should actually also be possible to do that for vulnerability, will see for future updates)
These four arrays of matrices are labelled
imp_mats_HiVj, to be read as "Evolution of impacts matrices with hazard constant to snapshot i, vulnerability constant to snapshot j, and exposure changing from snapshot 0 to 1".From then on, interpolation is made on the metrics themselves and not the matrices.
We compute both the EAIs for each of the four arrays (
per_date_eai_HiVj), from which the corresponding AAIs can be computed (per_date_aai_HiVj), and the "return period impacts".Then we can compute the "fully interpolated metrics basis",
per_date_eai,per_date_aai(return periods have a special treatment given they rely on an argument), and cache them using@lazy_property. Computation is done by interpolating first along the hazard dimension and then along the vulnerability one.Finally, we can have the
calc_<risk_metric>methods which take care of tidying the data in nice dataframes.Differences in interface class
InterpolatedRiskTrajectoryhandle the additional "time resolution" attribute, shipsper_period_<risk_metric>methods in addition to theper_dateones, where average values of the metric for each period (consecutive pairs of snapshots) are computed.PR Author Checklist
develop)PR Reviewer Checklist