source: trunk/WRF.COMMON/INTERFACES_V4/dynphy_wrf_generic_lmd/callphysiq_mod.F @ 3431

Last change on this file since 3431 was 2874, checked in by jleconte, 23 months ago

Changed nomenclature for planet variables from m_ to p_ in interface V4

File size: 2.2 KB
Line 
1!
2! $Id: $
3!
4MODULE callphysiq_mod
5
6IMPLICIT NONE
7
8CONTAINS
9
10SUBROUTINE call_physiq(planet_type,klon,llm,nqtot,                  &
11                       debut_split,lafin_split)
12 
13  USE variables_mod
14  USE physiq_mod, ONLY: physiq
15  use phys_state_var_mod , only : qsurf
16  use comm_wrf, only : allocate_comm_wrf
17  use tracer_h, only: noms
18 
19  IMPLICIT NONE
20  character(len=10),INTENT(IN) :: planet_type ! planet type ('earth','mars',...)
21  INTEGER,INTENT(IN) :: klon ! (local) number of atmospheric columns
22  INTEGER,INTENT(IN) :: llm  ! number of atmospheric layers
23  INTEGER,INTENT(IN) :: nqtot ! number of tracers
24  LOGICAL,INTENT(IN) :: debut_split ! .true. if very first call to physics
25  LOGICAL,INTENT(IN) :: lafin_split ! .true. if last call to physics
26
27  ! Local variables
28!  CHARACTER(len=11) :: modname="call_physiq"
29
30! Sanity check on physics package type
31  IF (debut_split) THEN
32    IF (planet_type.ne."generic") THEN
33     PRINT*,"wrong planet_type for this physics package"
34     STOP
35    ENDIF
36  ENDIF
37
38  !qsurf(:,:)=zqfi_omp(:,1,:)
39  !JL22 what is this, why in the world would we want to put the value of the last layer at the surface
40  ! these two quantities do not even have the same units (kg/kg and kg/m^2)!!!
41  ! seems it is the same for some other physics. It is probably a bug.
42
43  call allocate_comm_wrf(klon,llm)
44! Call physics package with required inputs/outputs
45  CALL physiq(klon,           & ! ngrid
46              llm,            & ! nlayer
47              nqtot,          & ! nq
48              debut_split,    & ! firstcall
49              lafin_split,    & ! lastcall
50              jD_cur,         & ! pday
51              jH_cur_split,   & ! ptime
52              zdt_split,      & ! ptimestep
53              zplev_omp,      & ! pplev
54              zplay_omp,      & ! pplay
55              zphi_omp,       & ! pphi
56              zufi_omp,       & ! pu
57              zvfi_omp,       & ! pv
58              ztfi_omp,       & ! pt
59              zqfi_omp,       & ! pq
60              flxwfi_omp,     & ! flxw
61              zdufi_omp,      & ! pdu
62              zdvfi_omp,      & ! pdv
63              zdtfi_omp,      & ! pdt
64              zdqfi_omp,      & ! pdq
65              zdpsrf_omp)       ! pdpsrf
66
67
68END SUBROUTINE call_physiq
69
70END MODULE callphysiq_mod
Note: See TracBrowser for help on using the repository browser.