PeriodicCarpet

Erik Schnetter <eschnetter@perimeterinstitute.ca>

January 09 2012

Abstract

1 Introduction

PeriodicCarpet applies periodic boundary conditions to Carpet grids. In particular, it provides correct behaviour for the case where a refinement level overlaps the periodic boundaries, and may therefore be made up of more than one component on the same process. Thorn Periodic, by constrast, will not handle this case properly.

2 Using This Thorn

The usage is rather simple and resembles that of Periodic, with boolean parameters periodic, periodic_x, periodic_y and periodic_z. An important point to notice is that if CarpetRegrid2 is used, its parameters symmetry_periodic_x, symmetry_periodic_y and symmetry_periodic_z have to be set accordingly.

3 Parameters




periodic
Scope: private BOOLEAN



Description: Periodic boundary conditions in all directions



Default: no






periodic_x
Scope: private BOOLEAN



Description: Periodic boundary conditions in x-direction



Default: no






periodic_y
Scope: private BOOLEAN



Description: Periodic boundary conditions in y-direction



Default: no






periodic_z
Scope: private BOOLEAN



Description: Periodic boundary conditions in z-direction



Default: no






verbose
Scope: private BOOLEAN



Description: Produce screen output while applying boundary conditions



Default: no



4 Interfaces

General

Implements:

periodiccarpet

Inherits:

grid

Uses header:

carpet.hh

mpi_string.hh

dist.hh

Provides:

Periodic_ApplyVI to

Periodic_ApplyVN to

Periodic_ApplyGI to

Periodic_ApplyGN to

5 Schedule

This section lists all the variables which are assigned storage by thorn Carpet/PeriodicCarpet. 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

CCTK_PARAMCHECK

  periodiccarpet_paramcheck

  register periodic boundary conditions

 

  Language: c
  Options: level
  Type: function

SymmetryRegister

  periodiccarpet_registerbc

  register periodic boundary conditions

 

  Language: c
  Type: function

BoundaryConditions

  periodiccarpet_applybc

  apply periodic boundary conditions

 

  Language: c
  Type: function