Skip to content
Snippets Groups Projects
spawn_field2.f90 43.2 KiB
Newer Older
  • Learn to ignore specific revisions
  • !
    IF ( CONF_MODEL(1)%NRR == 0 ) THEN
      PHUT (:,:,:)= 0.
    END IF
    !-------------------------------------------------------------------------------
    !
    CALL GOTO_MODEL(IMI)
    
    CALL GO_TOMODEL_ll(IMI, IINFO_ll)
    
    CONTAINS 
    !      
          SUBROUTINE COMPUTE_THV_HU(OUSERV,PR,PTH,PPABS,PTHV,PHU)
    !
    IMPLICIT NONE
    !
    !*       0.1   Declarations of dummy arguments :
    !
    LOGICAL, INTENT(IN)   :: OUSERV
    REAL, DIMENSION(:,:,:),   INTENT(IN)   :: PTH,PPABS
    REAL, DIMENSION(:,:,:,:), INTENT(IN)   :: PR
    REAL, DIMENSION(:,:,:),   INTENT(OUT)  :: PTHV,PHU
    !
    !*       0.2    Declarations of local variables 
    !
    REAL, DIMENSION(SIZE(PR,1),SIZE(PR,2),SIZE(PR,3)) :: ZSUMR ! sum of water ratios
    !
    IF (OUSERV) THEN
      ZSUMR(:,:,:) = 0.
      IRR=SIZE(PR,4)
      DO JRR=1,IRR
        ZSUMR(:,:,:) = ZSUMR(:,:,:) + PR(:,:,:,JRR)
      END DO
      PTHV(:,:,:)=PTH(:,:,:)*(1.+XRV/XRD*PR(:,:,:,1))/(1.+ZSUMR(:,:,:))
      PHU (:,:,:)=100.*PPABS(:,:,:)/(XRD/XRV/MAX(PR(:,:,:,1),1.E-16)+1.) &
                   /SM_FOES(PTH(:,:,:)*(PPABS(:,:,:)/XP00)**(XRD/XCPD))
    ELSE
      PTHV(:,:,:)=PTH(:,:,:)
      PHU (:,:,:)=0.
    END IF
    !
    !
    END SUBROUTINE COMPUTE_THV_HU
    !
    END SUBROUTINE SPAWN_FIELD2