1 | ! (C) Copyright 2014- ECMWF. |
---|
2 | |
---|
3 | ! This software is licensed under the terms of the Apache Licence Version 2.0 |
---|
4 | ! which can be obtained at http://www.apache.org/licenses/LICENSE-2.0. |
---|
5 | |
---|
6 | ! In applying this licence, ECMWF does not waive the privileges and immunities |
---|
7 | ! granted to it by virtue of its status as an intergovernmental organisation |
---|
8 | ! nor does it submit to any jurisdiction. |
---|
9 | |
---|
10 | MODULE PARKIND1 |
---|
11 | |
---|
12 | ! *** Define usual kinds for strong typing *** |
---|
13 | |
---|
14 | IMPLICIT NONE |
---|
15 | PUBLIC |
---|
16 | SAVE |
---|
17 | |
---|
18 | ! Integer Kinds |
---|
19 | ! ------------- |
---|
20 | |
---|
21 | INTEGER, PARAMETER :: JPIT = SELECTED_INT_KIND(2) |
---|
22 | INTEGER, PARAMETER :: JPIS = SELECTED_INT_KIND(4) |
---|
23 | INTEGER, PARAMETER :: JPIM = SELECTED_INT_KIND(9) |
---|
24 | INTEGER, PARAMETER :: JPIB = SELECTED_INT_KIND(12) |
---|
25 | |
---|
26 | !Special integer type to be used for sensative adress calculations |
---|
27 | !should be *8 for a machine with 8byte adressing for optimum performance |
---|
28 | #ifdef ADDRESS64 |
---|
29 | INTEGER, PARAMETER :: JPIA = JPIB |
---|
30 | #else |
---|
31 | INTEGER, PARAMETER :: JPIA = JPIM |
---|
32 | #endif |
---|
33 | |
---|
34 | |
---|
35 | ! Real Kinds |
---|
36 | ! ---------- |
---|
37 | |
---|
38 | INTEGER, PARAMETER :: JPRT = SELECTED_REAL_KIND(2,1) |
---|
39 | INTEGER, PARAMETER :: JPRS = SELECTED_REAL_KIND(4,2) |
---|
40 | INTEGER, PARAMETER :: JPRM = SELECTED_REAL_KIND(6,37) |
---|
41 | ! This parameter should always be double precision as a few parts of |
---|
42 | ! the radiation code require it |
---|
43 | INTEGER, PARAMETER :: JPRD = SELECTED_REAL_KIND(13,300) |
---|
44 | |
---|
45 | ! This parameter governs the precision of most of the code |
---|
46 | #ifdef SINGLE_PRECISION |
---|
47 | INTEGER, PARAMETER :: JPRB = JPRM |
---|
48 | #else |
---|
49 | INTEGER, PARAMETER :: JPRB = JPRD |
---|
50 | #endif |
---|
51 | ! |
---|
52 | |
---|
53 | ! Logical Kinds for RTTOV.... |
---|
54 | |
---|
55 | INTEGER, PARAMETER :: JPLM = JPIM !Standard logical type |
---|
56 | |
---|
57 | END MODULE PARKIND1 |
---|