15   & year, month, day, hour, min, sec, elapse_sec, cal, date, err )
    60   integer, 
intent(in):: year  
    61   integer, 
intent(in):: month 
    62   integer, 
intent(in):: day   
    63   integer, 
intent(in):: hour  
    64   integer, 
intent(in):: min   
    65   real(DP), 
intent(in):: sec  
    66   real(DP), 
intent(in):: elapse_sec
    69   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
    74   type(
dc_cal_date), 
intent(out), 
optional, 
target:: date
    79   logical, 
intent(out), 
optional:: err
    97   integer:: wyear, wmonth, wday, whour, wmin
   100   type(
dc_cal), 
pointer:: calp =>null()
   101   character(STRING):: e_date_str, e_cal_str
   103   character(STRING):: cause_c
   104   character(*), 
parameter:: subname = 
'DCCalDateEvalYMDHMS1'   113   if ( 
present( date ) ) 
then   119   if ( 
present( cal ) ) 
then   135   if ( .not. calp % initialized ) 
then   160   wsec = wsec + elapse_sec
   169     e_date_str = 
dccaldatetochar( wyear, wmonth, wday, whour, wmin, wsec, zone = 
"" )
   170     call messagenotify(
'W', subname, 
'cal=<%c> and date=<%c> are inconsistency', &
   171       & c1 = trim(e_cal_str), c2 = trim(e_date_str) )
   179     & wyear, wmonth, wday, whour, wmin, wsec, & 
   180     & datep, zone = 
"", err = err )             
   181   if ( 
present(err) ) 
then   192   nullify( calp, datep )
   193   call storeerror( stat, subname, err, cause_c )
   200   & year, month, day, hour, min, sec, elapse_time, units, cal, date, err )
   247   integer, 
intent(in):: year  
   248   integer, 
intent(in):: month 
   249   integer, 
intent(in):: day   
   250   integer, 
intent(in):: hour  
   251   integer, 
intent(in):: min   
   252   real(DP), 
intent(in):: sec  
   253   real(DP), 
intent(in):: elapse_time
   259   character(*), 
intent(in):: units
   263   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
   268   type(
dc_cal_date), 
intent(out), 
optional, 
target:: date
   273   logical, 
intent(out), 
optional:: err
   291   integer:: wyear, wmonth, wday, whour, wmin
   294   type(
dc_cal), 
pointer:: calp =>null()
   295   character(STRING):: e_date_str, e_cal_str
   298   character(STRING):: cause_c
   299   character(*), 
parameter:: subname = 
'DCCalDateEvalYMDHMS2'   308   if ( 
present( date ) ) 
then   314   if ( 
present( cal ) ) 
then   330   if ( .not. calp % initialized ) 
then   358     wsec = wsec + elapse_time * calp % hour_in_day &
   359       &                       * calp % min_in_hour &
   360       &                       * calp % sec_in_min
   362     wsec = wsec + elapse_time * calp % min_in_hour &
   363       &                       * calp % sec_in_min
   365     wsec = wsec + elapse_time * calp % sec_in_min
   367     wsec = wsec + elapse_time
   370     call messagenotify(
'W', subname, 
'units=<%c> is invalid. (ONLY day,hrs,min,sec are valid)', &
   383     e_date_str = 
dccaldatetochar( wyear, wmonth, wday, whour, wmin, wsec, zone = 
"" )
   384     call messagenotify(
'W', subname, 
'cal=<%c> and date=<%c> are inconsistency', &
   385       & c1 = trim(e_cal_str), c2 = trim(e_date_str) )
   393     & wyear, wmonth, wday, whour, wmin, wsec, & 
   394     & datep, zone = 
"", err = err )             
   395   if ( 
present(err) ) 
then   406   nullify( calp, datep )
   407   call storeerror( stat, subname, err, cause_c )
   463   real(DP), 
intent(in):: elapse_sec
   466   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
   471   type(
dc_cal_date), 
intent(out), 
optional, 
target:: date
   476   logical, 
