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

Data Types

type  beambunchclass::beambunch
 

Modules

module  beambunchclass
 This class defines the charged particle beam bunch information in the accelerator.
 

Functions/Subroutines

subroutine beambunchclass::construct_beambunch (this, incurr, inkin, inmass, incharge
 Initialize Beambunch class. More...
 
subroutine beambunchclass::setnpt_beambunch (this, innpt)
 Set local # of particles. More...
 
subroutine beambunchclass::getnpt_beambunch (this, outnpt)
 Get local # of particles. More...
 
subroutine beambunchclass::drifthalf_beambunch (this, t, tau, betazini)
 Drift half step in positions. Here, x, y, z are normalized by C * Dt tau - normalized step size (by Dt). Only particle with z > 0 is drifted. More...
 
subroutine beambunchclass::driftemission_beambunch (this, t, tau, betazini)
 Particle emission For particle with z < 0, they are just shifted long z This is used to simulate the process of emission from photocathod. More...
 
subroutine beambunchclass::drifthalforg_beambunch (this, t, tau)
 Drift half step in positions. Here, x, y, z are normalized by C * Dt tau - normalized step size (by Dt). More...
 
subroutine beambunchclass::driftz_beambunch (this, dz)
 
subroutine beambunchclass::kick1t_beambunch (this, beamelem, zbeamelem, idrfile, nbea
 
subroutine beambunchclass::scatter2t_beambunch (innp, innx, inny, innz, rays, exg, eyg, ezg, ptsgeom, npx, npy, myidx, myidy, tg, gammaz, chge, mass, dt, beamelem, zbeamelem, idrfile, nbeamln, ibinit, ibend)
 
subroutine beambunchclass::scatter20t_beambunch (innp, rays, tg, chge, mass, dt, beamelem, zbeamelem, idrfile, nbeamln, ibinit, ibend, fldmap, flagerr)
 
subroutine beambunchclass::kick2t_beambunch (innp, innx, inny, innz, rays, exg, eyg, ezg, bxg, byg, bzg, ptsgeom, npx, npy, myidx, myidy, tg, chge, mass, dt, beamelem, zbeamelem, idrfile, nbeamln, ibinit, ibend, fldmap, flagerr)
 
subroutine beambunchclass::lost_beambunch (this, xrad, yrad, zleng, zcent, nplc, nptot)
 
subroutine beambunchclass::lostxy_beambunch (this, xradmin, xradmax, yradmin, yradmax
 
subroutine beambunchclass::kickpt2pt_beambunch (nptlc, rays, tg, chge, mass, dt, beamelem, zbeamelem, idrfile, nbeamln, ibinit, ibend, fldmap, totchrg, r0, npttot, nptrue)
 
subroutine beambunchclass::kickpt2ptimg_beambunch (nptlc, rays, tg, chge, mass, dt, beamelem, zbeamelem, idrfile, nbeamln, ibinit, ibend, fldmap, totchrg, r0, npttot, nptrue)
 
subroutine beambunchclass::rottot_beambunch (this, ptref, ptrange, poscent)
 
subroutine beambunchclass::rotbackt_beambunch (this, ptref)
 
subroutine beambunchclass::conventr_beambunch (this, zorgin, gamin)
 
subroutine beambunchclass::convexit_beambunch (this, zorgin)
 
subroutine beambunchclass::convexitold_beambunch (this)
 
subroutine beambunchclass::driftbackhalf_beambunch (this, t, tau)
 
subroutine beambunchclass::drifthalfbd_beambunch (this, t, tau)
 
subroutine beambunchclass::kick2tbd_beambunch (innp, innx, inny, innz, rays, exg, eyg, ezg, bxg, byg, bzg, ptsgeom, npx, npy, myidx, myidy, tg, chge, mass, dt, beamelem, zbeamelem, idrfile, nbeamln, idbd, fldmap, refpt)
 
subroutine beambunchclass::kick2tbd0_beambunch (innp, rays, tg, chge, mass, dt, beamelem, zbeamelem, idrfile, nbeamln, idbd, fldmap, refpt)
 
subroutine beambunchclass::destruct_beambunch (this)
 

Data Type Documentation

◆ beambunchclass::beambunch

type beambunchclass::beambunch
Data Fields
double precision charge charge
double precision current beam current
double precision mass part. mass
integer npt num of total global macroparticles
integer nptlocal num of total local particles
double precision, dimension(:,:), pointer pts1 particles type one
double precision, dimension(6) refptcl reference particle