aboutsummaryrefslogtreecommitdiff
path: root/src/TP_utilities.h
diff options
context:
space:
mode:
authorschnetter <schnetter@b2a53a04-0f4f-0410-87ed-f9f25ced00cf>2006-07-27 20:39:51 +0000
committerschnetter <schnetter@b2a53a04-0f4f-0410-87ed-f9f25ced00cf>2006-07-27 20:39:51 +0000
commit70a85358dbbb2a54a4aea2801c590304f3264830 (patch)
treed8d5ab4b2d3df9418e3138fd36c3bd1105c05990 /src/TP_utilities.h
parent06ab7ee0d3a166433e1ea86d5eb2868d0fff6b54 (diff)
Use CCTK_REAL instead of double. This allows using higher precisions
that double. Do not initialise the ghost zones; synchronise instead. Since interpolating the initial data is expensive this should save some time. git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinInitialData/TwoPunctures/trunk@57 b2a53a04-0f4f-0410-87ed-f9f25ced00cf
Diffstat (limited to 'src/TP_utilities.h')
-rw-r--r--src/TP_utilities.h58
1 files changed, 30 insertions, 28 deletions
diff --git a/src/TP_utilities.h b/src/TP_utilities.h
index fb05cb2..95c2045 100644
--- a/src/TP_utilities.h
+++ b/src/TP_utilities.h
@@ -2,6 +2,8 @@
#include <math.h>
+#include "cctk.h"
+
#define Pi 3.14159265358979323846264338328
#define Pih 1.57079632679489661923132169164 /* Pi/2*/
#define Piq 0.78539816339744830961566084582 /* Pi/4*/
@@ -13,7 +15,7 @@
typedef struct DCOMPLEX
{
- double r, i;
+ CCTK_REAL r, i;
} dcomplex;
#define nrerror TP_nrerror
@@ -30,16 +32,16 @@ typedef struct DCOMPLEX
void nrerror (char error_text[]);
int *ivector (long nl, long nh);
-double *dvector (long nl, long nh);
+CCTK_REAL *dvector (long nl, long nh);
int **imatrix (long nrl, long nrh, long ncl, long nch);
-double **dmatrix (long nrl, long nrh, long ncl, long nch);
-double ***d3tensor (long nrl, long nrh, long ncl, long nch, long ndl,
+CCTK_REAL **dmatrix (long nrl, long nrh, long ncl, long nch);
+CCTK_REAL ***d3tensor (long nrl, long nrh, long ncl, long nch, long ndl,
long ndh);
void free_ivector (int *v, long nl, long nh);
-void free_dvector (double *v, long nl, long nh);
+void free_dvector (CCTK_REAL *v, long nl, long nh);
void free_imatrix (int **m, long nrl, long nrh, long ncl, long nch);
-void free_dmatrix (double **m, long nrl, long nrh, long ncl, long nch);
-void free_d3tensor (double ***t, long nrl, long nrh, long ncl, long nch,
+void free_dmatrix (CCTK_REAL **m, long nrl, long nrh, long ncl, long nch);
+void free_d3tensor (CCTK_REAL ***t, long nrl, long nrh, long ncl, long nch,
long ndl, long ndh);
int minimum2 (int i, int j);
@@ -48,19 +50,19 @@ int maximum2 (int i, int j);
int maximum3 (int i, int j, int k);
int pow_int (int mantisse, int exponent);
#if 0
-double atanh (double x);
-double asinh (double x);
-double acosh (double x);
+CCTK_REAL atanh (CCTK_REAL x);
+CCTK_REAL asinh (CCTK_REAL x);
+CCTK_REAL acosh (CCTK_REAL x);
#endif
dcomplex Cadd (dcomplex a, dcomplex b);
dcomplex Csub (dcomplex a, dcomplex b);
dcomplex Cmul (dcomplex a, dcomplex b);
-dcomplex RCmul (double x, dcomplex a);
+dcomplex RCmul (CCTK_REAL x, dcomplex a);
dcomplex Cdiv (dcomplex a, dcomplex b);
-dcomplex Complex (double re, double im);
+dcomplex Complex (CCTK_REAL re, CCTK_REAL im);
dcomplex Conjg (dcomplex z);
-double Cabs (dcomplex z);
+CCTK_REAL Cabs (dcomplex z);
dcomplex Csqrt (dcomplex z);
dcomplex Cexp (dcomplex z);
@@ -74,22 +76,22 @@ dcomplex Ccosh (dcomplex z);
dcomplex Ctanh (dcomplex z);
dcomplex Ccoth (dcomplex z);
-void chebft_Zeros (double u[], int n, int inv);
-void chebft_Extremes (double u[], int n, int inv);
-void chder (double *c, double *cder, int n);
-double chebev (double a, double b, double c[], int m, double x);
-void fourft (double *u, int N, int inv);
-void fourder (double u[], double du[], int N);
-void fourder2 (double u[], double d2u[], int N);
-double fourev (double *u, int N, double x);
+void chebft_Zeros (CCTK_REAL u[], int n, int inv);
+void chebft_Extremes (CCTK_REAL u[], int n, int inv);
+void chder (CCTK_REAL *c, CCTK_REAL *cder, int n);
+CCTK_REAL chebev (CCTK_REAL a, CCTK_REAL b, CCTK_REAL c[], int m, CCTK_REAL x);
+void fourft (CCTK_REAL *u, int N, int inv);
+void fourder (CCTK_REAL u[], CCTK_REAL du[], int N);
+void fourder2 (CCTK_REAL u[], CCTK_REAL d2u[], int N);
+CCTK_REAL fourev (CCTK_REAL *u, int N, CCTK_REAL x);
-void ludcmp (double **a, int n, int *indx, double *d);
-void lubksb (double **a, int n, int *indx, double b[]);
-void tridag (double a[], double b[], double c[], double r[], double u[],
+void ludcmp (CCTK_REAL **a, int n, int *indx, CCTK_REAL *d);
+void lubksb (CCTK_REAL **a, int n, int *indx, CCTK_REAL b[]);
+void tridag (CCTK_REAL a[], CCTK_REAL b[], CCTK_REAL c[], CCTK_REAL r[], CCTK_REAL u[],
int n);
-double norm1 (double *v, int n);
-double norm2 (double *v, int n);
-double scalarproduct (double *v, double *w, int n);
+CCTK_REAL norm1 (CCTK_REAL *v, int n);
+CCTK_REAL norm2 (CCTK_REAL *v, int n);
+CCTK_REAL scalarproduct (CCTK_REAL *v, CCTK_REAL *w, int n);
-double plgndr (int l, int m, double x);
+CCTK_REAL plgndr (int l, int m, CCTK_REAL x);