IMPACT T
Data Types | Modules | Functions/Subroutines
Field.f90 File Reference

Data Types

type  fieldquantclass::fieldquant
 

Modules

module  fieldquantclass
 This class defines a 3-D field quantity in the accelerator. The field quantity can be updated at each step.
 

Functions/Subroutines

subroutine fieldquantclass::construct_fieldquant (this, innx, inny, innz, geom, grid)
 Initialize field class. More...
 
subroutine fieldquantclass::set_fieldquant (this, innx, inny, innz, geom, grid, nprx, npry)
 set field quantity. More...
 
subroutine fieldquantclass::gradeb_fieldquant (innx, inny, innz, temppotent, ptsgeom, grid, Flagbc, gammaz, FlagImage, egxout, egyout, egzout, bgxout, bgyout, bgzout)
 find the E and B fields in the lab frame from the potential on the grid of beam frame. More...
 
subroutine fieldquantclass::update3otnew_fieldquant (this, source, fldgeom, grid, nxlc
 update potential (solving Possion's equation) with 3D isolated boundary conditions. Here, image charge potential along z also calculated More...
 
subroutine fieldquantclass::openbc3dnew (innx, inny, innz, rho, hx, hy, hz, nxpylc2, nypzlc2, myidz, myidy, npz, npy, commrow, commcol, comm2d, pztable, pytable, ypzstable, xpystable, inxglb, inyglb, inzglb, rhoImg, flagImage, zshift)
 Solving Poisson's equation with open BCs. More...
 
subroutine fieldquantclass::greenf1tintnew2 (nx, ny, nz, nsizez, nsizey, nsizexy, nsizey
 green function for extended array. More...
 
subroutine fieldquantclass::greenf1tintshift2 (nx, ny, nz, nsizez, nsizey, nsizexy, nsiz
 green function for extended array. More...
 
subroutine fieldquantclass::wakefield_fieldquant (Nz, xwakez, ywakez, recvdensz, exwake
 longitudinal and transverse wakefield More...
 
subroutine fieldquantclass::wakereadin_fieldquant (Nz, xwakez, ywakez, recvdensz, exwak
 longitudinal and transverse wakefield on a beam using the readin longitudinal and transverse wake functions More...
 
subroutine fieldquantclass::csrwaketr_fieldquant (Nx, r0, ptmin, hx, blength, rhonew, rh
 new version of the csrwake calculation. this subroutine calculate the 1d csr wakefield including entrance, stead-state, and transitions effects here, hx, rho,...are in real unit. the return ezwake is V/m More...
 
subroutine fieldquantclass::setval_fieldquant (this, i, j, k, value)
 
double precision function fieldquantclass::get_fieldquant (this, i, j, k)
 
subroutine fieldquantclass::getglb_fieldquant (this, temp)
 
subroutine fieldquantclass::getlcgrid_fieldquant (this, nxlc, nylc, nzlc)
 
subroutine fieldquantclass::psiroot (r0, xx, deltas, psi, eps, Nmax)
 find the psi in equation 12 of Stupakov and Emma's paper More...
 
subroutine fieldquantclass::destruct_fieldquant (this)
 
subroutine fieldquantclass::csrwaketrigf_fieldquant (Nx, r0, ptmin, hx, blength, rhonew
 This subroutine calculates the 1d csr wakefield including entrance, stead-state, and transitions effects. Here, hx, rho,...are in real units. The return ezwake is in V! /m. The current version uses IGF corresponding to the four cases ! of Saldin et al. More...
 
double precision function fieldquantclass::icsrcasea (phih, ssh, xk2)
 
double precision function fieldquantclass::icsrcaseb (ssh, xk2)
 
double precision function fieldquantclass::icsrcasec (phimh, xxbarh, ssh, xk2)
 
double precision function fieldquantclass::icsrcased (xxbarh, psimax, ssh, xk2, epstol, Nmax)
 
subroutine fieldquantclass::dwakefield_fieldquant (Nx, Ny, Nz, hx, hy, hz, chgdens, dexwak
 This routine computes the root of the function that is evaluated ! in the subroutine 'funcd'. It is based on the subroutine 'root' of Numerical Recipes 9.4, which makes use of a Newton-Raphson method with root bracketing. It has been modified to handle the two bra! cket endpoints carefully. The routine searches for a root in the inter! val [x1,x2] with a tolerance given by 'xacc', and returns this value as 'rtsafe'. The maximum number of iterations allowed is 'maxit'! . C.E.M. More...
 
subroutine fieldquantclass::dwakeconv_fieldquant (Nz, weightz, hz, kern, lam)
 
subroutine fieldquantclass::dispeqslab_fieldquant (a, b, eps, dlx, nkx, nky, dkx, dky)
 
subroutine fieldquantclass::ampslab_fieldquant (a, b, eps, nkx, nky, dkx, dky, amp)
 
subroutine fieldquantclass::dispeqcyl_fieldquant (a, b, eps, nkx, nky, dky)
 
subroutine fieldquantclass::ampcyl_fieldquant (a, b, eps, nkx, nky, dky, amp)
 
double precision function fieldquantclass::func1 (x, c1, c2)
 
double precision function fieldquantclass::func2 (x, c1, c3)
 
double precision function fieldquantclass::amplsm_sym (a, b, eps, kx, ky)
 
double precision function fieldquantclass::amplsm_asym (a, b, eps, kx, ky)
 
double precision function fieldquantclass::amplse_sym (a, b, eps, kx, ky)
 
double precision function fieldquantclass::amplse_asym (a, b, eps, kx, ky)
 
double precision function fieldquantclass::calclfs (s, a, b, eps)
 
double precision function fieldquantclass::calcr0 (s, a, b)
 

Data Type Documentation

◆ fieldquantclass::fieldquant

type fieldquantclass::fieldquant
Data Fields
double precision, dimension(:,:,:), pointer fieldq num field quantity array.
integer nx num of mesh points in x and y directions.
integer nxlocal
integer ny
integer nylocal
integer nz
integer nzlocal