diff options
author | schnetter <> | 2003-06-18 16:24:00 +0000 |
---|---|---|
committer | schnetter <> | 2003-06-18 16:24:00 +0000 |
commit | ea0d204e9bfe5daa6123970f2c1c323bd7e75b36 (patch) | |
tree | c48a4a122dfec847afa10475dd19ac1b94617e39 /CarpetExtra/IDScalarWaveMoL/src | |
parent | 343af5d6432feecd65a217c3cb1731394b55d315 (diff) |
Major update after a quiet time.
Major update after a quiet time.
Carpet: The flesh now has new cGH fields cctk_levoff[],
cctk_levoffdenom[], and cctk_timefac that describe the spatial offset
and temporal refinement factor between the base and the current
refinement level. These fields are now set and used; they change how
coordinates are handled.
CarpetIOASCII: Fix bugs regarding choosing the output hyperslab and
the output coordinates.
ID*, *Toy*: New WaveToy examples with various formulations and
different integrations methods. Currently, none of them converge to
second order except the standard WaveToy formulation.
These updates require the recent flesh, base thorn (and MoL) updates.
darcs-hash:20030618162427-07bb3-70761f74bce6ae246b5a2943a385647657d46d34.gz
Diffstat (limited to 'CarpetExtra/IDScalarWaveMoL/src')
-rw-r--r-- | CarpetExtra/IDScalarWaveMoL/src/errors.F77 | 3 | ||||
-rw-r--r-- | CarpetExtra/IDScalarWaveMoL/src/initialdata.F77 | 48 |
2 files changed, 17 insertions, 34 deletions
diff --git a/CarpetExtra/IDScalarWaveMoL/src/errors.F77 b/CarpetExtra/IDScalarWaveMoL/src/errors.F77 index a47394f84..8bfeac41c 100644 --- a/CarpetExtra/IDScalarWaveMoL/src/errors.F77 +++ b/CarpetExtra/IDScalarWaveMoL/src/errors.F77 @@ -1,8 +1,7 @@ -c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/errors.F77,v 1.2 2003/11/05 16:18:40 schnetter Exp $ +c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/errors.F77,v 1.1 2003/06/18 18:24:29 schnetter Exp $ #include "cctk.h" #include "cctk_Arguments.h" -#include "cctk_Functions.h" #include "cctk_Parameters.h" subroutine IDScalarWaveMoL_Errors (CCTK_ARGUMENTS) diff --git a/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77 b/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77 index f8385b48a..1e7f5923c 100644 --- a/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77 +++ b/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77 @@ -1,8 +1,7 @@ -c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77,v 1.3 2003/11/05 16:18:40 schnetter Exp $ +c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/initialdata.F77,v 1.1 2003/06/18 18:24:29 schnetter Exp $ #include "cctk.h" #include "cctk_Arguments.h" -#include "cctk_Functions.h" #include "cctk_Parameters.h" subroutine IDScalarWaveMoL_InitialData (CCTK_ARGUMENTS) @@ -13,37 +12,22 @@ c $Header: /home/eschnett/C/carpet/Carpet/CarpetExtra/IDScalarWaveMoL/src/in CCTK_REAL pi parameter (pi = 3.141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117068d0) CCTK_REAL omega - CCTK_REAL tmp integer i, j, k - if (CCTK_EQUALS(initial_data, "plane wave")) then - omega = sqrt(wave_number(1)**2 + wave_number(2)**2 - $ + wave_number(3)**2) - do k=1,cctk_lsh(3) - do j=1,cctk_lsh(2) - do i=1,cctk_lsh(1) - tmp = wave_number(1)*(x(i,j,k)-phase_offset(1)) - $ + wave_number(2)*(y(i,j,k)-phase_offset(2)) - $ + wave_number(3)*(z(i,j,k)-phase_offset(3)) - $ + omega*(cctk_time-time_offset) - phi(i,j,k) = amplitude * cos (2*pi * tmp) - psi(i,j,k) = - amplitude * 2*pi * omega * sin (2*pi * tmp) - end do + omega = sqrt(wave_number(1)**2 + wave_number(2)**2 + wave_number(3)**2) + do k=1,cctk_lsh(3) + do j=1,cctk_lsh(2) + do i=1,cctk_lsh(1) + phi(i,j,k) = amplitude * cos (2*pi * + $ ( wave_number(1)*(x(i,j,k)-phase_offset(1)) + $ + wave_number(2)*(y(i,j,k)-phase_offset(2)) + $ + wave_number(3)*(z(i,j,k)-phase_offset(3)) + $ + omega*(cctk_time-time_offset))) + psi(i,j,k) = - amplitude * 2*pi * omega * sin (2*pi * + $ ( wave_number(1)*(x(i,j,k)-phase_offset(1)) + $ + wave_number(2)*(y(i,j,k)-phase_offset(2)) + $ + wave_number(3)*(z(i,j,k)-phase_offset(3)) + $ + omega*(cctk_time-time_offset))) end do end do - else if (CCTK_EQUALS(initial_data, "Gaussian pulse")) then - omega = sqrt(pulse_direction(1)**2 + pulse_direction(2)**2 - $ + pulse_direction(3)**2) - do k=1,cctk_lsh(3) - do j=1,cctk_lsh(2) - do i=1,cctk_lsh(1) - tmp = pulse_direction(1)*(x(i,j,k)-pulse_offset(1)) - $ + pulse_direction(2)*(y(i,j,k)-pulse_offset(2)) - $ + pulse_direction(3)*(z(i,j,k)-pulse_offset(3)) - $ + omega*(cctk_time-time_offset) - phi(i,j,k) = amplitude * exp (-0.5d0 * tmp**2) - psi(i,j,k) = - tmp * omega * phi(i,j,k) - end do - end do - end do - end if + end do end |