SICOPOLIS V5-dev  Revision 1279
sico_types_m.F90
Go to the documentation of this file.
1 !+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 !
3 ! Module : s i c o _ t y p e s _ m
4 !
5 !> @file
6 !!
7 !! Declarations of kind types for SICOPOLIS.
8 !!
9 !! @section Copyright
10 !!
11 !! Copyright 2009-2018 Ralf Greve
12 !!
13 !! @section License
14 !!
15 !! This file is part of SICOPOLIS.
16 !!
17 !! SICOPOLIS is free software: you can redistribute it and/or modify
18 !! it under the terms of the GNU General Public License as published by
19 !! the Free Software Foundation, either version 3 of the License, or
20 !! (at your option) any later version.
21 !!
22 !! SICOPOLIS is distributed in the hope that it will be useful,
23 !! but WITHOUT ANY WARRANTY; without even the implied warranty of
24 !! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 !! GNU General Public License for more details.
26 !!
27 !! You should have received a copy of the GNU General Public License
28 !! along with SICOPOLIS. If not, see <http://www.gnu.org/licenses/>.
29 !<
30 !+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
31 
32 !-------------------------------------------------------------------------------
33 !> Declarations of kind types for SICOPOLIS.
34 !<------------------------------------------------------------------------------
36 
37 implicit none
38 save
39 
40 #ifndef ALLOW_OPENAD
41 
42 integer, parameter :: i1b = selected_int_kind(2) !< 1-byte integers
43 integer, parameter :: i2b = selected_int_kind(4) !< 2-byte integers
44 integer, parameter :: i4b = selected_int_kind(9) !< 4-byte integers
45 integer, parameter :: sp = kind(1.0) !< Single-precision reals
46 integer, parameter :: dp = kind(1.0d0) !< Double-precision reals
47 
48 #else
49 
50 !SHK: Removed the use of selected_int_kind by creating a test that prints out
51 ! selected_int_kind(4) and selected_int_kind(9) and substituted that value in
52 ! place of the function call
53 !integer, parameter :: i2b = 2 !< 2-byte integers
54 !SHK found that setting i2b=4 is the only way to make OpenAD not have a
55 !whirl opcode error
56 integer, parameter :: i1b = 4
57 integer, parameter :: i2b = 4
58 integer, parameter :: i4b = 4
59 
60 !SHK: Removed the use is kind by creating a test that prints out kind(1.0)
61 ! and kinf(1.0d0) and substituted that value in place of the function call
62 integer, parameter :: sp = 4
63 integer, parameter :: dp = 8
64 
65 #endif
66 
67 end module sico_types_m
68 !
integer, parameter i2b
2-byte integers
integer, parameter i1b
1-byte integers
Declarations of kind types for SICOPOLIS.
integer, parameter i4b
4-byte integers
integer, parameter sp
Single-precision reals.
integer, parameter dp
Double-precision reals.