Changeset 734 for XIOS/trunk/src
- Timestamp:
- 10/13/15 15:51:17 (9 years ago)
- Location:
- XIOS/trunk/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/node/domain.cpp
r731 r734 338 338 double latRange = lat_end - lat_start; 339 339 340 double lonStep = lonRange/double(ni_glo.getValue());341 double latStep = latRange/double(nj_glo.getValue());340 double lonStep = (1 == ni_glo.getValue()) ? lonRange : lonRange/double(ni_glo.getValue()-1); 341 double latStep = (1 == nj_glo.getValue()) ? latRange : latRange/double(nj_glo.getValue()-1); 342 342 343 343 // Assign lon value … … 423 423 int nbClient; 424 424 MPI_Comm_size(client->intraComm,&nbClient); 425 it->second->checkValid(this); 425 426 this->redistribute(nbClient); 426 427 break; -
XIOS/trunk/src/node/generate_rectilinear_domain.cpp
r727 r734 71 71 << "Define only one attribute: 'bounds_lat_start' or 'lat_start'."); 72 72 73 if (!bounds_lon_start.isEmpty() && !lat_start.isEmpty()) 74 ERROR("CGenerateRectilinearDomain::checkValid(CDomain* domainDst)", 75 << "[ id = " << this->getId() << " , context = '" << CObjectFactory::GetCurrentContextId() << " ] " 76 << "Only one latitude boundary attribute or latitude can be used but both 'bounds_lon_start' and 'lat_start' are defined." << std::endl 77 << "Define only one pair of attributes: ('bounds_lon_start' and 'bounds_lat_start') or ('lon_start' and 'lat_start')."); 78 79 if (!bounds_lat_start.isEmpty() && !lon_start.isEmpty()) 80 ERROR("CGenerateRectilinearDomain::checkValid(CDomain* domainDst)", 81 << "[ id = " << this->getId() << " , context = '" << CObjectFactory::GetCurrentContextId() << " ] " 82 << "Only one latitude boundary attribute or latitude can be used but both 'bounds_lat_start' and 'lon_start' are defined." << std::endl 83 << "Define only one pair of attributes: ('bounds_lon_start' and 'bounds_lat_start') or ('lon_start' and 'lat_start')."); 84 85 if (bounds_lon_start.isEmpty() && bounds_lat_start.isEmpty() && 86 lon_start.isEmpty() && lat_start.isEmpty()) 73 if (bounds_lon_start.isEmpty() && lon_start.isEmpty()) 87 74 { 88 75 bounds_lon_start.setValue(defaultBndsLonStart); 89 76 bounds_lon_end.setValue(defaultBndsLonEnd); 77 } 78 79 if (bounds_lat_start.isEmpty() && lat_start.isEmpty()) 80 { 90 81 bounds_lat_start.setValue(defaultBndsLatStart); 91 82 bounds_lat_end.setValue(defaultBndsLatEnd); … … 97 88 98 89 double boundsLonRange = bounds_lon_end - bounds_lon_start; 99 double boundsLonStep = boundsLonRange/ double(niGlo);90 double boundsLonStep = boundsLonRange/(double(niGlo)); 100 91 domainDst->bounds_lon_start = bounds_lon_start; 101 92 domainDst->bounds_lon_end = bounds_lon_end; … … 109 100 110 101 double boundsLatRange = bounds_lat_end - bounds_lat_start; 111 double boundsLatStep = boundsLatRange/ double(njGlo);102 double boundsLatStep = boundsLatRange/(double(njGlo)); 112 103 domainDst->bounds_lat_start = bounds_lat_start; 113 104 domainDst->bounds_lat_end = bounds_lat_end; … … 123 114 124 115 double lonRange = lon_end - lon_start; 125 double lonStep = lonRange/double(niGlo);116 double lonStep = (1 == niGlo) ? lonRange : lonRange/(double(niGlo)-1); 126 117 domainDst->lon_start = lon_start; 127 118 domainDst->lon_end = lon_end; … … 135 126 136 127 double latRange = lat_end - lat_start; 137 double latStep = latRange/double(njGlo);128 double latStep = (1 == njGlo) ? latRange : latRange/(double(njGlo)-1); 138 129 domainDst->lat_start = lat_start; 139 130 domainDst->lat_end = lat_end; -
XIOS/trunk/src/test/test_remap.f90
r721 r734 129 129 130 130 DO ts=1,1 131 !CALL xios_recv_field("src_field_regular", tmp_field)131 CALL xios_recv_field("src_field_regular", tmp_field) 132 132 CALL xios_update_calendar(ts) 133 133 CALL xios_send_field("src_field",src_field) 134 !CALL xios_send_field("tmp_field",tmp_field)134 CALL xios_send_field("tmp_field",tmp_field) 135 135 CALL wait_us(5000) ; 136 136 ENDDO -
XIOS/trunk/src/transformation/grid_transformation.cpp
r689 r734 54 54 CDomain* domain = CDomain::createDomain(); 55 55 domain->setAttributes(domainSrcTmp[idx]); 56 domain->solveInheritanceTransformation(); 56 57 domain->checkAttributesOnClient(); 57 58 domainSrc.push_back(domain);
Note: See TracChangeset
for help on using the changeset viewer.