Changeset 1314
- Timestamp:
- 10/24/17 11:27:52 (7 years ago)
- Location:
- XIOS/dev/XIOS_DEV_CMIP6/src
- Files:
-
- 10 added
- 19 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/XIOS_DEV_CMIP6/src/config/node_type.conf
r1301 r1314 68 68 69 69 #ifdef __XIOS_CReduceAxisToAxis__ 70 DECLARE_NODE(ReduceAxisToAxis, reduce_ domain)70 DECLARE_NODE(ReduceAxisToAxis, reduce_axis_to_axis) 71 71 #endif //__XIOS_CReduceAxisToAxis__ 72 72 … … 95 95 #endif //__XIOS_CTemporalSplitting__ 96 96 97 #ifdef __XIOS_CDuplicateScalarToAxis__ 98 DECLARE_NODE(DuplicateScalarToAxis, duplicate_scalar_to_axis) 99 #endif //__XIOS_CDuplicateScalarToAxis__ 100 101 #ifdef __XIOS_CReduceScalarToScalar__ 102 DECLARE_NODE(ReduceScalarToScalar, reduce_scalar_to_scalar) 103 #endif //__XIOS_CReduceScalarToScalar_ 104 97 105 #ifdef __XIOS_CContext__ 98 106 DECLARE_NODE_PAR(Context, context) -
XIOS/dev/XIOS_DEV_CMIP6/src/config/reduce_axis_to_axis_attribute.conf
r1301 r1314 1 1 DECLARE_ENUM4(operation, min, max, sum, average) 2 3 /* Direction to apply operation (i, j) */4 DECLARE_ATTRIBUTE(bool, local) -
XIOS/dev/XIOS_DEV_CMIP6/src/generate_fortran_interface.cpp
r1301 r1314 47 47 CExtractAxisToScalar extractAxisToScalar; 48 48 CReduceDomainToScalar reduceDomainToScalar; 49 CDuplicateScalarToAxis duplicateScalarToAxis; 50 CReduceScalarToScalar reduceScalarToScalar; 49 51 50 52 ostringstream oss; … … 344 346 file.close(); 345 347 346 file.open((path+"reduce_domain_to_axis_interface_attr.F90").c_str());347 reduceDomainToAxis.generateFortran2003Interface(file);348 file.close();349 350 348 file.open((path+"icreduce_domain_to_axis_attr.cpp").c_str()); 351 349 reduceDomainToAxis.generateCInterface(file); … … 360 358 file.close(); 361 359 362 file.open((path+"reduce_axis_to_axis_interface_attr.F90").c_str());363 reduceAxisToAxis.generateFortran2003Interface(file);364 file.close();365 366 360 file.open((path+"icreduce_axis_to_axis_attr.cpp").c_str()); 367 361 reduceAxisToAxis.generateCInterface(file); … … 376 370 file.close(); 377 371 372 file.open((path+"icextract_domain_to_axis_attr.cpp").c_str()); 373 extractDomainToAxis.generateCInterface(file); 374 file.close(); 375 376 file.open((path+"iextract_domain_to_axis_attr.F90").c_str()); 377 extractDomainToAxis.generateFortranInterface(file); 378 file.close(); 379 380 378 381 file.open((path+"temporal_splitting_interface_attr.F90").c_str()); 379 382 temporalSplitting.generateFortran2003Interface(file); 380 383 file.close(); 381 384 382 file.open((path+"icextract_domain_to_axis_attr.cpp").c_str());383 extractDomainToAxis.generateCInterface(file);384 file.close();385 386 385 file.open((path+"ictemporal_splitting_attr.cpp").c_str()); 387 386 temporalSplitting.generateCInterface(file); 388 387 file.close(); 389 388 390 file.open((path+"iextract_domain_to_axis_attr.F90").c_str());391 extractDomainToAxis.generateFortranInterface(file);392 file.close();393 394 389 file.open((path+"itemporal_splitting_attr.F90").c_str()); 395 390 temporalSplitting.generateFortranInterface(file); … … 397 392 398 393 394 file.open((path+"duplicate_scalar_to_axis_interface_attr.F90").c_str()); 395 duplicateScalarToAxis.generateFortran2003Interface(file); 396 file.close(); 397 398 file.open((path+"icduplicate_scalar_to_axis_attr.cpp").c_str()); 399 duplicateScalarToAxis.generateCInterface(file); 400 file.close(); 401 402 file.open((path+"iduplicate_scalar_to_axis_attr.F90").c_str()); 403 duplicateScalarToAxis.generateFortranInterface(file); 404 file.close(); 399 405 /*! 400 406 Scalar transformations … … 424 430 file.close(); 425 431 432 426 433 file.open((path+"reduce_domain_to_scalar_interface_attr.F90").c_str()); 427 434 reduceDomainToScalar.generateFortran2003Interface(file); 428 435 file.close(); 429 436 430 file.open((path+"temporal_splitting_interface_attr.F90").c_str());431 temporalSplitting.generateFortran2003Interface(file);432 file.close();433 434 437 file.open((path+"icreduce_domain_to_scalar_attr.cpp").c_str()); 435 438 reduceDomainToScalar.generateCInterface(file); … … 440 443 file.close(); 441 444 445 446 file.open((path+"reduce_scalar_to_scalar_interface_attr.F90").c_str()); 447 reduceScalarToScalar.generateFortran2003Interface(file); 448 file.close(); 449 450 file.open((path+"icreduce_scalar_to_scalar_attr.cpp").c_str()); 451 reduceScalarToScalar.generateCInterface(file); 452 file.close(); 453 454 file.open((path+"ireduce_scalar_to_scalar_attr.F90").c_str()); 455 reduceScalarToScalar.generateFortranInterface(file); 456 file.close(); 457 458 459 460 461 442 462 file.open((path+"context_interface_attr.F90").c_str()); 443 463 context->generateFortran2003Interface(file); -
XIOS/dev/XIOS_DEV_CMIP6/src/group_factory_decl.cpp
r1301 r1314 41 41 macro(CReduceDomainToScalarGroup) 42 42 macro(CTemporalSplittingGroup) 43 macro(CDuplicateScalarToAxisGroup) 44 macro(CReduceScalarToScalarGroup) 43 45 44 46 } -
XIOS/dev/XIOS_DEV_CMIP6/src/group_template_decl.cpp
r1301 r1314 30 30 macro(ReduceDomainToScalar) 31 31 macro(TemporalSplitting) 32 macro(DuplicateScalarToAxis) 33 macro(ReduceScalarToScalar) 32 34 } -
XIOS/dev/XIOS_DEV_CMIP6/src/node/axis.cpp
r1301 r1314 54 54 m["extract_domain"] = TRANS_EXTRACT_DOMAIN_TO_AXIS; 55 55 m["temporal_splitting"] = TRANS_TEMPORAL_SPLITTING; 56 m["duplicate_scalar"] = TRANS_DUPLICATE_SCALAR_TO_AXIS; 57 56 58 } 57 59 -
XIOS/dev/XIOS_DEV_CMIP6/src/node/node_enum.hpp
r1301 r1314 35 35 eExtractAxisToScalar, 36 36 eReduceDomainToScalar, 37 eTemporalSplitting 38 } ENodeType; 37 eTemporalSplitting, 38 eDuplicateScalarToAxis, 39 eReduceScalarToScalar 40 } ENodeType; 39 41 40 42 } // namespace xios -
XIOS/dev/XIOS_DEV_CMIP6/src/node/node_type.hpp
r1301 r1314 26 26 #include "reduce_domain_to_scalar.hpp" 27 27 #include "temporal_splitting.hpp" 28 #include "duplicate_scalar_to_axis.hpp" 29 #include "reduce_scalar_to_scalar.hpp" 28 30 29 31 -
XIOS/dev/XIOS_DEV_CMIP6/src/node/reduce_axis_to_axis.cpp
r1301 r1314 47 47 << "Axis destination " << axisDst->getId()); 48 48 49 if (this->local.isEmpty()) local=false ;50 49 51 50 if (axisDst->n_glo != axisSrc->n_glo) -
XIOS/dev/XIOS_DEV_CMIP6/src/node/scalar.cpp
r1158 r1314 34 34 m["extract_axis"] = TRANS_EXTRACT_AXIS_TO_SCALAR; 35 35 m["reduce_domain"] = TRANS_REDUCE_DOMAIN_TO_SCALAR; 36 m["reduce_scalar"] = TRANS_REDUCE_SCALAR_TO_SCALAR; 36 37 } 37 38 -
XIOS/dev/XIOS_DEV_CMIP6/src/node/transformation_enum.hpp
r1301 r1314 22 22 TRANS_TEMPORAL_SPLITTING = 13, 23 23 TRANS_REDUCE_AXIS_TO_AXIS = 14, 24 TRANS_DUPLICATE_SCALAR_TO_AXIS = 15, 25 TRANS_REDUCE_SCALAR_TO_SCALAR = 16, 24 26 } ETranformationType; 25 27 -
XIOS/dev/XIOS_DEV_CMIP6/src/object_factory_decl.cpp
r1301 r1314 42 42 macro(CReduceDomainToScalar) 43 43 macro(CTemporalSplitting) 44 macro(CDuplicateScalarToAxis) 45 macro(CReduceScalarToScalar) 44 46 45 47 macro(CFieldGroup) … … 66 68 macro(CReduceDomainToScalarGroup) 67 69 macro(CTemporalSplittingGroup) 70 macro(CDuplicateScalarToAxisGroup) 71 macro(CReduceScalarToScalarGroup) 72 68 73 } -
XIOS/dev/XIOS_DEV_CMIP6/src/object_template_decl.cpp
r1301 r1314 29 29 template class CObjectTemplate<CReduceDomainToScalar>; 30 30 template class CObjectTemplate<CTemporalSplitting>; 31 template class CObjectTemplate<CDuplicateScalarToAxis>; 32 template class CObjectTemplate<CReduceScalarToScalar>; 31 33 32 34 template class CObjectTemplate<CContextGroup>; … … 53 55 template class CObjectTemplate<CReduceDomainToScalarGroup>; 54 56 template class CObjectTemplate<CTemporalSplittingGroup>; 57 template class CObjectTemplate<CDuplicateScalarToAxisGroup>; 58 template class CObjectTemplate<CReduceScalarToScalarGroup>; 59 55 60 } -
XIOS/dev/XIOS_DEV_CMIP6/src/transformation/algo_types.hpp
r1301 r1314 27 27 #include "domain_algorithm_compute_connectivity.hpp" 28 28 #include "domain_algorithm_expand.hpp" 29 #include "axis_algorithm_duplicate_scalar.hpp" 30 #include "scalar_algorithm_reduce_scalar.hpp" 29 31 30 32 -
XIOS/dev/XIOS_DEV_CMIP6/src/transformation/axis_algorithm_reduce_axis.cpp
r1301 r1314 70 70 71 71 reduction_ = CReductionAlgorithm::createOperation(CReductionAlgorithm::ReductionOperations[op]); 72 local = algo->local ;73 72 } 74 73 -
XIOS/dev/XIOS_DEV_CMIP6/src/transformation/axis_algorithm_reduce_axis.hpp
r1301 r1314 40 40 static bool registerTrans(); 41 41 protected: 42 bool local ;43 42 44 43 protected: -
XIOS/dev/XIOS_DEV_CMIP6/src/transformation/grid_transformation_selector.cpp
r1301 r1314 22 22 CScalarAlgorithmExtractAxis::registerTrans(); 23 23 CScalarAlgorithmReduceDomain::registerTrans(); 24 CScalarAlgorithmReduceScalar::registerTrans(); 24 25 25 26 //! Axis … … 31 32 CAxisAlgorithmReduceAxis::registerTrans(); 32 33 CAxisAlgorithmTemporalSplitting::registerTrans(); 34 CAxisAlgorithmDuplicateScalar::registerTrans(); 33 35 34 36 //! Domain -
XIOS/dev/XIOS_DEV_CMIP6/src/type/type_util.hpp
r1301 r1314 52 52 class CTemporalSplitting; 53 53 class CTemporalSplittingGroup; 54 54 class CDuplicateScalarToAxis; 55 class CDuplicateScalarToAxisGroup; 56 class CReduceScalarToScalar; 57 class CReduceScalarToScalarGroup; 58 55 59 template <typename T> inline string getStrType(void); 56 60 … … 120 124 macro(CTemporalSplitting) 121 125 macro(CTemporalSplittingGroup) 126 macro(CDuplicateScalarToAxis) 127 macro(CDuplicateScalarToAxisGroup) 128 macro(CReduceScalarToScalar) 129 macro(CReduceScalarToScalarGroup) 122 130 123 131 #undef macro -
XIOS/dev/XIOS_DEV_CMIP6/src/xml_parser_decl.cpp
r1301 r1314 35 35 macro( ReduceDomainToScalar ) 36 36 macro( TemporalSplitting ) 37 macro( DuplicateScalarToAxis ) 38 macro( ReduceScalarToScalar ) 37 39 } 38 40 }
Note: See TracChangeset
for help on using the changeset viewer.