Ignore:
Timestamp:
02/09/18 15:37:13 (6 years ago)
Author:
ymipsl
Message:

Non Distributed transformation : Bug fix introduced in rev1420.

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/XIOS_DEV_CMIP6/src/transformation/generic_algorithm_transformation.cpp

    r1420 r1425  
    10381038                    vector<int>& localSrc, vector<int>& localDst, vector<double>& weight,  CArray<bool,1>& localMaskOnGridSrc, vector<bool>& localMaskOnGridDest ) 
    10391039{ 
     1040  int masked_ ; 
    10401041  if (currentPos!=elementPositionInGrid) 
    10411042  { 
     
    10461047      for(int i=0;i<nIndexSrc[currentPos];i++) 
    10471048      { 
    1048         if (!mask(i)) masked=false ; 
    1049         nonDistributedrecursiveFunct(currentPos-1, masked, elementPositionInGrid, maskSrc, maskDst, srcInd, srcIndCompressed, nIndexSrc, t, dstIndWeight, currentInd, localSrc, localDst, weight, localMaskOnGridSrc, localMaskOnGridDest) ; 
     1049        masked_=masked ; 
     1050        if (!mask(i)) masked_=false ; 
     1051        nonDistributedrecursiveFunct(currentPos-1, masked_, elementPositionInGrid, maskSrc, maskDst, srcInd, srcIndCompressed, nIndexSrc, t, dstIndWeight, currentInd, localSrc, localDst, weight, localMaskOnGridSrc, localMaskOnGridDest) ; 
    10501052      } 
    10511053    } 
     
    10701072              (it->first)++ ; 
    10711073            } 
    1072             if (localMaskOnGridSrc(srcInd)) srcIndCompressed ++ ; 
    10731074          } 
    10741075          if (t < dstIndWeight.size()-1) t++ ; 
     1076          if (localMaskOnGridSrc(srcInd)) srcIndCompressed ++ ; 
    10751077        } 
    10761078        srcInd++ ; 
     
    10881090      { 
    10891091        t=0 ; 
    1090         if (!mask(i)) masked=false ;  
    1091         nonDistributedrecursiveFunct(currentPos-1, masked, elementPositionInGrid, maskSrc, maskDst, srcInd, srcIndCompressed, nIndexSrc, t, dstIndWeight , i,  localSrc, localDst, weight, localMaskOnGridSrc, localMaskOnGridDest) ; 
     1092        masked_=masked ; 
     1093        if (!mask(i)) masked_=false ;  
     1094        nonDistributedrecursiveFunct(currentPos-1, masked_, elementPositionInGrid, maskSrc, maskDst, srcInd, srcIndCompressed, nIndexSrc, t, dstIndWeight , i,  localSrc, localDst, weight, localMaskOnGridSrc, localMaskOnGridDest) ; 
    10921095      } 
    10931096    } 
     
    11121115              (it->first)++ ; 
    11131116            } 
    1114             if (localMaskOnGridSrc(srcInd)) srcIndCompressed ++ ; 
    1115           } 
     1117           } 
    11161118          if (t < dstIndWeight.size()-1) t++ ; 
     1119          if (localMaskOnGridSrc(srcInd)) srcIndCompressed ++ ; 
    11171120        } 
    11181121        srcInd++ ; 
Note: See TracChangeset for help on using the changeset viewer.