26module mpp_parameter_mod
33#include<file_version.h>
38 public :: maxpes, mpp_verbose, mpp_debug, all_pes, any_pe, null_pe, note, warning, fatal
39 public :: mpp_wait, mpp_ready, max_clocks, max_event_types, max_events, mpp_clock_sync
40 public :: mpp_clock_detailed, clock_component, clock_subcomponent, clock_module_driver
41 public :: clock_module, clock_routine, clock_loop, clock_infra, max_bins
42 public :: event_allreduce, event_broadcast, event_recv, event_send, event_wait
43 public :: event_alltoall, event_type_create, event_type_free
45 public :: comm_tag_1, comm_tag_2, comm_tag_3, comm_tag_4
46 public :: comm_tag_5, comm_tag_6, comm_tag_7, comm_tag_8
47 public :: comm_tag_9, comm_tag_10, comm_tag_11, comm_tag_12
48 public :: comm_tag_13, comm_tag_14, comm_tag_15, comm_tag_16
49 public :: comm_tag_17, comm_tag_18, comm_tag_19, comm_tag_20
50 public :: mpp_fill_int, mpp_fill_float, mpp_fill_double
54 public :: global_data_domain, cyclic_global_domain, bgrid_ne, bgrid_sw, cgrid_ne, cgrid_sw
55 public :: dgrid_ne, dgrid_sw, fold_west_edge, fold_east_edge, fold_south_edge, fold_north_edge
56 public :: wupdate, eupdate, supdate, nupdate, xupdate, yupdate, bitwise_exact_sum, non_bitwise_exact_sum
57 public :: mpp_domain_time, west, east, south, north, scalar_bit, scalar_pair, bitwise_efp_sum
58 public :: north_east, south_east, south_west, north_west
59 public :: agrid, global, cyclic, domain_id_base, center, corner
60 public :: max_domain_fields, max_tiles
61 public :: zero, ninety, minus_ninety, one_hundred_eighty
62 public :: nonblock_update_tag, edgeupdate, edgeonly, nonsymedgeupdate, nonsymedge
66 public :: mpp_wronly, mpp_rdonly, mpp_append, mpp_overwr, mpp_ascii, mpp_ieee32
67 public :: mpp_native, mpp_netcdf, mpp_sequential, mpp_direct, mpp_single, mpp_multi
68 public :: mpp_delete, mpp_collect, nullunit, nulltime
69 public :: max_file_size, root_global, global_root_only
72 integer,
parameter :: MAXPES=2048
73 integer,
parameter :: MPP_VERBOSE=1, mpp_debug=2
74 integer,
parameter :: ALL_PES=-1, any_pe=-2, null_pe=-3
75 integer,
parameter :: NOTE=0, warning=1, fatal=2
76 integer,
parameter :: MAX_CLOCKS=400, max_event_types=5, max_events=40000
77 integer,
parameter :: EVENT_ALLREDUCE=1, event_broadcast=2, event_recv=3, event_send=4, event_wait=5
78 integer,
parameter :: EVENT_ALLTOALL=6
79 integer,
parameter :: EVENT_TYPE_CREATE=7, event_type_free=8
80 integer,
parameter :: MPP_CLOCK_SYNC=1, mpp_clock_detailed=2
81 integer :: DEFAULT_TAG = 1
84 integer(i4_kind) ,
parameter :: MPP_FILL_INT = -2147483647
85 real(r8_kind) ,
parameter :: MPP_FILL_DOUBLE = 9.9692099683868690e+36
86 real(r4_kind) ,
parameter :: MPP_FILL_FLOAT = 9.9692099683868690e+36
89 integer,
parameter :: CLOCK_COMPONENT=1
90 integer,
parameter :: CLOCK_SUBCOMPONENT=11
91 integer,
parameter :: CLOCK_MODULE_DRIVER=21
93 integer,
parameter :: CLOCK_MODULE=31
94 integer,
parameter :: CLOCK_ROUTINE=41
95 integer,
parameter :: CLOCK_LOOP=51
96 integer,
parameter :: CLOCK_INFRA=61
97 integer,
parameter :: MAX_BINS=20
98 integer(i8_kind),
parameter :: MPP_WAIT=-1, mpp_ready=-2
101 integer,
parameter :: GLOBAL=0, cyclic=1
102 integer,
parameter :: WEST=2, east=3, south=4, north=5, scalar_bit=6, center=7, corner=8
103 integer,
parameter :: SOUTH_WEST=7, south_east=8, north_west=9, north_east=10
104 integer,
parameter :: EDGEONLY = 11
105 integer,
parameter :: NONSYMEDGE = 12
106 integer,
parameter :: SEND=1, recv=2
107 integer,
parameter :: GLOBAL_DATA_DOMAIN=2**global, cyclic_global_domain=2**cyclic
108 integer,
parameter :: AGRID=0, bgrid=1, cgrid=2, dgrid=3
109 integer,
parameter :: BGRID_NE=bgrid+2**north+2**east
110 integer,
parameter :: BGRID_SW=bgrid+2**south+2**west
111 integer,
parameter :: CGRID_NE=cgrid+2**north+2**east
112 integer,
parameter :: CGRID_SW=cgrid+2**south+2**west
113 integer,
parameter :: DGRID_NE=dgrid+2**north+2**east
114 integer,
parameter :: DGRID_SW=dgrid+2**south+2**west
115 integer,
parameter :: FOLD_WEST_EDGE = 2**west, fold_east_edge = 2**east
116 integer,
parameter :: FOLD_SOUTH_EDGE=2**south, fold_north_edge=2**north
117 integer,
parameter :: WUPDATE=2**west, eupdate=2**east, supdate=2**south, nupdate=2**north
118 integer,
parameter :: XUPDATE=wupdate+eupdate, yupdate=supdate+nupdate, scalar_pair=2**scalar_bit
119 integer,
parameter :: EDGEUPDATE=2**edgeonly, nonsymedgeupdate=2**nonsymedge
120 integer,
parameter :: ZERO=0, ninety=90, minus_ninety=-90, one_hundred_eighty=180
121 integer,
parameter :: NONBLOCK_UPDATE_TAG = 2
127 integer(i8_kind),
parameter :: DOMAIN_ID_BASE = 4294967296_i8_kind
128 integer,
parameter :: NON_BITWISE_EXACT_SUM=0
129 integer,
parameter :: BITWISE_EXACT_SUM=1
130 integer,
parameter :: BITWISE_EFP_SUM=2
131 integer,
parameter :: MPP_DOMAIN_TIME=mpp_debug+1
132 integer,
parameter :: MAX_DOMAIN_FIELDS=100
133 integer,
parameter :: MAX_TILES=10
136 integer,
parameter :: MPP_WRONLY=100, mpp_rdonly=101, mpp_append=102, mpp_overwr=103
137 integer,
parameter :: MPP_ASCII=200, mpp_ieee32=201, mpp_native=202, mpp_netcdf=203
138 integer,
parameter :: MPP_SEQUENTIAL=300, mpp_direct=301
139 integer,
parameter :: MPP_SINGLE=400, mpp_multi=401
140 integer,
parameter :: MPP_DELETE=501, mpp_collect=502
141 integer,
parameter :: NULLUNIT=-1
145 integer,
parameter :: COMM_TAG_1 = 1, comm_tag_2 = 2, comm_tag_3 = 3, comm_tag_4 = 4
146 integer,
parameter :: COMM_TAG_5 = 5, comm_tag_6 = 6, comm_tag_7 = 7, comm_tag_8 = 8
147 integer,
parameter :: COMM_TAG_9 = 9, comm_tag_10 = 10, comm_tag_11 = 11, comm_tag_12 = 12
148 integer,
parameter :: COMM_TAG_13 = 13, comm_tag_14 = 14, comm_tag_15 = 15, comm_tag_16 = 16
149 integer,
parameter :: COMM_TAG_17 = 17, comm_tag_18 = 18, comm_tag_19 = 19, comm_tag_20 = 20
151 integer,
parameter :: ROOT_GLOBAL = 9
152 integer,
parameter :: GLOBAL_ROOT_ONLY = 2**root_global
153 real(r8_kind),
parameter :: NULLTIME=-1.
155 integer(i8_kind),
parameter :: MAX_FILE_SIZE = 4294967295
157 integer(i8_kind),
parameter :: MAX_FILE_SIZE = 2147483647
162end module mpp_parameter_mod