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

This class stores the rf cavity data Ez, Ez', Ez'' on the axis; Fourier coefficients of Ez on the axis; Ez(r,z), Er(r,z), Htheta(r,z) on the r-z grid plane; and Ex(x,y,z), Ey(x,y,z), Ez(x,y,z), Bx(x,y,z), By(x,y,z), Bz(x,y,z) on uniform x, y, z grid, and Br(r,z) and Bz(r,z) on the r-z grid. More...

Data Types

type  fielddata
 

Functions/Subroutines

subroutine init_data ()
 Initialize the data storage arrays. More...
 
subroutine destruct_data ()
 
subroutine read1_data (ifile)
 read in the discrete field data Ez(0,z), Ez'(0,z), Ez''(0,z) distribution along axis zdat from files "rfdatax or rfdataxx or rfdataxxx". More...
 
subroutine read2_data (ifile)
 read in discrete Ez(r,z), Er(r,z) and Btheta(r,z) rf data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7. Here, the grid is uniform in r and z. More...
 
subroutine read3_data (ifile)
 readin the Fourier coefficients of the RF field from files "rfdatax or rfdataxx or rfdataxxx". More...
 
subroutine read4_data (ifile)
 read in discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z), Bx(x,y,z), By(x,y,z), Bz(x,y,z) rf data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7. Here, the grid is uniform in x, y and z. More...
 
subroutine initt_data (this)
 
subroutine destructt_data (this)
 
subroutine read1t_data (this, ifile)
 readin the Fourier coefficients of the RF field from files "rfdatax or rfdataxx or rfdataxxx". More...
 
subroutine read1tdata_data (this, ifile)
 readin the Fourier coefficients of the RF field from files "rfdatax or rfdataxx or rfdataxxx". More...
 
subroutine read2t_data (this, ifile)
 read in discrete Ez(r,z), Er(r,z) and Btheta(r,z) rf data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7. Here, the grid is uniform in r and z. More...
 
subroutine read4t_data (this, ifile)
 read in analytical function coefficients of Ex(x,y,z), Ey(x,y,z), Ez(x,y,z), Bx(x,y,z), By(x,y,z), Bz(x,y,z) rf data from "rfdatax or rfdataxx or rfdataxxx". More...
 
subroutine read2tsol_data (this, ifile)
 read in discrete Bz(r,z), Br(r,z) data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7 for solenoid. Here, the grid is uniform in r and z. More...
 
subroutine read3t_data (this, ifile)
 read in discrete complex Ex(x,y,z), Ey(x,y,z), Ez(x,y,z), Bx(x,y,z), By(x,y,z), Bz(x,y,z) rf data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7. Here, the grid is uniform in x, y and z. This field can be used to model the traveling wave structure More...
 

Variables

integer ndata
 practical number of grid data on the axis or Fourier coefficients. More...
 

using the x-y-z field data (Ex,Ey,Ez,Bx,By,Bz) directly.

integer nxintvrfg = 1
 number of grid points along x, y, and z direction. More...
 
integer nyintvrfg = 1
 number of grid points along x, y, and z direction. More...
 
integer nzintvrfg = 1
 number of grid points along x, y, and z direction. More...
 
double precision xmaxrfg
 range in x, y, and zdirections. More...
 
double precision xminrfg
 range in x, y, and zdirections. More...
 
double precision ymaxrfg
 range in x, y, and zdirections. More...
 
double precision yminrfg
 range in x, y, and zdirections. More...
 
double precision zmaxrfg
 range in x, y, and zdirections. More...
 
double precision zmin
 range in x, y, and zdirections. More...
 
double precision, dimension(:,:,:), allocatable exgrid
 discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z. More...
 
double precision, dimension(:,:,:), allocatable eygrid
 discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z. More...
 
double precision, dimension(:,:,:), allocatable ezgrid
 discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z. More...
 
double precision, dimension(:,:,:), allocatable bxgrid
 discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z. More...
 
double precision, dimension(:,:,:), allocatable bygrid
 discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z. More...
 
double precision, dimension(:,:,:), allocatable bzgrid
 discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z. More...
 

using the r-z field data (Er,Ez,Htheta) directly.

integer nrintvrf = 1
 number of grid points along r direction. More...
 
integer nzintvrf = 1
 number of grid points along z direction. More...
 
double precision rmaxrf
 range in r and z directions. More...
 
double precision rminrf
 range in r and z directions. More...
 
double precision zmaxrf
 range in r and z directions. More...
 
double precision zminrf
 range in r and z directions. More...
 
