source: LMDZ5/branches/testing/libf/phylmd/phys_cal_mod.F90 @ 2056

Last change on this file since 2056 was 1910, checked in by Laurent Fairhead, 11 years ago

Merged trunk changes r1860:1909 into testing branch

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
File size: 1.1 KB
Line 
1! $Id:$
2MODULE phys_cal_mod
3! This module contains information on the calendar at the actual time step
4
5  SAVE
6
7  INTEGER :: year_cur      ! current year
8  INTEGER :: mth_cur       ! current month
9  INTEGER :: day_cur       ! current day
10  INTEGER :: days_elapsed  ! number of whole days since start of the simulation
11  INTEGER :: mth_len       ! number of days in the current month
12  REAL    :: hour
13  REAL    :: jD_1jan
14  REAL    :: jH_1jan
15  REAL    :: xjour
16
17
18CONTAINS
19 
20  SUBROUTINE phys_cal_update(jD_cur, jH_cur)
21    ! This subroutine updates the module saved variables.
22
23    USE IOIPSL
24   
25    REAL, INTENT(IN) :: jD_cur ! jour courant a l'appel de la physique (jour julien)
26    REAL, INTENT(IN) :: jH_cur ! heure courante a l'appel de la physique (jour julien)
27   
28    CALL ju2ymds(jD_cur+jH_cur, year_cur, mth_cur, day_cur, hour)
29    CALL ymds2ju(year_cur, 1, 1, 0., jD_1jan)
30   
31    jH_1jan = jD_1jan - int (jD_1jan)
32    jD_1jan = int (jD_1jan)
33    xjour = jD_cur - jD_1jan
34    days_elapsed = jD_cur - jD_1jan
35
36    ! Get lenght of acutual month
37    mth_len = ioget_mon_len(year_cur,mth_cur)
38
39  END SUBROUTINE phys_cal_update
40
41END MODULE phys_cal_mod
Note: See TracBrowser for help on using the repository browser.