Fork me on GitHub

source: git/external/Hector/H_Marker.cc@ 5b822e5

ImprovedOutputFile Timing dual_readout llp
Last change on this file since 5b822e5 was 5b822e5, checked in by pavel <pavel@…>, 11 years ago

add Hector module

  • Property mode set to 100644
File size: 2.0 KB
Line 
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * *
2 * *
3* --<--<-- A fast simulator --<--<-- *
4* / --<--<-- of particle --<--<-- *
5* ----HECTOR----< *
6* \ -->-->-- transport through -->-->-- *
7* -->-->-- generic beamlines -->-->-- *
8* *
9* JINST 2:P09005 (2007) *
10* X Rouby, J de Favereau, K Piotrzkowski (CP3) *
11* http://www.fynu.ucl.ac.be/hector.html *
12* *
13* Center for Cosmology, Particle Physics and Phenomenology *
14* Universite catholique de Louvain *
15* Louvain-la-Neuve, Belgium *
16 * *
17 * * * * * * * * * * * * * * * * * * * * * * * * * * * */
18
19/// \file H_Marker.cc
20/// \brief Class defining a marker in the beamline (e.g. for interaction point)
21
22// local includes
23#include "H_Marker.h"
24#include "H_TransportMatrices.h"
25
26void H_Marker::init() {
27 // must be in public section
28 setTypeString();
29 setMatrix(0,MP,QP);
30 return;
31}
32
33std::ostream& operator<< (std::ostream& os, const H_Marker& el) {
34 os << el.typestring << el.name << "\t\t at s = " << el.fs;
35 if(el.element_aperture->getType()!=NONE) {
36 os << *(el.element_aperture) << endl;
37 }
38 return os;
39}
40
41//void H_Marker::setMatrix(const float eloss, const float p_mass, const float p_charge) {
42void H_Marker::setMatrix(const float , const float , const float ) {
43 element_mat = driftmat(0);
44 return ;
45}
46
47H_Marker* H_Marker::clone() const {
48 H_Marker* temp_mkr = new H_Marker(name,fs);
49 temp_mkr->setAperture(element_aperture);
50 temp_mkr->setX(xpos);
51 temp_mkr->setY(ypos);
52 temp_mkr->setTX(txpos);
53 temp_mkr->setTY(typos);
54 temp_mkr->setBetaX(betax);
55 temp_mkr->setBetaY(betay);
56 return temp_mkr;
57}
Note: See TracBrowser for help on using the repository browser.