intent(out), 
optional:: err
   494   integer:: wyear, wmonth, wday, whour, wmin
   496   character(TOKEN):: wzone
   498   type(
dc_cal), 
pointer:: calp =>null()
   499   character(STRING):: e_date_str, e_cal_str
   501   character(STRING):: cause_c
   502   character(*), 
parameter:: subname = 
'DCCalDateEvalID1'   511   if ( 
present( date ) ) 
then   517   if ( 
present( cal ) ) 
then   533   if ( .not. calp % initialized ) 
then   542   wyear  = init_date % year
   543   wmonth = init_date % month
   544   wday   = init_date % day
   545   whour  = init_date % hour
   546   wmin   = init_date % min
   547   wsec   = init_date % sec
   548   wzone  = init_date % zone
   559   wsec = wsec + elapse_sec
   568     e_date_str = 
dccaldatetochar( wyear, wmonth, wday, whour, wmin, wsec, zone = 
"" )
   569     call messagenotify(
'W', subname, 
'cal=<%c> and date=<%c> are inconsistency', &
   570       & c1 = trim(e_cal_str), c2 = trim(e_date_str) )
   578     & wyear, wmonth, wday, whour, wmin, wsec, & 
   579     & datep, zone = wzone, err = err )          
   580   if ( 
present(err) ) 
then   591   nullify( calp, datep )
   592   call storeerror( stat, subname, err, cause_c )
   598 subroutine dccaldateevalid2( init_date, elapse_time, units, cal, date, err )
   649   real(DP), 
intent(in):: elapse_time
   655   character(*), 
intent(in):: units
   659   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
   664   type(
dc_cal_date), 
intent(out), 
optional, 
target:: date
   669   logical, 
intent(out), 
optional:: err
   687   integer:: wyear, wmonth, wday, whour, wmin
   689   character(TOKEN):: wzone
   691   type(
dc_cal), 
pointer:: calp =>null()
   692   character(STRING):: e_date_str, e_cal_str
   695   character(STRING):: cause_c
   696   character(*), 
parameter:: subname = 
'DCCalDateEvalID2'   705   if ( 
present( date ) ) 
then   711   if ( 
present( cal ) ) 
then   727   if ( .not. calp % initialized ) 
then   736   wyear  = init_date % year
   737   wmonth = init_date % month
   738   wday   = init_date % day
   739   whour  = init_date % hour
   740   wmin   = init_date % min
   741   wsec   = init_date % sec
   742   wzone  = init_date % zone
   756     wsec = wsec + elapse_time * calp % hour_in_day &
   757       &                       * calp % min_in_hour &
   758       &                       * calp % sec_in_min
   760     wsec = wsec + elapse_time * calp % min_in_hour &
   761       &                       * calp % sec_in_min
   763     wsec = wsec + elapse_time * calp % sec_in_min
   765     wsec = wsec + elapse_time
   768     call messagenotify(
'W', subname, 
'units=<%c> is invalid. (ONLY day,hrs,min,sec are valid)', &
   781     e_date_str = 
dccaldatetochar( wyear, wmonth, wday, whour, wmin, wsec, zone = 
"" )
   782     call messagenotify(
'W', subname, 
'cal=<%c> and date=<%c> are inconsistency', &
   783       & c1 = trim(e_cal_str), c2 = trim(e_date_str) )
   791     & wyear, wmonth, wday, whour, wmin, wsec, & 
   792     & datep, zone = wzone, err = err )          
   793   if ( 
present(err) ) 
then   804   nullify( calp, datep )
   805   call storeerror( stat, subname, err, cause_c )
   812   & year1, month1, day1, hour1, min1, sec1, &
   814   & year2, month2, day2, hour2, min2, sec2, &
   842   integer, 
intent(in):: year1  
   843   integer, 
intent(in):: month1 
   844   integer, 
intent(in):: day1   
   845   integer, 
intent(in):: hour1  
   846   integer, 
intent(in):: min1   
   847   real(DP), 
intent(in):: sec1  
   848   real(DP), 
intent(in):: elapse_sec
   851   integer, 
