Changeset 614 for XIOS/trunk/src/output/nc4_data_output.cpp
- Timestamp:
- 06/11/15 10:30:11 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/output/nc4_data_output.cpp
r613 r614 215 215 { 216 216 SuperClassWriter::addVariable(areaId, NC_FLOAT, dim0); 217 SuperClassWriter::addAttribute("standard_name", StdString("cell_area"), &areaId); 217 218 SuperClassWriter::addAttribute("units", StdString("m2"), &areaId); 218 219 } … … 271 272 dim0.push_back(dimYid); dim0.push_back(dimXid); 272 273 SuperClassWriter::addVariable(areaId, NC_FLOAT, dim0); 274 SuperClassWriter::addAttribute("standard_name", StdString("cell_area"), &areaId); 273 275 SuperClassWriter::addAttribute("units", StdString("m2"), &areaId); 274 276 dim0.clear(); … … 433 435 { 434 436 SuperClassWriter::addVariable(areaId, NC_FLOAT, dim0); 437 SuperClassWriter::addAttribute("standard_name", StdString("cell_area"), &areaId); 435 438 SuperClassWriter::addAttribute("units", StdString("m2"), &areaId); 436 439 } … … 484 487 dim0.push_back(dimXid); 485 488 SuperClassWriter::addVariable(areaId, NC_FLOAT, dim0); 489 SuperClassWriter::addAttribute("standard_name", StdString("cell_area"), &areaId); 486 490 SuperClassWriter::addAttribute("units", StdString("m2"), &areaId); 487 491 } … … 640 644 { 641 645 SuperClassWriter::addDimension("time_counter"); 642 SuperClassWriter::addDimension("time_bounds", 2);643 646 } 644 647 catch (CNetCdfException& e) 645 648 { 646 StdString msg("On writing time dimension : time_couter , time_bounds\n");649 StdString msg("On writing time dimension : time_couter\n"); 647 650 msg.append("In the context : "); 648 651 CContext* context = CContext::getCurrent() ; … … 818 821 if (wtime) 819 822 { 820 CDuration duration= field->freq_op.getValue();821 duration.solveTimeStep(*context->calendar);822 StdString freqOpStr = duration.toStringUDUnits();823 CDuration freqOp = field->freq_op.getValue(); 824 freqOp.solveTimeStep(*context->calendar); 825 StdString freqOpStr = freqOp.toStringUDUnits(); 823 826 SuperClassWriter::addAttribute("interval_operation", freqOpStr, &fieldid); 824 827 825 duration= field->getRelFile()->output_freq.getValue();826 duration.solveTimeStep(*context->calendar);827 SuperClassWriter::addAttribute("interval_write", duration.toStringUDUnits(), &fieldid);828 CDuration freqOut = field->getRelFile()->output_freq.getValue(); 829 freqOut.solveTimeStep(*context->calendar); 830 SuperClassWriter::addAttribute("interval_write", freqOut.toStringUDUnits(), &fieldid); 828 831 829 832 StdString cellMethods = coodinates.front() + ": "; … … 832 835 else if (field->operation.getValue() == "accumulate") cellMethods += "sum"; 833 836 else cellMethods += field->operation; 834 cellMethods += " (interval: " + freqOpStr + ")"; 837 if (freqOp.resolve(*context->calendar) != freqOut.resolve(*context->calendar)) 838 cellMethods += " (interval: " + freqOpStr + ")"; 835 839 SuperClassWriter::addAttribute("cell_methods", cellMethods, &fieldid); 836 840 } … … 1100 1104 { 1101 1105 this->writeFileAttributes(filename, description, 1102 StdString("CF-1. 1"),1106 StdString("CF-1.5"), 1103 1107 StdString("An IPSL model"), 1104 1108 this->getTimeStamp()); 1105 1109 1106 if (file->nbAxis >= 1) 1107 SuperClassWriter::addDimension("axis_nbounds", 2); 1110 SuperClassWriter::addDimension("axis_nbounds", 2); 1108 1111 } 1109 1112 catch (CNetCdfException& e) … … 1569 1572 StdString axisBoundId("time_centered_bounds"); 1570 1573 StdString timeid("time_counter"); 1571 StdString timeBoundId(" time_bounds");1574 StdString timeBoundId("axis_nbounds"); 1572 1575 1573 1576 if (field->foperation->timeType() == func::CFunctor::instant)
Note: See TracChangeset
for help on using the changeset viewer.