DOCUMENTATION: atm_land_ice_flux_exchange_mod#175
DOCUMENTATION: atm_land_ice_flux_exchange_mod#175mlee03 wants to merge 31 commits intoNOAA-GFDL:mainfrom
Conversation
| id_co2_atm_dvmr, & | ||
| !< diag_manager register field id for 'co2 dry volume mixing ratio at lowest atmospheric level' | ||
| id_co2_surf_dvmr, & !< diag_manager register field id for 'c02 dry volume mixing ratio at surface' | ||
| ! 2017/08/15 jgj added |
There was a problem hiding this comment.
Every line of code is added by someone.
There was a problem hiding this comment.
I mean, no need to keep initials of people in all over the code.
| !$OMP parallel do default(none) shared(isc,iec,jsc,jec,Land_Ice_Atmos_Boundary ) & | ||
| !$OMP private(is,ie) | ||
|
|
||
| !> ON THE ATM GRID, COMPUTE T**0.25 |
There was a problem hiding this comment.
It's worth adding a comment here as to why we "put" T^4 to exchange grid and then raising what we "get" to power 1/4 as it seems a curious/wasteful thing to do. The comment would be something like:
land_ice_atmos_boundary_type%t is supposed to be the radiative (black body) temperature of the surface which is defined to be T=(longwave_flux / Stefan's Constant)^(1/4). To account for this nonlinear dependence, we put/get T^4 to/from the exchange grid then calculate its 1/4 power to get the black body temperature (Stefan's constant cancels out).
If we just put/get the surface temperature to/from the exchange grid, we would not have accounted for the nonlinearity of Stefan's law.
Note that the get_from_xgrid operation involves area-weighted averaging over the exchange grid cells that cover the receving ATM grid cell and avg(T^4) generally differs substantially from (avg T)^4.
There was a problem hiding this comment.
How about:
!! NOTE, TO COMPUTE FLUXES, T_SURF**4 IS SENT TO THE EXCHANGE GRID AND NOT T_SURF DUE TO NONLINEARITY IN
!! THE STEFAN-BOLTZMANN LAW WHERE LOGWAVE_FLUX = STEFAN_BOLTZMANN _CONSTANT * T**4.
!! ON THE EXCHANGE GRID, AS QUANTITIES ARE REMAPPED, FIELDS ARE AREA-WEIGHTED (AVERAGED)
!! SUCH THAT OUTPUT_TEMPERATURE = SUM(INPUT_TEMPERATURE * (XGRID_AREA)/(INPUT_GRID_AREA))
!! WHERE THE SUM IS OVER ALL XGRID CELLS THAT OVERLAP WITH THE OUTPUT CELL.
!! BECAUSE OF THIS WEIGHTING, THE COMPUTED FLUX WOULD DIFFER FROM USING <T**4> VS **4
There was a problem hiding this comment.
Nice, I did a little edit:
!! NOTE, TO COMPUTE LONGWAVE RADIATION FLUXES MORE ACCURATELY, T_SURF4 IS PUT TO THE EXCHANGE GRID RATHER THAN T_SURF, TO ACCOUNT FOR THE NONLINEARITY IN
!! THE STEFAN-BOLTZMANN LAW WHERE LOGWAVE_FLUX = STEFAN_BOLTZMANN _CONSTANT * T4.
!! ON THE EXCHANGE GRID, AS QUANTITIES ARE REMAPPED, FIELDS ARE AREA-WEIGHTED (AVERAGED)
!! SUCH THAT OUTPUT_TEMPERATURE = SUM(INPUT_TEMPERATURE * (XGRID_AREA)/(INPUT_GRID_AREA))
!! WHERE THE SUM IS OVER ALL XGRID CELLS THAT OVERLAP WITH THE OUTPUT CELL.
!! BECAUSE OF THIS WEIGHTING, THE COMPUTED FLUX WOULD DIFFER FROM USING <T**4> VS **4 .
There was a problem hiding this comment.
I think something is wrong with this viewer, it does not like '**' . The last bit should be VS ' **4'
There was a problem hiding this comment.
Again, did not work , but you know what I mean.
There was a problem hiding this comment.
changes added. What do you think?
|
Thanks. Looks fine. Please make sure both fully coupled and ocean-ice models compile and run before merging. |
This PR adds in additional code documentation for atm_land_ice_flux_exchange_mod. This PR depends on PR #174