Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel
titleTable of Contents
Table of Contents
minLevel2
outlinetrue
indent30px
typeflat
separatornewline

ModelInfo

Tell T3P which mesh file to load and what boundary conditions are used for the different side sets in the mesh file (default: Electric)

Code Block
Wiki Markup
{panel:title=Table of Contents}
{toc:type=flat|separator=newline|outline=true|indent=30px|minLevel=2}
{panel}

h3. ModelInfo

Tell T3P which mesh file to load and what boundary conditions are used for the different side sets in the mesh file (default: Electric)
{code}
 ModelInfo:  {
  File: coarse.ncdf
  BoundaryCondition:   {
    Electric: 2
    Magnetic: 3 4
    Absorbing: 5 6
   }
 }
{code}

h3. MeshPartitioning

To specify the method to partition the mesh
{code}

MeshPartitioning

To specify the method to partition the mesh

Code Block
   MeshPartitioning:  {
        Method: PARMETIS   //the other option is ZOLTAN
        Zoltan: {     //if the main method is ZOLTAN, this container will provide further zoltan specific options
           Method: RCB
           Dimension: 1
           Partition Direction: Z
        }
   }
{code}

h3. Normal finite 

Normal finite element parameters

Code Block

  element parameters

FiniteElement: {             
    Order: 2                // global order of basis functions (can be 1...6, 2 is recommended)
    CurvedSurfaces: on   
  }

h3. 

P-window

...

for

...

short-range

...

wakefield

...

*set

...

the

...

basis

...

order

...

to

...

be

...

0

...

(p=0).

{
Code Block
}
  FiniteElement: {
    Order: 0            //p=0 outside of the window
    CurvedSurfaces: on
  }
{code}
\

*set

...

an

...

automatic

...

moving

...

window

...

that

...

following

...

with

...

the

...

beam

{
Code Block
}
  PRegion: {
    Type: AutomaticMovingWindow
    Order:  2           //inside the window, p=2 (basis function order)
    Back:  0.1        //back pudding is 0.1 beamsize
    Front: 1          //front pudding is full beamsize
  }
{code}

Gaussian beam going through a cavity

*The first step is to provide beam information:

Code Block
h3. Gaussian beam going through a cavity

\*The first step is to provide beam information:
{code}
  LoadingInfo:  {
     Bunch: {
       Type: Gaussian        //Gaussian bunch (the only option)
       Sigma: 2e-3           //Sigma (RMS) size of the bunch
       Nsigmas: 5            //beam occupies the location from -5 sigma to +5 sigma, total of 10 sigmas
       Charge: 1.            //charge
     }
     Symmetry factor: 4      //factor by which to reduce the charge to account for symmetry conditions (monopole on axis: use 4, dipole at X (or Y) offset: use 2 in connection with proper electric boundary conditions in one plane)
     StartPoint: 0. 0. 0.    //StartPoint is the position where the beam enters the structure (typically at low Z values)
     Direction: 0. 0. 1.     //Direction along which the bunch will move, at the speed of light (should be the direction of the normal of the face with BoundaryID)
     BoundaryID: 5           //The boundary ID (sidelist number from Cubit), specifies the boundary through which the bunch enters the structure (should be a flat surface, containing StartPoint)
  }
{code}
\

*Optional:

...

Force

...

analytical

...

BeamBoundaryLoading

...

(can

...

be

...

used

...

if

...

the

...

beampipe

...

is

...

cylindrical).

...

Not

...

required.

...

Default

...

is

...

OFF.

Code Block



{code}
  Loading: {
    Type: BeamBoundaryLoading
    Analytical: on
    // Specify the right-handed coordinate system with its Z-axis along the beamline ( CrossProduct(X, Y) = Z = Direction specified above)
    Origin: 0.0 0.0 0.0
    XDirection: 1.0 0.0 0.0     //this is the direction of the beam offset, if any
    YDirection: 0.0 1.0 0.0
    Beampipe radius: 0.04
    Beam offset: 0             //offset in x-direction of the local 2D coordinate system (value needs to be consistent with StartPoint specified above)
  }

