/[MITgcm]/MITgcm/pkg/cal/cal_timeinterval.F
ViewVC logotype

Contents of /MITgcm/pkg/cal/cal_timeinterval.F

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.4 - (show annotations) (download)
Mon Oct 20 06:25:16 2003 UTC (20 years, 6 months ago) by dimitri
Branch: MAIN
CVS Tags: checkpoint62v, checkpoint57m_post, checkpoint52l_pre, checkpoint62u, hrcube4, hrcube5, checkpoint57g_pre, checkpoint62t, checkpoint57s_post, checkpoint58b_post, checkpoint57b_post, checkpoint52d_pre, checkpoint57g_post, checkpoint56b_post, checkpoint57y_post, checkpoint52j_pre, checkpoint51o_pre, checkpoint54d_post, checkpoint54e_post, checkpoint62c, checkpoint51l_post, checkpoint57r_post, checkpoint57d_post, checkpoint57i_post, checkpoint52l_post, checkpoint52k_post, checkpoint59, checkpoint58, checkpoint55, checkpoint54, checkpoint57, checkpoint56, checkpoint53, checkpoint52, checkpoint58f_post, checkpoint52f_post, checkpoint57n_post, checkpoint58d_post, checkpoint62s, checkpoint58a_post, checkpoint62r, checkpoint62q, checkpoint62p, checkpoint57z_post, checkpoint54f_post, checkpoint62a, checkpoint62g, checkpoint62f, checkpoint62e, checkpoint62d, checkpoint62k, checkpoint62j, checkpoint62i, checkpoint62h, checkpoint62o, checkpoint62n, checkpoint62m, checkpoint62l, checkpoint62w, checkpoint62z, checkpoint62y, checkpoint62x, checkpoint58y_post, checkpoint51t_post, checkpoint58t_post, checkpoint51n_post, checkpoint55i_post, checkpoint58m_post, checkpoint57l_post, checkpoint52i_pre, hrcube_1, hrcube_2, hrcube_3, checkpoint51s_post, checkpoint57t_post, checkpoint55c_post, checkpoint63g, checkpoint52e_pre, checkpoint57v_post, checkpoint57f_post, checkpoint52e_post, checkpoint51n_pre, checkpoint53d_post, checkpoint60, checkpoint61, checkpoint62, checkpoint63, checkpoint57a_post, checkpoint57h_pre, checkpoint52b_pre, checkpoint54b_post, checkpoint58w_post, checkpoint57h_post, checkpoint52m_post, checkpoint57y_pre, checkpoint55g_post, checkpoint51q_post, checkpoint52b_post, checkpoint52c_post, checkpoint58o_post, checkpoint57c_post, checkpoint58p_post, checkpoint58q_post, checkpoint52f_pre, checkpoint55d_post, checkpoint58e_post, checkpoint54a_pre, checkpoint63l, checkpoint63h, checkpoint63i, checkpoint63j, checkpoint63k, checkpoint63d, checkpoint63e, checkpoint63f, checkpoint53c_post, checkpoint63a, checkpoint63b, checkpoint63c, checkpoint55d_pre, checkpoint57c_pre, checkpoint58r_post, checkpoint55j_post, checkpoint54a_post, checkpoint55h_post, checkpoint58n_post, checkpoint51r_post, checkpoint57e_post, checkpoint55b_post, checkpoint53a_post, checkpoint59q, checkpoint59p, checkpoint59r, checkpoint59e, checkpoint59d, checkpoint59g, checkpoint59f, checkpoint59a, checkpoint55f_post, checkpoint59c, checkpoint59b, checkpoint59m, checkpoint59l, checkpoint59o, checkpoint59n, checkpoint59i, checkpoint59h, checkpoint59k, checkpoint52d_post, checkpoint53g_post, checkpoint57p_post, checkpint57u_post, checkpoint57q_post, eckpoint57e_pre, checkpoint58k_post, checkpoint52a_pre, checkpoint62b, checkpoint58v_post, checkpoint52i_post, checkpoint52h_pre, checkpoint56a_post, checkpoint58l_post, checkpoint53f_post, checkpoint57h_done, checkpoint52j_post, checkpoint57j_post, checkpoint57f_pre, checkpoint61f, checkpoint58g_post, branch-netcdf, checkpoint58x_post, checkpoint61n, checkpoint52n_post, checkpoint53b_pre, checkpoint59j, checkpoint58h_post, checkpoint56c_post, checkpoint58j_post, checkpoint57a_pre, checkpoint55a_post, checkpoint57o_post, checkpoint51o_post, checkpoint61q, checkpoint57k_post, checkpoint53b_post, checkpoint52a_post, checkpoint57w_post, checkpoint61e, checkpoint58i_post, ecco_c52_e35, checkpoint57x_post, checkpoint58c_post, checkpoint58u_post, checkpoint51m_post, checkpoint53d_pre, checkpoint58s_post, checkpoint55e_post, checkpoint61g, checkpoint61d, checkpoint54c_post, checkpoint61b, checkpoint61c, checkpoint61a, checkpoint61o, checkpoint61l, checkpoint61m, checkpoint61j, checkpoint61k, checkpoint61h, checkpoint61i, checkpoint61v, checkpoint61w, checkpoint61t, checkpoint61u, checkpoint61r, checkpoint61s, checkpoint61p, checkpoint51p_post, checkpoint61z, checkpoint61x, checkpoint61y, checkpoint51u_post
Branch point for: branch-nonh, netcdf-sm0, checkpoint51n_branch
Changes since 1.3: +5 -2 lines
changes to pkg/cal and pkg/exf that allow and speed-up long integrations

