Source
248
248
// XparangJones specialization
249
249
virtual casacore::Bool useGenericGatherForSolve() { return true; };
250
250
virtual casacore::Bool useGenericSolveOne() { return false; }
251
251
252
252
virtual void selfGatherAndSolve(VisSet& vs, VisEquation& ve);
253
253
254
254
// Handle trivial vbga generated by generic gather-for-solve
255
255
virtual void selfSolveOne(VisBuffGroupAcc& vbga);
256
256
virtual void selfSolveOne(SDBList& sdbs);
257
257
258
+
// Write QU info into table keywords
259
+
virtual void globalPostSolveTinker();
260
+
261
+
// Override for returning Q,U info via Record
262
+
virtual casacore::Record solveActionRec();
263
+
264
+
// Overide model division stuff...
265
+
virtual casacore::Bool normalizable() { return false; };
266
+
virtual casacore::Bool divideByStokesIModelForSolve() { return true; };
267
+
258
268
protected:
259
269
260
270
// X has just 1 complex parameter, storing a phase
261
271
virtual casacore::Int nPar() { return 1; };
262
272
263
273
// Solver for one VB, that collapses baselines and cross-hands first,
264
274
// then solves for XY-phase and QU
265
275
virtual void solveOneVB(const VisBuffer& vb);
266
276
virtual void solveOne(SDBList& sdbs);
267
277
268
-
// Write QU info into table keywords
269
-
virtual void globalPostSolveTinker();
270
-
271
278
// Derived QU_ info
272
279
casacore::Matrix<casacore::Float> QU_;
273
280
281
+
// Activity record
282
+
casacore::Record QURec_;
274
283
275
284
};
276
285
277
286
287
+
278
288
// Freq-dep cross-hand phase
279
289
class XfparangJones : public XparangJones {
280
290
public:
281
291
282
292
// Constructor
283
293
XfparangJones(VisSet& vs);
284
294
XfparangJones(casacore::String msname,casacore::Int MSnAnt,casacore::Int MSnSpw);
285
295
XfparangJones(const MSMetaInfoForCal& msmc);
286
296
XfparangJones(const casacore::Int& nAnt);
287
297