### ### We define the borders of the computational volume, ### we define the default mesh-spacing, ### and we define the conditions at the borders: ### -mesh spacing= eval(InnerRadius/15) pxlow= eval(-1.1*OuterRadius) pylow= eval(-1.1*OuterRadius) pzlow = eval(-(GapLength/2+TaperLength+9e-2)) pxhigh= eval( 1.1*OuterRadius) pyhigh= eval( 1.1*OuterRadius) pzhigh= eval( (GapLength/2+TaperLength+9e-2)) # # The conditions to use at the borders of the computational volume: # cxlow= electric, cxhigh= electric cylow= electric, cyhigh= electric czlow= electric, czhigh= electricFor the linecharge, we have to specify its total charge, its length, and the (x,y)-position where it shall travel. We also have to say that we do not want to compute eigenvalues, but we want to perform a time domain computation. We specify that at the lower and upper z-planes absorbing boundary conditions shall be applied. In the section
-time
, we specify that we want to have saved
the fields at 100 equidistant times between the time that the line charge
has traveled 0.1 m and it has traveled 1 m.
We edit our inputfile, such that the end of it looks as:
-eigenvalues solutions= 15 estimation= 2e9 # the estimated highest frequency # doit -fdtd -lcharge charge= 1e-12 sigma= eval(4*STPSZE) xposition= 0, yposition= 0 shigh= 1.5 showdata= yes return -ports name= beamlow , plane= zlow, modes= 3, npml= 40, doit name= beamhigh, plane= zhigh, modes= 3, npml= 40, doit return -time firstsaved= eval(0.1/@clight) lastsaved= eval(1/@clight) distancesaved= eval(0.01/@clight) return doitThe so edited inputfile can be found as /usr/local/gd1/Tutorial-SRRC/wPlunger-wake.gdf. When we feed gd1 with the edited inputfile,
gd1 < wPlunger-wake.gdfgd1 stops and complains
*** rnum: Bad Constant: starts here: "position1 " *** DefinitionsAndExpand: Status: ill-formed expression *** last raw line: " call InnerPlunger(eval(OuterRadius-position1), 17 )" *** Since this not seems to be an interactive session, *** I decide to treat this as a fatal error. *** Fix the input. stopWe did not what the value of the symbols
position1
and
position2
shall be.
We do this by defining them on the commandline of gd1:
gd1 -Dposition1=50e-3 -Dposition2=0 < wPlunger-wake.gdfNow the computation runs. After some minutes, the last words of gd1 are:
## I cannot find an excited port.. is this a wake computation? timestep= 900, simulated time= 6.9055e-09 s cpu time/sec: used: 798.40, since last call: 36.94, MFLOPs/s: 30.43 Wall clock time: 1.697e+03 s, MFLOPs/s: 14.32 ## I cannot find an excited port.. is this a wake computation? The highest simulation time is reached .., I am stopping ################################ # cpu-seconds for FDTD : 815 # start time : 19:26:05 # end time : 20:07:39 # date : 17/09/99 ## This is the normal end. Don't worry. ## Start the postprocessor to look at the results. stop FDTDLoop