List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends
atm::GOESDB Class Reference

Detector description interface for GOES cloud data. More...

#include <GOESDB.h>

Public Types

typedef std::map< unsigned int,
double > 
ProbabilityMap
 

Public Member Functions

ProbabilityMap GetAllCloudProbabilities () const
 Optimised lookup of all cloud probabilities (mapped to pixel IDs) More...
 
double GetCloudProbability (const unsigned int pixelId) const
 Get cloud probability from the pixel id. More...
 
double GetCloudProbability (const utl::Point &p) const
 Get cloud probability for a particular point. More...
 
double GetCloudProbability (const utl::UTMPoint &p) const
 
double GetMaximumCloudProbability (const utl::Point &pos1, const utl::Point &pos2) const
 Get max. cloud probability along line of sight between pos1 and pos2. More...
 
unsigned int GetNumberOfPixels () const
 
const utl::UTMPointGetPixelCenter (const unsigned int pixelId) const
 
double GetPixelWidthEasting () const
 
double GetPixelWidthNorthing () const
 
bool HasData (const unsigned int pixelId) const
 Check if cloud probability data exists for a given pixel at the current time. More...
 

Private Member Functions

double GetCloudProbability (const double easting, const double northing) const
 
int GetCloudProbabilityIndex (const unsigned int pixelId) const
 
int GetEastPixel (const double easting, const int northPixel) const
 
int GetNorthPixel (const double northing) const
 
int GetPixelId (const double easting, const double northing) const
 
 GOESDB ()
 
 GOESDB (const GOESDB &)
 
double IndexToProbability (const unsigned int cpIndex) const
 
GOESDBoperator= (GOESDB &)
 
 ~GOESDB ()
 

Private Attributes

std::vector< utl::UTMPointfPixelCenters
 
std::map< unsigned int, int > fPixelMap
 

Friends

class Atmosphere
 

Detailed Description

Detector description interface for GOES cloud data.

Author
T. Paul
T. Yapici
M. Unger
Date
17 August 2012

Definition at line 29 of file GOESDB.h.

Member Typedef Documentation

typedef std::map<unsigned int, double> atm::GOESDB::ProbabilityMap

Definition at line 32 of file GOESDB.h.

Constructor & Destructor Documentation

atm::GOESDB::GOESDB ( )
inlineprivate

Definition at line 61 of file GOESDB.h.

atm::GOESDB::~GOESDB ( )
inlineprivate

Definition at line 62 of file GOESDB.h.

atm::GOESDB::GOESDB ( const GOESDB )
private

Member Function Documentation

GOESDB::ProbabilityMap atm::GOESDB::GetAllCloudProbabilities ( ) const

Optimised lookup of all cloud probabilities (mapped to pixel IDs)

If you are going to check the probabilities for many tens of pixels, then this method should be faster than individual lookups with GetCloudProbability() or HasData() because it uses a single database query

Definition at line 175 of file GOESDB.cc.

References det::VManager::eFound, det::VManager::GetData(), and G4StationSimulatorOG::p.

double atm::GOESDB::GetCloudProbability ( const unsigned int  pixelId) const
double atm::GOESDB::GetCloudProbability ( const utl::Point p) const

Get cloud probability for a particular point.

Since the cloud probability here comes from GOES measurements, the height is not used in the calculation

Definition at line 218 of file GOESDB.cc.

double atm::GOESDB::GetCloudProbability ( const utl::UTMPoint p) const

Definition at line 227 of file GOESDB.cc.

References utl::UTMPoint::GetEasting(), and utl::UTMPoint::GetNorthing().

double atm::GOESDB::GetCloudProbability ( const double  easting,
const double  northing 
) const
private

Definition at line 237 of file GOESDB.cc.

int atm::GOESDB::GetCloudProbabilityIndex ( const unsigned int  pixelId) const
private

Definition at line 134 of file GOESDB.cc.

int atm::GOESDB::GetEastPixel ( const double  easting,
const int  northPixel 
) const
private

Definition at line 75 of file GOESDB.cc.

double atm::GOESDB::GetMaximumCloudProbability ( const utl::Point pos1,
const utl::Point pos2 
) const

Get max. cloud probability along line of sight between pos1 and pos2.

Definition at line 272 of file GOESDB.cc.

References fwk::CoordinateSystemRegistry::Get(), utl::UTMPoint::GetEasting(), utl::UTMPoint::GetNorthing(), and atm::SegmentIntersection().

Referenced by otoa::FD2ADST::FillCloudsBetweenEyeAndShower(), and testAtmLowLevelAtmInterface::testGOESDB().

int atm::GOESDB::GetNorthPixel ( const double  northing) const
private

Definition at line 66 of file GOESDB.cc.

unsigned int atm::GOESDB::GetNumberOfPixels ( ) const

Definition at line 48 of file GOESDB.cc.

Referenced by otoa::Detector2ADST::FillGOESData().

const utl::UTMPoint & atm::GOESDB::GetPixelCenter ( const unsigned int  pixelId) const

Definition at line 85 of file GOESDB.cc.

References fwk::CoordinateSystemRegistry::Get(), and utl::m.

int atm::GOESDB::GetPixelId ( const double  easting,
const double  northing 
) const
private

Definition at line 56 of file GOESDB.cc.

double atm::GOESDB::GetPixelWidthEasting ( ) const

Definition at line 32 of file GOESDB.cc.

double atm::GOESDB::GetPixelWidthNorthing ( ) const

Definition at line 40 of file GOESDB.cc.

bool atm::GOESDB::HasData ( const unsigned int  pixelId) const

Check if cloud probability data exists for a given pixel at the current time.

Definition at line 148 of file GOESDB.cc.

References det::VManager::eFound, and det::VManager::GetData().

Referenced by otoa::Detector2ADST::FillGOESData(), and testAtmLowLevelAtmInterface::testGOESDB().

double atm::GOESDB::IndexToProbability ( const unsigned int  cpIndex) const
private

Definition at line 126 of file GOESDB.cc.

GOESDB& atm::GOESDB::operator= ( GOESDB )
private

Friends And Related Function Documentation

friend class Atmosphere
friend

Definition at line 78 of file GOESDB.h.

Member Data Documentation

std::vector<utl::UTMPoint> atm::GOESDB::fPixelCenters
mutableprivate

Definition at line 76 of file GOESDB.h.

std::map<unsigned int, int> atm::GOESDB::fPixelMap
mutableprivate

Definition at line 75 of file GOESDB.h.


The documentation for this class was generated from the following files:

, generated on Tue Sep 26 2023.