double precision, dimension(:,:), allocatable ezdata
 discrete Ez(r,z), Er(r,z) and Htheta(r,z) rf data. Here, the grid is uniform in r and z. More...
 
double precision, dimension(:,:), allocatable erdata
 discrete Ez(r,z), Er(r,z) and Htheta(r,z) rf data. Here, the grid is uniform in r and z. More...
 
double precision, dimension(:,:), allocatable btdata
 discrete Ez(r,z), Er(r,z) and Htheta(r,z) rf data. Here, the grid is uniform in r and z. More...
 

using only on-axis field data and its derivities.

integer, parameter ndataini = 5000
 initial number of grid points on the axis. More...
 
double precision, dimension(ndatainizdat
 discrete Ez(0,z), Ez'(0,z), Ez''(0,z) rf data. More...
 
double precision, dimension(ndatainiedat
 discrete Ez(0,z), Ez'(0,z), Ez''(0,z) rf data. More...
 
double precision, dimension(ndatainiepdat
 discrete Ez(0,z), Ez'(0,z), Ez''(0,z) rf data. More...
 
double precision, dimension(ndatainieppdat
 discrete Ez(0,z), Ez'(0,z), Ez''(0,z) rf data. More...
 

using the Fourier coefficients

double precision, dimension(ncoefffcoef
 
integer, parameter ncoeff = 401
 number of Fourier expansion coefficients. More...
 

Detailed Description

This class stores the rf cavity data Ez, Ez', Ez'' on the axis; Fourier coefficients of Ez on the axis; Ez(r,z), Er(r,z), Htheta(r,z) on the r-z grid plane; and Ex(x,y,z), Ey(x,y,z), Ez(x,y,z), Bx(x,y,z), By(x,y,z), Bz(x,y,z) on uniform x, y, z grid, and Br(r,z) and Bz(r,z) on the r-z grid.

Author
Ji Qiang

Data Type Documentation

◆ dataclass::fielddata

type dataclass::fielddata
Data Fields
double precision, dimension(:,:), pointer brdatat discrete Ezt(r,z,i), Ert(r,z,i) and Btheta(r,z,i) rf data. Here, the grid is uniform in r and z.
double precision, dimension(:,:), pointer btdatat discrete Ezt(r,z,i), Ert(r,z,i) and Btheta(r,z,i) rf data. Here, the grid is uniform in r and z.
double complex, dimension(:,:,:), pointer bxgridt discrete Ex(x,y,z,i), Ey(x,y,z,i), Ez(x,y,z,i) and Bx(x,y,z,i), By(x,y,z,i), and Bz(x,y,z,i) rf data. Here, the grid is uniform in x, y and z.
double complex, dimension(:,:,:), pointer bygridt discrete Ex(x,y,z,i), Ey(x,y,z,i), Ez(x,y,z,i) and Bx(x,y,z,i), By(x,y,z,i), and Bz(x,y,z,i) rf data. Here, the grid is uniform in x, y and z.
double precision, dimension(:,:), pointer bzdatat discrete Ezt(r,z,i), Ert(r,z,i) and Btheta(r,z,i) rf data. Here, the grid is uniform in r and z.
double complex, dimension(:,:,:), pointer bzgridt discrete Ex(x,y,z,i), Ey(x,y,z,i), Ez(x,y,z,i) and Bx(x,y,z,i), By(x,y,z,i), and Bz(x,y,z,i) rf data. Here, the grid is uniform in x, y and z.
double precision, dimension(:), pointer coefbx coefficients for analytical function description of the rf data.
double precision, dimension(:), pointer coefby coefficients for analytical function description of the rf data.
double precision, dimension(:), pointer coefbz coefficients for analytical function description of the rf data.
double precision, dimension(:), pointer coefex coefficients for analytical function description of the rf data.
double precision, dimension(:), pointer coefey coefficients for analytical function description of the rf data.
double precision, dimension(:), pointer coefez coefficients for analytical function description of the rf data.
double precision, dimension(:,:), pointer erdatat discrete Ezt(r,z,i), Ert(r,z,i) and Btheta(r,z,i) rf data. Here, the grid is uniform in r and z.
double complex, dimension(:,:,:), pointer exgridt discrete Ex(x,y,z,i), Ey(x,y,z,i), Ez(x,y,z,i) and Bx(x,y,z,i), By(x,y,z,i), and Bz(x,y,z,i) rf data. Here, the grid is uniform in x, y and z.
double complex, dimension(:,:,:), pointer eygridt discrete Ex(x,y,z,i), Ey(x,y,z,i), Ez(x,y,z,i) and Bx(x,y,z,i), By(x,y,z,i), and Bz(x,y,z,i) rf data. Here, the grid is uniform in x, y and z.
double precision, dimension(:,:), pointer ezdatat discrete Ezt(r,z,i), Ert(r,z,i) and Btheta(r,z,i) rf data. Here, the grid is uniform in r and z.
double complex, dimension(:,:,:), pointer ezgridt discrete Ex(x,y,z,i), Ey(x,y,z,i), Ez(x,y,z,i) and Bx(x,y,z,i), By(x,y,z,i), and Bz(x,y,z,i) rf data. Here, the grid is uniform in x, y and z.
double precision, dimension(401) fcoeft practical number of grid data on the axis or Fourier coefficients.
double precision, dimension(4, 10002) fcoeftdata here, maximum data point is 5000 for E field or B field.
integer ncbx number of coefficients in Bx.
integer ncby number of coefficients in By.
integer ncbz number of coefficients in Bz.
integer ncex number of coefficients in Ex.
integer ncey number of coefficients in Ey.
integer ncez number of coefficients in Ez.
integer ndatat
integer nrintvrft number of grid points along r direction.
integer nxintvrfgt number of grid points along x, y, and z direction.
integer nyintvrfgt number of grid points along x, y, and z direction.
integer nzintvrfgt number of grid points along x, y, and z direction.
integer nzintvrft number of grid points along z direction.
double precision rmaxrft range in r and z directions.
double precision rminrft range in r and z directions.
double precision xmaxrfgt range in x, y, and zdirections.
double precision xminrfgt range in x, y, and zdirections.
double precision ymaxrfgt range in x, y, and zdirections.
double precision yminrfgt range in x, y, and zdirections.
double precision zmaxrfgt range in x, y, and zdirections.
double precision zmaxrft range in r and z directions.
double precision zminrfgt range in x, y, and zdirections.
double precision zminrft range in r and z directions.

Function/Subroutine Documentation

◆ destruct_data()

subroutine dataclass::destruct_data ( )

◆ destructt_data()

subroutine dataclass::destructt_data ( type (fielddata), intent(inout)  this)

◆ init_data()

subroutine dataclass::init_data ( )

Initialize the data storage arrays.

◆ initt_data()

subroutine dataclass::initt_data ( type (fielddata), intent(inout)  this)
Here is the caller graph for this function:

◆ read1_data()

subroutine dataclass::read1_data ( integer, intent(in)  ifile)

read in the discrete field data Ez(0,z), Ez'(0,z), Ez''(0,z) distribution along axis zdat from files "rfdatax or rfdataxx or rfdataxxx".

Here is the call graph for this function:

◆ read1t_data()

subroutine dataclass::read1t_data ( type (fielddata), intent(inout)  this,
integer, intent(in)  ifile 
)

readin the Fourier coefficients of the RF field from files "rfdatax or rfdataxx or rfdataxxx".

Here is the call graph for this function:
Here is the caller graph for this function:

◆ read1tdata_data()

subroutine dataclass::read1tdata_data ( type (fielddata), intent(inout)  this,
integer, intent(in)  ifile 
)

readin the Fourier coefficients of the RF field from files "rfdatax or rfdataxx or rfdataxxx".

Here is the call graph for this function:

◆ read2_data()

subroutine dataclass::read2_data ( integer, intent(in)  ifile)

read in discrete Ez(r,z), Er(r,z) and Btheta(r,z) rf data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7. Here, the grid is uniform in r and z.

Here is the call graph for this function:

◆ read2t_data()

subroutine dataclass::read2t_data ( type (fielddata), intent(inout)  this,
integer, intent(in)  ifile 
)

read in discrete Ez(r,z), Er(r,z) and Btheta(r,z) rf data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7. Here, the grid is uniform in r and z.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ read2tsol_data()

subroutine dataclass::read2tsol_data ( type (fielddata), intent(inout)  this,
integer, intent(in)  ifile 
)

read in discrete Bz(r,z), Br(r,z) data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7 for solenoid. Here, the grid is uniform in r and z.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ read3_data()

subroutine dataclass::read3_data ( integer, intent(in)  ifile)

readin the Fourier coefficients of the RF field from files "rfdatax or rfdataxx or rfdataxxx".

Here is the call graph for this function:

◆ read3t_data()

subroutine dataclass::read3t_data ( type (fielddata), intent(inout)  this,
integer, intent(in)  ifile 
)

read in discrete complex Ex(x,y,z), Ey(x,y,z), Ez(x,y,z), Bx(x,y,z), By(x,y,z), Bz(x,y,z) rf data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7. Here, the grid is uniform in x, y and z. This field can be used to model the traveling wave structure

Here is the call graph for this function:
Here is the caller graph for this function:

◆ read4_data()

subroutine dataclass::read4_data ( integer, intent(in)  ifile)

read in discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z), Bx(x,y,z), By(x,y,z), Bz(x,y,z) rf data from files "1Tx.T7 or 1Txx.T7 or 1Txxx.T7. Here, the grid is uniform in x, y and z.

Here is the call graph for this function:

◆ read4t_data()

subroutine dataclass::read4t_data ( type (fielddata), intent(inout)  this,
integer, intent(in)  ifile 
)

read in analytical function coefficients of Ex(x,y,z), Ey(x,y,z), Ez(x,y,z), Bx(x,y,z), By(x,y,z), Bz(x,y,z) rf data from "rfdatax or rfdataxx or rfdataxxx".

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ btdata

double precision, dimension(:,:), allocatable dataclass::btdata

discrete Ez(r,z), Er(r,z) and Htheta(r,z) rf data. Here, the grid is uniform in r and z.

◆ bxgrid

double precision, dimension(:,:,:), allocatable dataclass::bxgrid

discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z.

◆ bygrid

double precision, dimension(:,:,:), allocatable dataclass::bygrid

discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z.

◆ bzgrid

double precision, dimension(:,:,:), allocatable dataclass::bzgrid

discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z.

◆ edat

double precision, dimension(ndataini) dataclass::edat

discrete Ez(0,z), Ez'(0,z), Ez''(0,z) rf data.

◆ epdat

double precision, dimension(ndataini) dataclass::epdat

discrete Ez(0,z), Ez'(0,z), Ez''(0,z) rf data.

◆ eppdat

double precision, dimension(ndataini) dataclass::eppdat

discrete Ez(0,z), Ez'(0,z), Ez''(0,z) rf data.

◆ erdata

double precision, dimension(:,:), allocatable dataclass::erdata

discrete Ez(r,z), Er(r,z) and Htheta(r,z) rf data. Here, the grid is uniform in r and z.

◆ exgrid

double precision, dimension(:,:,:), allocatable dataclass::exgrid

discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z.

◆ eygrid

double precision, dimension(:,:,:), allocatable dataclass::eygrid

discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z.

◆ ezdata

double precision, dimension(:,:), allocatable dataclass::ezdata

discrete Ez(r,z), Er(r,z) and Htheta(r,z) rf data. Here, the grid is uniform in r and z.

◆ ezgrid

double precision, dimension(:,:,:), allocatable dataclass::ezgrid

discrete Ex(x,y,z), Ey(x,y,z), Ez(x,y,z) and Bx(x,y,z), By(x,y,z), and Bz(x,y,z) rf data. Here, the grid is uniform in x, y and z.

◆ fcoef

double precision, dimension(ncoeff) dataclass::fcoef

◆ ncoeff

integer, parameter dataclass::ncoeff = 401

number of Fourier expansion coefficients.

◆ ndata

integer dataclass::ndata

practical number of grid data on the axis or Fourier coefficients.

◆ ndataini

integer, parameter dataclass::ndataini = 5000

initial number of grid points on the axis.

◆ nrintvrf

integer dataclass::nrintvrf = 1

number of grid points along r direction.

◆ nxintvrfg

integer dataclass::nxintvrfg = 1

number of grid points along x, y, and z direction.

◆ nyintvrfg

integer dataclass::nyintvrfg = 1

number of grid points along x, y, and z direction.

◆ nzintvrf

integer dataclass::nzintvrf = 1

number of grid points along z direction.

◆ nzintvrfg

integer dataclass::nzintvrfg = 1

number of grid points along x, y, and z direction.

◆ rmaxrf

double precision dataclass::rmaxrf

range in r and z directions.

◆ rminrf

double precision dataclass::rminrf

range in r and z directions.

◆ xmaxrfg

double precision dataclass::xmaxrfg

range in x, y, and zdirections.

◆ xminrfg

double precision dataclass::xminrfg

range in x, y, and zdirections.

◆ ymaxrfg

double precision dataclass::ymaxrfg

range in x, y, and zdirections.

◆ yminrfg

double precision dataclass::yminrfg

range in x, y, and zdirections.

◆ zdat

double precision, dimension(ndataini) dataclass::zdat

discrete Ez(0,z), Ez'(0,z), Ez''(0,z) rf data.

◆ zmaxrf

double precision dataclass::zmaxrf

range in r and z directions.

◆ zmaxrfg

double precision dataclass::zmaxrfg

range in x, y, and zdirections.

◆ zmin

double precision dataclass::zmin

range in x, y, and zdirections.

◆ zminrf

double precision dataclass::zminrf

range in r and z directions.