Ignore:
Timestamp:
Jun 7, 2007, 12:01:52 PM (17 years ago)
Author:
Laurent Fairhead
Message:

Suite du merge entre la version et la HEAD: quelques modifications
de Yann sur le

LF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/trunk/libf/phylmd/oasis.psmile

    r766 r776  
    9494! Here we go: psmile initialisation
    9595!
    96     IF (monocpu) THEN
     96    IF (is_sequential) THEN
    9797      call prism_init_comp_proto (comp_id, clmodnam, ierror)
    9898
     
    116116!ym   ig_paral(3) = im * jm
    117117   ig_paral(1) = 1    ! apple partition for //
    118    ig_paral(2) = (jjphy_begin-1)*im+iiphy_begin-1
    119    ig_paral(3) = (jjphy_end*im+iiphy_end)-(jjphy_begin*im+iiphy_begin)+1
    120    if (phy_rank==phy_size-1) ig_paral(3)=ig_paral(3)+im-1
    121    print *,phy_rank,'ig_paral--->',ig_paral(2),ig_paral(3)
     118   ig_paral(2) = (jj_begin-1)*im+ii_begin-1
     119   ig_paral(3) = (jj_end*im+ii_end)-(jj_begin*im+ii_begin)+1
     120   if (mpi_rank==mpi_size-1) ig_paral(3)=ig_paral(3)+im-1
     121   print *,mpi_rank,'ig_paral--->',ig_paral(2),ig_paral(3)
    122122   
    123123   ierror=PRISM_Ok
     
    222222   use mod_prism_proto
    223223   use mod_prism_get_proto
    224    use dimphy
     224   USE dimphy
     225   USE mod_phys_lmdz_para
    225226   IMPLICIT none
    226227
     
    250251   CALL flush (nuout)
    251252
    252    istart=iiphy_begin
    253    if (phy_rank==phy_size-1) then
    254     iend=(jjphy_end-jjphy_begin)*im+im
     253   istart=ii_begin
     254   if (is_south_pole) then
     255    iend=(jj_end-jj_begin)*im+im
    255256   else
    256     iend=(jjphy_end-jjphy_begin)*im+iiphy_end
     257    iend=(jj_end-jj_begin)*im+ii_end
    257258   endif
    258259   
     
    313314   use mod_prism_proto
    314315   use mod_prism_put_proto
    315    use dimphy
     316   USE dimphy
     317   USE mod_phys_lmdz_para
    316318   use write_field_phy
    317319   IMPLICIT NONE
     
    345347      WRITE(nuout,*)
    346348
    347    istart=iiphy_begin
    348    if (phy_rank==phy_size-1) then
    349     iend=(jjphy_end-jjphy_begin)*im+im
     349   istart=ii_begin
     350   if (is_south_pole) then
     351    iend=(jj_end-jj_begin)*im+im
    350352   else
    351     iend=(jjphy_end-jjphy_begin)*im+iiphy_end
     353    iend=(jj_end-jj_begin)*im+ii_end
    352354   endif
    353355
     
    355357     wstart=istart
    356358     wend=iend
    357      IF (phy_rank==0) wstart=istart+im-1
    358      IF (phy_rank==phy_size-1) wend=iend-im+1
     359     IF (is_north_pole) wstart=istart+im-1
     360     IF (is_south_pole) wend=iend-im+1
    359361   
    360362     CALL writeField_phy("fsolice",fsolice(wstart:wend),1)
     
    533535
    534536   if (last) then
    535      IF (monocpu) THEN
     537     IF (is_sequential) THEN
    536538       call prism_terminate_proto(ierror)
    537539         IF (ierror .ne. PRISM_Ok) THEN
Note: See TracChangeset for help on using the changeset viewer.