ATLAS Offline Software
QuadFocuserVertical.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 #include "FPTracker/Point.h"
9 #include <cmath>
10 #include <iomanip>
11 #include <iostream>
12 
13 namespace FPTracker{
14 
15  void QuadFocuserVertical::focus(double qk, double qkl, double qkc, const TransversePoint& dxyz, const Point& dir ) {
16  //std::cout<<std::setprecision(9)<<"VFocus: qk "<<qk<<" qkl "<<qkl<<" qkc "<<qkc<<" displ "<<dxyz<<" dir "<<dir<<'\n';
17  m_ye = std::cos(qkl)* dxyz[1] + std::sin(qkl)*dir[1]/qkc ;
18  m_yae = -qk*std::sin(qkl)* dxyz[1] + std::cos(qkl)*dir[1]/dir[2] ;
19  m_xe = std::cosh(qkl)* dxyz[0] + std::sinh(qkl)*dir[0]/qkc ;
20  m_xae = qk*std::sinh(qkl)* dxyz[0] + std::cosh(qkl)*dir[0]/dir[2] ;
21  }
22 
23  double QuadFocuserVertical::xe() const {return m_xe;}
24  double QuadFocuserVertical::xae() const {return m_xae;}
25  double QuadFocuserVertical::ye() const {return m_ye;}
26  double QuadFocuserVertical::yae() const {return m_yae;}
27 
28  const std::string QuadFocuserVertical::s_label = "VFocuser";
29  std::string QuadFocuserVertical::label() const {return s_label;}
30 }
31 
32 
33 
FPTracker::QuadFocuserVertical::label
std::string label() const
Definition: QuadFocuserVertical.cxx:29
FPTracker::QuadFocuserVertical::focus
void focus(double, double, double, const TransversePoint &displacement, const Point &direction)
Definition: QuadFocuserVertical.cxx:15
Point.h
FPTracker::QuadFocuserVertical::m_xae
double m_xae
Definition: QuadFocuserVertical.h:29
TransversePoint.h
FPTracker::QuadFocuserVertical::m_ye
double m_ye
Definition: QuadFocuserVertical.h:30
FPTracker::QuadFocuserVertical::s_label
static const std::string s_label
Definition: QuadFocuserVertical.h:26
drawFromPickle.cos
cos
Definition: drawFromPickle.py:36
QuadFocuserVertical.h
FPTracker::QuadFocuserVertical::xae
double xae() const
Definition: QuadFocuserVertical.cxx:24
FPTracker::QuadFocuserVertical::xe
double xe() const
Definition: QuadFocuserVertical.cxx:23
FPTracker::QuadFocuserVertical::ye
double ye() const
Definition: QuadFocuserVertical.cxx:25
FPTracker::QuadFocuserVertical::m_yae
double m_yae
Definition: QuadFocuserVertical.h:31
beamspotman.dir
string dir
Definition: beamspotman.py:623
FPTracker::QuadFocuserVertical::m_xe
double m_xe
Definition: QuadFocuserVertical.h:28
FPTracker::QuadFocuserVertical::yae
double yae() const
Definition: QuadFocuserVertical.cxx:26
FPTracker::Point
Definition: FPTracker/FPTracker/Point.h:14
FPTracker
Definition: FPTracker/FPTracker/Beamline.h:12
drawFromPickle.sin
sin
Definition: drawFromPickle.py:36
FPTracker::TransversePoint
Definition: FPTracker/FPTracker/TransversePoint.h:12