Browse Source

Merge branch 'distribute-radiation-on-surface-types'

main/3-apply-coupling-timestep
Sven Karsten 2 years ago
parent
commit
5f08653016
  1. 33
      src/oasis_interface/oas_define.F90
  2. 15
      src/oasis_interface/oas_exchange_fields.F90
  3. 2
      src/oasis_interface/oas_vardef.F90

33
src/oasis_interface/oas_define.F90

@ -256,20 +256,25 @@ SUBROUTINE oas_define(local_comm)
srcv(28)%var_name = 'MRRBBR05' ! longwave radiation upward
srcv(29)%var_name = 'MRRBBR06' ! longwave radiation upward
srcv(30)%var_name = 'MRRLWD01' ! longwave radiation downward
srcv(31)%var_name = 'MRRSDD01' ! shortwave radiation downward direct
srcv(32)%var_name = 'MRRSIN01' ! shortwave radiation downward diffusive
srcv(33)%var_name = 'MRHLAT01' ! latent heat flux
srcv(34)%var_name = 'MRHLAT02' ! latent heat flux
srcv(35)%var_name = 'MRHLAT03' ! latent heat flux
srcv(36)%var_name = 'MRHLAT04' ! latent heat flux
srcv(37)%var_name = 'MRHLAT05' ! latent heat flux
srcv(38)%var_name = 'MRHLAT06' ! latent heat flux
srcv(39)%var_name = 'MRHSEN01' ! sensible heat flux
srcv(40)%var_name = 'MRHSEN02' ! sensible heat flux
srcv(41)%var_name = 'MRHSEN03' ! sensible heat flux
srcv(42)%var_name = 'MRHSEN04' ! sensible heat flux
srcv(43)%var_name = 'MRHSEN05' ! sensible heat flux
srcv(44)%var_name = 'MRHSEN06' ! sensible heat flux
srcv(31)%var_name = 'MRRSDR01' ! shortwave radiation downward direct
srcv(32)%var_name = 'MRRSDR02' ! shortwave radiation downward direct
srcv(33)%var_name = 'MRRSDR03' ! shortwave radiation downward direct
srcv(34)%var_name = 'MRRSDR04' ! shortwave radiation downward direct
srcv(35)%var_name = 'MRRSDR05' ! shortwave radiation downward direct
srcv(36)%var_name = 'MRRSDR06' ! shortwave radiation downward direct
srcv(37)%var_name = 'MRRSIN01' ! shortwave radiation downward diffusive
srcv(38)%var_name = 'MRHLAT01' ! latent heat flux
srcv(39)%var_name = 'MRHLAT02' ! latent heat flux
srcv(40)%var_name = 'MRHLAT03' ! latent heat flux
srcv(41)%var_name = 'MRHLAT04' ! latent heat flux
srcv(42)%var_name = 'MRHLAT05' ! latent heat flux
srcv(43)%var_name = 'MRHLAT06' ! latent heat flux
srcv(44)%var_name = 'MRHSEN01' ! sensible heat flux
srcv(45)%var_name = 'MRHSEN02' ! sensible heat flux
srcv(46)%var_name = 'MRHSEN03' ! sensible heat flux
srcv(47)%var_name = 'MRHSEN04' ! sensible heat flux
srcv(48)%var_name = 'MRHSEN05' ! sensible heat flux
srcv(49)%var_name = 'MRHSEN06' ! sensible heat flux
#else
srcv( 1)%var_name = 'OCEREPRE' ! precipitation

15
src/oasis_interface/oas_exchange_fields.F90

@ -180,29 +180,30 @@ integer, parameter :: dt_cpld=600
!ENDIF
jn = 31
!IF( nrcvinfo(jn) == OASIS_Rcv ) THEN ! shortwave radiation direct 31)
!IF( nrcvinfo(jn) == OASIS_Rcv ) THEN ! shortwave radiation direct 31..36
do k = 1, size(Ice_boundary%sw_flux_vis_dir,3)
WHERE (maskt == 0) Ice_boundary%sw_flux_vis_dir(isc:iec,jsc:jec,k) = -frcv(isc:iec,jsc:jec,jn)
jn = jn + 1
enddo
!ENDIF
jn = 32
!IF( nrcvinfo(jn) == OASIS_Rcv ) THEN ! shortware radiation diffusive 32)
jn = 37
!IF( nrcvinfo(jn) == OASIS_Rcv ) THEN ! shortware radiation diffusive 37)
do k = 1, size(Ice_boundary%sw_flux_vis_dif,3)
WHERE (maskt == 0) Ice_boundary%sw_flux_vis_dif(isc:iec,jsc:jec,k) = -frcv(isc:iec,jsc:jec,jn)
enddo
!ENDIF
jn = 33
!IF( nrcvinfo(jn) == OASIS_Rcv ) THEN ! latent heat flux 33..38)
jn = 38
!IF( nrcvinfo(jn) == OASIS_Rcv ) THEN ! latent heat flux 38..43)
do k = 1, size(Ice_boundary%lh_flux,3)
WHERE (maskt == 0) Ice_boundary%lh_flux(isc:iec,jsc:jec,k) = frcv(isc:iec,jsc:jec,jn)
jn = jn + 1
enddo
!ENDIF
jn = 39
!IF( nrcvinfo(jn) == OASIS_Rcv ) THEN ! sensible heat flux 39..44)
jn = 44
!IF( nrcvinfo(jn) == OASIS_Rcv ) THEN ! sensible heat flux 44..49)
do k = 1, size(Ice_boundary%t_flux,3)
WHERE (maskt == 0) Ice_boundary%t_flux(isc:iec,jsc:jec,k) = frcv(isc:iec,jsc:jec,jn)
jn = jn + 1

2
src/oasis_interface/oas_vardef.F90

@ -41,7 +41,7 @@ IMPLICIT NONE
#IFDEF OASIS_IOW_ESM
INTEGER, PARAMETER :: nfld_snd_tot=18
INTEGER, PARAMETER :: nfld_rcv_tot=44
INTEGER, PARAMETER :: nfld_rcv_tot=49
#ELSE
INTEGER, PARAMETER :: nfld_snd_tot=2
INTEGER, PARAMETER :: nfld_rcv_tot=14

Loading…
Cancel
Save