Last change
on this file since 827 was
827,
checked in by mhnguyen, 8 years ago
|
Implementing dynamic interpolation on axis
+) Change grid transformation to make it more flexible
+) Make some small improvements
Test
+) On Curie
+) All test pass
|
File size:
1.3 KB
|
Rev | Line | |
---|
[689] | 1 | /*! |
---|
| 2 | \file domain_algorithm_interpolate_from_file.hpp |
---|
| 3 | \author Ha NGUYEN |
---|
| 4 | \since 09 July 2015 |
---|
| 5 | \date 09 Sep 2015 |
---|
| 6 | |
---|
| 7 | \brief Algorithm for interpolation on a domain. |
---|
| 8 | */ |
---|
| 9 | #ifndef __XIOS_DOMAIN_ALGORITHM_INTERPOLATE_HPP__ |
---|
| 10 | #define __XIOS_DOMAIN_ALGORITHM_INTERPOLATE_HPP__ |
---|
| 11 | |
---|
| 12 | #include "domain_algorithm_transformation.hpp" |
---|
| 13 | #include "domain.hpp" |
---|
| 14 | #include "interpolate_domain.hpp" |
---|
| 15 | |
---|
| 16 | namespace xios { |
---|
| 17 | /*! |
---|
| 18 | \class CDomainAlgorithmInterpolate |
---|
| 19 | Reading interpolation from file then apply on a domain |
---|
| 20 | */ |
---|
| 21 | class CDomainAlgorithmInterpolate : public CDomainAlgorithmTransformation |
---|
| 22 | { |
---|
| 23 | public: |
---|
| 24 | CDomainAlgorithmInterpolate(CDomain* domainDestination, CDomain* domainSource, CInterpolateDomain* interpDomain); |
---|
| 25 | |
---|
| 26 | virtual ~CDomainAlgorithmInterpolate() {} |
---|
| 27 | |
---|
[827] | 28 | protected: |
---|
| 29 | void computeIndexSourceMapping_(const std::vector<CArray<double,1>* >& dataAuxInputs); |
---|
[689] | 30 | |
---|
| 31 | private: |
---|
| 32 | void readInterpolationInfo(std::string& filename, std::map<int,std::vector<std::pair<int,double> > >& interpMapValue); |
---|
[743] | 33 | void processPole(std::map<int,std::vector<std::pair<int,double> > >& interMapValuePole, |
---|
| 34 | int nbGlobalPointOnPole); |
---|
[689] | 35 | void computeRemap(); |
---|
| 36 | void readRemapInfo(); |
---|
[709] | 37 | void exchangeRemapInfo(const std::map<int,std::vector<std::pair<int,double> > >& interpMapValue); |
---|
[689] | 38 | private: |
---|
| 39 | CInterpolateDomain* interpDomain_; |
---|
| 40 | |
---|
| 41 | }; |
---|
| 42 | |
---|
| 43 | } |
---|
| 44 | #endif // __XIOS_DOMAIN_ALGORITHM_INTERPOLATE_HPP__ |
---|
Note: See
TracBrowser
for help on using the repository browser.