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

Last change on this file since 853 was 820, checked in by jisesh, 5 years ago

devel : towards nudging (status : relax wind + theta towards initial condition)

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