1 | MODULE guided_mod |
---|
2 | |
---|
3 | CHARACTER(LEN=255),SAVE :: guided_type |
---|
4 | CHARACTER(LEN=255),SAVE :: guided_nudging_field |
---|
5 | !$OMP THREADPRIVATE(guided_type) |
---|
6 | |
---|
7 | CONTAINS |
---|
8 | |
---|
9 | |
---|
10 | SUBROUTINE init_guided(f_u,f_theta_rhodz,f_ps) |
---|
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(:) |
---|
16 | TYPE(t_field),POINTER :: f_theta_rhodz(:) |
---|
17 | TYPE(t_field),POINTER :: f_ps(:) |
---|
18 | |
---|
19 | guided_type='none' |
---|
20 | CALL getin("guided_type",guided_type) |
---|
21 | |
---|
22 | SELECT CASE(TRIM(guided_type)) |
---|
23 | CASE ('none') |
---|
24 | |
---|
25 | CASE ('dcmip1') |
---|
26 | CALL init_guided_ncar |
---|
27 | |
---|
28 | CASE ('nudging') |
---|
29 | CALL init_guided_nudging(f_u,f_theta_rhodz,f_ps) |
---|
30 | CASE DEFAULT |
---|
31 | PRINT*,"Bad selector for varaible guided_type >",TRIM(guided_type),"> option are <none>, <dcmip1>, <nudging>" |
---|
32 | STOP |
---|
33 | END SELECT |
---|
34 | |
---|
35 | END SUBROUTINE init_guided |
---|
36 | |
---|
37 | SUBROUTINE guided(tt, f_ps, f_theta_rhodz, f_u, f_q) |
---|
38 | USE icosa |
---|
39 | USE guided_ncar_mod, ONLY : guided_ncar => guided |
---|
40 | USE nudging_mod, ONLY : guided_nudging => guided |
---|
41 | IMPLICIT NONE |
---|
42 | REAL(rstd), INTENT(IN):: tt |
---|
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') |
---|
51 | CASE ('dcmip1') |
---|
52 | CALL guided_ncar(tt, f_ps, f_theta_rhodz, f_u, f_q) |
---|
53 | CASE ('nudging') |
---|
54 | ! PRINT *, 'Nudging !', tt |
---|
55 | CALL guided_nudging(tt, f_ps, f_theta_rhodz, f_u, f_q) |
---|
56 | CASE DEFAULT |
---|
57 | PRINT*,"Bad selector for varaible guided_type >",TRIM(guided_type),"> option are <none>, <dcmip1>" |
---|
58 | STOP |
---|
59 | END SELECT |
---|
60 | |
---|
61 | END SUBROUTINE guided |
---|
62 | |
---|
63 | END MODULE guided_mod |
---|
64 | |
---|