Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

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
        }
   }

...

  • set the basis order to be 0 (p=0).
    Code Block
      FiniteElement: {
        Order: 0            //p=0 outside of the window
        CurvedSurfaces: on
      }
    
  • 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.01         //back pudding is 0.01m
        Front: 0.1          //backfront pudding is 0.1m
        StructureEnd: 1 beamsize.0   //the maximal z.
      }
    

Moving-window with mesh refinement 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
      }
    
  • set an automatic moving window that following with the beam
    Code Block
    
      MeshRefinement: {
        Order:  2          //inside the window, p=2 (basis function order)
        Back:  0.01        //back pudding is 0.01m
        Front: 0.1          //front pudding is full beamsize 0.1m
        Subdivision: 1     //subdivide each element inside window once
        StructureEnd: 1.0  //the maximal z.
      }
    

Gaussian beam going through a cavity

  • The first step is to provide beam information:
    Code Block
      LoadingInfo:  {
         Bunch: {
           Type: Gaussian
           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
         }
         SymmetryFactor: 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)
      }
    
  • Optional: Force analytical BeamBoundaryLoading (can be used if the beampipe is cylindrical). Not required. Default is OFF.
Code Block
  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)
  }

...

Code Block
   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 Block
  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
  }

...

Code Block
  LinearSolver: {
        Solver:              CG                     //other options include MUMPS (direct solver, faster for less than 32 CPUs) 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
  }

...