xx StaticConformal

StaticConformal

Tom Goodale et al

Date

Abstract

Base thorn to provide the variables for the static conformal factor

1 Purpose

This thorn provides the variables defining a static conformal factor which is used to transform the physical metric. If this thorn is active and the ADMBase::metricxtype parameter is set to static conformal, then the ADMBase::g... variables are the conformal values as opposed to the physical values.

The transformation is . gphysical_{ij} = ψ^{4}gconformal_{ij}

The extrinsic curvature is not transformed.

Memory is provided for the conformal factor psi, its first derivatives psix, psiy, psiz, and its second

derivatives psixx, psixy, psixz, psiyy, psiyz, and psizz depending on the setting of the conformalxstorage

parameter.

Note that the first and second “derivative” grid functions have an additional factor of normalisation since this is the most common use of the derivative. I.e., the grid functions are

Thorns need to check the value of the grid scalar conformalxstate to determine how many levels of these variables have actually been calculated before using the conformal factor:

conformalxstate=0

No conformal factor has been calculated — thorns may assume the conformal factor is 1 at all points. (I.e., the metric is physical.)

conformalxstate=1

The conformal factor has been calulated, but no derivatives.

conformalxstate=2

The conformal factor and its first derivatives have been calculated.

conformalxstate=3

The conformal factor and its first and second derivatives have been calculated.

Note that this means that if you only want to know whether psi contains the values for the conformal factor you

can check for conformalxstate > 0.

2 Utilities

StaticConformal provides aliased functions to convert between physical and conformal 3-metric values. It is very important to understand that these functions apply the conversion in place. That is, if gxx contains the conformal metric value, when the routine is exited it will now contain the physical metric value. These functions do not change the value of conformalxstate and should be used with due care. (These functions are for example used by some analysis thorns who work only with the physical metric, they apply the transformation on entry to the analysis routine and switch it back on exit).

Convert from conformal to physical:

subroutinexConfToPhysInPlacex(nx,xny,xnz,
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxpsi,
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxgxx,xgxy,xgxz,xgyy,xgyz,xgzz)
xxximplicitxnone
xxxCCTK_INT,xxxxxxxxxxxxxxxxxxxxxxxxxintent(in)xxxx::xnx,xny,xnz
xxxCCTK_REAL,xdimension(nx,xny,xnz),xintent(in)xxxx::xpsi
xxxCCTK_REAL,xdimension(nx,xny,xnz),xintent(inout)x::xgxx,xgxy,xgxz,xgyy,xgyz,xgzz
endxsubroutinexConfToPhysInPlace

Convert from physical to conformal:

     subroutinexPhysToConfInPlacex(nx,xny,xnz,
     xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxpsi,
     xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxgxx,xgxy,xgxz,xgyy,xgyz,xgzz)
     xxximplicitxnone
     xxxCCTK_INT,xxxxxxxxxxxxxxxxxxxxxxxxxintent(in)xxxx::xnx,xny,xnz
     xxxCCTK_REAL,xdimension(nx,xny,xnz),xintent(in)xxxx::xpsi
     xxxCCTK_REAL,xdimension(nx,xny,xnz),xintent(inout)x::xgxx,xgxy,xgxz,xgyy,xgyz,xgzz
     endxsubroutinexConfToPhysInPlace

3 Comments

The StaticConformal thorn itself does not calculate any conformal factor, but does initialise the

conformalxstate variable to 0.

4 Parameters

11conformalxstorage 10Scope: restrictedx01  KEYWORD

11Description: How much conformal storage do we have ?

11 Range 10 x01 Default: factor+derivs+2nd derivs
11factor  10Just the conformal factor
11factor+derivs 10Conformal factor plus first derivatives
11see [1] below  10Conformal factor plus first and second derivatives

11

factor+derivs+2ndxderivs

11metricxtype  10Scope: shared from ADMBASEx01  KEYWORD

11Extends ranges:

11static conformal 10Metric is conformal with static conformal factor, extrinsic curvature is physical

11

5 Interfaces

General Implements: staticconformal

Inherits: grid

Grid Variables

5.0.1 PUBLIC GROUPS

11x Group Names x10x Variable Names xx01 Details x11x
11 conformalxstate 10 conformalxstate x01  compact110
11                 10  x01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11                 10  x01 timelevels111
11                 10  x01variable type11INT
11  confac  10  x01  compact110
11                 10  psi  x01 description11Conformal factor
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11tensortypealias=”Scalar” Prolongation=”None” InterpNumTimelevels=1
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 confacx1derivs 10  x01  compact110
11                 10  psix  x01 description11First spatial derivatives of conformal factor divided by psi
11                 10  psiy  x01 dimensions113
11                 10  psiz  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11tensortypealias=”U” Prolongation=”None” InterpNumTimelevels=1
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 confacx2derivs 10  x01  compact110
11                 10  psixx  x01 description11Second spatial derivatives of conformal factor divided by psi
11                 10  psixy  x01 dimensions113
11                 10  psixz  x01 distribution11DEFAULT
11                 10  psiyy  x01 group type11GF
11                 10  psiyz  x01  tags11tensortypealias=”ddxsym” Prolongation=”None” InterpNumTimelevels=1
11                 10  psizz  x01 timelevels111
11                 10  x01variable type11REAL

11

Provides: ConfToPhysInPlace to PhysToConfInPlace to

6 Schedule This section lists all the variables which are assigned storage by thorn EinsteinBase/StaticConformal. 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 x

11Always:  11Conditional:
11conformalxstate11confac[1]
11x  11confac[1] confacx1derivs[1]
11x  11confac[1] confacx1derivs[1] confacx2derivs[1]

11x  11x

Scheduled Functions

CCTKxINITIAL x staticconformalxinitialisestate x set the conformalxstate variable to 0 x

11x11Before: 11admbasexinitialdata
11 x 11Language:11c
11 x 11Type: 11function
11 x 11Writes: 11staticconformal::conformalxstate(everywhere)