Changeset 1244


Ignore:
Timestamp:
Oct 31, 2013 8:16:56 AM (8 years ago)
Author:
raasch
Message:

bugfix for index bounds in case of 3d-parallel output

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/data_output_3d.f90

    r1116 r1244  
    2020! Current revisions:
    2121! ------------------
    22 !
     22! Bugfix for index bounds in case of 3d-parallel output
    2323!
    2424! Former revisions:
     
    560560                IF ( nxr == nx  .AND.  nyn /= ny )  THEN
    561561                   nc_stat = NF90_PUT_VAR( id_set_3d(av), id_var_do3d(av,if), &
    562                                   local_pf(nxl:nxrg,nys:nyn,nzb:nz_do3d),    &
     562                                     local_pf(nxl:nxr+1,nys:nyn,nzb:nz_do3d), &
    563563                      start = (/ nxl+1, nys+1, nzb+1, do3d_time_count(av) /), &
    564                       count = (/ nxr-nxl+1+nbgp, nyn-nys+1, nz_do3d-nzb+1, 1 /) )
     564                      count = (/ nxr-nxl+2, nyn-nys+1, nz_do3d-nzb+1, 1 /) )
    565565                ELSEIF ( nxr /= nx  .AND.  nyn == ny )  THEN
    566566                   nc_stat = NF90_PUT_VAR( id_set_3d(av), id_var_do3d(av,if), &
    567                                   local_pf(nxl:nxr,nys:nyng,nzb:nz_do3d),    &
     567                                     local_pf(nxl:nxr,nys:nyn+1,nzb:nz_do3d), &
    568568                      start = (/ nxl+1, nys+1, nzb+1, do3d_time_count(av) /), &
    569                       count = (/ nxr-nxl+1, nyn-nys+1+nbgp, nz_do3d-nzb+1, 1 /) )
     569                      count = (/ nxr-nxl+1, nyn-nys+2, nz_do3d-nzb+1, 1 /) )
    570570                ELSEIF ( nxr == nx  .AND.  nyn == ny )  THEN
    571571                   nc_stat = NF90_PUT_VAR( id_set_3d(av), id_var_do3d(av,if), &
    572                                   local_pf(nxl:nxrg,nys:nyng,nzb:nz_do3d), &
     572                                   local_pf(nxl:nxr+1,nys:nyn+1,nzb:nz_do3d), &
    573573                      start = (/ nxl+1, nys+1, nzb+1, do3d_time_count(av) /), &
    574                       count = (/ nxr-nxl+1+nbgp, nyn-nys+1+nbgp, nz_do3d-nzb+1, 1 /) )
     574                      count = (/ nxr-nxl+2, nyn-nys+2, nz_do3d-nzb+1, 1 /) )
    575575                ELSE
    576576                   nc_stat = NF90_PUT_VAR( id_set_3d(av), id_var_do3d(av,if), &
    577                                   local_pf(nxl:nxr,nys:nyn,nzb:nz_do3d),      &
     577                                       local_pf(nxl:nxr,nys:nyn,nzb:nz_do3d), &
    578578                      start = (/ nxl+1, nys+1, nzb+1, do3d_time_count(av) /), &
    579579                      count = (/ nxr-nxl+1, nyn-nys+1, nz_do3d-nzb+1, 1 /) )
Note: See TracChangeset for help on using the changeset viewer.