Luiza  v03-01
ObjectLightCurve.h
1 // -*- mode: c++; mode: auto-fill; mode: flyspell-prog; -*-
2 
3 #ifndef ObjectLightCurve_h
4 #define ObjectLightCurve_h 1
5 
6 #include "luiza/Processor.h"
7 
8 using namespace gloria;
9 
10 namespace luiza {
11 
12 
14 
140  class ObjectLightCurve : public Processor {
141 
142  public:
143 
144  virtual Processor* newProcessor() { return new ObjectLightCurve ; }
145 
146 
147  ObjectLightCurve() ;
148 
152  virtual void init() ;
153 
155 
157  virtual void startAnalysis( GloriaDataContainer* data ) ;
158 
161  virtual void processData( GloriaDataContainer* data ) ;
162 
163 
164  virtual void check( GloriaDataContainer* data ) ;
165 
166 
168 
169  virtual void concludeAnalysis( GloriaDataContainer* data ) ;
170 
173  virtual void end() ;
174 
175 
176  protected:
177 
179  void printEndMessage() const ;
180 
181  void initializeLCTable( GloriaDataContainer* data );
182 
183  void initializeRefStars( GloriaDataContainer* data );
184 
187 
190 
192  std::vector<float> _objectPosition;
193 
196 
198  std::vector<std::string> _positionColumns;
199 
200 
202  std::string _brightnessColumn;
203 
204 
207 
209  std::string _polarAngleColumn;
210 
211 
213  std::vector<float> _referenceStars;
214 
215  // Reference star file name(s) - no longer supported
216  // std::vector< std::string> _noninterference;
217 
220 
221 
224 
225 
228 
231 
234 
237 
240 
242  std::vector<std::string> _copyColumns;
243 
245  std::vector<std::string> _headerRecords;
246 
247 
248  int _nLoops ;
249  int _nInputLists ;
250  int _nObjectsMatched;
251  int _nOutputPoints ;
252 
253  double xmin,xmax,ymin,ymax;
254 
255  GloriaFitsTable *_lightCurveTable;
256 
257 
258  // Private code for matrix equation solving
259 
260  int GaussjSolve(double *alfa,double *beta,int n);
261 
262  } ;
263 
264 } // end namespace luiza
265 #endif
266 
267 
268 
std::vector< float > _referenceStars
Reference star positions and brightnesses.
Definition: ObjectLightCurve.h:213
namespace for data storing and exchange formats
Definition: GloriaAstrometry.h:15
bool _estimateError
Flag to do photometry error estimate, based on reference star spread.
Definition: ObjectLightCurve.h:239
Processor to reconstruct light curve of given object.
Definition: ObjectLightCurve.h:140
Class for storing all data processed in Luiza.
Definition: GloriaDataContainer.h:82
double _matchingTolerance
Position matching tolerance for object and reference stars.
Definition: ObjectLightCurve.h:195
bool _referenceUseMedian
Flag for using median instead of mean for calibration to reference stars.
Definition: ObjectLightCurve.h:236
Base class for Luiza processors.
Definition: Processor.h:55
std::string _polarAngleColumn
Name of DEC column (for proper distance calculation)
Definition: ObjectLightCurve.h:209
string _referenceStarCatalog
Name of the collection containing reference stars.
Definition: ObjectLightCurve.h:219
int _maxReferenceCount
Maximum number of reference stars to be used.
Definition: ObjectLightCurve.h:230
std::vector< float > _objectPosition
Object position.
Definition: ObjectLightCurve.h:192
bool _magnitudoGiven
Flag for brightness given in magintudo.
Definition: ObjectLightCurve.h:206
string _inputCollectionName
Name of the collection containing object lists.
Definition: ObjectLightCurve.h:186
Class for reading and processing fits tables in Luiza.
Definition: GloriaFitsTable.h:109
std::string _brightnessColumn
Name of the object brightness column.
Definition: ObjectLightCurve.h:202
double _referenceMaxDist
Maximum distance to reference star from file.
Definition: ObjectLightCurve.h:227
std::vector< std::string > _copyColumns
Names of table columns to be copied in the light curve.
Definition: ObjectLightCurve.h:242
int _correctionFitOrder
Order of the polynomial fit of correction dependence on position.
Definition: ObjectLightCurve.h:233
Namespace for Luiza framework.
Definition: CCCollection.h:6
string _referenceMagColumn
Names of table columns containing reference star positions and magintudo.
Definition: ObjectLightCurve.h:223
virtual Processor * newProcessor()
Return a new instance of the processor.
Definition: ObjectLightCurve.h:144
string _outputCollectionName
Name of the output light curve collection.
Definition: ObjectLightCurve.h:189
std::vector< std::string > _positionColumns
Names of the position columns in the table.
Definition: ObjectLightCurve.h:198
std::vector< std::string > _headerRecords
Names of table header records to be added in the light curve.
Definition: ObjectLightCurve.h:245