Version 5 (modified by maignan, 9 years ago) (diff) |
---|
Evaluation
Notes from M. Guimberteau
2015/08/27
- Bugs
In stomate_wet_ch4_pt_ter_0.f90
The following parameters need to be defined and this part of the code should be added:
! define diffusion coefficients (after Penman) ! soil air diffsa=diffair*0.66*rpv ! soil water diffsw=0.0001*diffsa ! standing water diffwa=0.0001*diffair
2015/08/24
- Bugs
In thermosoil
The variable SoilTemp? should be in the almaoutput condition of the loop and related to ptn_pftmean and not ptn:
Before in the code:
IF ( .NOT. almaoutput ) THEN CALL histwrite_p(hist_id, 'SoilTemp', kjit, ptn_pftmean, kjpindex*ngrnd, indexgrnd) CALL histwrite_p(hist2_id, 'ptn', kjit, ptn, kjpindex*ngrnd, indexgrnd) ELSE CALL histwrite_p(hist2_id, 'SoilTemp', kjit, ptn, kjpindex*ngrnd, indexgrnd) CALL histwrite_p(hist2_id, 'Qg', kjit, soilflx, kjpindex, index) CALL histwrite_p(hist2_id, 'DelSurfHeat', kjit, surfheat_incr, kjpindex, index) CALL histwrite_p(hist2_id, 'DelColdCont', kjit, coldcont_incr, kjpindex, index) ENDIF ENDIF
After corrections:
IF ( hist2_id > 0 ) THEN IF ( .NOT. almaoutput ) THEN CALL histwrite_p(hist2_id, 'ptn_pftmean', kjit, ptn_pftmean, kjpindex*ngrnd, indexgrnd) ELSE CALL histwrite_p(hist2_id, 'SoilTemp', kjit, ptn_pftmean, kjpindex*ngrnd, indexgrnd) CALL histwrite_p(hist2_id, 'Qg', kjit, soilflx, kjpindex, index) CALL histwrite_p(hist2_id, 'DelSurfHeat', kjit, surfheat_incr, kjpindex, index) CALL histwrite_p(hist2_id, 'DelColdCont', kjit, coldcont_incr, kjpindex, index) ENDIF ENDIF
In intersurf and ioipslctrl
The variable ptn_snow_pftmean does not exist in the code anymore. The call histdef should be removed:
CALL histdef(hist_id, 'ptn_snow_pftmean', 'Snow temperature,PFT-mean', 'K', & & iim,jjm, hori_id, nsnow, 1, nsnow, snowax_id, 32,avescatter(6), dt,dw)
The variable soiltemp should be put outside the if (ok_explicitsnow) condition
CALL histdef(hist_id, 'soiltemp','Soil temperature profile','K', & & iim,jjm, hori_id, ngrnd, 1, ngrnd, solax_id, 32,avescatter(6),dt,dw)
The histdef high frequency of the variable ptn_pftmean is missing in SECHIBA_HISTLEVEL2 = 7 level:
CALL histdef(hist2_id, 'ptn_pftmean', 'Soil temperature, PFT-mean','K', & & iim,jjm, hori_id2, ngrnd, 1, ngrnd, solax_id, 32,avescatter2(7), dt,dw2)
Notes from F. Maignan
I've started a 2 degree V6 evaluation at LSCE here:
/home/surface3/maignan/ORCHIDEE/TESTS/test_MICT_V6/modipsl/modeles/ORCHIDEE/modipsl/config/ORCHIDEE_OL/OOL_SEC_STO_V6
The modified code is in /home/surface3/maignan/ORCHIDEE/TESTS/test_MICT_V6/modipsl
Bugs
- stomate.f90 / call writerestart (2015/08/27)
The following correction should be applied:
... & litterpart, litter, dead_leaves, & !@FM_150827 & carbon, lignin_struc,turnover_time,& & carbon, lignin_struc,& !@FM_150827 & ni_acc,fuel_1hr,fuel_10hr,fuel_100hr,fuel_1000hr, & & turnover_time, & !@FM_150827 ...
to have a call consistent with the interface of writerestart in stomate_io.f90, otherwise some variables are crushed in the restart file.
- stomate_permafrost_carbon.f90 / snow_interpol / ! 5. inter- or extrapolate (2015/08/24)
IF ( dzio(ip,iv) .GT. 0. ) THEN
should be replaced with:
IF ( dzio(ip,iv) .GT. min_stomate ) THEN
dzio(ip,iv) can be very small and there is a subsequent division per zero and orchidee crashes.
- stomate_Cforcing_name and stomate_forcing_name (2015/08/21)
I've found a problem with the variable Cforcing_name, which is declared both as a global save variable of the stomate module and as a save variable of the stomate_main procedure. It is read in stomate_initialize using a getin_p but indeed the value is not correctly transmitted to the stomate_main procedure. There is also a stomate_Cforcing_name in constantes_var.
I corrected this using the constantes_var variable stomate_Cforcing_name and suppressing the two other Cforcing_name in the stomate module.
Then I did the same for forcing_name.
I don't know where this weird code originates from, I hope it's OK with forcesoil and teststomate, I'll check later.
To be corrected
- 2015/08/24
- LIGHTNING_FILE should not be read if FIRE_DISABLE=y
- 2015/08/21
- GRAZING_MAP should not be read if grassland management is not activated.
- If OK_EXPLICITSNOW is FALSE then snowdz is not initialized but used anyway (this is probably the case of other variables, to be checked).