Ignore:
Timestamp:
06/06/17 15:52:13 (7 years ago)
Author:
yushan
Message:

branch merged with trunk @1155

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/branch_yushan_merged/src/io/nc4_data_output.cpp

    r1138 r1156  
    1111#include "netCdfException.hpp" 
    1212#include "exception.hpp" 
     13#include "timer.hpp" 
    1314#include "uuid.hpp" 
    1415// mpi.hpp 
     
    18331834         singleDomain = (file->nbDomains == 1); 
    18341835 
     1836         StdString conv_str ; 
     1837         if (file->convention_str.isEmpty()) 
     1838         { 
     1839            if (SuperClassWriter::useCFConvention) conv_str="CF-1.6" ; 
     1840            else conv_str="UGRID" ; 
     1841         } 
     1842         else conv_str=file->convention_str ; 
     1843            
    18351844         try 
    18361845         { 
    1837        if (SuperClassWriter::useCFConvention) 
    1838              this->writeFileAttributes(filename, description, 
    1839                                        StdString("CF-1.6"), 
    1840                                        StdString("An IPSL model"), 
    1841                                        this->getTimeStamp()); 
    1842            else 
    1843              this->writeFileAttributes(filename, description, 
    1844                                        StdString("UGRID"), 
    1845                                        StdString("An IPSL model"), 
    1846                                        this->getTimeStamp()); 
    1847  
     1846           this->writeFileAttributes(filename, description, 
     1847                                      conv_str, 
     1848                                      StdString("An IPSL model"), 
     1849                                      this->getTimeStamp()); 
    18481850 
    18491851           if (!appendMode) 
     
    19901992        CGrid* grid = field->grid; 
    19911993 
    1992         if (field->getNStep()<1) return ; 
     1994        if (field->getNStep()<1)  
     1995        { 
     1996          return; 
     1997        } 
    19931998         
    19941999        if (!grid->doGridHaveDataToWrite()) 
    1995           if (SuperClass::type == MULTI_FILE || !isCollective) return; 
    1996  
     2000          if (SuperClass::type == MULTI_FILE || !isCollective) 
     2001          { 
     2002            return; 
     2003          } 
     2004 
     2005           
    19972006        StdString fieldid = field->getFieldOutputName(); 
    19982007 
     
    21192128              case (MULTI_FILE) : 
    21202129              { 
     2130                 CTimer::get("Files : writing data").resume(); 
    21212131                 SuperClassWriter::writeData(fieldData, fieldid, isCollective, field->getNStep() - 1); 
     2132                 CTimer::get("Files : writing data").suspend(); 
    21222133                 if (wtime) 
    21232134                 { 
     2135                   CTimer::get("Files : writing time axis").resume(); 
    21242136                   if ( wtimeData) 
    21252137                   { 
    2126                      SuperClassWriter::writeData(time_data, timeAxisId, isCollective, field->getNStep() - 1); 
    2127                      SuperClassWriter::writeData(time_data_bound, timeAxisBoundId, isCollective, field->getNStep() - 1); 
    2128                    } 
     2138//                     SuperClassWriter::writeData(time_data, timeAxisId, isCollective, field->getNStep() - 1); 
     2139//                     SuperClassWriter::writeData(time_data_bound, timeAxisBoundId, isCollective, field->getNStep() - 1); 
     2140                       SuperClassWriter::writeTimeAxisData(time_data, timeAxisId, isCollective, field->getNStep() - 1, isRoot); 
     2141                       SuperClassWriter::writeTimeAxisDataBounds(time_data_bound, timeAxisBoundId, isCollective, field->getNStep() - 1, isRoot); 
     2142                  } 
    21292143                   if (wtimeCounter) 
    21302144                   { 
    2131                      SuperClassWriter::writeData(time_counter, getTimeCounterName(), isCollective, field->getNStep() - 1); 
    2132                      if (timeCounterType!=record) SuperClassWriter::writeData(time_counter_bound, timeBoundId, isCollective, field->getNStep() - 1); 
     2145//                     SuperClassWriter::writeData(time_counter, getTimeCounterName(), isCollective, field->getNStep() - 1); 
     2146//                     if (timeCounterType!=record) SuperClassWriter::writeData(time_counter_bound, timeBoundId, isCollective, field->getNStep() - 1); 
     2147                     SuperClassWriter::writeTimeAxisData(time_counter, getTimeCounterName(), isCollective, field->getNStep() - 1,isRoot); 
     2148                     if (timeCounterType!=record) SuperClassWriter::writeTimeAxisDataBounds(time_counter_bound, timeBoundId, isCollective, field->getNStep() - 1, isRoot); 
    21332149                   } 
     2150                   CTimer::get("Files : writing time axis").suspend(); 
    21342151                 } 
    21352152                 break; 
     
    22572274                } 
    22582275 
     2276 
     2277                CTimer::get("Files : writing data").resume(); 
    22592278                SuperClassWriter::writeData(fieldData, fieldid, isCollective, field->getNStep() - 1, &start, &count); 
     2279                CTimer::get("Files : writing data").suspend(); 
     2280 
    22602281                 if (wtime) 
    22612282                 { 
     2283                   CTimer::get("Files : writing time axis").resume(); 
    22622284                   if ( wtimeData) 
    22632285                   { 
    2264                      SuperClassWriter::writeData(time_data, timeAxisId, isCollective, field->getNStep() - 1); 
    2265                      SuperClassWriter::writeData(time_data_bound, timeAxisBoundId, isCollective, field->getNStep() - 1); 
     2286//                     SuperClassWriter::writeData(time_data, timeAxisId, isCollective, field->getNStep() - 1); 
     2287//                     SuperClassWriter::writeData(time_data_bound, timeAxisBoundId, isCollective, field->getNStep() - 1); 
     2288                     SuperClassWriter::writeTimeAxisData(time_data, timeAxisId, isCollective, field->getNStep() - 1, isRoot); 
     2289                     SuperClassWriter::writeTimeAxisDataBounds(time_data_bound, timeAxisBoundId, isCollective, field->getNStep() - 1, isRoot); 
    22662290                   } 
    22672291                   if (wtimeCounter) 
    22682292                   { 
    2269                      SuperClassWriter::writeData(time_counter, getTimeCounterName(), isCollective, field->getNStep() - 1); 
    2270                      if (timeCounterType!=record) SuperClassWriter::writeData(time_counter_bound, timeBoundId, isCollective, field->getNStep() - 1); 
     2293//                     SuperClassWriter::writeData(time_counter, getTimeCounterName(), isCollective, field->getNStep() - 1); 
     2294//                     if (timeCounterType!=record) SuperClassWriter::writeData(time_counter_bound, timeBoundId, isCollective, field->getNStep() - 1); 
     2295                     SuperClassWriter::writeTimeAxisData(time_counter, getTimeCounterName(), isCollective, field->getNStep() - 1,isRoot); 
     2296                     if (timeCounterType!=record) SuperClassWriter::writeTimeAxisDataBounds(time_counter_bound, timeBoundId, isCollective, field->getNStep() - 1, isRoot); 
     2297 
    22712298                   } 
     2299                   CTimer::get("Files : writing time axis").suspend();   
    22722300                 } 
    22732301 
Note: See TracChangeset for help on using the changeset viewer.