wrf svn trunk commit r4103
[wrffire.git] / wrfv2_fire / external / esmf_time_f90 / ESMF_TimeMgr.inc
blobbab7744bd635824aa339731fc51d78964343cd3a
1 #if 0
2  
3 Earth System Modeling Framework
4 Copyright 2002-2003, University Corporation for Atmospheric Research,
5 Massachusetts Institute of Technology, Geophysical Fluid Dynamics
6 Laboratory, University of Michigan, National Centers for Environmental
7 Prediction, Los Alamos National Laboratory, Argonne National Laboratory,
8 NASA Goddard Space Flight Center.
9 Licensed under the University of Illinois-NCSA license.
11 Do not have C++ or F90 style comments in here because this file is processed
12 by both C++ and F90 compilers.
13 #endif
15 #ifndef ESMF_TimeMgr_INC
16 #define ESMF_TimeMgr_INC
18 #if 0
19 !BOP
20 -------------------------------------------------------------------------
22  !DESCRIPTION:
24  ESMF TimeMgr include file for F90
25  The code in this file implements constants and macros for the TimeMgr...
27 -------------------------------------------------------------------------
28 !EOP
29 #endif
31 #include <ESMF_Macros.inc>
33 #define SECONDS_PER_DAY 86400_ESMF_KIND_I8
34 #define SECONDS_PER_HOUR 3600_ESMF_KIND_I8
35 #define SECONDS_PER_MINUTE 60_ESMF_KIND_I8
36 #define HOURS_PER_DAY 24_ESMF_KIND_I8
38 ! Note that MAX_ALARMS must match MAX_WRF_ALARMS defined in 
39 ! ../../frame/module_domain.F !!!  Eliminate this dependence with 
40 ! grow-as-you-go AlarmList in ESMF_Clock...  
41 #define MAX_ALARMS (2*(MAX_HISTORY)+10)
43 ! TBH:  TODO:  Hook this into the WRF build so WRF can use either "no-leap" or 
44 ! TBH:         Gregorian calendar.  Now WRF is hard-wired to use Gregorian.  
45 #undef NO_LEAP_CALENDAR
46 #ifdef COUP_CSM
47 #define NO_LEAP_CALENDAR
48 #endif
50 ! TBH:  When NO_DT_COMPONENT_INIT is set, code that uses F95 compile-time 
51 ! TBH:  initialization of components of derived types is not included.  
52 ! TBH:  Some older compilers like PGI 5.x do not support this F95 
53 ! TBH:  feature.
54 #ifdef NO_LEAP_CALENDAR
55 #undef NO_DT_COMPONENT_INIT
56 #else
57 #define NO_DT_COMPONENT_INIT
58 #endif
60 #endif