[1897] | 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 |
---|