intent(out):: year2  
   852   integer, 
intent(out):: month2 
   853   integer, 
intent(out):: day2   
   854   integer, 
intent(out):: hour2  
   855   integer, 
intent(out):: min2   
   856   real(DP), 
intent(out):: sec2  
   857   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
   862   logical, 
intent(out), 
optional:: err
   880   type(
dc_cal), 
pointer:: calp =>null()
   881   character(STRING):: e_date_str, e_cal_str
   883   character(STRING):: cause_c
   884   character(*), 
parameter:: subname = 
'DCCalDateEvalYM2YM1'   893   if ( 
present( cal ) ) 
then   909   if ( .not. calp % initialized ) 
then   934   sec2 = sec2 + elapse_sec
   943     e_date_str = 
dccaldatetochar( year2, month2, day2, hour2, min2, sec2, zone = 
"" )
   944     call messagenotify(
'W', subname, 
'cal=<%c> and date=<%c> are inconsistency', &
   945       & c1 = trim(e_cal_str), c2 = trim(e_date_str) )
   954   call storeerror( stat, subname, err, cause_c )
   961   & year1, month1, day1, hour1, min1, sec1, &
   962   & elapse_time, units, &
   963   & year2, month2, day2, hour2, min2, sec2, &
   994   integer, 
intent(in):: year1  
   995   integer, 
intent(in):: month1 
   996   integer, 
intent(in):: day1   
   997   integer, 
intent(in):: hour1  
   998   integer, 
intent(in):: min1   
   999   real(DP), 
intent(in):: sec1  
  1000   real(DP), 
intent(in):: elapse_time
  1006   character(*), 
intent(in):: units
  1010   integer, 
intent(out):: year2  
  1011   integer, 
intent(out):: month2 
  1012   integer, 
intent(out):: day2   
  1013   integer, 
intent(out):: hour2  
  1014   integer, 
intent(out):: min2   
  1015   real(DP), 
intent(out):: sec2  
  1016   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
  1021   logical, 
intent(out), 
optional:: err
  1039   type(
dc_cal), 
pointer:: calp =>null()
  1040   character(STRING):: e_date_str, e_cal_str
  1043   character(STRING):: cause_c
  1044   character(*), 
parameter:: subname = 
'DCCalDateEvalYM2YM1'  1053   if ( 
present( cal ) ) 
then  1069   if ( .not. calp % initialized ) 
then  1097     sec2 = sec2 + elapse_time * calp % hour_in_day &
  1098       &                       * calp % min_in_hour &
  1099       &                       * calp % sec_in_min
  1101     sec2 = sec2 + elapse_time * calp % min_in_hour &
  1102       &                       * calp % sec_in_min
  1104     sec2 = sec2 + elapse_time * calp % sec_in_min
  1106     sec2 = sec2 + elapse_time
  1109     call messagenotify(
'W', subname, 
'units=<%c> is invalid. (ONLY day,hour,min,sec are valid)', &
  1110       & c1 = trim(units) )
  1122     e_date_str = 
dccaldatetochar( year2, month2, day2, hour2, min2, sec2, zone = 
"" )
  1123     call messagenotify(
'W', subname, 
'cal=<%c> and date=<%c> are inconsistency', &
  1124       & c1 = trim(e_cal_str), c2 = trim(e_date_str) )
  1133   call storeerror( stat, subname, err, cause_c )
  1171   real(DP), 
intent(in):: elapse_sec
  1174   type(
dc_cal_date), 
intent(in), 
optional, 
target:: date
  1179   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
  1191   real(DP):: day_of_year
  1194   type(
dc_cal), 
pointer:: calp =>null()
  1195   integer:: year, month, day, hour, min
  1202   if ( 
present( date ) ) 
then  1208   if ( 
present( cal ) ) 
then  1219   if ( .not. datep % initialized ) 
return  1220   if ( .not. calp % initialized ) 
return  1226       & elapse_sec = elapse_sec, date = date , cal = calp )  
  1237   result = ( day_of_year - 1 ) * calp % hour_in_day &
  1238       &                        * calp % min_in_hour &
  1239       &                        * calp % sec_in_min  &
  1240       &                 + hour * calp % min_in_hour &
  1241       &                        * calp % sec_in_min  &
  1242       &                 + min  * calp % sec_in_min  &
  1281   real(DP), 
