Titanlib
Library for quality control algorithms
Classes | Namespaces | Macros | Typedefs | Functions
titanlib.h File Reference
#include <iostream>
#include <vector>
#include <assert.h>
#include <boost/geometry.hpp>
#include <boost/geometry/geometries/point.hpp>
#include <boost/geometry/geometries/box.hpp>
#include <boost/geometry/index/rtree.hpp>

Go to the source code of this file.

Classes

class  titanlib::Dataset
 Represents point and their observed values. More...
 
class  titanlib::KDTree
 

Namespaces

 titanlib
 Titanlib.
 
 titanlib::util
 

Macros

#define __version__   TITANLIB_VERSION
 
#define TITANLIB_VERSION   "0.2.0b1"
 

Typedefs

typedef std::vector< double > dvec
 
typedef std::vector< int > ivec
 
typedef std::vector< float > vec
 
typedef std::vector< vecvec2
 

Functions

ivec titanlib::buddy_check (const vec &lats, const vec &lons, const vec &elevs, const vec &values, const vec &radius, const ivec &num_min, float threshold, float max_elev_diff, float elev_gradient, float min_std, int num_iterations, const ivec &obs_to_check=ivec())
 Buddy check. More...
 
ivec titanlib::buddy_event_check (const vec &lats, const vec &lons, const vec &elevs, const vec &values, const vec &radius, const ivec &num_min, float event_threshold, float threshold, float max_elev_diff, float elev_gradient, int num_iterations, const ivec &obs_to_check=ivec())
 
float titanlib::util::calc_distance (float lat1, float lon1, float lat2, float lon2)
 
float titanlib::util::calc_distance (float x0, float y0, float z0, float x1, float y1, float z1)
 
double titanlib::util::clock ()
 
float titanlib::util::compute_quantile (double quantile, const vec &array)
 
bool titanlib::util::convert_coordinates (const vec &lats, const vec &lons, vec &x_coords, vec &y_coords, vec &z_coords)
 Convert lat/lons to 3D cartesian coordinates with the centre of the earth as the origin. More...
 
bool titanlib::util::convert_coordinates (float lat, float lon, float &x_coord, float &y_coord, float &z_coord)
 Same as above, but convert a single lat/lon to 3D cartesian coordinates. More...
 
void titanlib::util::convert_to_proj (const vec &lats, const vec &lons, std::string proj4, vec &x_coords, vec &y_coords)
 
float titanlib::util::deg2rad (float deg)
 
void titanlib::initialize_omp ()
 Sets the number of OpenMP threads to 1 if OMP_NUM_THREADS undefined. More...
 
vec titanlib::util::interpolate_to_points (const vec2 &input_lats, const vec2 &input_lons, const vec2 &input_values, const vec &output_lats, const vec &output_lons)
 
ivec titanlib::isolation_check (const vec &lats, const vec &lons, int num_min, float radius)
 Isolation check. More...
 
ivec titanlib::isolation_check (const vec &lats, const vec &lons, const vec &elevs, int num_min, float radius, float vertical_radius)
 Isolation check with elevation. More...
 
ivec titanlib::range_check (const vec &values, const vec &min, const vec &max)
 Range check. More...
 
ivec titanlib::range_check_climatology (const vec &lats, const vec &lons, const vec &elevs, const vec &values, int unixtime, const vec &pos, const vec &neg)
 
ivec titanlib::sct (const vec &lats, const vec &lons, const vec &elevs, const vec &values, int num_min, int num_max, float inner_radius, float outer_radius, int num_iterations, int num_min_prof, float min_elev_diff, float min_horizontal_scale, float vertical_scale, const vec &pos, const vec &neg, const vec &eps2, vec &prob_gross_error, vec &rep)
 Spatial Consistency Test. More...
 
ivec titanlib::sct_old (const vec &lats, const vec &lons, const vec &elevs, const vec &values, int nmin, int nmax, int num_min_prof, float min_elev_diff, float min_horizontal_scale, float dz, const vec &pos, const vec &neg, const vec &eps2, vec &prob_gross_error, vec &rep, ivec &boxids)
 Old version of the spatial consistency test (for testing purposes only) More...
 
void titanlib::set_omp_threads (int num)
 Set the number of OpenMP threads to use. More...
 
vec titanlib::util::subset (const vec &input, const ivec &indices)
 
float * titanlib::util::test_array (float *v, int n)
 Required for SWIG only. More...
 
std::string titanlib::version ()
 

Macro Definition Documentation

◆ __version__

#define __version__   TITANLIB_VERSION

◆ TITANLIB_VERSION

#define TITANLIB_VERSION   "0.2.0b1"

Typedef Documentation

◆ dvec

typedef std::vector<double> dvec

◆ ivec

typedef std::vector<int> ivec

◆ vec

typedef std::vector<float> vec

◆ vec2

typedef std::vector<vec> vec2