Changeset 3851 for trunk/LMDZ.COMMON/libf/evolution/pem.F90
- Timestamp:
- Jul 16, 2025, 3:25:48 PM (3 days ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LMDZ.COMMON/libf/evolution/pem.F90
r3850 r3851 291 291 ! Loop variables 292 292 integer :: i, l, ig, nnq, t, islope, ig_loop, islope_loop, isoil, icap 293 real :: totmass_ini 293 294 logical :: num_str 294 295 … … 995 996 996 997 ! Checking mass balance for CO2 997 totmass_co2ice = 0. 998 totmass_atmco2 = 0. 999 do ig = 1,ngrid 1000 totmass_atmco2 = totmass_atmco2 + cell_area(ig)*ps_avg(ig)/g 1001 do islope = 1,nslope 1002 totmass_co2ice = totmass_co2ice + co2_ice(ig,islope)*cell_area(ig)*subslope_dist(ig,islope)/cos(pi*def_slope_mean(islope)/180.) 1003 enddo 1004 enddo 1005 write(*,'(a,f8.3,a)') " > Relative total CO2 mass balance = ", 100.*(totmass_atmco2 + totmass_co2ice + totmass_adsco2 - totmass_atmco2_ini - totmass_co2ice_ini - totmass_adsco2_ini)/(totmass_atmco2_ini + totmass_co2ice_ini + totmass_adsco2_ini), ' %' 1006 if ((totmass_atmco2 + totmass_co2ice + totmass_adsco2 - totmass_atmco2_ini - totmass_co2ice_ini - totmass_adsco2_ini)/(totmass_atmco2_ini + totmass_co2ice_ini + totmass_adsco2_ini) > 0.01) then 1007 write(*,*) ' /!\ Warning: mass balance is not conseved!' 1008 write(*,'(a,f8.3,a)') ' Atmospheric CO2 mass balance = ', 100.*(totmass_atmco2 - totmass_atmco2_ini)/totmass_atmco2_ini, ' %' 1009 write(*,'(a,f8.3,a)') ' CO2 ice mass balance = ', 100.*(totmass_co2ice - totmass_co2ice_ini)/totmass_co2ice_ini, ' %' 1010 write(*,'(a,f8.3,a)') ' Adsorbed CO2 mass balance = ', 100.*(totmass_adsco2 - totmass_adsco2_ini)/totmass_adsco2_ini, ' %' 998 if (abs(CO2cond_ps - 1.) < 1.e-10) then 999 totmass_co2ice = 0. 1000 totmass_atmco2 = 0. 1001 do ig = 1,ngrid 1002 totmass_atmco2 = totmass_atmco2 + cell_area(ig)*ps_avg(ig)/g 1003 do islope = 1,nslope 1004 totmass_co2ice = totmass_co2ice + co2_ice(ig,islope)*cell_area(ig)*subslope_dist(ig,islope)/cos(pi*def_slope_mean(islope)/180.) 1005 enddo 1006 enddo 1007 totmass_ini = max(totmass_atmco2_ini + totmass_co2ice_ini + totmass_adsco2_ini,1.e-10) 1008 write(*,'(a,f8.3,a)') " > Relative total CO2 mass balance = ", 100.*(totmass_atmco2 + totmass_co2ice + totmass_adsco2 - totmass_atmco2_ini - totmass_co2ice_ini - totmass_adsco2_ini)/totmass_ini, ' %' 1009 if ((totmass_atmco2 + totmass_co2ice + totmass_adsco2 - totmass_atmco2_ini - totmass_co2ice_ini - totmass_adsco2_ini)/totmass_ini > 0.01) then 1010 write(*,*) ' /!\ Warning: mass balance is not conseved!' 1011 totmass_ini = max(totmass_atmco2_ini,1.e-10) 1012 write(*,'(a,f8.3,a)') ' Atmospheric CO2 mass balance = ', 100.*(totmass_atmco2 - totmass_atmco2_ini)/totmass_ini, ' %' 1013 totmass_ini = max(totmass_co2ice_ini,1.e-10) 1014 write(*,'(a,f8.3,a)') ' CO2 ice mass balance = ', 100.*(totmass_co2ice - totmass_co2ice_ini)/totmass_ini, ' %' 1015 totmass_ini = max(totmass_adsco2_ini,1.e-10) 1016 write(*,'(a,f8.3,a)') ' Adsorbed CO2 mass balance = ', 100.*(totmass_adsco2 - totmass_adsco2_ini)/totmass_ini, ' %' 1017 endif 1011 1018 endif 1012 1019
Note: See TracChangeset
for help on using the changeset viewer.