Changeset 2460


Ignore:
Timestamp:
01/26/23 16:14:49 (17 months ago)
Author:
ymipsl
Message:

Squeletton to had new transformations : redistribute_domain, redistribute_axis, redistribute_scalar

YM

Location:
XIOS3/dev/XIOS_ATTACHED/src
Files:
15 added
14 edited

Legend:

Unmodified
Added
Removed
  • XIOS3/dev/XIOS_ATTACHED/src/config/node_type.conf

    r2458 r2460  
    132132#endif //__XIOS_CServiceNode__ 
    133133 
     134#ifdef __XIOS_CRedistributeDomain__ 
     135   DECLARE_NODE(RedistributeDomain, redistribute_domain) 
     136#endif //__XIOS_CRedistributeDomain__ 
     137 
     138#ifdef __XIOS_CRedistributeAxis__ 
     139   DECLARE_NODE(RedistributeAxis, redistribute_axis) 
     140#endif //__XIOS_CRedistributeAxis__ 
     141 
     142#ifdef __XIOS_CRedistributeScalar__ 
     143   DECLARE_NODE(RedistributeScalar, redistribute_scalar) 
     144#endif //__XIOS_CRedistributeScalar__ 
     145 
    134146#ifdef __XIOS_CContext__ 
    135147   DECLARE_NODE_PAR(Context, context) 
  • XIOS3/dev/XIOS_ATTACHED/src/generate_fortran_interface.cpp

    r2338 r2460  
    5353  CDuplicateScalarToAxis duplicateScalarToAxis; 
    5454  CReduceScalarToScalar reduceScalarToScalar; 
     55 
     56  CRedistributeDomain redistributeDomain ; 
     57  CRedistributeAxis   redistributeAxis ; 
     58  CRedistributeScalar redistributeScalar ; 
    5559   
    5660  ostringstream oss; 
     
    329333  file.open((path+"ireorder_domain_attr.F90").c_str()); 
    330334  reorderDomain.generateFortranInterface(file); 
     335  file.close(); 
     336 
     337  file.open((path+"iredistribute_domain_attr.F90").c_str()); 
     338  redistributeDomain.generateFortranInterface(file); 
    331339  file.close(); 
    332340   
     
    410418  file.close(); 
    411419 
    412  
    413420  file.open((path+"temporal_splitting_interface_attr.F90").c_str()); 
    414421  temporalSplitting.generateFortran2003Interface(file); 
     
    435442  duplicateScalarToAxis.generateFortranInterface(file); 
    436443  file.close(); 
     444 
     445  file.open((path+"iredistribute_axis_attr.F90").c_str()); 
     446  redistributeAxis.generateFortranInterface(file); 
     447  file.close(); 
     448 
    437449  /*! 
    438450    Scalar transformations 
     
    488500  file.close(); 
    489501 
     502  file.open((path+"iredistribute_scalar_attr.F90").c_str()); 
     503  redistributeScalar.generateFortranInterface(file); 
     504  file.close(); 
    490505 
    491506 
  • XIOS3/dev/XIOS_ATTACHED/src/group_factory_decl.cpp

    r2458 r2460  
    5050  macro(CPoolNodeGroup) 
    5151  macro(CServiceNodeGroup) 
     52  macro(CRedistributeDomainGroup) 
     53  macro(CRedistributeAxisGroup) 
     54  macro(CRedistributeScalarGroup) 
    5255 
    5356} 
  • XIOS3/dev/XIOS_ATTACHED/src/group_template_decl.cpp

    r2458 r2460  
    3939  macro(PoolNode) 
    4040  macro(ServiceNode) 
     41  macro(RedistributeDomain) 
     42  macro(RedistributeAxis) 
     43  macro(RedistributeScalar) 
    4144 
    4245} 
  • XIOS3/dev/XIOS_ATTACHED/src/node/node_enum.hpp

    r2458 r2460  
    4545         ePoolNode,gPoolNode, 
    4646         eServiceNode,gServiceNode, 
    47 //         eService, gService 
     47         eRedistributeDomain, gRedistributeDomain, 
     48         eRedistributeAxis, gRedistributeAxis, 
     49         eRedistributeScalar, gRedistributeScalar, 
    4850       } ENodeType; 
    4951 
  • XIOS3/dev/XIOS_ATTACHED/src/node/node_type.hpp

    r2458 r2460  
    3535#include "pool_node.hpp" 
    3636#include "service_node.hpp" 
     37#include "redistribute_domain.hpp" 
     38#include "redistribute_axis.hpp" 
     39#include "redistribute_scalar.hpp" 
    3740 
    3841 
  • XIOS3/dev/XIOS_ATTACHED/src/object_factory_decl2.cpp

    r2458 r2460  
    2323  macro(CPoolNode) 
    2424  macro(CServiceNode) 
     25  macro(CRedistributeDomain) 
     26  macro(CRedistributeAxis) 
     27  macro(CRedistributeScalar) 
    2528} 
    2629 
  • XIOS3/dev/XIOS_ATTACHED/src/object_factory_decl4.cpp

    r1591 r2460  
    1919  macro(CReorderDomainGroup) 
    2020  macro(CExtractDomainGroup) 
     21  macro(CRedistributeDomainGroup) 
     22  macro(CRedistributeAxisGroup) 
     23  macro(CRedistributeScalarGroup) 
    2124} 
    2225 
  • XIOS3/dev/XIOS_ATTACHED/src/object_template_decl.cpp

    r2458 r2460  
    3838  template class CObjectTemplate<CPoolNode>; 
    3939  template class CObjectTemplate<CServiceNode>; 
     40  template class CObjectTemplate<CRedistributeDomain>; 
     41  template class CObjectTemplate<CRedistributeAxis>; 
     42  template class CObjectTemplate<CRedistributeScalar>; 
     43 
    4044   
    4145  template class CObjectTemplate<CContextGroup>; 
     
    7175  template class CObjectTemplate<CPoolNodeGroup>; 
    7276  template class CObjectTemplate<CServiceNodeGroup>; 
     77  template class CObjectTemplate<CRedistributeDomainGroup>; 
     78  template class CObjectTemplate<CRedistributeAxisGroup>; 
     79  template class CObjectTemplate<CRedistributeScalarGroup>; 
    7380 
    7481} 
  • XIOS3/dev/XIOS_ATTACHED/src/transformation/algo_types.cpp

    r2011 r2460  
    1010      if (!first) return ; 
    1111      bool ret ; 
    12       std::cout<<"register Transformation"<<std::endl ; 
    1312      ret=CScalarAlgorithmReduceAxis::registerTrans(); 
    1413      ret=CScalarAlgorithmExtractAxis::registerTrans(); 
    1514      ret=CScalarAlgorithmReduceDomain::registerTrans(); 
    1615      ret=CScalarAlgorithmReduceScalar::registerTrans(); 
    17  
     16      ret=CScalarAlgorithmRedistribute::registerTrans() ; 
    1817      //! Axis 
    1918      ret=CAxisAlgorithmZoom::registerTrans(); 
     
    2726      ret=CAxisAlgorithmTemporalSplitting::registerTrans(); 
    2827      ret=CAxisAlgorithmDuplicateScalar::registerTrans(); 
     28      ret=CAxisAlgorithmRedistribute::registerTrans() ; 
    2929 
    3030      //! Domain 
     
    3636      ret=CDomainAlgorithmExtract::registerTrans(); 
    3737      ret=CDomainAlgorithmGenerateRectilinear::registerTrans() ; 
     38      ret=CDomainAlgorithmRedistribute::registerTrans() ; 
    3839      first=false ; 
    3940    } 
  • XIOS3/dev/XIOS_ATTACHED/src/transformation/algo_types.hpp

    r2018 r2460  
    1414#include "scalar_algorithm_reduce_domain.hpp" 
    1515#include "scalar_algorithm_reduce_scalar.hpp" 
     16#include "scalar_algorithm_redistribute.hpp" 
    1617 
    1718#include "axis_algorithm_inverse.hpp" 
     
    2526#include "axis_algorithm_temporal_splitting.hpp" 
    2627#include "axis_algorithm_duplicate_scalar.hpp" 
    27  
     28#include "axis_algorithm_redistribute.hpp" 
    2829 
    2930#include "domain_algorithm_zoom.hpp" 
     
    3435#include "domain_algorithm_reorder.hpp" 
    3536#include "domain_algorithm_extract.hpp" 
     37#include "domain_algorithm_redistribute.hpp" 
    3638 
    3739namespace xios 
  • XIOS3/dev/XIOS_ATTACHED/src/transformation/transformation_enum.hpp

    r1984 r2460  
    2626        TRANS_REORDER_DOMAIN = 17, 
    2727        TRANS_EXTRACT_DOMAIN = 18, 
    28         TRANS_EXTRACT_AXIS = 19 
     28        TRANS_EXTRACT_AXIS = 19, 
     29        TRANS_REDISTRIBUTE_DOMAIN = 20, 
     30        TRANS_REDISTRIBUTE_AXIS = 21, 
     31        TRANS_REDISTRIBUTE_SCALAR = 22 
    2932      } ETranformationType; 
    3033 
  • XIOS3/dev/XIOS_ATTACHED/src/type/type_util.hpp

    r2458 r2460  
    7070    class CServiceNode ; 
    7171    class CServiceNodeGroup ; 
    72        
     72    class CRedistributeDomain; 
     73    class CRedistributeDomainGroup; 
     74    class CRedistributeAxis; 
     75    class CRedistributeAxisGroup; 
     76    class CRedistributeScalar; 
     77    class CRedistributeScalarGroup; 
     78        
    7379  template <typename T> inline string getStrType(void); 
    7480 
     
    158164  macro(CServiceNode) 
    159165  macro(CServiceNodeGroup) 
    160    
     166  macro(CRedistributeDomain) 
     167  macro(CRedistributeDomainGroup)   
     168  macro(CRedistributeAxis) 
     169  macro(CRedistributeAxisGroup)   
     170  macro(CRedistributeScalar) 
     171  macro(CRedistributeScalarGroup)   
     172 
    161173#undef macro 
    162174} 
  • XIOS3/dev/XIOS_ATTACHED/src/xml_parser_decl.cpp

    r2458 r2460  
    4444    macro( PoolNode ) 
    4545    macro( ServiceNode ) 
     46    macro( RedistributeDomain ) 
     47    macro( RedistributeAxis ) 
     48    macro( RedistributeScalar ) 
     49 
    4650  } 
    4751} 
Note: See TracChangeset for help on using the changeset viewer.