| 2 | |
| 3 | == Update 05/09/2017 |
| 4 | Working group: FM, CO, PP[[BR]] |
| 5 | The energy budget is not closed only when the amount of snow and the corresponding fraction are small, but it is difficult to pinpoint exactly what the problem is.[[BR]] |
| 6 | There are indeed several suspicious facts: |
| 7 | - A minimal threshold psnowdzmin is used in thermosoil_coef for the computation of the snow coefficients. |
| 8 | - The computations made in the explicit_snow_melt_refrz subroutine use the amount of snow and the snow temperature, which includes the additional temperature temp_sol_add computed in enerbil_flux from a surface energy budget equation, which does not take into account the amount of snow. |
| 9 | Meanwhile, to have outputs available for the group to look at, we could first commit the implementation of the diagnostics: |
| 10 | - in sechiba.90: TEBR_enerbil and TEBR_snow |
| 11 | - in explicit_snow.f90: |
| 12 | A TEBR can be computed for every subroutine to better understand why/where the budget is not closed. This implies additional computations of the total snow heat; the snowheat variable represents for each snow layer the energy required to bring the temperature to 0°C and to melt the non-liquid snow fraction. |
| 13 | For example, we could compute and output the following variables: |
| 14 | {{{ |
| 15 | CALL xios_orchidee_send_field("snowheattot_begin",snowheattot_begin) |
| 16 | CALL xios_orchidee_send_field("snowheattot_snowfall",snowheattot_snowfall) |
| 17 | CALL xios_orchidee_send_field("snowheattot_redist",snowheattot_redist) |
| 18 | CALL xios_orchidee_send_field("snowheattot_compact",snowheattot_compact) |
| 19 | CALL xios_orchidee_send_field("snowheattot_profile",snowheattot_profile) |
| 20 | CALL xios_orchidee_send_field("snowheattot_gone",snowheattot_gone) |
| 21 | CALL xios_orchidee_send_field("snowheattot_melt_refrz",snowheattot_melt_refrz) |
| 22 | CALL xios_orchidee_send_field("snowheattot_subli",snowheattot_subli) |
| 23 | CALL xios_orchidee_send_field("del_snowheattot_snowfall",del_snowheattot_snowfall) |
| 24 | CALL xios_orchidee_send_field("del_snowheattot_redist",del_snowheattot_redist) |
| 25 | CALL xios_orchidee_send_field("del_snowheattot_compact",del_snowheattot_compact) |
| 26 | CALL xios_orchidee_send_field("del_snowheattot_profile",del_snowheattot_profile) |
| 27 | CALL xios_orchidee_send_field("del_snowheattot_gone",del_snowheattot_gone) |
| 28 | CALL xios_orchidee_send_field("del_snowheattot_melt_refrz",del_snowheattot_melt_refrz) |
| 29 | CALL xios_orchidee_send_field("del_snowheattot_subli",del_snowheattot_subli) |
| 30 | CALL xios_orchidee_send_field("TEBR_explicitsnow_gone",TEBR_explicitsnow_gone) |
| 31 | CALL xios_orchidee_send_field("TEBR_explicitsnow_melt_refrz",TEBR_explicitsnow_melt_refrz) |
| 32 | CALL xios_orchidee_send_field("TEBR_explicitsnow_subli",TEBR_explicitsnow_subli) |
| 33 | CALL xios_orchidee_send_field("TEBR_explicitsnow_total",TEBR_explicitsnow_total) |
| 34 | }}} |
| 35 | Special cases are to be handled properly, like for example: when there is a snowfall that melts completely during the time step. |
| 36 | |