Ignore:
Timestamp:
05/03/17 16:42:22 (7 years ago)
Author:
yushan
Message:

bug corrected in MPI_Gatherv

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_yushan/src/test/test_complete_omp.f90

    r1109 r1115  
    181181!!! Initialisation des coordonnes globales et locales pour la grille indexee (1 point sur 2) 
    182182 
    183     nb_pt=ni*nj/2 
    184     ALLOCATE(kindex(nb_pt),field_A_srf(nb_pt,llm)) 
    185     DO i=1,nb_pt 
    186       kindex(i)=2*i-1 
    187     ENDDO 
    188     field_A_srf(1:nb_pt,:)=RESHAPE(field_A_glo(ibegin+1:iend+1:2,jbegin+1:jend+1,:),(/ nb_pt,llm /)) 
    189  
    190   CALL xios_context_initialize("surface",comm) 
    191  
    192   CALL xios_get_handle("surface",ctx_hdl) 
    193   CALL xios_set_current_context(ctx_hdl) 
    194  
    195   CALL xios_define_calendar(type="Gregorian", & 
    196                             start_date=xios_date(2000, 01, 01, 00, 00, 00), & 
    197                             time_origin=xios_date(1999, 01, 01, 15, 00, 00)) 
    198  
    199   CALL xios_set_axis_attr("axis_srf",n_glo=llm ,value=lval) 
    200   CALL xios_set_domain_attr("domain_srf",ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, ni=ni,jbegin=jbegin,nj=nj, type='curvilinear') 
    201   CALL xios_set_domain_attr("domain_srf",data_dim=1, data_ibegin=0, data_ni=nb_pt) 
    202   CALL xios_set_domain_attr("domain_srf",data_i_index=kindex) 
    203   CALL xios_set_domain_attr("domain_srf",lonvalue_2D=lon,latvalue_2D=lat) 
     183!    nb_pt=ni*nj/2 
     184!    ALLOCATE(kindex(nb_pt),field_A_srf(nb_pt,llm)) 
     185!    DO i=1,nb_pt 
     186!      kindex(i)=2*i-1 
     187!    ENDDO 
     188!    field_A_srf(1:nb_pt,:)=RESHAPE(field_A_glo(ibegin+1:iend+1:2,jbegin+1:jend+1,:),(/ nb_pt,llm /)) 
     189 
     190!  CALL xios_context_initialize("surface",comm) 
     191 
     192!  CALL xios_get_handle("surface",ctx_hdl) 
     193!  CALL xios_set_current_context(ctx_hdl) 
     194 
     195!  CALL xios_define_calendar(type="Gregorian", & 
     196!                            start_date=xios_date(2000, 01, 01, 00, 00, 00), & 
     197!                            time_origin=xios_date(1999, 01, 01, 15, 00, 00)) 
     198 
     199!  CALL xios_set_axis_attr("axis_srf",n_glo=llm ,value=lval) 
     200!  CALL xios_set_domain_attr("domain_srf",ni_glo=ni_glo, nj_glo=nj_glo, ibegin=ibegin, ni=ni,jbegin=jbegin,nj=nj, type='curvilinear') 
     201!  CALL xios_set_domain_attr("domain_srf",data_dim=1, data_ibegin=0, data_ni=nb_pt) 
     202!  CALL xios_set_domain_attr("domain_srf",data_i_index=kindex) 
     203!  CALL xios_set_domain_attr("domain_srf",lonvalue_2D=lon,latvalue_2D=lat) 
    204204 
    205205!!! Cration d un nouveau champ 
    206206 
    207   CALL xios_get_handle("field_definition",fieldgroup_hdl) 
    208   CALL xios_add_child(fieldgroup_hdl,field_hdl,"field_B_srf") 
     207 ! CALL xios_get_handle("field_definition",fieldgroup_hdl) 
     208!  CALL xios_add_child(fieldgroup_hdl,field_hdl,"field_B_srf") 
    209209 
    210210!!! Heritage des attributs d un autre champ 
    211211 
    212   CALL xios_set_attr(field_hdl,field_ref="field_A_srf",name="field_B_srf") 
     212!  CALL xios_set_attr(field_hdl,field_ref="field_A_srf",name="field_B_srf") 
    213213 
    214214!!! Affectation de ce nouveau champ au fichier avec un nouveau nom 
    215215 
    216   CALL xios_get_handle("output_surface",file_hdl) 
    217   CALL xios_add_child(file_hdl,field_hdl) 
    218   CALL xios_set_attr(field_hdl,field_ref="field_B_srf",name="field_C_srf") 
     216!  CALL xios_get_handle("output_surface",file_hdl) 
     217!  CALL xios_add_child(file_hdl,field_hdl) 
     218!  CALL xios_set_attr(field_hdl,field_ref="field_B_srf",name="field_C_srf") 
    219219 
    220220!!! Definition du timestep 
    221221 
    222   dtime%second=1800 
    223   CALL xios_set_timestep(timestep=dtime) 
     222!  dtime%second=1800 
     223!  CALL xios_set_timestep(timestep=dtime) 
    224224 
    225225!!! Recupration des valeurs des longitudes et de taille des domaines locaux (pour test de fonctionnalit) 
    226226 
    227   ni=0 ; lonvalue(:,:)=0 
    228   CALL xios_get_domain_attr("domain_srf",ni=ni,lonvalue_2D=lonvalue) 
     227!  ni=0 ; lonvalue(:,:)=0 
     228!  CALL xios_get_domain_attr("domain_srf",ni=ni,lonvalue_2D=lonvalue) 
    229229 
    230230  !PRINT *,"ni",ni 
     
    233233!!! Fin de la definition du contexte SRF 
    234234 
    235   CALL xios_close_context_definition() 
    236  
    237   print *, "xios_close_context_definition(surface)"  
     235!  CALL xios_close_context_definition() 
     236 
     237!  print *, "xios_close_context_definition(surface)"  
    238238 
    239239 
     
    242242!#################################################################################### 
    243243 
    244     DO ts=1,24*10 
    245     !DO ts=1,24 
    246  
    247       CALL xios_get_handle("atmosphere",ctx_hdl) 
    248       CALL xios_set_current_context(ctx_hdl) 
     244    !DO ts=1,24*10 
     245    DO ts=1,24 
     246 
     247      !CALL xios_get_handle("atmosphere",ctx_hdl) 
     248      !CALL xios_set_current_context(ctx_hdl) 
    249249 
    250250!!! Mise a jour du pas de temps 
     
    258258!!! On change de contexte 
    259259 
    260       CALL xios_get_handle("surface",ctx_hdl) 
    261       CALL xios_set_current_context(ctx_hdl) 
     260!      CALL xios_get_handle("surface",ctx_hdl) 
     261!      CALL xios_set_current_context(ctx_hdl) 
    262262 
    263263!!! Mise a jour du pas de temps 
    264264 
    265       CALL xios_update_calendar(ts) 
     265 !     CALL xios_update_calendar(ts) 
    266266 
    267267!!! On donne la valeur du champ srf 
    268268 
    269       CALL xios_send_field("field_A_srf",field_A_srf) 
     269 !     CALL xios_send_field("field_A_srf",field_A_srf) 
    270270 
    271271      CALL wait_us(5000) ; 
     
    283283 
    284284 
    285     CALL xios_get_handle("surface",ctx_hdl)  
    286  
    287     CALL xios_set_current_context(ctx_hdl) 
    288  
    289     CALL xios_context_finalize() 
    290  
    291     print *, "xios_context_finalize(surface)"  
    292  
    293      CALL xios_get_handle("atmosphere",ctx_hdl) 
    294  
    295      CALL xios_set_current_context(ctx_hdl) 
     285!    CALL xios_get_handle("surface",ctx_hdl)  
     286 
     287!    CALL xios_set_current_context(ctx_hdl) 
     288 
     289!    CALL xios_context_finalize() 
     290 
     291!    print *, "xios_context_finalize(surface)"  
     292 
     293     !CALL xios_get_handle("atmosphere",ctx_hdl) 
     294 
     295     !CALL xios_set_current_context(ctx_hdl) 
    296296 
    297297     CALL xios_context_finalize() 
     
    308308 
    309309    DEALLOCATE(lon, lat, field_A_atm, lonvalue) 
    310     DEALLOCATE(kindex, field_A_srf) 
     310!    DEALLOCATE(kindex, field_A_srf) 
    311311 
    312312     print *, "Client : xios_finalize " 
Note: See TracChangeset for help on using the changeset viewer.