IMPACT T
Data Types | Functions/Subroutines | Variables
cclclass Module Reference

This class defines the linear transfer map and RF field for the CCL beam line elment. More...

Data Types

type  ccl
 
interface  getparam_ccl
 
interface  setparam_ccl
 

Functions/Subroutines

subroutine construct_ccl (this, numseg, nmpstp, type, blength)
 
subroutine setparam1_ccl (this, i, value)
 
subroutine setparam2_ccl (this, values)
 
subroutine setparam3_ccl (this, numseg, nmpstp, type, blength)
 
subroutine getparam1_ccl (this, i, blparam)
 
subroutine getparam2_ccl (this, blparams)
 
subroutine getparam3_ccl (this, blength, bnseg, bmapstp, btype)
 
subroutine getaxflde_ccl (z, this, ez1, ezp1, ezpp1)
 interpolate the field from the CCL rf cavity onto bunch location. More...
 
subroutine getaxfldefc_ccl (z, this, ez1, ezp1, ezpp1)
 get external RF field on axis from analytical Fourier coefficients More...
 
subroutine getflderr_ccl (pos, extfld, this, dx, dy, anglex, angley, anglez)
 get external field with displacement and rotation errors. More...
 
subroutine getfld_ccl (pos, extfld, this)
 get external field without displacement and rotation errors. More...
 
subroutine getfldt_ccl (pos, extfld, this, fldata)
 get external field without displacement and rotation errors. More...
 

Variables

integer, parameter, private nparam = 11
 

Detailed Description

This class defines the linear transfer map and RF field for the CCL beam line elment.

Author
Ji Qiang

Data Type Documentation

◆ cclclass::ccl

type cclclass::ccl
Data Fields
integer itype
double precision length
integer mapstp
integer nseg
double precision, dimension(nparam) param

Function/Subroutine Documentation

◆ construct_ccl()

subroutine cclclass::construct_ccl ( type (ccl), intent(out)  this,
integer, intent(in)  numseg,
integer, intent(in)  nmpstp,
integer, intent(in)  type,
double precision, intent(in)  blength 
)

◆ getaxflde_ccl()

subroutine cclclass::getaxflde_ccl ( double precision, intent(in)  z,
type (ccl), intent(in)  this,
double precision, intent(out)  ez1,
double precision, intent(out)  ezp1,
double precision, intent(out)  ezpp1 
)

interpolate the field from the CCL rf cavity onto bunch location.

Here is the caller graph for this function:

◆ getaxfldefc_ccl()

subroutine cclclass::getaxfldefc_ccl ( double precision, intent(in)  z,
type (ccl), intent(in)  this,
double precision, intent(out)  ez1,
double precision, intent(out)  ezp1,
double precision, intent(out)  ezpp1 
)

get external RF field on axis from analytical Fourier coefficients

◆ getfld_ccl()

subroutine cclclass::getfld_ccl ( double precision, dimension(4), intent(in)  pos,
double precision, dimension(6), intent(out)  extfld,
type (ccl), intent(in)  this 
)

get external field without displacement and rotation errors.

Here is the caller graph for this function:

◆ getflderr_ccl()

subroutine cclclass::getflderr_ccl ( double precision, dimension(4), intent(in)  pos,
double precision, dimension(6), intent(out)  extfld,
type (ccl), intent(in)  this,
double precision, intent(in)  dx,
double precision, intent(in)  dy,
double precision, intent(in)  anglex,
double precision, intent(in)  angley,
double precision, intent(in)  anglez 
)

get external field with displacement and rotation errors.

Here is the caller graph for this function:

◆ getfldt_ccl()

subroutine cclclass::getfldt_ccl ( double precision, dimension(4), intent(in)  pos,
double precision, dimension(6), intent(out)  extfld,
type (ccl), intent(in)  this,
type (fielddata), intent(in)  fldata 
)

get external field without displacement and rotation errors.

Here is the caller graph for this function:

◆ getparam1_ccl()

subroutine cclclass::getparam1_ccl ( type (ccl), intent(in)  this,
integer, intent(in)  i,
double precision, intent(out)  blparam 
)

◆ getparam2_ccl()

subroutine cclclass::getparam2_ccl ( type (ccl), intent(in)  this,
double precision, dimension(:), intent(out)  blparams 
)

◆ getparam3_ccl()

subroutine cclclass::getparam3_ccl ( type (ccl), intent(in)  this,
double precision, intent(out)  blength,
integer, intent(out)  bnseg,
integer, intent(out)  bmapstp,
integer, intent(out)  btype 
)

◆ setparam1_ccl()

subroutine cclclass::setparam1_ccl ( type (ccl), intent(inout)  this,
integer, intent(in)  i,
double precision, intent(in)  value 
)

◆ setparam2_ccl()

subroutine cclclass::setparam2_ccl ( type (ccl), intent(inout)  this,
double precision, dimension(:), intent(in)  values 
)

◆ setparam3_ccl()

subroutine cclclass::setparam3_ccl ( type (ccl), intent(inout)  this,
integer, intent(in)  numseg,
integer, intent(in)  nmpstp,
integer, intent(in)  type,
double precision, intent(in)  blength 
)

Variable Documentation

◆ nparam

integer, parameter, private cclclass::nparam = 11
private