source: codes/icosagcm/devel/src/dissip/guided_mod.f90 @ 879

Last change on this file since 879 was 874, checked in by jisesh, 5 years ago

devel : Nudging towards external data using XIOS

File size: 1.8 KB
RevLine 
[17]1MODULE guided_mod
2
3  CHARACTER(LEN=255),SAVE :: guided_type
[874]4  CHARACTER(LEN=255),SAVE :: guided_nudging_field
[186]5!$OMP THREADPRIVATE(guided_type)
[17]6
7CONTAINS
8
9
[820]10  SUBROUTINE init_guided(f_u,f_theta_rhodz)
[818]11    USE icosa
12    USE guided_ncar_mod, ONLY : init_guided_ncar => init_guided
13    USE nudging_mod, ONLY : init_guided_nudging => init_guided
14    IMPLICIT NONE
15    TYPE(t_field),POINTER :: f_u(:)
[820]16    TYPE(t_field),POINTER :: f_theta_rhodz(:)
[17]17   
18    guided_type='none'
19    CALL getin("guided_type",guided_type)
20   
21    SELECT CASE(TRIM(guided_type))
22      CASE ('none')
23     
[73]24      CASE ('dcmip1')
[25]25        CALL init_guided_ncar
[17]26       
[818]27      CASE ('nudging')
[820]28        CALL init_guided_nudging(f_u,f_theta_rhodz)
[818]29       
[17]30      CASE DEFAULT
[818]31         PRINT*,"Bad selector for varaible guided_type >",TRIM(guided_type),"> option are <none>, <dcmip1>, <nudging>"
[17]32         STOP
33    END SELECT
34   
35  END SUBROUTINE init_guided
36
[25]37  SUBROUTINE guided(tt, f_ps, f_theta_rhodz, f_u, f_q)
[818]38    USE icosa
39    USE guided_ncar_mod, ONLY : guided_ncar => guided
40    USE nudging_mod, ONLY : guided_nudging => guided
41    IMPLICIT NONE
[25]42    REAL(rstd), INTENT(IN):: tt
[17]43    TYPE(t_field),POINTER :: f_ps(:)
44    TYPE(t_field),POINTER :: f_phis(:)
45    TYPE(t_field),POINTER :: f_theta_rhodz(:)
46    TYPE(t_field),POINTER :: f_u(:) 
47    TYPE(t_field),POINTER :: f_q(:) 
48
49    SELECT CASE(TRIM(guided_type))
50      CASE ('none')
[73]51      CASE ('dcmip1')
[25]52        CALL guided_ncar(tt, f_ps, f_theta_rhodz, f_u, f_q)
[818]53      CASE ('nudging')
54!         PRINT *, 'Nudging !', tt
55        CALL guided_nudging(tt, f_ps, f_theta_rhodz, f_u, f_q)
[73]56      CASE DEFAULT
57         PRINT*,"Bad selector for varaible guided_type >",TRIM(guided_type),"> option are <none>, <dcmip1>"
58         STOP
[17]59    END SELECT
60 
61  END SUBROUTINE guided
62 
63END MODULE guided_mod
64 
Note: See TracBrowser for help on using the repository browser.