1 | PROGRAM test_xmlio |
---|
2 | USE xmlio |
---|
3 | USE mod_interface_ioipsl |
---|
4 | IMPLICIT NONE |
---|
5 | |
---|
6 | TYPE(field),POINTER :: Pt_f |
---|
7 | TYPE(field_group),POINTER :: Pt_fg |
---|
8 | TYPE(file),POINTER :: Pt_file |
---|
9 | TYPE(grid),POINTER :: pt_grid |
---|
10 | INTEGER,PARAMETER :: ni=360 |
---|
11 | INTEGER,PARAMETER :: nj=180 |
---|
12 | REAL,DIMENSION(ni,nj) :: lon |
---|
13 | REAL,DIMENSION(ni,nj) :: lat |
---|
14 | INTEGER :: i,j |
---|
15 | TYPE(axis),POINTER :: pt_axis |
---|
16 | |
---|
17 | DO i=1,ni |
---|
18 | DO j=1,nj |
---|
19 | lon(i,j)=i |
---|
20 | lat(i,j)=j |
---|
21 | ENDDO |
---|
22 | ENDDO |
---|
23 | |
---|
24 | |
---|
25 | |
---|
26 | CALL xmlio__init("iodef.xml") |
---|
27 | |
---|
28 | CALL grid__get("grid_T",pt_grid) |
---|
29 | CALL domain__set(pt_grid%domain,0,ni,nj,1,1,lon,lat) |
---|
30 | |
---|
31 | CALL grid__get("grid_U",pt_grid) |
---|
32 | CALL domain__set(pt_grid%domain,0,ni,nj,1,1,lon,lat) |
---|
33 | |
---|
34 | CALL grid__get("grid_V",pt_grid) |
---|
35 | CALL domain__set(pt_grid%domain,0,ni,nj,1,1,lon,lat) |
---|
36 | |
---|
37 | CALL grid__get("grid_W",pt_grid) |
---|
38 | CALL domain__set(pt_grid%domain,0,ni,nj,1,1,lon,lat) |
---|
39 | |
---|
40 | CALL axis__get("deptht",pt_axis) |
---|
41 | CALL axis__set(pt_axis,a_size=5,values=(/1.,2.,3.,4.,5./)) |
---|
42 | |
---|
43 | CALL axis__get("depthu",pt_axis) |
---|
44 | CALL axis__set(pt_axis,a_size=5,values=(/1.,2.,3.,4.,5./)) |
---|
45 | |
---|
46 | CALL axis__get("depthv",pt_axis) |
---|
47 | CALL axis__set(pt_axis,a_size=5,values=(/1.,2.,3.,4.,5./)) |
---|
48 | |
---|
49 | CALL axis__get("depthw",pt_axis) |
---|
50 | CALL axis__set(pt_axis,a_size=5,values=(/1.,2.,3.,4.,5./)) |
---|
51 | |
---|
52 | |
---|
53 | CALL axis_group__apply_default(axis_definition) |
---|
54 | CALL grid_group__apply_default(grid_definition) |
---|
55 | CALL field_group__apply_default(field_definition) |
---|
56 | CALL file_group__apply_default(file_definition) |
---|
57 | |
---|
58 | CALL field_group__solve_ref(field_definition) |
---|
59 | CALL file_group__solve_field_ref(file_definition) |
---|
60 | |
---|
61 | CALL file_group__check(file_definition) |
---|
62 | CALL axis_group__check(axis_definition) |
---|
63 | |
---|
64 | ! |
---|
65 | CALL axis_group__print(axis_definition) |
---|
66 | CALL grid_group__print(grid_definition) |
---|
67 | CALL field_group__print(field_definition) |
---|
68 | CALL file_group__print(file_definition) |
---|
69 | ! CALL field_group__get_new_field(field_definition,pt_f,"toto") |
---|
70 | ! CALL field__set(Pt_f,name="toto",unit="kg") |
---|
71 | ! CALL field_group__get_new_field(field_definition,pt_f,"tata") |
---|
72 | ! CALL field__set(Pt_f,name="tata",unit="kg") |
---|
73 | ! CALL field_group__get_new_field(field_definition,pt_f,"titi") |
---|
74 | ! CALL field__set(Pt_f,name="titi",unit="kg") |
---|
75 | ! CALL field_group__get_new_field(field_definition,pt_f,"xyz") |
---|
76 | ! CALL field__set(Pt_f,name="xyz",unit="kg") |
---|
77 | CALL set_file_dependency |
---|
78 | CALL set_field_enabled |
---|
79 | CALL set_field_dependency |
---|
80 | |
---|
81 | CALL set_time_parameters(0,0.,3600.) |
---|
82 | |
---|
83 | CALL create_header |
---|
84 | |
---|
85 | END PROGRAM test_xmlio |
---|