Changeset 776 for LMDZ4/trunk/libf/phylmd/oasis.psmile
- Timestamp:
- Jun 7, 2007, 12:01:52 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
LMDZ4/trunk/libf/phylmd/oasis.psmile
r766 r776 94 94 ! Here we go: psmile initialisation 95 95 ! 96 IF ( monocpu) THEN96 IF (is_sequential) THEN 97 97 call prism_init_comp_proto (comp_id, clmodnam, ierror) 98 98 … … 116 116 !ym ig_paral(3) = im * jm 117 117 ig_paral(1) = 1 ! apple partition for // 118 ig_paral(2) = (jj phy_begin-1)*im+iiphy_begin-1119 ig_paral(3) = (jj phy_end*im+iiphy_end)-(jjphy_begin*im+iiphy_begin)+1120 if ( phy_rank==phy_size-1) ig_paral(3)=ig_paral(3)+im-1121 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) 122 122 123 123 ierror=PRISM_Ok … … 222 222 use mod_prism_proto 223 223 use mod_prism_get_proto 224 use dimphy 224 USE dimphy 225 USE mod_phys_lmdz_para 225 226 IMPLICIT none 226 227 … … 250 251 CALL flush (nuout) 251 252 252 istart=ii phy_begin253 if ( phy_rank==phy_size-1) then254 iend=(jj phy_end-jjphy_begin)*im+im253 istart=ii_begin 254 if (is_south_pole) then 255 iend=(jj_end-jj_begin)*im+im 255 256 else 256 iend=(jj phy_end-jjphy_begin)*im+iiphy_end257 iend=(jj_end-jj_begin)*im+ii_end 257 258 endif 258 259 … … 313 314 use mod_prism_proto 314 315 use mod_prism_put_proto 315 use dimphy 316 USE dimphy 317 USE mod_phys_lmdz_para 316 318 use write_field_phy 317 319 IMPLICIT NONE … … 345 347 WRITE(nuout,*) 346 348 347 istart=ii phy_begin348 if ( phy_rank==phy_size-1) then349 iend=(jj phy_end-jjphy_begin)*im+im349 istart=ii_begin 350 if (is_south_pole) then 351 iend=(jj_end-jj_begin)*im+im 350 352 else 351 iend=(jj phy_end-jjphy_begin)*im+iiphy_end353 iend=(jj_end-jj_begin)*im+ii_end 352 354 endif 353 355 … … 355 357 wstart=istart 356 358 wend=iend 357 IF ( phy_rank==0) wstart=istart+im-1358 IF ( phy_rank==phy_size-1) wend=iend-im+1359 IF (is_north_pole) wstart=istart+im-1 360 IF (is_south_pole) wend=iend-im+1 359 361 360 362 CALL writeField_phy("fsolice",fsolice(wstart:wend),1) … … 533 535 534 536 if (last) then 535 IF ( monocpu) THEN537 IF (is_sequential) THEN 536 538 call prism_terminate_proto(ierror) 537 539 IF (ierror .ne. PRISM_Ok) THEN
Note: See TracChangeset
for help on using the changeset viewer.