OPAL (Object Oriented Parallel Accelerator Library)
2024.2
OPAL
src
Classic
TrimCoils
TrimCoilPhaseFit.h
Go to the documentation of this file.
1
//
2
// Class TrimCoilPhaseFit
3
// General rational function fit of the phase shift
4
//
5
// Copyright (c) 2018 - 2019, Jochem Snuverink, Paul Scherrer Institut, Villigen PSI, Switzerland
6
// All rights reserved
7
//
8
// Implemented as part of the PhD thesis
9
// "Precise Simulations of Multibunches in High Intensity Cyclotrons"
10
// and the paper
11
// "Matching of turn pattern measurements for cyclotrons using multiobjective optimization"
12
// (https://doi.org/10.1103/PhysRevAccelBeams.22.064602)
13
//
14
// This file is part of OPAL.
15
//
16
// OPAL is free software: you can redistribute it and/or modify
17
// it under the terms of the GNU General Public License as published by
18
// the Free Software Foundation, either version 3 of the License, or
19
// (at your option) any later version.
20
//
21
// You should have received a copy of the GNU General Public License
22
// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
23
//
24
#ifndef TRIM_COILPHASEFIT_H
25
#define TRIM_COILPHASEFIT_H
26
27
#include "
TrimCoils/TrimCoilFit.h
"
28
29
#include <vector>
30
31
class
TrimCoilPhaseFit
:
public
TrimCoilFit
{
32
33
public
:
34
TrimCoilPhaseFit
(
double
bmax,
35
double
rmin,
36
double
rmax,
37
const
std::vector<double>& coefnum,
38
const
std::vector<double>& coefdenom,
39
const
std::vector<double>& coefnumphi,
40
const
std::vector<double>& coefdenomphi);
41
42
virtual
~TrimCoilPhaseFit
() { };
43
44
private
:
45
TrimCoilPhaseFit
() =
delete
;
46
48
virtual
void
doApplyField
(
const
double
r,
const
double
z,
const
double
phi_rad,
double
*br,
double
*bz);
49
};
50
51
#endif
//TRIM_COILPHASEFIT_H
TrimCoilFit.h
TrimCoilFit
Definition
TrimCoilFit.h:32
TrimCoilPhaseFit
Definition
TrimCoilPhaseFit.h:31
TrimCoilPhaseFit::~TrimCoilPhaseFit
virtual ~TrimCoilPhaseFit()
Definition
TrimCoilPhaseFit.h:42
TrimCoilPhaseFit::doApplyField
virtual void doApplyField(const double r, const double z, const double phi_rad, double *br, double *bz)
virtual implementation of applyField
Definition
TrimCoilPhaseFit.cpp:36
TrimCoilPhaseFit::TrimCoilPhaseFit
TrimCoilPhaseFit()=delete
Generated on Tue Apr 14 2026 07:18:45 for OPAL (Object Oriented Parallel Accelerator Library) by
1.9.8