Allow individual glaciers to merge together #624
This is the same as #600. I made some awful merge/commit errors there. Opening a new PR seemed cleaner and easier.
OGGM glaciers are initialised with current (~2003) glacier geometry and modeled as entities. For all scenarios with glacier retreat or only small advances this is perfectly fine. But for simulations where glaciers advance significantly nearby glaciers might merge together and behave different then when modeled individually.
This Pull Request will most likely only deal with individual glaciers and their tributary glaciers. Future work could adapt this approach and apply it to regional scales. But I doubt merging glaciers will ever become a fully automated process within all OGGM simulations. More likely merging glaciers will be a deliberate choice for specific simulations.
In this 1. commit I provide two new functions:
One necessary addition in the process was to add a
This PR is still work in progress. I at least want to add a more automatic selection of possible tributary glaciers. But I am happy to take comments or suggestions!
For illustration a simulation with artificial climate around Hintereisferner: For the first run all 5 pictured glaciers (Hintereisferner, two small previously connected pieces, Kesselwandferner in the north and Hochjochferner in the east) are modeled in basic OGGM fashion as entities.
The second plot shows a merged run, where all flowlines of the other 4 glaciers are merged to Hintereisferner.
I think the last two things to do are
The text was updated successfully, but these errors were encountered:
Hello @matthiasdusch! Thanks for updating the PR.
Comment last updated on December 19, 2018 at 16:19 Hours UTC
* Enable glaciers to merge together * removed blank line in test_models.py * added utils.merged_glacier_masks * added workflow.merge_glacier_tasks * added whats_new.rst entry, changed baseline_climate to custom * changed test-function to not download rgi-files * changed initialize_merged_gdir to accept a main geodataframe * changed the workflow function to also preprocess the main glcs * PEP8 issues * copy local_mustar and restructured the workflow function * pytest --verbose on travis script * pytest --verbose in second travis script