dvalters / HAIL-CAESAR

The High-Performance Architecture-Independent LISFLOOD-CAESAR model of floodplain, river, and sediment dynamics
http://dvalters.github.io/HAIL-CAESAR
GNU General Public License v3.0
38 stars 12 forks source link

Turning catchment mode off #56

Open bwj202 opened 1 year ago

bwj202 commented 1 year ago

Is it possible to turn off catchment mode (i.e. remove the Topmodel element) and run entirely in reach mode? I've been examining the code and it looks like it is possible but I'm not 100% sure how I should do it without screwing it all up.

dvalters commented 1 year ago

Hi @bwj202, if you turn off rainfall data (rainfall_data_on: no) and run in hydro_only mode, with reach_mode switched on, that is essentially a "reach only mode". In practice, the routing algorithms for reach mode and catchment mode are the same, it just depends on whether you are adding water inputs from rainfall (over the whole catchment) or whether you are specifying a specific point to add water (reach_mode_on).

Turning off TOPMODEL entirely, I haven't considered that before really, good question. TOPMODEL runs fairly independently in the model, and the output catchment.dat file produces a TOPMODEL estimated discharge in a column next to the LISFLOOD shallow-water routing equations discharge. You could potentially remove it from the code entirely...I'd have to think about whether it is used in any of the other routines though...

tcoulthard commented 1 year ago

If catchment mode is not selected it simply doesn’t run that part of the code – so there is no computational overhead – no need to strip out the code. Unless you feel so inclined! 😊

From: Declan Valters @.> Sent: 17 January 2023 12:46 To: dvalters/HAIL-CAESAR @.> Cc: Subscribed @.***> Subject: Re: [dvalters/HAIL-CAESAR] Turning catchment mode off (Issue #56)

Hi @bwj202https://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fbwj202&data=05%7C01%7Ct.coulthard%40hull.ac.uk%7Cfcc3d5ba38a34364faf608daf888cb9e%7C490a81977b834f1089b983189be3835e%7C0%7C0%7C638095563657141685%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=3W0juYx4n6UucRfIQ2Md372OX%2BBskpehCGpvvY3VvoE%3D&reserved=0, if you turn off rainfall data (rainfall_data_on: no) and run in hydro_only mode, with reach_mode switched on, that is essentially a "reach only mode". In practice, the routing algorithms for reach mode and catchment mode are the same, it just depends on whether you are adding water inputs from rainfall (over the whole catchment) or whether you are specifying a specific point to add water (reach_mode_on).

Turning off TOPMODEL entirely, I haven't considered that before really, good question. TOPMODEL runs fairly independently in the model, and the output catchment.dat file produces a TOPMODEL estimated discharge in a column next to the LISFLOOD shallow-water routing equations discharge. You could potentially remove it from the code entirely...I'd have to think about whether it is used in any of the other routines though...

— Reply to this email directly, view it on GitHubhttps://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fdvalters%2FHAIL-CAESAR%2Fissues%2F56%23issuecomment-1385372664&data=05%7C01%7Ct.coulthard%40hull.ac.uk%7Cfcc3d5ba38a34364faf608daf888cb9e%7C490a81977b834f1089b983189be3835e%7C0%7C0%7C638095563657141685%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=RwnCap%2BsB%2FLeYIxXKlCvh7vKt3LRYGOAoNcQZR4FGOE%3D&reserved=0, or unsubscribehttps://eur02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FACXM2LJ4EBW2B33H2IXD3EDWS2IAVANCNFSM6AAAAAATZVH5F4&data=05%7C01%7Ct.coulthard%40hull.ac.uk%7Cfcc3d5ba38a34364faf608daf888cb9e%7C490a81977b834f1089b983189be3835e%7C0%7C0%7C638095563657141685%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Xbn0y8mUFoF0joTpAKPkWaRdFu6otm2PszVE8QvElFs%3D&reserved=0. You are receiving this because you are subscribed to this thread.Message ID: @.**@.>>

dvalters commented 1 year ago

Thanks Tom! :)

bwj202 commented 1 year ago

Thanks both. I mostly wanted to remove this as it was running very slowly and had lots of additional flow for some reason, but it turns out the problem was:

1) Something weird and/or something that I didn't understand with how my HPC works. 2) The addition of a small amount of runoff to all cells at the start of the model run to initialise runoff. I set this to zero and it helped a bunch.

From: Declan Valters @.> Sent: 17 January 2023 13:15 To: dvalters/HAIL-CAESAR @.> Cc: Jackson, Ben @.>; Mention @.> Subject: Re: [dvalters/HAIL-CAESAR] Turning catchment mode off (Issue #56)

CAUTION: This email originated from outside of the organisation. Do not click links or open attachments unless you recognise the sender and know the content is safe.

Thanks Tom! :)

- Reply to this email directly, view it on GitHubhttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fdvalters%2FHAIL-CAESAR%2Fissues%2F56%23issuecomment-1385407268&data=05%7C01%7Cb.w.jackson%40exeter.ac.uk%7C49a8dddf2ed34e99eefc08daf88ccf4e%7C912a5d77fb984eeeaf321334d8f04a53%7C0%7C0%7C638095580894436763%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=1lCdXW55GpaG624Nsi06bkmYPQNbhcegGvgFX5Pey8s%3D&reserved=0, or unsubscribehttps://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAMOT3CYNNGL4ZYM6JMFJI2TWS2LMPANCNFSM6AAAAAATZVH5F4&data=05%7C01%7Cb.w.jackson%40exeter.ac.uk%7C49a8dddf2ed34e99eefc08daf88ccf4e%7C912a5d77fb984eeeaf321334d8f04a53%7C0%7C0%7C638095580894436763%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=pbIlp9EmjAd6spF7gzZGMa5M1LgNg04dWnqm8V3Cok8%3D&reserved=0. You are receiving this because you were mentioned.Message ID: @.**@.>>

mjcreed commented 10 months ago

@bwj202, I know this thread is from a while ago but I have been having a similar issue recently where using both reach mode and catchment mode results in an outlet discharge that is an order of magnitude greater than it should be. How did you solve your issue (2) above?