Fork me on GitHub

source: git/external/Hector/H_RomanPot.cc@ 16e0e46

ImprovedOutputFile Timing dual_readout llp 3.3.3pre01
Last change on this file since 16e0e46 was 3c40083, checked in by pavel <pavel@…>, 11 years ago

switch to a more stable Hector version

  • Property mode set to 100644
File size: 1.5 KB
RevLine 
[3c40083]1/*
2---- Hector the simulator ----
3 A fast simulator of particles through generic beamlines.
4 J. de Favereau, X. Rouby ~~~ hector_devel@cp3.phys.ucl.ac.be
5
6 http://www.fynu.ucl.ac.be/hector.html
7
8 Centre de Physique des Particules et de Phénoménologie (CP3)
9 Université Catholique de Louvain (UCL)
10*/
[5b822e5]11
12/// \file H_RomanPot.cc
13/// \brief Roman pot class
14
15// local #includes
16#include "H_RomanPot.h"
17#include "H_RectangularAperture.h"
18#include "H_TransportMatrices.h"
19
20void H_RomanPot::init() {
21 // must be in public section
22 setTypeString();
23 setMatrix(0,MP,QP);
24 return;
25}
26
[3c40083]27H_RomanPot::H_RomanPot(const double s, const double app) :H_OpticalElement(RP,s,0.,RP_LENGTH){
[5b822e5]28 init();
[3c40083]29 H_RectangularAperture* rapp = new H_RectangularAperture(app,RP_HEIGHT,0,0);
30 setAperture(rapp);
[5b822e5]31}
32
[3c40083]33H_RomanPot::H_RomanPot(const string nameE, const double s, const double app) :H_OpticalElement(nameE,RP,s,0.,RP_LENGTH){
[5b822e5]34 init();
[3c40083]35 H_RectangularAperture* rapp = new H_RectangularAperture(app,RP_HEIGHT,0,0);
36 setAperture(rapp);
[5b822e5]37}
38
[3c40083]39void H_RomanPot::printProperties() const {
40 cout << typestring << name;
41 cout << "\t\t at s = " << fs;
42 if(element_aperture->getType()!=NONE) {
43 cout <<"\t aperture type = " << element_aperture->getTypeString();
44 element_aperture->printProperties();
45 }
[5b822e5]46
[3c40083]47 cout<<endl;
[5b822e5]48}
49
[3c40083]50void H_RomanPot::setMatrix(const float eloss, const float p_mass, const float p_charge) const {
51 *element_mat = driftmat(0);
52 return ;
[5b822e5]53}
Note: See TracBrowser for help on using the repository browser.