ATLAS Offline Software
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Private Attributes | List of all members
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. More...
 
void setSolveOption (int solveOption)
 solving option (see enum above) More...
 
virtual bool setDerivatives (AlignTrack *alignTrack)=0
 sets partial derivatives of residuals w.r.t. More...
 
virtual void showStatistics ()=0
 write statistics to log file More...
 
virtual bool setResidualCovMatrix (AlignTrack *alignTrack) const =0
 sets residual covariance matrix More...
 
virtual void setLogStream (std::ostream *os)
 sets the output stream for the logfile More...
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 Retrieve interface ID. More...
 

Protected Attributes

std::ostream * m_logStream
 logfile output stream More...
 

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,
46  DIRECT_SOLVE_FAST = 4,
48  }; // this is also defined in TrkGlobAlign class

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  {
85  return IID_TRKALIGNINTERFACES_IDerivCalcTool;
86  }

◆ 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::ShiftingDerivCalcTool, and Trk::AnalyticalDerivCalcTool.

◆ 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; }

◆ setResidualCovMatrix()

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

sets residual covariance matrix

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

◆ 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::ShiftingDerivCalcTool, and Trk::AnalyticalDerivCalcTool.

Member Data Documentation

◆ m_logStream

std::ostream* Trk::IDerivCalcTool::m_logStream
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:
Trk::IDerivCalcTool::m_logStream
std::ostream * m_logStream
logfile output stream
Definition: IDerivCalcTool.h:76
Trk::IDerivCalcTool::DIRECT_SOLVE_CLUSTER
@ DIRECT_SOLVE_CLUSTER
computation of alignment parameters from SCALAPAK already solved matrix
Definition: IDerivCalcTool.h:47
Trk::IDerivCalcTool::NONE
@ NONE
not solve in any case (to be used when ipc)
Definition: IDerivCalcTool.h:42
Trk::IDerivCalcTool::m_solveOption
int m_solveOption
Definition: IDerivCalcTool.h:80
Trk::IDerivCalcTool::SOLVE_FAST
@ SOLVE_FAST
Fast (Eigen method) solving after data accumulation.
Definition: IDerivCalcTool.h:44
Trk::IDerivCalcTool::SOLVE
@ SOLVE
solving after data accumulation (LAPACK)
Definition: IDerivCalcTool.h:43
Trk::IDerivCalcTool::DIRECT_SOLVE
@ DIRECT_SOLVE
direct solving (LAPACK), already available matrix & vector
Definition: IDerivCalcTool.h:45
Trk::IDerivCalcTool::DIRECT_SOLVE_FAST
@ DIRECT_SOLVE_FAST
direct Fast (Eigen method) solving, already available matrix & vector
Definition: IDerivCalcTool.h:46
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231