source: XIOS/xios_training/hands-on-2/answer/test_tp2.f90_2 @ 2061

Last change on this file since 2061 was 2046, checked in by ymipsl, 3 years ago
File size: 1.4 KB
Line 
1PROGRAM test_tp2
2
3  USE XIOS
4  IMPLICIT NONE
5  INCLUDE "mpif.h"
6  INTEGER :: rank
7  INTEGER :: size
8  INTEGER :: ierr
9
10  INTEGER :: comm
11  TYPE(xios_duration) :: dtime
12
13  TYPE(xios_date) :: dorigin
14  CHARACTER(len=20) :: dorigin_str
15
16  TYPE(xios_date) :: dstart
17  CHARACTER(len=20) :: dstart_str
18
19  INTEGER :: axis_size
20  DOUBLE PRECISION, ALLOCATABLE :: axis_value(:)
21
22
23  CALL MPI_INIT(ierr)
24
25  CALL xios_initialize("client",return_comm=comm)
26
27  CALL MPI_COMM_RANK(comm,rank,ierr)
28  CALL MPI_COMM_SIZE(comm,size,ierr)
29 
30  print*, "Hello XIOS from proc", rank
31 
32  CALL xios_context_initialize("test",comm)
33
34  !CALL xios_define_calendar(type="Gregorian")
35  !We define the calendar type in xml
36
37  CALL xios_get_time_origin(dorigin)
38  CALL xios_date_convert_to_string(dorigin, dorigin_str)
39  if (rank .EQ. 0) print*, "calendar time_origin = ", dorigin_str
40
41  CALL xios_get_start_date(dstart)
42  CALL xios_date_convert_to_string(dstart, dstart_str)
43  if (rank .EQ. 0) print*, "calendar start_date = ", dstart_str
44
45  dtime%second = 3600
46  CALL xios_set_timestep(dtime)
47
48  CALL xios_get_axis_attr("axis_A", n_glo = axis_size)
49  ALLOCATE(axis_value(axis_size))
50  CALL xios_get_axis_attr("axis_A", value = axis_value)
51  if (rank .EQ. 0) print*, "axis value = ", axis_value(:)
52
53  CALL xios_close_context_definition()
54
55  CALL xios_context_finalize()
56
57  DEALLOCATE(axis_value)
58
59  CALL MPI_COMM_FREE(comm, ierr)
60
61  CALL xios_finalize()
62
63  CALL MPI_FINALIZE(ierr)
64
65END PROGRAM test_tp2
66
Note: See TracBrowser for help on using the repository browser.