Changeset 1825 for LMDZ5/trunk/libf/phylmd/iophy.F90
- Timestamp:
- Aug 2, 2013, 4:36:53 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ5/trunk/libf/phylmd/iophy.F90
r1821 r1825 5 5 6 6 USE phys_output_var_mod 7 8 #ifdef CPP_XIOS 9 USE wxios 10 #endif 7 11 8 12 ! abd REAL,private,allocatable,DIMENSION(:),save :: io_lat … … 22 26 23 27 INTERFACE histbeg_phy_all 24 MODULE PROCEDURE histbeg_phy,histbeg_phy _points28 MODULE PROCEDURE histbeg_phy,histbeg_phyxios,histbeg_phy_points 25 29 END INTERFACE 26 30 … … 40 44 USE mod_grid_phy_lmdz 41 45 USE ioipsl 46 42 47 IMPLICIT NONE 43 48 INCLUDE 'dimensions.h' … … 89 94 CALL flio_dom_set(mpi_size,mpi_rank,ddid,dsg,dsl,dpf,dpl,dhs,dhe, & 90 95 'APPLE',phys_domain_id) 91 96 #ifdef CPP_XIOS 97 !On initialise le domaine xios, maintenant que tout est connu: 98 CALL wxios_domain_param("dom_glo", is_sequential, iim, jjm+1, io_lat, io_lon) 99 #endif 92 100 !$OMP END MASTER 93 101 … … 135 143 136 144 end SUBROUTINE init_iophy 145 146 SUBROUTINE histbeg_phyxios(name,itau0,zjulian,dtime,ffreq,lev,nhori,nid_day) 147 USE dimphy 148 USE mod_phys_lmdz_para 149 use ioipsl 150 use write_field 151 IMPLICIT NONE 152 include 'dimensions.h' 153 154 character*(*), INTENT(IN) :: name 155 integer, INTENT(IN) :: itau0 156 REAL,INTENT(IN) :: zjulian 157 REAL,INTENT(IN) :: dtime 158 character(LEN=*), INTENT(IN) :: ffreq 159 INTEGER,INTENT(IN) :: lev 160 integer,intent(out) :: nhori 161 integer,intent(out) :: nid_day 162 163 !$OMP MASTER 164 if (is_sequential) then 165 call histbeg(name,iim,io_lon, jj_nb,io_lat(jj_begin:jj_end), & 166 1,iim,1,jj_nb,itau0, zjulian, dtime, nhori, nid_day) 167 else 168 call histbeg(name,iim,io_lon, jj_nb,io_lat(jj_begin:jj_end), & 169 1,iim,1,jj_nb,itau0, zjulian, dtime, nhori, nid_day,phys_domain_id) 170 endif 171 172 #ifdef CPP_XIOS 173 ! ug OMP en chantier... 174 IF((.NOT. is_using_mpi) .OR. is_mpi_root) THEN 175 ! ug Création du fichier 176 CALL wxios_add_file(name, ffreq, lev) 177 END IF 178 #endif 179 !$OMP END MASTER 180 181 END SUBROUTINE histbeg_phyxios 137 182 138 183 SUBROUTINE histbeg_phy(name,itau0,zjulian,dtime,nhori,nid_day) … … 159 204 1,iim,1,jj_nb,itau0, zjulian, dtime, nhori, nid_day,phys_domain_id) 160 205 endif 206 161 207 !$OMP END MASTER 162 208 163 209 END SUBROUTINE histbeg_phy 210 164 211 165 212 SUBROUTINE histbeg_phy_points(rlon,rlat,pim,tabij,ipt,jpt, & … … 487 534 488 535 IF(.NOT.clef_stations(iff)) THEN 536 #ifdef CPP_XIOS 537 CALL wxios_add_field_to_file(var%name, 2, nid_files(iff), phys_out_filenames(iff), & 538 var%description, var%unit, var%flag(iff), typeecrit) 539 #endif 540 489 541 IF ( var%flag(iff)<=lev_files(iff) ) THEN 490 542 CALL histdef (nid_files(iff), var%name, var%description, var%unit, & … … 550 602 551 603 IF(.NOT.clef_stations(iff)) THEN 604 #ifdef CPP_XIOS 605 CALL wxios_add_field_to_file(var%name, 3, nid_files(iff), phys_out_filenames(iff), & 606 var%description, var%unit, var%flag(iff), typeecrit) 607 #endif 608 552 609 IF ( var%flag(iff)<=lev_files(iff) ) THEN 553 610 CALL histdef (nid_files(iff), var%name, var%description, var%unit, & … … 734 791 735 792 #ifdef CPP_XIOS 736 ! USE WXIOS 793 USE wxios 737 794 #endif 795 738 796 739 797 IMPLICIT NONE … … 794 852 CALL histwrite(nid_files(iff),var%name,itau_iophy,Field2d,iim*jj_nb,index2d) 795 853 #ifdef CPP_XIOS 796 ! IF (iff .EQ. 1) THEN797 !CALL wxios_write_2D(var%name, Field2d)798 !ENDIF854 IF (iff == iff_beg) THEN 855 CALL wxios_write_2D(var%name, Field2d) 856 ENDIF 799 857 #endif 800 858 ELSE … … 887 945 ALLOCATE(fieldok(iim*jj_nb,nlev)) 888 946 CALL histwrite(nid_files(iff),var%name,itau_iophy,Field3d,iim*jj_nb*nlev,index3d) 947 889 948 #ifdef CPP_XIOS 890 ! IF (iff .EQ.1) THEN891 !CALL wxios_write_3D(var%name, Field3d(:,:,1:klev))892 !ENDIF949 IF (iff == 1) THEN 950 CALL wxios_write_3D(var%name, Field3d(:,:,1:klev)) 951 ENDIF 893 952 #endif 894 953
Note: See TracChangeset
for help on using the changeset viewer.