aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorallen <allen@9ea3c693-0e4f-0410-9b72-c04bdc00281e>2002-05-20 16:22:09 +0000
committerallen <allen@9ea3c693-0e4f-0410-9b72-c04bdc00281e>2002-05-20 16:22:09 +0000
commit8deedc12886432f70cba145c070161d3442be55a (patch)
tree4276f905d8718030a21a859d80fca31540518520 /src
parenta5f89e5c6d0773ed95b2b685a6e67bd492c6289e (diff)
This commit was generated by cvs2svn to compensate for changes in r2,
which included commits to RCS files with non-trunk default branches. git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinInitialData/IDConstraintViolate/trunk@3 9ea3c693-0e4f-0410-9b72-c04bdc00281e
Diffstat (limited to 'src')
-rw-r--r--src/Initial.F71
-rw-r--r--src/Initial.F7772
-rw-r--r--src/ParamChecker.c82
-rw-r--r--src/make.code.defn9
4 files changed, 234 insertions, 0 deletions
diff --git a/src/Initial.F b/src/Initial.F
new file mode 100644
index 0000000..19a1eb4
--- /dev/null
+++ b/src/Initial.F
@@ -0,0 +1,71 @@
+ /*@@
+ @file Initial.F
+ @date May 2002
+ @author Gabrielle Allen
+ @desc
+ Constraint violating initial data
+ @enddesc
+ @version $Header$
+ @@*/
+
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+
+/********************************************************************
+ ********************* External Routines **********************
+ ********************************************************************/
+
+ /*@@
+ @routine IDConstraintViolate_Initial
+ @date May 2002
+ @author Gabrielle Allen
+ @desc
+ Set up initial data which violates the constraints
+ @enddesc
+ @calls
+@@*/
+
+ subroutine IDConstraintViolate_Initial(CCTK_ARGUMENTS)
+
+ implicit none
+
+ integer i,j,k
+ CCTK_REAL xp,yp,zp,rp
+
+ DECLARE_CCTK_ARGUMENTS
+ DECLARE_CCTK_PARAMETERS
+
+ do k=1, cctk_lsh(3)
+ do j=1, cctk_lsh(2)
+ do i=1, cctk_lsh(1)
+
+ xp=x(i,j,k)
+ yp=y(i,j,k)
+ zp=z(i,j,k)
+
+ rp = sqrt(xp*xp+yp*yp+zp*zp)
+
+ gxx(i,j,k) = amplitude*exp(-(rp-radius)**2/sigma**2)
+ gxy(i,j,k) = amplitude*exp(-(rp-radius)**2/sigma**2)
+ gxz(i,j,k) = amplitude*exp(-(rp-radius)**2/sigma**2)
+ gyy(i,j,k) = amplitude*exp(-(rp-radius)**2/sigma**2)
+ gyz(i,j,k) = amplitude*exp(-(rp-radius)**2/sigma**2)
+ gzz(i,j,k) = amplitude*exp(-(rp-radius)**2/sigma**2)
+
+ kxx(i,j,k) = 0.0d0
+ kxy(i,j,k) = 0.0d0
+ kxz(i,j,k) = 0.0d0
+ kyy(i,j,k) = 0.0d0
+ kyz(i,j,k) = 0.0d0
+ kzz(i,j,k) = 0.0d0
+
+ end do
+ end do
+ end do
+
+ end
+
+/********************************************************************
+ ********************* Local Routines *************************
+ ********************************************************************/
diff --git a/src/Initial.F77 b/src/Initial.F77
new file mode 100644
index 0000000..c7f966c
--- /dev/null
+++ b/src/Initial.F77
@@ -0,0 +1,72 @@
+ /*@@
+ @file Initial.F
+ @date May 2002
+ @author Gabrielle Allen
+ @desc
+ Constraint violating initial data
+ @enddesc
+ @version $Header$
+ @@*/
+
+#include "cctk.h"
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+
+/********************************************************************
+ ********************* External Routines **********************
+ ********************************************************************/
+
+ /*@@
+ @routine IDConstraintViolate_Initial
+ @date May 2002
+ @author Gabrielle Allen
+ @desc
+ Set up initial data which violates the constraints
+ @enddesc
+ @calls
+@@*/
+
+ subroutine IDConstraintViolate_Initial(CCTK_ARGUMENTS)
+
+ implicit none
+
+ integer i,j,k
+ CCTK_REAL xp,yp,zp,rp
+
+ DECLARE_CCTK_ARGUMENTS
+ DECLARE_CCTK_PARAMETERS
+
+ do k=1, cctk_lsh(3)
+ do j=1, cctk_lsh(2)
+ do i=1, cctk_lsh(1)
+
+ xp=x(i,j,k)
+ yp=y(i,j,k)
+ zp=z(i,j,k)
+
+ rp = sqrt(xp*xp+yp*yp+zp*zp)
+
+ gxx(i,j,k) = 1.0d0+amplitude*exp(-(rp-radius)**2/sigma**2)
+ gyy(i,j,k) = 1.0d0+amplitude*exp(-(rp-radius)**2/sigma**2)
+ gzz(i,j,k) = 1.0d0+amplitude*exp(-(rp-radius)**2/sigma**2)
+
+ gxy(i,j,k) = 0.0d0
+ gxz(i,j,k) = 0.0d0
+ gyz(i,j,k) = 0.0d0
+
+ kxx(i,j,k) = 0.0d0
+ kxy(i,j,k) = 0.0d0
+ kxz(i,j,k) = 0.0d0
+ kyy(i,j,k) = 0.0d0
+ kyz(i,j,k) = 0.0d0
+ kzz(i,j,k) = 0.0d0
+
+ end do
+ end do
+ end do
+
+ end
+
+/********************************************************************
+ ********************* Local Routines *************************
+ ********************************************************************/
diff --git a/src/ParamChecker.c b/src/ParamChecker.c
new file mode 100644
index 0000000..5d728b6
--- /dev/null
+++ b/src/ParamChecker.c
@@ -0,0 +1,82 @@
+ /*@@
+ @file ParamChecker.F
+ @date May 2002
+ @author Gabrielle Allen
+ @desc
+ Check parameters for constraint violating initial data
+ @enddesc
+ @version $Header$
+ @@*/
+
+#include "cctk.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+
+#include "cctk_Arguments.h"
+#include "cctk_Parameters.h"
+
+static const char *rcsid = "$Header$";
+
+CCTK_FILEVERSION(AEIDevelopment_IDConstraintViolate_ParamChecker_c)
+
+/********************************************************************
+ ********************* Local Data Types ***********************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* Local Routine Prototypes *********************
+ ********************************************************************/
+
+/********************************************************************
+ ***************** Scheduled Routine Prototypes *********************
+ ********************************************************************/
+
+void IDConstraintViolate_ParamChecker(CCTK_ARGUMENTS);
+
+/********************************************************************
+ ********************* Other Routine Prototypes *********************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* Local Data *****************************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* External Routines **********************
+ ********************************************************************/
+
+ /*@@
+ @routine IDConstraintViolate_ParamChecker
+ @date May 2002
+ @author Gabrielle Allen
+ @desc
+ Check parameters for constraint violating initial data
+ @enddesc
+ @calls
+@@*/
+
+void IDConstraintViolate_ParamChecker(CCTK_ARGUMENTS)
+{
+ DECLARE_CCTK_ARGUMENTS
+ DECLARE_CCTK_PARAMETERS
+
+ /* Do we know how to deal with this type of metric ? */
+ if(! CCTK_Equals(metric_type, "physical"))
+ {
+ CCTK_VParamWarn(CCTK_THORNSTRING,
+ "Unknown metric_type (%s): Known types: \"physical\"",
+ metric_type);
+ }
+
+ if (CCTK_Equals(initial_data,"constraint violating gaussian"))
+ {
+ CCTK_INFO("Metric set to (constraint violating) gaussian");
+ CCTK_INFO("Extrinsic curvature set to zero");
+ }
+}
+
+/********************************************************************
+ ********************* Local Routines *************************
+ ********************************************************************/
diff --git a/src/make.code.defn b/src/make.code.defn
new file mode 100644
index 0000000..daa06fe
--- /dev/null
+++ b/src/make.code.defn
@@ -0,0 +1,9 @@
+# Main make.code.defn file for thorn IDConstraintViolate
+# $Header$
+
+# Source files in this directory
+SRCS = Initial.F77 ParamChecker.c
+
+# Subdirectories containing source files
+SUBDIRS =
+