Changeset 1558 for XIOS


Ignore:
Timestamp:
07/12/18 17:22:39 (6 years ago)
Author:
oabramkina
Message:

Adding transformation "extract" for axis.

Location:
XIOS/trunk/src
Files:
5 added
15 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/config/node_type.conf

    r1549 r1558  
    111111#endif //__XIOS_CExtractDomain__ 
    112112 
     113#ifdef __XIOS_CExtractAxis__ 
     114   DECLARE_NODE(ExtractAxis, extract_axis) 
     115#endif //__XIOS_CExtractAxis__ 
     116 
    113117#ifdef __XIOS_CContext__ 
    114118   DECLARE_NODE_PAR(Context, context) 
  • XIOS/trunk/src/generate_fortran_interface.cpp

    r1549 r1558  
    4141  CZoomAxis zoomAxis; 
    4242  CInverseAxis inverseAxis; 
     43  CExtractAxis extractAxis; 
     44 
    4345  CReduceDomainToAxis reduceDomainToAxis; 
    4446  CReduceAxisToAxis reduceAxisToAxis; 
     
    360362  file.close(); 
    361363 
     364  file.open((path+"extract_axis_interface_attr.F90").c_str()); 
     365  extractAxis.generateFortran2003Interface(file); 
     366  file.close(); 
     367 
    362368  file.open((path+"icinverse_axis_attr.cpp").c_str()); 
    363369  inverseAxis.generateCInterface(file); 
  • XIOS/trunk/src/group_factory_decl.cpp

    r1549 r1558  
    2828  macro(CZoomAxisGroup) 
    2929  macro(CInterpolateAxisGroup) 
     30  macro(CExtractAxisGroup) 
    3031  macro(CZoomDomainGroup) 
    3132  macro(CInterpolateDomainGroup) 
  • XIOS/trunk/src/group_template_decl.cpp

    r1549 r1558  
    1717  macro(ZoomAxis) 
    1818  macro(InterpolateAxis) 
     19  macro(ExtractAxis) 
    1920  macro(ZoomDomain) 
    2021  macro(InterpolateDomain) 
  • XIOS/trunk/src/node/axis.cpp

    r1542 r1558  
    5151     m["zoom_axis"] = TRANS_ZOOM_AXIS; 
    5252     m["interpolate_axis"] = TRANS_INTERPOLATE_AXIS; 
     53     m["extract_axis"] = TRANS_EXTRACT_AXIS; 
    5354     m["inverse_axis"] = TRANS_INVERSE_AXIS; 
    5455     m["reduce_domain"] = TRANS_REDUCE_DOMAIN_TO_AXIS; 
  • XIOS/trunk/src/node/axis.hpp

    r1542 r1558  
    125125      public:  
    126126        bool hasValue;         
     127        bool hasBounds; 
     128        bool hasLabel; 
     129 
    127130        CArray<size_t,1> localIndexToWriteOnServer;         
    128131 
     
    173176         std::map<int, CArray<int, 1> > compressedIndexToWriteOnServer; 
    174177         std::map<int, std::vector<int> > connectedServerRank_; 
    175          bool hasBounds; 
    176          bool hasLabel;          
    177178         bool computedWrittenIndex_;                   
    178179 
  • XIOS/trunk/src/node/node_enum.hpp

    r1549 r1558  
    2323         eZoomAxis, 
    2424         eInterpolateAxis, 
     25         eExtractAxis, 
    2526         eZoomDomain, 
    2627         eInterpolateDomain, 
  • XIOS/trunk/src/node/node_type.hpp

    r1549 r1558  
    1313#include "zoom_axis.hpp" 
    1414#include "interpolate_axis.hpp" 
     15#include "extract_axis.hpp" 
    1516#include "zoom_domain.hpp" 
    1617#include "interpolate_domain.hpp" 
  • XIOS/trunk/src/node/transformation_enum.hpp

    r1549 r1558  
    2525        TRANS_REDUCE_SCALAR_TO_SCALAR = 16, 
    2626        TRANS_REORDER_DOMAIN = 17, 
    27         TRANS_EXTRACT_DOMAIN = 18 
     27        TRANS_EXTRACT_DOMAIN = 18, 
     28        TRANS_EXTRACT_AXIS = 19 
    2829      } ETranformationType; 
    2930 
  • XIOS/trunk/src/object_factory_decl.cpp

    r1549 r1558  
    2929  macro(CZoomAxis) 
    3030  macro(CInterpolateAxis) 
     31  macro(CExtractAxis) 
    3132  macro(CZoomDomain) 
    3233  macro(CInterpolateDomain) 
     
    5758  macro(CZoomAxisGroup) 
    5859  macro(CInterpolateAxisGroup) 
     60  macro(CExtractAxisGroup) 
    5961  macro(CZoomDomainGroup) 
    6062  macro(CInterpolateDomainGroup) 
  • XIOS/trunk/src/object_template_decl.cpp

    r1549 r1558  
    1616  template class CObjectTemplate<CZoomAxis>; 
    1717  template class CObjectTemplate<CInterpolateAxis>; 
     18  template class CObjectTemplate<CExtractAxis>; 
    1819  template class CObjectTemplate<CZoomDomain>; 
    1920  template class CObjectTemplate<CInterpolateDomain>; 
     
    4445  template class CObjectTemplate<CZoomAxisGroup>; 
    4546  template class CObjectTemplate<CInterpolateAxisGroup>; 
     47  template class CObjectTemplate<CExtractAxisGroup>; 
    4648  template class CObjectTemplate<CZoomDomainGroup>; 
    4749  template class CObjectTemplate<CInterpolateDomainGroup>; 
  • XIOS/trunk/src/transformation/algo_types.hpp

    r1549 r1558  
    1717#include "axis_algorithm_zoom.hpp" 
    1818#include "axis_algorithm_interpolate.hpp" 
     19#include "axis_algorithm_extract.hpp" 
    1920#include "axis_algorithm_reduce_domain.hpp" 
    2021#include "axis_algorithm_reduce_axis.hpp" 
  • XIOS/trunk/src/transformation/grid_transformation_selector.cpp

    r1549 r1558  
    2828  CAxisAlgorithmExtractDomain::registerTrans(); 
    2929  CAxisAlgorithmInterpolate::registerTrans(); 
     30  CAxisAlgorithmExtract::registerTrans(); 
    3031  CAxisAlgorithmInverse::registerTrans(); 
    3132  CAxisAlgorithmReduceDomain::registerTrans(); 
  • XIOS/trunk/src/type/type_util.hpp

    r1549 r1558  
    2626    class CInterpolateAxis; 
    2727    class CInterpolateAxisGroup; 
     28    class CExtractAxis; 
     29    class CExtractAxisGroup; 
    2830    class CZoomDomain; 
    2931    class CZoomDomainGroup; 
     
    102104  macro(CInterpolateAxis) 
    103105  macro(CInterpolateAxisGroup) 
     106  macro(CExtractAxis) 
     107  macro(CExtractAxisGroup) 
    104108  macro(CZoomDomain) 
    105109  macro(CZoomDomainGroup) 
  • XIOS/trunk/src/xml_parser_decl.cpp

    r1549 r1558  
    2222    macro( ZoomAxis ) 
    2323    macro( InterpolateAxis ) 
     24    macro( ExtractAxis ) 
    2425    macro( ZoomDomain ) 
    2526    macro( InterpolateDomain ) 
Note: See TracChangeset for help on using the changeset viewer.