libsim Versione 7.2.4

◆ timedelta_new()

type(timedelta) function, public timedelta_new ( integer, intent(in), optional year,
integer, intent(in), optional month,
integer, intent(in), optional day,
integer, intent(in), optional hour,
integer, intent(in), optional minute,
integer, intent(in), optional sec,
integer, intent(in), optional msec,
character(len=*), intent(in), optional isodate,
character(len=*), intent(in), optional simpledate,
character(len=12), intent(in), optional oraclesimdate )

Costruisce un oggetto timedelta con i parametri opzionali forniti.

Se non viene passato nulla lo inizializza a intervallo di durata nulla. L'intervallo ottenuto � pari alla somma dei valori di tutti i parametri forniti, ovviamente non fornire un parametro equivale a fornirlo =0. Questa � la versione FUNCTION, in stile F2003, del costruttore, da preferire rispetto alla versione SUBROUTINE init.

Parametri
[in]yearanni, se presente l'oggetto diventa "popolare"
[in]monthmesi, se presente l'oggetto diventa "popolare"
[in]daygiorni
[in]hourore
[in]minuteminuti
[in]secsecondi
[in]msecmillisecondi
[in]isodateinizializza l'oggetto ad un intervallo nel formato GGGGGGGGGG hh:mm:ss.msc, ignorando tutti gli altri parametri
[in]simpledateinizializza l'oggetto ad un intervallo nel formato GGGGGGGGhhmmmsc, ignorando tutti gli altri parametri, da preferire rispetto a oraclesimdate
[in]oraclesimdateinizializza l'oggetto ad un intervallo nel formato GGGGGGGGhhmm, ignorando tutti gli altri parametri
Restituisce
oggetto da inizializzare

Definizione alla linea 1518 del file datetime_class.F90.

1520CALL ndyin(igiorno,iday,imonth,iyear)
1521
1522END SUBROUTINE jeladata6
1523
1524
1525elemental SUBROUTINE jeladata6_1(iday, imonth, iyear, ihour, imin, imsec, imillisec)
1526INTEGER(KIND=int_ll), INTENT(IN) :: imillisec
1527INTEGER, INTENT(OUT) :: iday, imonth, iyear, ihour, imin, imsec
1528
1529INTEGER :: igiorno
1530
1531imsec = int(mod(imillisec, 60000_int_ll)) ! partial msec
1532!imin = MOD(imillisec/60000_int_ll, 60)
1533!ihour = MOD(imillisec/3600000_int_ll, 24)
1534imin = int(mod(imillisec, 3600000_int_ll)/60000_int_ll)
1535ihour = int(mod(imillisec, 86400000_int_ll)/3600000_int_ll)

Generated with Doxygen.