UFO
Cal_RemapScanPosition.h
Go to the documentation of this file.
1 /*
2  * (C) Crown copyright 2021, Met Office
3  *
4  * This software is licensed under the terms of the Apache Licence Version 2.0
5  * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
6  */
7 
8 #ifndef UFO_VARIABLETRANSFORMS_CAL_REMAPSCANPOSITION_H_
9 #define UFO_VARIABLETRANSFORMS_CAL_REMAPSCANPOSITION_H_
10 
11 #include <memory>
12 #include <ostream>
13 #include <string>
14 #include <vector>
15 
16 #include "oops/util/ObjectCounter.h"
18 
19 namespace ufo {
20 
21 /*!
22 * \brief Renumber satellite scan position
23 *
24 * \details Within the Variable Transforms filter, apply the transform "RemapScanPosition"
25 * in order to renumber satellite scan position. At the Met Office ATMS observations are
26 * spatially resampled, resulting in 32 fields of view per record sampled from the raw
27 * 96 FOVs. From the initial observation data the values of scan_position@MetaData are
28 * 2, 5, 8, ..., 92, 95 (integers). However, in the calculation of observation bias we
29 * require scan_position@MetaData to be renumbered as 1, 2, 3, ..., 32.
30 ///
31 *
32 * See VariableTransformsParameters for filter setup.
33 */
35  public:
37  const ObsFilterData &data,
38  const std::shared_ptr<ioda::ObsDataVector<int>> &flags);
39  // Run variable conversion
40  void runTransform(const std::vector<bool> &apply) override;
41 };
42 } // namespace ufo
43 
44 #endif // UFO_VARIABLETRANSFORMS_CAL_REMAPSCANPOSITION_H_
Renumber satellite scan position.
void runTransform(const std::vector< bool > &apply) override
Run variable conversion.
Cal_RemapScanPosition(const VariableTransformsParameters &options, const ObsFilterData &data, const std::shared_ptr< ioda::ObsDataVector< int >> &flags)
ObsFilterData provides access to all data related to an ObsFilter.
Base class for variable conversion.
Definition: TransformBase.h:53
Options controlling the operation of the variablestansform filter.
Definition: RunCRTM.h:27