Changeset 1938 for XIOS/dev/dev_ym/XIOS_COUPLING/src/node
- Timestamp:
- 09/22/20 16:28:47 (4 years ago)
- Location:
- XIOS/dev/dev_ym/XIOS_COUPLING/src/node
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/dev_ym/XIOS_COUPLING/src/node/axis.cpp
r1934 r1938 1840 1840 gathererConnector_->transfer(event, 2, value, 0.); 1841 1841 bounds.resize(2,n) ; 1842 bounds=CArray<double,2>(bounds.dataFirst(),shape(2,n),neverDeleteData) ;1842 if (bounds.numElements() > 0 ) bounds=CArray<double,2>(bounds.dataFirst(),shape(2,n),neverDeleteData) ; 1843 1843 } 1844 1844 else if (type=="label") -
XIOS/dev/dev_ym/XIOS_COUPLING/src/node/domain.cpp
r1934 r1938 2275 2275 for(int rank : ranks) vectGlobalIndex[rank].push_back(index) ; 2276 2276 } 2277 for(auto& vect : vectGlobalIndex ) globalIndex.emplace(vect.first, CArray<size_t,1>(vect.second.data(), shape(vect.second.size()),duplicateData)) ; 2277 for(auto& vect : vectGlobalIndex ) globalIndex.emplace(vect.first, CArray<size_t,1>(vect.second.data(), shape(vect.second.size()),duplicateData)) ; 2278 // some servers receves no index (zeroIndex array) => root process take them into account. 2279 if (context->getIntraCommRank()==0) 2280 for(auto& rank : zeroIndex) globalIndex[rank] = CArray<size_t,1>() ; 2278 2281 } 2279 2282 else if (type==EDistributionType::NONE) // domain is not distributed ie all servers get the same local domain … … 2500 2503 gathererConnector_->transfer(event, value, 0.); 2501 2504 lonvalue_2d.resize(ni,nj) ; 2502 lonvalue_2d=CArray<double,2>(value.dataFirst(),shape(ni,nj),neverDeleteData) ;2505 if (lonvalue_2d.numElements()>0) lonvalue_2d=CArray<double,2>(value.dataFirst(),shape(ni,nj),neverDeleteData) ; 2503 2506 } 2504 2507 else if (type=="lat") … … 2507 2510 gathererConnector_->transfer(event, value, 0.); 2508 2511 latvalue_2d.resize(ni,nj) ; 2509 latvalue_2d=CArray<double,2>(value.dataFirst(),shape(ni,nj),neverDeleteData) ;2512 if (latvalue_2d.numElements()>0) latvalue_2d=CArray<double,2>(value.dataFirst(),shape(ni,nj),neverDeleteData) ; 2510 2513 } 2511 2514 else if (type=="boundslon") … … 2514 2517 gathererConnector_->transfer(event, nvertex, value, 0.); 2515 2518 bounds_lon_2d.resize(nvertex,ni,nj) ; 2516 bounds_lon_2d=CArray<double,3>(value.dataFirst(),shape(nvertex,ni,nj),neverDeleteData) ;2519 if (bounds_lon_2d.numElements()>0) bounds_lon_2d=CArray<double,3>(value.dataFirst(),shape(nvertex,ni,nj),neverDeleteData) ; 2517 2520 } 2518 2521 else if (type=="boundslat") … … 2521 2524 gathererConnector_->transfer(event, nvertex, value, 0.); 2522 2525 bounds_lat_2d.resize(nvertex,ni,nj) ; 2523 bounds_lat_2d=CArray<double,3>(value.dataFirst(),shape(nvertex,ni,nj),neverDeleteData) ;2526 if (bounds_lat_2d.numElements()>0) bounds_lat_2d=CArray<double,3>(value.dataFirst(),shape(nvertex,ni,nj),neverDeleteData) ; 2524 2527 } 2525 2528 else if (type=="area") … … 2528 2531 gathererConnector_->transfer(event, value, 0.); 2529 2532 area.resize(ni,nj) ; 2530 area=CArray<double,2>(value.dataFirst(),shape(ni,nj),neverDeleteData) ;2533 if (area.numElements()>0) area=CArray<double,2>(value.dataFirst(),shape(ni,nj),neverDeleteData) ; 2531 2534 } 2532 2535 } -
XIOS/dev/dev_ym/XIOS_COUPLING/src/node/grid.cpp
r1934 r1938 2668 2668 } 2669 2669 } 2670 CGridRemoteConnector gridRemoteConnector(localViews, remoteViews, context->getIntraComm() ) ;2670 CGridRemoteConnector gridRemoteConnector(localViews, remoteViews, context->getIntraComm(), client->getRemoteSize()) ; 2671 2671 gridRemoteConnector.computeConnector() ; 2672 2672 … … 2754 2754 } 2755 2755 } 2756 CGridRemoteConnector gridRemoteConnector(localViews, remoteViews, context->getIntraComm() ) ;2756 CGridRemoteConnector gridRemoteConnector(localViews, remoteViews, context->getIntraComm(), client->getRemoteSize()) ; 2757 2757 gridRemoteConnector.computeConnector() ; 2758 2758
Note: See TracChangeset
for help on using the changeset viewer.