source: codes/icosagcm/devel/src/diagnostics/compute_diagnostics.f90 @ 1034

Last change on this file since 1034 was 1034, checked in by dubos, 4 years ago

devel : work around PGI compiler complaints (bugs ?)

File size: 1.8 KB
Line 
1MODULE compute_diagnostics_mod
2  USE icosa
3  IMPLICIT NONE
4  PRIVATE
5
6  INTERFACE
7
8    SUBROUTINE comp_rhodz(flag,ps,rhodz)
9      IMPORT
10      LOGICAL, INTENT(IN) :: flag
11      REAL(rstd),INTENT(IN)  :: ps(:)
12      REAL(rstd),INTENT(INOUT) :: rhodz(:,:)
13    END SUBROUTINE comp_rhodz
14
15    SUBROUTINE comp_pression(ps, p, offset)
16      IMPORT
17      INTEGER, INTENT(IN) :: offset
18      REAL(rstd), INTENT(IN) :: ps(:)
19      REAL(rstd), INTENT(OUT) :: p(:,:)
20    END SUBROUTINE comp_pression
21
22    SUBROUTINE comp_temperature(pmid,q,temp)
23      IMPORT
24      REAL(rstd),INTENT(IN)    :: pmid(:,:)
25      REAL(rstd),INTENT(IN)    :: q(:,:,:)
26      REAL(rstd),INTENT(INOUT) :: temp(:,:)
27    END SUBROUTINE comp_temperature
28
29    SUBROUTINE comp_hydro_press(rhodz, theta_rhodz, ps, p)
30      IMPORT
31      REAL(rstd),INTENT(IN)  :: rhodz(:,:)
32      REAL(rstd),INTENT(IN)  :: theta_rhodz(:,:,:)
33      REAL(rstd),INTENT(OUT) :: ps(:)
34      REAL(rstd),INTENT(OUT) :: p(:,:)
35    END SUBROUTINE comp_hydro_press
36
37    SUBROUTINE comp_vert_interp(pmid,in,out,pval)
38      IMPORT
39      REAL(rstd),INTENT(IN) :: pmid(:,:)
40      REAL(rstd),INTENT(IN) :: in(:,:)
41      REAL(rstd),INTENT(OUT):: out(:)
42      REAL(rstd),INTENT(IN) :: pval
43    END SUBROUTINE comp_vert_interp
44
45  END INTERFACE
46
47  PROCEDURE(comp_rhodz),       POINTER, SAVE :: compute_rhodz   => NULL()
48  PROCEDURE(comp_pression),    POINTER, SAVE :: compute_pression => NULL(), compute_pression_mid => NULL()
49  PROCEDURE(comp_temperature), POINTER, SAVE :: compute_temperature => NULL()
50  PROCEDURE(comp_hydro_press), POINTER, SAVE :: compute_hydrostatic_pressure => NULL()
51  PROCEDURE(comp_vert_interp), POINTER, SAVE :: compute_vertical_interp => NULL()
52
53  PUBLIC :: compute_rhodz, compute_pression, compute_pression_mid, compute_temperature, compute_hydrostatic_pressure, &
54       compute_vertical_interp
55
56END MODULE compute_diagnostics_mod
Note: See TracBrowser for help on using the repository browser.