1 C $Header: /usr/local/gcmpack/MITgcm/pkg/cal/cal_timeinterval.F,v 1.3 2003/10/09 04:19:19 edhill Exp $
2 C $Name: $
3
4 #include "CAL_OPTIONS.h"
5
6 subroutine cal_TimeInterval(
7 I timeint,
8 I timeunit,
9 O date,
10 I mythid
11 & )
12
13 c ==================================================================
14 c SUBROUTINE cal_TimeInterval
15 c ==================================================================
16 c
17 c o Create an array in date format given a time interval measured in
18 c units of timeunit.
19 c
20 c Available time units: 'secs'
21 c 'model'
22 c
23 c Fractions of seconds are not resolved in this version.
24 c
25 c started: Christian Eckert eckert@mit.edu 30-Jun-1999
26 c
27 c changed: Christian Eckert eckert@mit.edu 29-Dec-1999
28 c
29 c - restructured the original version in order to have a
30 c better interface to the MITgcmUV.
31 c
32 c Christian Eckert eckert@mit.edu 03-Feb-2000
33 c
34 c - Introduced new routine and function names, cal_<NAME>,
35 c for verion 0.1.3.
36 c
37 c ==================================================================
38 c SUBROUTINE cal_TimeInterval
39 c ==================================================================
40
41 implicit none
42
43 c == global variables ==
44
45 #include "cal.h"
46
47 c == routine arguments ==
48
49 integer date(4)
50 _RL timeint
51 character*(*) timeunit
52 integer mythid
53
54 c == local variables ==
55
56 integer fac
57 integer nsecs
58 integer hhmmss
59 integer ierr
60 _RL tmp1, tmp2
61
62 c == end of interface ==
63
64 fac = 1
65 if (timeint .lt. 0) fac = -1
66
67 date(4) = -1
68 date(3) = 0
69 if (timeunit .eq. 'secs') then
70
71 date(1) = int(timeint/float(secondsperday))
72 tmp1 = date(1)
73 tmp2 = secondsperday
74 nsecs = int(timeint - tmp1 * tmp2 )
75
76 else if (timeunit .eq. 'model') then
77
78 date(1) = int(timeint*modelstep/float(secondsperday))
79 nsecs = int(timeint*modelstep -
80 & float(date(1)) * float(secondsperday))
81
82 else
83
84 ierr = 701
85 call cal_PrintError( ierr, mythid )
86 stop ' stopped in cal_TimeInterval.'
87
88 endif
89
90 hhmmss = nsecs/secondsperminute
91 date(2) = hhmmss/minutesperhour*10000 +
92 & (mod(fac*hhmmss,minutesperhour)*100 +
93 & mod(fac*nsecs,secondsperminute))*fac
94
95 return
96 end

  ViewVC Help
Powered by ViewVC 1.1.22