intent(in):: elapse_sec
  1284   type(
dc_cal_date), 
intent(in), 
optional, 
target:: date
  1289   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
  1301   integer:: year, month, day, hour, min
  1305   type(
dc_cal), 
pointer:: calp =>null()
  1312   if ( 
present( date ) ) 
then  1318   if ( 
present( cal ) ) 
then  1329   if ( .not. datep % initialized ) 
return  1330   if ( .not. calp % initialized ) 
return  1336       & elapse_sec = elapse_sec, date = date , cal = calp )  
  1380   real(DP), 
intent(in):: elapse_sec
  1383   type(
dc_cal_date), 
intent(in), 
optional, 
target:: date
  1388   type(
dc_cal), 
intent(in), 
optional, 
target:: cal
  1402   type(
dc_cal), 
pointer:: calp =>null()
  1403   integer:: year, month, day, hour, min
  1410   if ( 
present( date ) ) 
then  1416   if ( 
present( cal ) ) 
then  1427   if ( .not. datep % initialized ) 
return  1428   if ( .not. calp % initialized ) 
return  1434       & elapse_sec = elapse_sec, date = date , cal = calp )  
  1440       &                   hour * calp % min_in_hour &
  1441       &                        * calp % sec_in_min  &
  1442       &                 + min  * calp % sec_in_min  &
 
integer, parameter, public unit_symbol_hour
 
real(dp) function dccaldateevaldayofyear1(elapse_sec, date, cal)
 
integer, parameter, public dc_enotinit
 
real(dp) function dccaldateevalsecofyear1(elapse_sec, date, cal)
 
real(dp) function dccaldateevalsecofday1(elapse_sec, date, cal)
 
integer, parameter, public token
単語やキーワードを保持する文字型変数の種別型パラメタ 
 
type(dc_cal), target, save, public default_cal
 
subroutine dccaldateevalymdhms1(year, month, day, hour, min, sec, elapse_sec, cal, date, err)
 
integer, parameter, public dc_ebaddate
 
subroutine dccaldateevalid2(init_date, elapse_time, units, cal, date, err)
 
subroutine, public storeerror(number, where, err, cause_c, cause_i)
 
integer, parameter, public dc_noerr
 
subroutine dccaldateevalym2ym2(year1, month1, day1, hour1, min1, sec1, elapse_time, units, year2, month2, day2, hour2, min2, sec2, cal, err)
 
integer function, public dccaldate_ym2d(year, month, day, cal, day_of_year)
 
integer, parameter, public unit_symbol_day
 
integer function, public dccaldate_normalize(year, month, day, hour, min, sec, cal)
 
type(dc_cal_date), target, save, public default_date
 
subroutine dccaldateevalym2ym1(year1, month1, day1, hour1, min1, sec1, elapse_sec, year2, month2, day2, hour2, min2, sec2, cal, err)
 
subroutine dccaldateevalid1(init_date, elapse_sec, cal, date, err)
 
integer, parameter, public dp
倍精度実数型変数 
 
subroutine, public beginsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca, version)
 
integer, parameter, public dc_einconsistcaldate
 
integer, parameter, public dc_ebadunit
 
subroutine dccaldateevalymdhms2(year, month, day, hour, min, sec, elapse_time, units, cal, date, err)
 
integer, parameter, public unit_symbol_min
 
integer function, public dccaldate_str2usym(str)
 
subroutine, public default_cal_set
 
integer, parameter, public unit_symbol_sec
 
subroutine, public endsub(name, fmt, i, r, d, L, n, c1, c2, c3, ca)
 
integer, parameter, public dc_ealreadyinit
 
integer, parameter, public dc_enegative
 
integer, parameter, public string
文字列を保持する 文字型変数の種別型パラメタ