ATLAS Offline Software
Loading...
Searching...
No Matches
Trk::IDerivCalcTool Class Referenceabstract

#include <IDerivCalcTool.h>

Inheritance diagram for Trk::IDerivCalcTool:
Collaboration diagram for Trk::IDerivCalcTool:

Public Types

enum  SolveOption {
  NONE = 0 , SOLVE = 1 , SOLVE_FAST = 2 , DIRECT_SOLVE = 3 ,
  DIRECT_SOLVE_FAST = 4 , DIRECT_SOLVE_CLUSTER = 5
}
 enum of different solving options More...

Public Member Functions

virtual ~IDerivCalcTool ()
 Virtual destructor.
void setSolveOption (int solveOption)
 solving option (see enum above)
virtual bool setDerivatives (AlignTrack *alignTrack)=0
 sets partial derivatives of residuals w.r.t.
virtual void showStatistics ()=0
 write statistics to log file
virtual bool setResidualCovMatrix (AlignTrack *alignTrack) const =0
 sets residual covariance matrix
virtual void setLogStream (std::ostream *os)
 sets the output stream for the logfile

Static Public Member Functions

static const InterfaceID & interfaceID ()
 Retrieve interface ID.

Protected Attributes

std::ostream * m_logStream = nullptr
 logfile output stream

Private Attributes

int m_solveOption = 0

Detailed Description

Definition at line 36 of file IDerivCalcTool.h.

Member Enumeration Documentation

◆ SolveOption

enum of different solving options

Enumerator
NONE 

not solve in any case (to be used when ipc)

SOLVE 

solving after data accumulation (LAPACK)

SOLVE_FAST 

Fast (Eigen method) solving after data accumulation.

DIRECT_SOLVE 

direct solving (LAPACK), already available matrix & vector

DIRECT_SOLVE_FAST 

direct Fast (Eigen method) solving, already available matrix & vector

DIRECT_SOLVE_CLUSTER 

computation of alignment parameters from SCALAPAK already solved matrix

Definition at line 41 of file IDerivCalcTool.h.

41 {
42 NONE = 0,
43 SOLVE = 1,
44 SOLVE_FAST = 2,
45 DIRECT_SOLVE = 3,
48 }; // this is also defined in TrkGlobAlign class
@ DIRECT_SOLVE_FAST
direct Fast (Eigen method) solving, already available matrix & vector
@ DIRECT_SOLVE_CLUSTER
computation of alignment parameters from SCALAPAK already solved matrix
@ SOLVE
solving after data accumulation (LAPACK)
@ SOLVE_FAST
Fast (Eigen method) solving after data accumulation.
@ NONE
not solve in any case (to be used when ipc)
@ DIRECT_SOLVE
direct solving (LAPACK), already available matrix & vector

Constructor & Destructor Documentation

◆ ~IDerivCalcTool()

virtual Trk::IDerivCalcTool::~IDerivCalcTool ( )
inlinevirtual

Virtual destructor.

Definition at line 51 of file IDerivCalcTool.h.

51{}

Member Function Documentation

◆ interfaceID()

const InterfaceID & IDerivCalcTool::interfaceID ( )
inlinestatic

Retrieve interface ID.

Definition at line 84 of file IDerivCalcTool.h.

84 {
86 }
static const InterfaceID IID_TRKALIGNINTERFACES_IDerivCalcTool("IDerivCalcTool", 1, 0)

◆ setDerivatives()

virtual bool Trk::IDerivCalcTool::setDerivatives ( AlignTrack * alignTrack)
pure virtual

sets partial derivatives of residuals w.r.t.

alignment parameters for all AlignTSOS on alignTrack

Implemented in Trk::AnalyticalDerivCalcTool, and Trk::ShiftingDerivCalcTool.

◆ setLogStream()

virtual void Trk::IDerivCalcTool::setLogStream ( std::ostream * os)
inlinevirtual

sets the output stream for the logfile

Definition at line 71 of file IDerivCalcTool.h.

71{ m_logStream = os; }
std::ostream * m_logStream
logfile output stream

◆ setResidualCovMatrix()

virtual bool Trk::IDerivCalcTool::setResidualCovMatrix ( AlignTrack * alignTrack) const
pure virtual

sets residual covariance matrix

Implemented in Trk::AnalyticalDerivCalcTool, and Trk::ShiftingDerivCalcTool.

◆ setSolveOption()

void Trk::IDerivCalcTool::setSolveOption ( int solveOption)
inline

solving option (see enum above)

Definition at line 57 of file IDerivCalcTool.h.

57{ m_solveOption=solveOption; }

◆ showStatistics()

virtual void Trk::IDerivCalcTool::showStatistics ( )
pure virtual

write statistics to log file

Implemented in Trk::AnalyticalDerivCalcTool, and Trk::ShiftingDerivCalcTool.

Member Data Documentation

◆ m_logStream

std::ostream* Trk::IDerivCalcTool::m_logStream = nullptr
protected

logfile output stream

Definition at line 76 of file IDerivCalcTool.h.

◆ m_solveOption

int Trk::IDerivCalcTool::m_solveOption = 0
private

Definition at line 80 of file IDerivCalcTool.h.


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