UniformLayersClouds
#include "UniformLayersClouds.hh" |
UniformLayersClouds
class description - source file - inheritance tree (.pdf)
class UniformLayersClouds : public Clouds
Inheritance Chart: | |||||||||||||||
|
private:
virtual void Build() virtual void Configure() Bool_t GoingDownward(const EarthVector&, const EarthVector&) const Bool_t IsInLayer(Int_t, const EarthVector& pos, EarthVector dir = 0.) const Int_t PointToClouds(const EarthVector&, const EarthVector&) const Int_t PointToLayer(Int_t, const EarthVector&, const EarthVector&) const public:
UniformLayersClouds() virtual ~UniformLayersClouds() static TClass* Class() virtual const char* ClassName() const virtual const char* ClassType() const virtual EarthVector GetCloudImpact(const EarthVector&, const EarthVector&, string opt = default) const EarthVector GetLayerImpact(Int_t, const EarthVector&, const EarthVector&, string opt = default) const Double_t InclinedODloc(Int_t, const EarthVector&, const EarthVector&) const virtual TClass* IsA() const virtual Bool_t IsInClouds(const EarthVector&) const Int_t LayerNumber(const EarthVector&) const virtual void Reset() virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual Double_t TotalOD(const EarthVector&, const EarthVector&) const
Data Members
private:
CloudsBox* fBox describe clouds properties string fCloudsType clouds type
Class Description
EarthVector GetCloudImpact(const EarthVector& pos, const EarthVector& dir,string opt) const
Return impact for given position and direction if opt is "outgoing", returns the track exit point Convention : - if already within clouds, returns pos - if no impact, returns (0,0,HUGE)
Double_t TotalOD(const EarthVector& pos,const EarthVector& dir) const
returns total Optical Depth along the given track (defined by pos and dir)
Double_t InclinedODloc(Int_t layerID,const EarthVector& incom,const EarthVector& outgo) const
gives layer OD between incoming and outgoing points
EarthVector GetLayerImpact(Int_t layerID,const EarthVector& pos,const EarthVector& dir,string opt) const
Returns the impact of a track on the specified CloudLayer If pos is external, returned impact is incoming by default or outgoing if specified if no impact, returns (0,0,HUGE)
void Build()
build the CloudsBox object Standard clouds types drawn from Liou, Radiation and Cloud Processes in the Atmosphere, 1992 It gives : - typical values for BetaE (= sigmaE * N) for wl = 0.5 microns - altitudes (influences of geographical coo. not considered), not given precisely clouds splitted into 100 layers
Bool_t IsInLayer(Int_t layerID,const EarthVector& pos, EarthVector dir) const
says if pos is in the specified layer if dir is specified, altitude round-off effects < 1mm are handled (cf. cases with pos on a layer edge)
Bool_t IsInClouds(const EarthVector& pos) const
says if pos is in clouds or not
Int_t PointToLayer(Int_t layerID,const EarthVector& pos,const EarthVector& dir) const
says if track points toward clouds returns -1 if is inside the layer
Int_t PointToClouds(const EarthVector& pos,const EarthVector& dir) const
says if track points toward clouds returns -1 if is inside clouds
Int_t LayerNumber(const EarthVector& pos) const
gives the layer number where pos is returns -1 if is not in the cloud
Bool_t GoingDownward(const EarthVector& pos,const EarthVector& dir) const
to know if locally track is going up/downward locally means at pos nadir if perfectly horizontal (i.e. local angle of halfpi) returns false (i.e. upward)
Inline Functions
void ~UniformLayersClouds() UniformLayersClouds UniformLayersClouds() void Reset() const char* ClassType() const const char* ClassName() const void Configure() TClass* Class() TClass* IsA() const void ShowMembers(TMemberInspector& insp, char* parent) void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)