source: XIOS/trunk/src/transformation/domain_algorithm_generate_rectilinear.hpp @ 775

Last change on this file since 775 was 775, checked in by mhnguyen, 8 years ago

Implementing the reading of attributes of an axis from a file

+) 3d grid can be read directly from a file
+) Clean some redundant codes
+) Add new attribute declaration that allows to output only desired attributes

Test
+) On Curie
+) test_remap passes and result is correct

File size: 1.4 KB
Line 
1/*!
2   \file domain_algorithm_generate_rectilinear.hpp
3   \author Ha NGUYEN
4   \since 31 Aug 2015
5   \date 01 Sep 2015
6
7   \brief Algorithm for automatic generation of rectilinear domain.
8 */
9#ifndef __XIOS_DOMAIN_ALGORITHM_GENERATE_RECTILINEAR_HPP__
10#define __XIOS_DOMAIN_ALGORITHM_GENERATE_RECTILINEAR_HPP__
11
12#include "domain_algorithm_transformation.hpp"
13
14namespace xios {
15
16class CGrid;
17class CDomain;
18class CGenerateRectilinearDomain;
19
20/*!
21  \class CDomainAlgorithmGenerateRectilinear
22  Generate a rectilinear domain and fill in necessary its attributes automatically
23  A new rectilinear domain will also be distributed automatically among the processes.
24  The number of processes is deduced from the distribution of the grid source.
25*/
26class CDomainAlgorithmGenerateRectilinear : public CDomainAlgorithmTransformation
27{
28public:
29  CDomainAlgorithmGenerateRectilinear(CDomain* domainDestination, CDomain* domainSource,
30                                      CGrid* gridDest, CGrid* gridSource,
31                                      CGenerateRectilinearDomain* zoomDomain);
32
33  virtual ~CDomainAlgorithmGenerateRectilinear() {}
34
35  virtual void computeIndexSourceMapping();
36
37private:
38  void computeDistributionGridSource(CGrid* gridSrc);
39  void computeDistributionGridDestination(CGrid* gridDest);
40  void fillInAttributesDomainDestination();
41
42private:
43  int nbDomainDistributedPart_; //! Number of local domain.
44
45};
46
47}
48#endif // __XIOS_DOMAIN_ALGORITHM_GENERATE_RECTILINEAR_HPP__
Note: See TracBrowser for help on using the repository browser.