Skip to content

jhan_HaCScratchPad

JhanSrbinovsky edited this page Mar 24, 2019 · 4 revisions

control.F90 -> CABLE

======================

declare var for 4-band downward shortwave to CABLE:

surf_down_sw( rows, row_length, 4 ) 

where 4-band = VIS, NIR, direct and diffuse ?? *However it isnt immediately traceable *

initialize as:

 surf_down_sw( :, :, 1 ) = sw_down_ij (forcing read from file)

Pass through to CABLE at all CALLs except hydro. In cable_um_init_subrs (perhaps to be moved out) interface with CABLE's rad forcing via:

 kblum_rad%SW_DOWN_VIS = 0.5* surf_down_sw(:,:,1)

 kblum_rad%SW_DOWN_NIR = 0.5* surf_down_sw(:,:,1)

then:

  CALL um2cable_rr( kblum_rad%SW_DOWN_VIS, met%fsd(:,1))

  CALL um2cable_rr( kblum_rad%SW_DOWN_NIR, met%fsd(:,2))

then:

  rad%fbeam(:,1) = spitter(met%doy, met%coszen, met%fsd(:,1))

  rad%fbeam(:,2) = spitter(met%doy, met%coszen, met%fsd(:,2))

=================================================================

=================================================================

=================================================================

Note: done twice in UM interface and also in cable_radiation

  WHERE (met%coszen < RAD_THRESH )
     rad%fbeam(:,1) = REAL(0)
     rad%fbeam(:,2) = REAL(0)
     rad%fbeam(:,3) = REAL(0)
  ENDWHERE

AND - inconsistently -

  WHERE (met%coszen < 1.e-2 )
     rad%fbeam(:,1) = REAL(0)
     rad%fbeam(:,2) = REAL(0)
  ENDWHERE

AND i don't think fbeam(3) is ever used!! - REMOVE!

Clone this wiki locally