xx Periodic

Periodic

Erik Schnetter <schnetter@uni-tuebingen.de>

Date

Abstract

Provide periodic boundary conditions.

1 Introduction

This thorn provides periodic boundary conditions that are independent of PUGH, i.e.xthey work with both PUGH and Carpet. They use the new boundary condition scheme, so that no changes to existing code and only small changes to existing parameter files are necessary. Currently, thorn Periodic works in single patch mode only.

2 Using This Thorn Make sure that the other symmetry thorns (e.g.xCartGrid3D) do not provide symmetry boundary conditions for the same boundaries as Periodic. Then activate thorn Periodic and thorn Slab. Set the parameters Periodic::periodic* according to your wishes.

2.1 Obtaining This Thorn This thorn (and thorn Slab) are available in the TAT arrangement.

2.2 Examples The following lines come from a WaveToy simulation with Carpet:

xxxdriver::global_nxxxxxxxxxxxxxxxx=x19
xxxdriver::global_nyxxxxxxxxxxxxxxx=x26
xxxdriver::global_nzxxxxxxxxxxxxxxx=x34
xxxdriver::ghost_sizexxxxxxxxxxxxxx=x2
xxxgrid::typexxxxxxxxxxxxxxxxxxxxxx=xbyrange
xxxgrid::xminxxxxxxxxxxxxxxxxxxxxxx=x-5.4
xxxgrid::yminxxxxxxxxxxxxxxxxxxxxxx=x-7.2
xxxgrid::zminxxxxxxxxxxxxxxxxxxxxxx=x-9.6
xxxgrid::xmaxxxxxxxxxxxxxxxxxxxxxxx=xx5.4
xxxgrid::ymaxxxxxxxxxxxxxxxxxxxxxxx=xx7.8
xxxgrid::zmaxxxxxxxxxxxxxxxxxxxxxxx=x10.2
xxxgrid::domainxxxxxxxxxxxxxxxxxxxx=xfull
xxxperiodic::periodicxxxxxxxxxxxxxx=xyes

3 Parameters

11checkxboundaries10Scope: privatex01  BOOLEAN

11Description: Check the boundaries for poison

11               10  x01  Default: no

11

11periodic  10Scope: privatex01  BOOLEAN

11Description: Periodic boundary conditions

11               10  x01  Default: no

11

11periodicxx  10Scope: privatex01  BOOLEAN

11Description: Periodic boundary conditions in x-direction

11               10  x01  Default: no

11

11periodicxy  10Scope: privatex01  BOOLEAN

11Description: Periodic boundary conditions in y-direction

11               10  x01  Default: no

11

11periodicxz  10Scope: privatex01  BOOLEAN

11Description: Periodic boundary conditions in z-direction

11               10  x01  Default: no

11poisonxboundaries 10Scope: privatex01  BOOLEAN

11Description: Fill the symmetry boundary with a poison value before the symmetry is applied

11               10  x01  Default: no

11

11poisonxvalue 10Scope: privatex01  INT

11Description: Integer value (0..255) used to poison new timelevels (with memset)

11 Range 10 x01 Default: 254
110:255  10Must fit into a byte. Use 0 for zero, 255 for nan, and e.g. 113 for a large value.

11

11verbose  10Scope: privatex01  BOOLEAN

11Description: Produce screen output while applying boundary conditions

11               10  x01  Default: no

11

4 Interfaces

General Implements: periodic

Uses header: Slab.h

Provides: PeriodicxApplyVI to PeriodicxApplyVN to PeriodicxApplyGI to PeriodicxApplyGN to

5 Schedule This section lists all the variables which are assigned storage by thorn CactusNumerical/Periodic. Storage can either last for the duration of the run (Always means that if this thorn is activated storage will be assigned, Conditional means that if this thorn is activated storage will be assigned for the duration of the run if some condition is met), or can be turned on for the duration of a schedule function.

Storage NONE

Scheduled Functions

SymmetryRegister x periodicxregisterbc x register periodic boundary conditions x

11x11Language:11c
11 x 11Type: 11function

11

BoundaryConditions x periodicxapplybc x apply periodic boundary conditions x

11x11Language:11c
11 x 11Type: 11function