Commit 5109a1e0 authored by snuverink_j's avatar snuverink_j
Browse files

adapt copyright notice for OPAL-map and matched distribution, for #482

parent 88686646
//
// Source file of the Hamiltonian class,
// Constructs thick lens Hamiltonians up to arbitrary order.
//
// Copyright (c) 2018, Philippe Ganz, ETH Zürich
// All rights reserved
//
// OPAL is licensed under GNU GPL version 3.
#include "Hamiltonian.h" #include "Hamiltonian.h"
Hamiltonian::Hamiltonian(int truncOrder) : truncOrder_m(truncOrder) Hamiltonian::Hamiltonian(int truncOrder) : truncOrder_m(truncOrder)
......
//
// Class: Hamiltonian
// Constructs thick lens Hamiltonian up to arbitrary order for beamline elements
//
// Copyright (c) 2018, Philippe Ganz, ETH Zürich
// All rights reserved
//
// Implemented as part of the Master thesis
// "s-based maps from TPS & Lie-Series applied to Proton-Therapy Gantries"
//
// This file is part of OPAL.
//
// OPAL is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// You should have received a copy of the GNU General Public License
// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
//
#ifndef HAMILTONIAN_H #ifndef HAMILTONIAN_H
#define HAMILTONIAN_H #define HAMILTONIAN_H
/*
* setHamiltonian.cpp
*
* Created on: Jul 24, 2018
* Author: ganz_p
*/
#include "Classic/FixedAlgebra/FTps.h" #include "Classic/FixedAlgebra/FTps.h"
#include "Classic/FixedAlgebra/FVps.h" #include "Classic/FixedAlgebra/FVps.h"
#include "Classic/FixedAlgebra/FTpsMath.h" #include "Classic/FixedAlgebra/FTpsMath.h"
...@@ -15,7 +29,6 @@ ...@@ -15,7 +29,6 @@
#include <functional> #include <functional>
class Hamiltonian class Hamiltonian
{ {
......
// //
// Source file of the MapAnalyser class, analyses linear maps from OPAL-map. // Source file of the MapAnalyser class, analyses linear maps from OPAL-map.
// //
// Copyright (c) 2008-2020 // Copyright (c) 2018, Philippe Ganz, ETH Zürich
// Paul Scherrer Institut, Villigen PSI, Switzerland // All rights reserved
// All rights reserved.
// //
// OPAL is licensed under GNU GPL version 3. // OPAL is licensed under GNU GPL version 3.
......
// //
// MapAnalyser class, analyses linear maps from OPAL-map. // Class: MapAnalyser
// Organizes the function for a linear map analysis from
// ThickTracker.
// Transfer map -> tunes, symplecticity and stability
// Sigma Matrix -> (not projected) beam emittance
//
// This class is in an unfinished state.
// For some dicussion see https://gitlab.psi.ch/OPAL/src/issues/464
// Some cleanup was done in https://gitlab.psi.ch/OPAL/src/merge_requests/294
//
// Copyright (c) 2018, Philippe Ganz, ETH Zürich
// All rights reserved
//
// Implemented as part of the Master thesis
// "s-based maps from TPS & Lie-Series applied to Proton-Therapy Gantries"
//
// This file is part of OPAL.
//
// OPAL is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// //
// Copyright (c) 2008-2020 // You should have received a copy of the GNU General Public License
// Paul Scherrer Institut, Villigen PSI, Switzerland // along with OPAL. If not, see <https://www.gnu.org/licenses/>.
// All rights reserved.
// //
// OPAL is licensed under GNU GPL version 3.
#ifndef MAP_ANALYSER_H #ifndef MAP_ANALYSER_H
#define MAP_ANALYSER_H #define MAP_ANALYSER_H
...@@ -17,21 +36,6 @@ ...@@ -17,21 +36,6 @@
#include <array> #include <array>
#include <complex> #include <complex>
/*!
// ------------------------------------------------------------------------
//
// Class: MapAnalyser
// Organizes the function for a linear map analysis from
// ThickTracker.
// Transfer map -> tunes, symplecticity and stability
// Sigma Matrix -> (not projected) beam emittance
//
// ------------------------------------------------------------------------
//
// $Author: ganz $
//
// ------------------------------------------------------------------------
*/
class MapAnalyser class MapAnalyser
{ {
public: public:
......
// ------------------------------------------------------------------------
// Copyright: see Copyright.readme
// ------------------------------------------------------------------------
//
// Class: ThickTracker
// The visitor class for building a map of given order for a beamline
// using a finite-length lenses for all elements.
// Multipole-like elements are done by expanding the Lie series.
// //
// ------------------------------------------------------------------------ // Source file of the ThickTracker class
// Tracks using thick-lens algorithm.
// //
// $Author: ganz_p $ // Copyright (c) 2018, Philippe Ganz, ETH Zürich
// All rights reserved
// //
// ------------------------------------------------------------------------ // OPAL is licensed under GNU GPL version 3.
#include <cfloat> #include <cfloat>
#include <fstream> #include <fstream>
......
#ifndef OPAL_ThickTracker_HH
#define OPAL_ThickTracker_HH
// ------------------------------------------------------------------------
// Copyright: see Copyright.readme
// ------------------------------------------------------------------------
// //
// Class: ThickTracker // Class: ThickTracker
// // Tracks using thick-lens algorithm.
// ------------------------------------------------------------------------ // ------------------------------------------------------------------------
// //
// $Author: ganz_p $ // Copyright (c) 2018, Philippe Ganz, ETH Zürich
// All rights reserved
// //
// ------------------------------------------------------------------------ // Implemented as part of the Master thesis
// "s-based maps from TPS & Lie-Series applied to Proton-Therapy Gantries"
//
// This file is part of OPAL.
//
// OPAL is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// You should have received a copy of the GNU General Public License
// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
//
#ifndef OPAL_ThickTracker_HH
#define OPAL_ThickTracker_HH
#include "Algorithms/Tracker.h" #include "Algorithms/Tracker.h"
#include "Structure/DataSink.h" #include "Structure/DataSink.h"
...@@ -60,10 +70,6 @@ class BMultipoleField; ...@@ -60,10 +70,6 @@ class BMultipoleField;
template <class T, unsigned Dim> template <class T, unsigned Dim>
class PartBunchBase; class PartBunchBase;
// Class ThickTracker
// ------------------------------------------------------------------------
/// Track using thick-lens algorithm. /// Track using thick-lens algorithm.
// [p] // [p]
// Phase space coordinates numbering: // Phase space coordinates numbering:
......
/** //
* @file SigmaGenerator.h // Class: SigmaGenerator.h
* The SigmaGenerator class uses the class <b>ClosedOrbitFinder</b> to get the parameters (inverse bending radius, path length // The SigmaGenerator class uses the class <b>ClosedOrbitFinder</b> to get the parameters (inverse bending radius, path length
* field index and tunes) to initialize the sigma matrix. // field index and tunes) to initialize the sigma matrix.
* The main function of this class is <b>match(value_type, size_type)</b>, where it iteratively tries to find a matched distribution for given // The main function of this class is <b>match(value_type, size_type)</b>, where it iteratively tries to find a matched distribution for given
* emittances, energy and current. The computation stops when the L2-norm is smaller than a user-defined tolerance. \n // emittances, energy and current. The computation stops when the L2-norm is smaller than a user-defined tolerance. \n
* In default mode it prints all space charge maps, cyclotron maps and second moment matrices. The orbit properties, i.e. // In default mode it prints all space charge maps, cyclotron maps and second moment matrices. The orbit properties, i.e.
* tunes, average radius, orbit radius, inverse bending radius, path length, field index and frequency error, are printed // tunes, average radius, orbit radius, inverse bending radius, path length, field index and frequency error, are printed
* as well. // as well.
* //
* @author Matthias Frey, Cristopher Cortes // Copyright (c) 2014, 2018, Matthias Frey, Cristopher Cortes, ETH Zürich
* @version 1.1 // All rights reserved
*/ //
// Implemented as part of the Semester thesis by Matthias Frey
// "Matched Distributions in Cyclotrons"
//
// Some adaptations done as part of the Bachelor thesis by Cristopher Cortes
// "Limitations of a linear transfer map method for finding matched distributions in high intensity cyclotrons"
//
// This file is part of OPAL.
//
// OPAL is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// You should have received a copy of the GNU General Public License
// along with OPAL. If not, see <https://www.gnu.org/licenses/>.
//
#ifndef SIGMAGENERATOR_H #ifndef SIGMAGENERATOR_H
#define SIGMAGENERATOR_H #define SIGMAGENERATOR_H
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment