OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
TrimCoilMirrored.h
Go to the documentation of this file.
1 //
2 // Class TrimCoilMirrored
3 // Shape mirrored from TC-15 shape
4 // http://accelconf.web.cern.ch/AccelConf/ipac2017/papers/thpab077.pdf
5 //
6 // Copyright (c) 2018 - 2019, Jochem Snuverink, Paul Scherrer Institut, Villigen PSI, Switzerland
7 // All rights reserved
8 //
9 // This file is part of OPAL.
10 //
11 // OPAL is free software: you can redistribute it and/or modify
12 // it under the terms of the GNU General Public License as published by
13 // the Free Software Foundation, either version 3 of the License, or
14 // (at your option) any later version.
15 //
16 // You should have received a copy of the GNU General Public License
17 // along with OPAL. If not, see <https://www.gnu.org/licenses/>.
18 //
19 #ifndef TRIM_COILMIRRORED_H
20 #define TRIM_COILMIRRORED_H
21 
22 #include "TrimCoils/TrimCoil.h"
23 
24 class TrimCoilMirrored : public TrimCoil{
25 
26 public:
27  TrimCoilMirrored(double bmax,
28  double rmin,
29  double rmax,
30  double slope);
31 
32  virtual ~TrimCoilMirrored() { };
33 
34 private:
36  double bslope_m;
37 
39  virtual void doApplyField(const double r, const double z, const double phi_rad, double *br, double *bz);
40 
41  TrimCoilMirrored() = delete;
42 };
43 
44 #endif //TRIM_COILMIRRORED_H
TrimCoilMirrored()=delete
double bslope_m
Slope in (1 / mm)
virtual void doApplyField(const double r, const double z, const double phi_rad, double *br, double *bz)
virtual implementation of applyField
virtual ~TrimCoilMirrored()