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

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

Data Types

type  dtl
 
interface  getparam_dtl
 
interface  setparam_dtl
 

Functions/Subroutines

subroutine construct_dtl (this, numseg, nmpstp, type, blength)
 
subroutine setparam1_dtl (this, i, value)
 
subroutine setparam2_dtl (this, values)
 
subroutine setparam3_dtl (this, numseg, nmpstp, type, blength)
 
subroutine getparam1_dtl (this, i, blparam)
 
subroutine getparam2_dtl (this, blparams)
 
subroutine getparam3_dtl (this, blength, bnseg, bmapstp, btype)
 
subroutine getaxflde_dtl (z, this, ez1, ezp1, ezpp1)
 interpolate the field from the DTL rf cavity onto bunch location. More...
 
subroutine getbgradfld_dtl (z, this, bgrad)
 
subroutine getflderrold_dtl (pos, extfld, this, dx, dy, anglex, angley
 get external field with displacement and rotation errors. More...
 
subroutine getflderr_dtl (pos, extfld, this, dx, dy, anglex, angley, anglez)
 get external field with different field and Quad displacement and rotation errors. Here, there 2 displacement errors and rotation errors for Quad More...
 
subroutine getfld_dtl (pos, extfld, this)
 get external field without displacement and rotation errors. More...
 
subroutine getfldt_dtl (pos, extfld, this, fldata)
 get external field without displacement and rotation errors. More...
 

Variables

integer, parameter, private nparam = 25
 

Detailed Description

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

Author
Ji Qiang

Data Type Documentation

◆ dtlclass::dtl

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

Function/Subroutine Documentation

◆ construct_dtl()

subroutine dtlclass::construct_dtl ( type (dtl), intent(out)  this,
integer, intent(in)  numseg,
integer, intent(in)  nmpstp,
integer, intent(in)  type,
double precision, intent(in)  blength 
)

◆ getaxflde_dtl()

subroutine dtlclass::getaxflde_dtl ( double precision, intent(in)  z,
type (dtl), intent(in)  this,
double precision, intent(out)  ez1,
double precision, intent(out)  ezp1,
double precision, intent(out)  ezpp1 
)

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

Here is the caller graph for this function:

◆ getbgradfld_dtl()

subroutine dtlclass::getbgradfld_dtl ( double precision, intent(in)  z,
type (dtl), intent(in)  this,
double precision, intent(out)  bgrad 
)

◆ getfld_dtl()

subroutine dtlclass::getfld_dtl ( double precision, dimension(4), intent(in)  pos,
double precision, dimension(6), intent(out)  extfld,
type (dtl), intent(in)  this 
)

get external field without displacement and rotation errors.

Here is the caller graph for this function:

◆ getflderr_dtl()

subroutine dtlclass::getflderr_dtl ( double precision, dimension(4), intent(in)  pos,
double precision, dimension(6), intent(out)  extfld,
type (dtl), 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 different field and Quad displacement and rotation errors. Here, there 2 displacement errors and rotation errors for Quad

Here is the caller graph for this function:

◆ getflderrold_dtl()

subroutine dtlclass::getflderrold_dtl ( double precision, dimension(4), intent(in)  pos,
double precision, dimension(6), intent(out)  extfld,
type (dtl), intent(in)  this,
double precision, intent(in)  dx,
double precision, intent(in)  dy,
double precision, intent(in)  anglex,
double precision, intent(in)  angley 
)

get external field with displacement and rotation errors.

◆ getfldt_dtl()

subroutine dtlclass::getfldt_dtl ( double precision, dimension(4), intent(in)  pos,
double precision, dimension(6), intent(out)  extfld,
type (dtl), 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_dtl()

subroutine dtlclass::getparam1_dtl ( type (dtl), intent(in)  this,
integer, intent(in)  i,
double precision, intent(out)  blparam 
)

◆ getparam2_dtl()

subroutine dtlclass::getparam2_dtl ( type (dtl), intent(in)  this,
double precision, dimension(:), intent(out)  blparams 
)

◆ getparam3_dtl()

subroutine dtlclass::getparam3_dtl ( type (dtl), intent(in)  this,
double precision, intent(out)  blength,
integer, intent(out)  bnseg,
integer, intent(out)  bmapstp,
integer, intent(out)  btype 
)

◆ setparam1_dtl()

subroutine dtlclass::setparam1_dtl ( type (dtl), intent(inout)  this,
integer, intent(in)  i,
double precision, intent(in)  value 
)

◆ setparam2_dtl()

subroutine dtlclass::setparam2_dtl ( type (dtl), intent(inout)  this,
double precision, dimension(:), intent(in)  values 
)

◆ setparam3_dtl()

subroutine dtlclass::setparam3_dtl ( type (dtl), 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 dtlclass::nparam = 25
private