ComputationalRadiationPhysics / openPMD-converter-GDF

converter between openPMD and GDF
9 stars 2 forks source link

GPT input file for external electron beam in PIConGPU #4

Open BeyondEspresso opened 6 years ago

BeyondEspresso commented 6 years ago

This is the modified GPT-input file for generating a suitable electron beam that fits into the checkpoint in #3 .

# Global Performance Parameters
# accuracy(12) ;

# Define beam parameters
FWHMtoRMS = 1.0/(2*sqrt(2*log(2))) ;        # factor for conversion from FWHM to Gaussian "tau" values

charge = -0.100e-09;                    # total electron beam charge within distibution
length= 10.0e-15 * c * FWHMtoRMS;               # electron bunch length
bunchRadius = 5.0e-6; # 5 micrometer
gamma = 100./0.511+1; # 100.0 MeV
deltaG = 0.01 * gamma;

startz= 0;

nps = 100000;                           # simulated number of electrons
emittance = 0.3e-6;                     # transverse normalized emittance

# Start initial beam

# Real space distribution
setparticles("beam",nps,me,qe,charge) ;
setzdist( "beam", "*g", 0, length  , 3, 3 ) ;
setxdist( "beam", "*g", 0, bunchRadius, 3, 3 ) ;
setydist( "beam", "*g", 0, bunchRadius, 3, 3 ) ;
#setzdist( "beam", "*u", 0, length   ) ;
#setxdist( "beam", "*u", 0, diameter ) ;
#setydist( "beam", "*u", 0, diameter ) ;
#setrxydist( "beam" , "*u", diameter/2 , diameter ) ;
#setphidist( "beam", "*u", 0, 2*pi ) ;

# Phase space distribution
setGBxdist( "beam", "*g", 0, 1, 2,2 ) ;
setGBydist( "beam", "*g", 0, 1, 2,2 ) ;

# Energy distribution
setGdist("beam","*g",gamma,deltaG,2,2) ;

# set emittances
setGBxemittance( "beam", emittance ) ;
setGByemittance( "beam", emittance ) ;

# Spacecharge model
# spacecharge3Dmesh() ;                 # full 3D point-to-point relativistic self-fields

#distance=1.0; # 1 meter propagation distance
#tout(0,distance/c,distance/c/200);
tout(0.0)                # Immediate output, without any tracing calculations