Ignore:
Timestamp:
02/16/18 16:32:08 (6 years ago)
Author:
oabramkina
Message:

Adding new grid-related attributes.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/dev/XIOS_DEV_CMIP6/src/io/nc4_data_input.cpp

    r1428 r1430  
    185185*/ 
    186186    for (std::list<StdString>::const_iterator it = dimList.begin(); it != dimList.end(); ++it) 
    187       listDimSize.push_front(*dimSizeMap.find(*it)); 
     187    { 
     188      // It is not required any more for dimension name and lon/lat names to be the same (aka lon(lon)) 
     189      if (SuperClassWriter::isRectilinear(fieldId)) 
     190      { 
     191        StdString lonName =   SuperClassWriter::getLonCoordName(fieldId); 
     192        StdString latName =   SuperClassWriter::getLatCoordName(fieldId); 
     193        StdString dimLonName = SuperClassWriter::getDimensions(&lonName).begin()->first; 
     194        StdString dimLatName = SuperClassWriter::getDimensions(&latName).begin()->first; 
     195        if ((lonName != dimLonName) && (*it == dimLonName)) 
     196        { 
     197          StdSize dimSizeTmp = dimSizeMap.find(*it)->second; 
     198          listDimSize.push_front(make_pair(lonName, dimSizeTmp)); 
     199        } 
     200        else if ((latName != dimLatName) && (*it == dimLatName)) 
     201        { 
     202          StdSize dimSizeTmp = dimSizeMap.find(*it)->second; 
     203          listDimSize.push_front(make_pair(latName, dimSizeTmp)); 
     204        } 
     205        else 
     206          listDimSize.push_front(*dimSizeMap.find(*it)); 
     207      } 
     208      else 
     209        listDimSize.push_front(*dimSizeMap.find(*it)); 
     210 
     211    } 
    188212 
    189213    // Now process domain and axis 
Note: See TracChangeset for help on using the changeset viewer.