Time Integration Parameters

Code Block
{code}

h3. Time Integration Parameters

{code}
  TimeStepping: {
     MaximumTime: 10.e-10  //the maximal time to step
     DT: 2e-12             //delta T
  }
{code}

h3. Wakefield Monitor

<font 

Wakefield Monitor

<font color="red">need

...

more

...

expalantion</font>

{
Code Block
}
   Monitor: {
    Type: WakeField
    Name: wake
    InID: 5
    OutID: 6
    Start contour: 0.05
    End contour: 0.10
    Start structure: 0.0
    End structure: 0.15
    Smax: 0.3                   //
  }

Point Monitor

To record the field values at specified location

Code Block
{code}

h3. Point Monitor

To record the field values at specified location
{code}
   Monitor: {
     Type: Point             //point monitor
     Name: monA                                    //an output file called monA.out will be generated
                                                       //it contains: t Hx Hy Hz Ex Ey Ez
     Coordinate:  0.00002, 0.02, 0.1495  //the location
   }
{code}

h3. Power Monitor
{code}

Power Monitor

Code Block
  Monitor: {
    Type: Power
    ReferenceNumber: 4     //which reference surface to monitor
    Name: mymon2
    TimeStart: 0           //when power monitor starts
    TimeEnd:   30.0e-9     //when it ends
    TimeStep:  0.125e-11   //how often it records power density
  }
{code}

h3. Volume Monitor
{code}

Volume Monitor

Code Block
  Monitor: {
    Type: Volume
    Name: vol
    TimeStart: 10.e-9          //when volume monitor starts
    TimeEnd:   500.e-9       //when it ends
    TimeStep:  50.e-9         //how often it records volume fields
  }
{code}

After

...

T3P

...

finished

...

runs,

...

users

...

should

...

run

...

acdtool

...

to

...

generate

...

mode

...

files

...

for

...

each

...

records

...

of

...

the

...

volume

...

fields

...

using

...

the

...

following

...

command:

...


acdtool

...

postprocess

...

volmontomode

...

t3pinput

...

<jobname>

...

The

...

mode

...

files

...

generated

...

can

...

be

...

viewed

...

using

...

paraview.

CheckPoint

request T3P code to checkpointing itself every certain timesteps so that one can restart T3P.

Code Block


h3. CheckPoint

request T3P code to checkpointing itself every certain timesteps so that one can restart T3P.
{code}
  CheckPoint: {
    Action: restart             //default should be restart. If there is no data available, it will have fresh start.
    Ntimesteps: 100           //every 100 times steps, code will checkpoint itself
    Directory: CHECKPOINT   //the default directory to store checkpointing data
  }

LinearSolver

The options for linear solvers in the implicit timestepping.

Code Block
{code}

h3. LinearSolver

The options for linear solvers in the implicit timestepping.
{code}
  LinearSolver: {
        Solver:              CG                     //other options include MUMPS if it is compiled in
        Preconditioner:	  CHOLESKY       //other options include DIAGONAL
        PrintFrequency:      50                //if you want print solver convergence history
        QuietMode:              1	        //Set it to 1 if you do not want to print anything
        Tolerance:           1e-10            //relative tolerance
        MaxIterations:       3000            //maxima number of iterations before CG quits
  }

Load a TEM waveguide mode on a coax port

Code Block
{code}

h3. Load a TEM waveguide mode on a coax port
{code}
 Loading: {
  Type: PortModeLoading  //loading type
  Port:  {
    ReferenceNumber: 3   //port is at reference surface 3
    Origin: 0.0 0.0 -0.011
    XDirection: 1.0 0.0 0.0
    YDirection: 0.0 1.0 0.0
    ESolver: {
      Type: Analytic
      Mode:  {
        WaveguideType: Coax
        ModeType: TEM
        A: 0.0011
        B: 0.0033
      }
    }
  }
  Excitation: {
    Power: 1.
    Pulse: {
      Type: Monochromatic
      Frequency: 10.5e9
      Rise periods: 150
      Fall periods: 150
      T0: 0.
      TMax: 100.e-9
    }
  }
 }
{code}