CarpetReduce

Erik Schnetter <schnetter@uni-tuebingen.de>

April 29, 2003

Abstract

1 Introduction

2 Physical System

3 Numerical Implementation

4 Using This Thorn

4.1 Obtaining This Thorn

4.2 Basic Usage

4.3 Special Behaviour

4.4 Interaction With Other Thorns

4.5 Examples

4.6 Support and Feedback

5 History

5.1 Thorn Source Code

5.2 Thorn Documentation

5.3 Acknowledgements

References

6 Parameters




debug_iweight
Scope: private  BOOLEAN



Description: Allow debugging iweight grid function by keeping it allocated



  Default: no






min_max_time_interpolation
Scope: private  BOOLEAN



Description: Interpolate in time for min/max reductions



  Default: yes






verbose
Scope: private  BOOLEAN



Description: Produce screen output while running



  Default: no



7 Interfaces

General

Implements:

reduce

Grid Variables

7.0.1 PRIVATE GROUPS




  Group Names    Variable Names    Details   




iweight iweight   compact0
  descriptionInteger weight mask
    descriptionusing 2ˆD  bits
  dimensions3
  distributionDEFAULT
  group typeGF
  tagsprolongation=”none” InterpNumTimelevels=1 checkpoint=”no”
  timelevels1
 variable typeINT




weight weight   compact0
  descriptionWeight function
  dimensions3
  distributionDEFAULT
  group typeGF
  tagsprolongation=”none” InterpNumTimelevels=1 checkpoint=”no”
  timelevels1
 variable typeREAL




one one   compact0
  descriptionConstant one
  dimensions3
  distributionDEFAULT
  group typeGF
  tagsprolongation=”none” InterpNumTimelevels=1 checkpoint=”no”
  timelevels1
 variable typeREAL




excised_cells excised_cells   compact0
  descriptionExcised (ignored) volume in the simulation domain
    descriptionin terms of coarse grid cells
  dimensions0
  distributionCONSTANT
  group typeSCALAR
  tagscheckpoint=”no”
  timelevels1
 variable typeREAL




Adds header:

bits.h to CarpetReduce_bits.h

Uses header:

nompi.h

defs.hh

dh.hh

dist.hh

vect.hh

carpet.hh

carpet.h

typecase.hh

typeprops.hh

loopcontrol.h

8 Schedule

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

 

Always:  
weight  
excised_cells 
   

Scheduled Functions

CCTK_STARTUP

  carpetreducestartup

  startup routine

 

 Language:c
 Type: function

CCTK_BASEGRID

  maskbase_setupmask

  set up the weight function

 

 After:spatialcoordinates
   sphericalsurface_setup
 Type:group

MaskBase_SetupMaskAll

  maskbase_setmask

  set the weight function

 

 After: setupimask
 Language:c
 Options: global
   loop-local
 Reads: carpetreduce::iweight(everywhere)
 Type: function
 Writes: carpetreduce::one(everywhere)
   carpetreduce::weight(everywhere)

MaskBase_SetupMaskAll

  setupmask

  set up the real weight function (schedule other routines in here)

 

 After:maskbase_setmask
 Type:group

MaskBase_SetupMaskAll

  maskbase_testmask

  test the weight function

 

 After: setupmask
 Language:c
 Options: global
 Reads: carpetreduce::excised_cells(everywhere)
 Type: function
 Writes: carpetreduce::excised_cells(everywhere)

SetupIMaskInternal

  coordbase_setupmask

  set up the outer boundaries of the weight function

 

 Language:c
 Options: global
   loop-local
 Type: function
 Writes: carpetreduce::iweight(everywhere)

SetupIMaskInternal

  carpetmasksetup

  set up the weight function for the restriction regions

 

 Language:c
 Options: global
   loop-singlemap
 Reads: carpetreduce::iweight(everywhere)
 Type: function
 Writes: carpetreduce::iweight(everywhere)

CCTK_POSTREGRIDINITIAL

  maskbase_setupmask

  set up the weight function

 

 After:spatialcoordinates
 Type:group

CCTK_POSTREGRID

  maskbase_setupmask

  set up the weight function

 

 After:spatialcoordinates
 Type:group

CCTK_POST_RECOVER_VARIABLES

  maskbase_setupmask

  set up the weight function

 

 Type:group

MaskBase_SetupMask

  maskbase_setupmaskall

  set up the weight function

 

 Type:group

MaskBase_SetupMaskAll

  maskbase_allocatemask

  allocate the weight function

 

 Language:c
 Options: global
 Type: function
 Writes: carpetreduce::excised_cells(everywhere)

MaskBase_SetupMaskAll

  maskbase_initmask

  initialise the weight function

 

 After: maskbase_allocatemask
  Language:c
 Options: global
   loop-local
 Type: function
 Writes: carpetreduce::iweight(everywhere)

MaskBase_SetupMaskAll

  setupimaskinternal

  set up the integer weight function (schedule other routines in here)

 

 After:maskbase_initmask
 Type:group

MaskBase_SetupMaskAll

  setupimask

  set up the integer weight function (schedule other routines in here)

 

 After:setupimaskinternal
 Type:group