HOPS
HOPS class reference
tempo.h
Go to the documentation of this file.
1  /* Various plotting mode definitions */
2 #define Y_SINGLE 1
3 #define Y_MULTIPLE 2
4 #define SOURCE_NOSPLIT 0
5 #define SOURCE_SPLIT 01
6  /* Plotted point quality indicators */
7 #define PQ_GOOD 0
8 #define PQ_SUSPECT 1
9 #define PQ_BAD 2
10 
11 #define STATION_PLOT 01 /* Identified families of axes below */
12 #define BASELINE_PLOT 02
13 #define TRIANGLE_PLOT 04
14 #define QUAD_PLOT 010
15 #define ALL_PLOT 020
16 #define ANY_PLOT 037
17  /* Used for station-based quantities */
18  /* in baseline-based plots */
19 #define REFERENCE 0
20 #define REMOTE 1
21  /* Axis IDs, with default plot mode */
22 #define NO_AXIS -1
23 
24 #define AX_TIMETAG 0 /* By any */
25 
26 #define AX_PCAL_PHASE 100 /* By station (1st 4 extracted params only, */
27 #define AX_PCAL_DIFF 101 /* ref and remote in aux input variable) */
28 #define AX_PCAL_AMP 102
29 #define AX_ERRORATE 103
30 #define AX_ELEVATION 104
31 #define AX_AZIMUTH 105
32 
33 #define AX_SNR 201 /* By baseline */
34 #define AX_AMPLITUDE 202
35 #define AX_PHASE 203
36 #define AX_SBDELAY 204
37 #define AX_MBDELAY 205
38 #define AX_DRATE 206
39 #define AX_NCOTIME 207
40 #define AX_SCOTIME 208
41 
42 #define AX_CPHASE 300 /* By triangle */
43 #define AX_CRATE 301
44 #define AX_CSBDELAY 302
45 #define AX_CMBDELAY 303
46 
47 #define AX_CAMP 400 /* By quad */
48 
49 #define AX_U 500 /* By all */
50 #define AX_V 501
51 #define AX_UVDIST 502
52 
53 #define AX_PARAMETER 600 /* parameter number in aux input variable */
54 
55 /* was 2000, boosted to 20000 Nov 11, 2016 */
56 #define MAXPLT 20000 /* Max # of points in single plot, */
57  /* applies separately to the 3 qualities */
58  /* of plotted points */
59 #define NSYMBOL 11
60 
61 struct plot_info
62  {
63  int npts; /* Total number of points plotted */
64  int ngood; /* # of good points in this plot */
65  int nsusp; /* # of suspect points in this plot */
66  int nbad; /* # of bad points in this plot */
67  int nbadscale; /* # of points off scale, omitted */
68  int xebar; /* Are X error bars plotted? */
69  int yebar; /* Are Y error bars plotted? */
70  int onscreen; /* Visible on interactive screen? */
71  int plotby; /* By station, baseline, whatever? */
72  int xaind; /* Variable plotted on X axis */
73  int x_aux; /* Auxiliary field for parms */
74  char xtype[30]; /* Variable plotted on X axis */
75  int yaind; /* Variable plotted on Y axis */
76  int y_aux; /* Auxiliary field for parms */
77  char ytype[30]; /* Variable plotted on Y axis */
78  float xmax; /* X-axis value extrema */
79  float xmin;
80  float ymax; /* Y-axis value extrema */
81  float ymin;
82  int toffset; /* For time axes .. avoids f.p. roundoff */
83  float vport[4]; /* Viewport in normalized device coords */
84  float window[4]; /* World coordinate extrema of viewport */
85  short index[MAXPLT]; /* Indices of all points in data arrays */
86  char symbol[MAXPLT]; /* Point-by-point PGPLOT symbol used */
87  char frq; /* Frequency code plotted */
88  int expt; /* Experiment number plotted */
89  char source[32]; /* Source name (if applicable) */
90  char station; /* Station plotted */
91  char bas[3]; /* Baseline plotted */
92  char triangle[4]; /* Stations in closure triangle */
93  char ampcl[5]; /* Stations in closure amplitude quad */
94  };
95 
96 struct plot_ptqual
97  {
98  float x[MAXPLT]; /* X-axis values */
99  float y[MAXPLT]; /* Y-axis values */
100  float xerrh[MAXPLT]; /* upper extent of X error bar */
101  float xerrl[MAXPLT]; /* lower extent of X error bar */
102  float yerrh[MAXPLT]; /* upper extent of Y error bar */
103  float yerrl[MAXPLT]; /* lower extent of Y error bar */
104  };
105 
106 struct plot_points
107  {
108  struct plot_ptqual good; /* Contains info for good points */
109  struct plot_ptqual suspect; /* Contains info for suspect points */
110  struct plot_ptqual bad; /* Contains info for bad points */
111  };
112 
float xmin
Definition: pstruct.h:80
int xaind
Definition: pstruct.h:73
float xmax
Definition: pstruct.h:79
int plotby
Definition: pstruct.h:72
char station
Definition: pstruct.h:91
int toffset
Definition: pstruct.h:83
int y_aux
Definition: pstruct.h:77
float window[4]
Definition: pstruct.h:85
int ngood
Definition: pstruct.h:65
struct plot_ptqual suspect
Definition: pstruct.h:110
float yerrl[MAXPLT]
Definition: pstruct.h:104
struct plot_ptqual bad
Definition: pstruct.h:111
float y[MAXPLT]
Definition: pstruct.h:100
char frq
Definition: pstruct.h:88
float yerrh[MAXPLT]
Definition: pstruct.h:103
float vport[4]
Definition: pstruct.h:84
int index[MAXPLT]
Definition: pstruct.h:86
int nbadscale
Definition: pstruct.h:68
int nbad
Definition: pstruct.h:67
int x_aux
Definition: pstruct.h:74
char ytype[30]
Definition: pstruct.h:78
int yebar
Definition: pstruct.h:70
char triangle[4]
Definition: pstruct.h:93
float ymin
Definition: pstruct.h:82
float xerrl[MAXPLT]
Definition: pstruct.h:102
float xerrh[MAXPLT]
Definition: pstruct.h:101
struct plot_ptqual good
Definition: pstruct.h:109
int onscreen
Definition: pstruct.h:71
float x[MAXPLT]
Definition: pstruct.h:99
char bas[3]
Definition: pstruct.h:92
char xtype[30]
Definition: pstruct.h:75
float ymax
Definition: pstruct.h:81
char ampcl[5]
Definition: pstruct.h:94
char symbol[MAXPLT]
Definition: pstruct.h:87
int npts
Definition: pstruct.h:64
#define MAXPLT
Definition: tempo.h:56
int nsusp
Definition: pstruct.h:66
char source[32]
Definition: pstruct.h:90
int expt
Definition: pstruct.h:89
int yaind
Definition: pstruct.h:76
int xebar
Definition: pstruct.h:69
Definition: pstruct.h:63
Definition: pstruct.h:108
Definition: pstruct.h:98