diff options
author | jthorn <jthorn@e296648e-0e4f-0410-bd07-d597d9acff87> | 2002-11-17 14:55:50 +0000 |
---|---|---|
committer | jthorn <jthorn@e296648e-0e4f-0410-bd07-d597d9acff87> | 2002-11-17 14:55:50 +0000 |
commit | ac099068da91d9528088af849caa7aa2e6e1758a (patch) | |
tree | f8837bb58d475eb0492f4a6a604a0d51bba94423 /src/Bona_Masso_data.F | |
parent | d72eb352c6182603bde73125f71c4313f22cea28 (diff) |
Modified Files:
make.code.defn
Added Files:
Bona_Masso_data.F77 blended_boundary.F77 boundary.F77
decode_pars.F77 gauge.F77 initialize.F77 metric.F77
xyz_blended_boundary.F77
Removed Files:
Bona_Masso_data.F blended_boundary.F boundary.F decode_pars.F
gauge.F initialize.F metric.F xyz_blended_boundary.F
Rename files which really are Fortran 77
from foo.F (= Cactus Fortran 90 fixed form)
to foo.F77 (= Fortran 77)
This means they're now compiled with a Fortran 77 compiler.
This should make no difference to the semantics (they were already
Fortran 77 code), but makes it easier to compile this thorn on
platforms which have a Fortran 77 compiler but no Fortran 90 compiler.
Also small bugfix:
blended_boundary.F --> .F77
xyz_blended_boundary.F --> .F77
* change declaration of ierr from CCTK_REAL --> integer
git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinInitialData/Exact/trunk@135 e296648e-0e4f-0410-bd07-d597d9acff87
Diffstat (limited to 'src/Bona_Masso_data.F')
-rw-r--r-- | src/Bona_Masso_data.F | 214 |
1 files changed, 0 insertions, 214 deletions
diff --git a/src/Bona_Masso_data.F b/src/Bona_Masso_data.F deleted file mode 100644 index 9805e0a..0000000 --- a/src/Bona_Masso_data.F +++ /dev/null @@ -1,214 +0,0 @@ -c This routine calculates Bona-Masso initial data, making use of the -c subroutine Exact__metric() to calculate the spacetime metric and its -c inverse. Note that this use of the Bona-Masso variables is independent -c of how (or even if) we are evolving the Einstein equations -- here -c the Bona-Masso variables are "just" used as intermediate variables. - -c $Header$ - -#include "cctk.h" - - subroutine Exact__Bona_Masso_data( - $ decoded_exact_model, - $ x, y, z, t, - $ gxx, gyy, gzz, gxy, gyz, gxz, - $ hxx, hyy, hzz, hxy, hyz, hxz, - $ dxgxx, dxgyy, dxgzz, dxgxy, dxgyz, dxgxz, - $ dygxx, dygyy, dygzz, dygxy, dygyz, dygxz, - $ dzgxx, dzgyy, dzgzz, dzgxy, dzgyz, dzgxz, - $ alp, ax, ay, az, betax, betay, betaz, - $ bxx, bxy, bxz, byx, byy, byz, bzx, bzy, bzz) - - implicit none - CCTK_INT decoded_exact_model - CCTK_REAL x, y, z, t, - $ gxx, gyy, gzz, gxy, gyz, gxz, - $ hxx, hyy, hzz, hxy, hyz, hxz, - $ dxgxx, dxgyy, dxgzz, dxgxy, dxgyz, dxgxz, - $ dygxx, dygyy, dygzz, dygxy, dygyz, dygxz, - $ dzgxx, dzgyy, dzgzz, dzgxy, dzgyz, dzgxz, - $ alp, ax, ay, az, betax, betay, betaz, - $ bxx, bxy, bxz, byx, byy, byz, bzx, bzy, bzz - -C gxx is g_xx etc. -C hxx is K_xx etc. -C dxgyy is (/2) dg_yy / dx (sic!) -C alp is N, betax is N^x etc. -C bxy is (/2) dN^y / dx (sic and sic!) -C ax is dN / dx / N (sic!) - - CCTK_REAL eps, - $ gdtt, gdtx, gdty, gdtz, - $ gutt, gutx, guty, gutz, - $ guxx, guyy, guzz, guxy, guyz, guxz, - $ gdtt_p, gdtx_p, gdty_p, gdtz_p, - $ gdxx_p, gdyy_p, gdzz_p, gdxy_p, gdyz_p, gdxz_p, - $ gutt_p, gutx_p, guty_p, gutz_p, - $ guxx_p, guyy_p, guzz_p, guxy_p, guyz_p, guxz_p, - $ gdtt_m, gdtx_m, gdty_m, gdtz_m, - $ gdxx_m, gdyy_m, gdzz_m, gdxy_m, gdyz_m, gdxz_m, - $ gutt_m, gutx_m, guty_m, gutz_m, - $ guxx_m, guyy_m, guzz_m, guxy_m, guyz_m, guxz_m - - parameter (eps=1.d-6) - -C Get the spacetime metric and its inverse at the base point. - - call Exact__metric( - $ decoded_exact_model, - $ x, y, z, t, - $ gdtt, gdtx, gdty, gdtz, - $ gxx, gyy, gzz, gxy, gyz, gxz, - $ gutt, gutx, guty, gutz, - $ guxx, guyy, guzz, guxy, guyz, guxz) - -C Calculate lapse and shift from the upper metric. - - alp = 1.d0 / sqrt(-gutt) - - betax = - gutx / gutt - betay = - guty / gutt - betaz = - gutz / gutt - -C In order to calculate the derivatives of the lapse and shift from -C the contravariant metric, use g^tt = -1/N^2 and g^i0 = N^i / N^2 -C Note that ax is dN/dx / N and that bxy is 1/2 dN^y / dx. - -C Calculate x-derivatives. - - call Exact__metric( - $ decoded_exact_model, - $ x+eps, y, z, t, - $ gdtt_p, gdtx_p, gdty_p, gdtz_p, - $ gdxx_p, gdyy_p, gdzz_p, gdxy_p, gdyz_p, gdxz_p, - $ gutt_p, gutx_p, guty_p, gutz_p, - $ guxx_p, guyy_p, guzz_p, guxy_p, guyz_p, guxz_p) - call Exact__metric( - $ decoded_exact_model, - $ x-eps, y, z, t, - $ gdtt_m, gdtx_m, gdty_m, gdtz_m, - $ gdxx_m, gdyy_m, gdzz_m, gdxy_m, gdyz_m, gdxz_m, - $ gutt_m, gutx_m, guty_m, gutz_m, - $ guxx_m, guyy_m, guzz_m, guxy_m, guyz_m, guxz_m) - - dxgxx = (gdxx_p - gdxx_m) / 4.d0 / eps - dxgyy = (gdyy_p - gdyy_m) / 4.d0 / eps - dxgzz = (gdzz_p - gdzz_m) / 4.d0 / eps - dxgxy = (gdxy_p - gdxy_m) / 4.d0 / eps - dxgyz = (gdyz_p - gdyz_m) / 4.d0 / eps - dxgxz = (gdxz_p - gdxz_m) / 4.d0 / eps - - ax = - 0.5d0 * (gutt_p - gutt_m) / 2.d0 / eps / gutt - - bxx = ((- gutx_p / gutt_p) - (- gutx_m / gutt_m)) / 4.d0 / eps - bxy = ((- guty_p / gutt_p) - (- guty_m / gutt_m)) / 4.d0 / eps - bxz = ((- gutz_p / gutt_p) - (- gutz_m / gutt_m)) / 4.d0 / eps - -C Calculate y-derivatives. - - call Exact__metric( - $ decoded_exact_model, - $ x, y+eps, z, t, - $ gdtt_p, gdtx_p, gdty_p, gdtz_p, - $ gdxx_p, gdyy_p, gdzz_p, gdxy_p, gdyz_p, gdxz_p, - $ gutt_p, gutx_p, guty_p, gutz_p, - $ guxx_p, guyy_p, guzz_p, guxy_p, guyz_p, guxz_p) - call Exact__metric( - $ decoded_exact_model, - $ x, y-eps, z, t, - $ gdtt_m, gdtx_m, gdty_m, gdtz_m, - $ gdxx_m, gdyy_m, gdzz_m, gdxy_m, gdyz_m, gdxz_m, - $ gutt_m, gutx_m, guty_m, gutz_m, - $ guxx_m, guyy_m, guzz_m, guxy_m, guyz_m, guxz_m) - - dygxx = (gdxx_p - gdxx_m) / 4.d0 / eps - dygyy = (gdyy_p - gdyy_m) / 4.d0 / eps - dygzz = (gdzz_p - gdzz_m) / 4.d0 / eps - dygxy = (gdxy_p - gdxy_m) / 4.d0 / eps - dygyz = (gdyz_p - gdyz_m) / 4.d0 / eps - dygxz = (gdxz_p - gdxz_m) / 4.d0 / eps - - ay = - 0.5d0 * (gutt_p - gutt_m) / 2.d0 / eps / gutt - - byx = ((- gutx_p / gutt_p) - (- gutx_m / gutt_m)) / 4.d0 / eps - byy = ((- guty_p / gutt_p) - (- guty_m / gutt_m)) / 4.d0 / eps - byz = ((- gutz_p / gutt_p) - (- gutz_m / gutt_m)) / 4.d0 / eps - -C Calculate z-derivatives. - - call Exact__metric( - $ decoded_exact_model, - $ x, y, z+eps, t, - $ gdtt_p, gdtx_p, gdty_p, gdtz_p, - $ gdxx_p, gdyy_p, gdzz_p, gdxy_p, gdyz_p, gdxz_p, - $ gutt_p, gutx_p, guty_p, gutz_p, - $ guxx_p, guyy_p, guzz_p, guxy_p, guyz_p, guxz_p) - call Exact__metric( - $ decoded_exact_model, - $ x, y, z-eps, t, - $ gdtt_m, gdtx_m, gdty_m, gdtz_m, - $ gdxx_m, gdyy_m, gdzz_m, gdxy_m, gdyz_m, gdxz_m, - $ gutt_m, gutx_m, guty_m, gutz_m, - $ guxx_m, guyy_m, guzz_m, guxy_m, guyz_m, guxz_m) - - dzgxx = (gdxx_p - gdxx_m) / 4.d0 / eps - dzgyy = (gdyy_p - gdyy_m) / 4.d0 / eps - dzgzz = (gdzz_p - gdzz_m) / 4.d0 / eps - dzgxy = (gdxy_p - gdxy_m) / 4.d0 / eps - dzgyz = (gdyz_p - gdyz_m) / 4.d0 / eps - dzgxz = (gdxz_p - gdxz_m) / 4.d0 / eps - - az = - 0.5d0 * (gutt_p - gutt_m) / 2.d0 / eps / gutt - - bzx = ((- gutx_p / gutt_p) - (- gutx_m / gutt_m)) / 4.d0 / eps - bzy = ((- guty_p / gutt_p) - (- guty_m / gutt_m)) / 4.d0 / eps - bzz = ((- gutz_p / gutt_p) - (- gutz_m / gutt_m)) / 4.d0 / eps - -C Calculate t-derivatives, and extrinsic curvature. - - call Exact__metric( - $ decoded_exact_model, - $ x, y, z, t+eps, - $ gdtt_p, gdtx_p, gdty_p, gdtz_p, - $ gdxx_p, gdyy_p, gdzz_p, gdxy_p, gdyz_p, gdxz_p, - $ gutt_p, gutx_p, guty_p, gutz_p, - $ guxx_p, guyy_p, guzz_p, guxy_p, guyz_p, guxz_p) - call Exact__metric( - $ decoded_exact_model, - $ x, y, z, t-eps, - $ gdtt_m, gdtx_m, gdty_m, gdtz_m, - $ gdxx_m, gdyy_m, gdzz_m, gdxy_m, gdyz_m, gdxz_m, - $ gutt_m, gutx_m, guty_m, gutz_m, - $ guxx_m, guyy_m, guzz_m, guxy_m, guyz_m, guxz_m) - - hxx = - (gdxx_p - gdxx_m) / 4.d0 / eps / alp - $ + (dxgxx * betax + dygxx * betay + dzgxx * betaz - $ + 2.d0 * (bxx * gxx + bxy * gxy + bxz * gxz)) / alp - - hyy = - (gdyy_p - gdyy_m) / 4.d0 / eps / alp - $ + (dxgyy * betax + dygyy * betay + dzgyy * betaz - $ + 2.d0 * (byx * gxy + byy * gyy + byz * gyz)) / alp - - hzz = - (gdzz_p - gdzz_m) / 4.d0 / eps / alp - $ + (dxgzz * betax + dygzz * betay + dzgzz * betaz - $ + 2.d0 * (bzx * gxz + bzy * gyz + bzz * gzz)) / alp - - hxy = - (gdxy_p - gdxy_m) / 4.d0 / eps / alp - $ + (dxgxy * betax + dygxy * betay + dzgxy * betaz - $ + bxx * gxy + bxy * gyy + bxz * gyz - $ + byx * gxx + byy * gxy + byz * gxz) / alp - - hyz = - (gdyz_p - gdyz_m) / 4.d0 / eps / alp - $ + (dxgyz * betax + dygyz * betay + dzgyz * betaz - $ + byx * gxz + byy * gyz + byz * gzz - $ + bzx * gxy + bzy * gyy + bzz * gyz) / alp - - hxz = - (gdxz_p - gdxz_m) / 4.d0 / eps / alp - $ + (dxgxz * betax + dygxz * betay + dzgxz * betaz - $ + bxx * gxz + bxy * gyz + bxz * gzz - $ + bzx * gxx + bzy * gxy + bzz * gxz) / alp - - return - end - - |