| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
| |
Explicitly convert between int and CCTK_INT, and between double and
CCTK_REAL, where necessary.
darcs-hash:20060613171441-dae7b-814bf92e15854b162f2f0560b3ec4ea519e4c28e.gz
|
|
|
|
| |
darcs-hash:20060607225356-dae7b-05fa7f32f8413196efbcd917efafdeb446960bd4.gz
|
|
|
|
| |
darcs-hash:20060606224817-dae7b-e2e3cbd3485fbc8e11c07a75cd746ff81cc9144c.gz
|
|
|
|
|
|
|
| |
Emit an error message instead of an assertion failure if there are not
enough time levels active.
darcs-hash:20060425152153-dae7b-20f5040a55b781b4467cd740933cfa8d08abe8d0.gz
|
|
|
|
|
|
|
|
|
|
| |
Correct some errors in determining the coordinate extent and number of
grid points on a given refinement level. Make a case distinction
between grid function and grid arrays, because the grid spacing in
grid functions depends on the refinement level, while the grid spacing
in grid arrays does not.
darcs-hash:20051202143331-dae7b-f16b89629f7cf523bba93a26fae88aba3bab63e0.gz
|
|
|
|
| |
darcs-hash:20051129172425-776a0-35bab71d5903d6ed2076c912e1431af6d640a8be.gz
|
|
|
|
|
|
| |
Correct logic error in handling the optional argument time_deriv_order.
darcs-hash:20051128042731-dae7b-353b2943aeb4819500f773415490040ea14b0654.gz
|
|
|
|
|
|
|
|
|
|
|
| |
Determine accurately how many timelevels are necessary. We need at
least 2 for first time derivatives and at least 3 for second time
derivatives. We also need at least prolongation_order_time+1 time
levels.
Change "bool have_time_derivs" to "int num_time_derivs".
darcs-hash:20051124002220-dae7b-290d1282794163b6be31953d9ad96b4cf802c5b2.gz
|
|
|
|
|
|
|
| |
Take cctk_initial_time into account when calculating the iteration
number from cctk_time and cctk_delta_time.
darcs-hash:20051124001045-dae7b-ec93e9ca13d700c7aef29d66cb1ffe2e91b8d654.gz
|
|
|
|
|
|
|
| |
Convert cctk_levoff and cctk_levoffdenom from int to double before
dividing them to calculate cctk_origin.
darcs-hash:20051123224405-dae7b-cc728114b3b7c8d21ecb452472e730af12acc50a.gz
|
|
|
|
| |
darcs-hash:20051123223926-dae7b-fc95d6f60c96df35e7848cd31e37132df3492259.gz
|
|
|
|
| |
darcs-hash:20051123223643-dae7b-783b5ac329841e189b66057ae948a4b910535344.gz
|
|
|
|
| |
darcs-hash:20051122202425-dae7b-052cc1933237042a1dac2dc8b01bb3b6c9fd7777.gz
|
|
|
|
|
|
|
|
|
| |
This patch adds support for input arrays of
- type CCTK_ARRAY
- arbitrary dimensions
- arbitrary datatypes
darcs-hash:20051101174650-776a0-56ce1ef019084cb89dce62f0c626282ba298c47f.gz
|
|
|
|
| |
darcs-hash:20051012154607-891bb-b57ce420a1e16fd201bb9503812b4dfac3af1ea0.gz
|
|
|
|
| |
darcs-hash:20051012154424-891bb-b7e49cb929704962757c372f5648b9424592ee34.gz
|
|
|
|
| |
darcs-hash:20050829151032-776a0-95a8c84bd10d434d1dee4c47894ab2f4276836ae.gz
|
|
|
|
|
|
| |
without requiring an intermediate copy operation
darcs-hash:20050827111420-776a0-1e41fee0c43d1e7f7eda3c26450fff250035ea7c.gz
|
|
|
|
|
|
|
|
|
|
|
|
| |
CarpetInterp used to use CarpetLib's data class to exchange interpolation
information (interpolation coordinates and a source map as inputs,
interpolation results and status/return codes as outputs) between processors.
This point-to-point communication has been replaced by explicit collective
MPI operations which should now make global interpolations faster.
For a general overview on the implementation see CarpetInterp's thorn documentation.
darcs-hash:20050826115157-776a0-d910b51d7a26cef12e13408a79f11ed2826f5ed1.gz
|
|
|
|
| |
darcs-hash:20050824113516-891bb-b3b73b0c0bc89ad54bd64d6919621e7a76d6accc.gz
|
|
|
|
|
|
|
|
|
|
| |
The optional argument "interpolation_times" allowed interpolating not
at the current time (cctk_time), but at a slightly earlier time, if
there were enough time levels present.
This feature was unused and broken.
darcs-hash:20050811170146-891bb-db58ea38ca8160729f9c8a53d17db2381dc27535.gz
|
|
|
|
| |
darcs-hash:20050810170009-891bb-168facf88ab10cc5c1732d037527a66bc134453c.gz
|
|
|
|
|
|
|
| |
Interpret the option table parameter time_deriv_order per output array
instead of per grid point.
darcs-hash:20050810165758-891bb-a4b84c90771da42c20878ebd59a797ef44a29b78.gz
|
|
|
|
| |
darcs-hash:20050810170107-891bb-bc5b8fa8a90d7289c0c7d76f3ad4a00aa3c1038f.gz
|
|
|
|
| |
darcs-hash:20050811170351-891bb-b7c586cb8494f23fac7254f169a1a2aeec523f97.gz
|
|
|
|
|
|
|
| |
Do not resize source_map twice.
Rename Util_TableGetIntArray return value from ierr to iret.
darcs-hash:20050801124730-891bb-4b25ee01ef6a3a21d75a19bc1500eec4ccaf310f.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
M ./Carpet/CarpetInterp/src/interp.cc -105 +148
Added a couple of small classes InterpolationTimes and InterpolationWeights
that embody arrays calculated in the remaining monster function
interpolate_within_component, with the result that the formulas are
easier to read, and the logic within the monster function is a little
easier to follow.
More stuff like this can easily be done.
darcs-hash:20050718170031-90671-3ab51afe56043f082e26c7bb6f73c845ee2a70b4.gz
|
|
|
|
| |
darcs-hash:20050716140952-891bb-c7665e3f4b371287f54cfc167140719ce54120b8.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is the first stage of a breakup of the monster function
Carpet_DriverInterpolate
The routine is segmented into several functional subroutines, with
names given (mostly) by the one-line comments that were in the
original.
Todo:
1) One of these new subroutines, DoLocalInterpolation, is itself a
monster function, and needs to be dealt with.
2) All of the subroutines have very long argument lists. There are
repeated patterns of arguments, which suggest that a structure could
be created which embodies the pattern.
darcs-hash:20050715103538-891bb-c0757adc59d29b09c63b7e4dbe11b57cd46b6682.gz
|
|
|
|
| |
darcs-hash:20050704170346-891bb-9afcde47badcd4fc165a3ea9d4cd73d6975482f3.gz
|
|
|
|
| |
darcs-hash:20050704163535-891bb-e95030a4787fd6b65dc17d8c959e714d36ac575c.gz
|
|
|
|
|
|
|
|
|
| |
Handle multiple maps. In singlemap mode, interpolate from the current
map. If there is only one map, interpolate from this one. Otherwise,
require a table argument "CCTK_INT source_map[N_interp_points]" that
specifies the source map for each interpolation point.
darcs-hash:20050704163505-891bb-653681ef3a619a7fa3462809c2bd408aae60284d.gz
|
|
|
|
|
|
|
|
|
|
| |
Add support for varying refinement factors. The spatial refinement
factors can be different in different directions, can be different
from the time refinement factor, and can be different on each level.
(However, the underlying spatial transport operators do currently not
handle any factors except two.)
darcs-hash:20050501205010-891bb-8d3a74abaad55ee6c77ef18d51fca2a2b69740de.gz
|
|
|
|
|
|
|
|
|
| |
data<> objects cannot be implicitly copied. The standard template
library containers copy objects arbitrarily. That means that one has
to store pointers to data<> objects instead of the objects themselves,
and has to allocate and free them manually.
darcs-hash:20050411170907-891bb-406b9b6bb6b97df2f47c349f32d91398338439ae.gz
|
|
|
|
| |
darcs-hash:20050307170026-891bb-03754477692ad245563fda22ecdd4510da4549ab.gz
|
|
|
|
| |
darcs-hash:20050303102506-891bb-118df8e38d1ca7e981bb4f97b14d5a747c1b3928.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change the way in which the grid hierarchy is stored. The new hierarchy is
map
mglevel
reflevel
component
timelevel
i.e., mglevel moved from the bottom to almost the top. This is
because mglevel used to be a true multigrid level, but is now meant to
be a convergence level.
Do not allocate all storage all the time. Allow storage to be
switched on an off per refinement level (and for a single mglevel,
which prompted the change above). Handle storage management with
CCTK_{In,De}creaseGroupStorage instead of
CCTK_{En,Dis}ableGroupStorage.
darcs-hash:20050201225827-891bb-eae3b6bd092ae8d6b5e49be84c6f09f0e882933e.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Turn most of the templates in CarpetLib, which used to have the form
template<int D> class XXX
into classes, i.e., into something like
class XXX
by setting D to the new global integer constant dim, which in turn is set to 3.
The templates gf and data, which used to be of the form
template<typename T, int D> class XXX
are now of the form
template<typename T> class XXX
The templates vect, bbox, and bboxset remain templates.
This change simplifies the code somewhat.
darcs-hash:20050101182234-891bb-c3063528841f0d078b12cc506309ea27d8ce730d.gz
|
|
|
|
| |
darcs-hash:20050101162121-891bb-ac9d070faecc19f91b4b57389d3507bfc6c6e5ee.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Made all variables in CarpetLib:gh to be const or non-public, to avoid
confusion and insanity.
Toward this end, created four member accessors for gh:
const rexts & extents() const
const rbnds & outer_boundaries() const
const rprocs & processors() const
const vector<vector<ibbox> > & bases() const
This involved a few changes in several files throughout the repository:
M ./Carpet/Carpet/src/Initialise.cc -2 +2
M ./Carpet/Carpet/src/Recompose.cc -8 +8
M ./Carpet/Carpet/src/SetupGH.cc -2 +2
M ./Carpet/Carpet/src/modes.cc -3 +3
M ./Carpet/CarpetIOHDF5/src/Recover.cc -4 +4
M ./Carpet/CarpetInterp/src/interp.cc -5 +5
M ./Carpet/CarpetLib/src/dh.cc -3 +3
M ./Carpet/CarpetLib/src/gh.cc -33 +33
M ./Carpet/CarpetLib/src/gh.hh -10 +28
M ./Carpet/CarpetReduce/src/mask_carpet.cc -4 +4
M ./Carpet/CarpetRegrid/src/automatic.cc -2 +2
darcs-hash:20041210131459-32473-ff0835ff0e57f6693fbe1ec23b350d1b1d18e3bc.gz
|
|
|
|
|
|
|
| |
Return the local interpolators' statuses in a table entry
local_interpolator_status. This is e.g. required by AHFinderDirect.
darcs-hash:20041020092737-891bb-495add6874e22d32e23eacbc340493a1e4656da3.gz
|
|
|
|
| |
darcs-hash:20041008214254-891bb-222fb022121e1d3b6f18ca8176640d400039a3d4.gz
|
|
|
|
| |
darcs-hash:20041002183708-891bb-96a5a3227becd0e40834fb9ab25ef5f9d75c1df5.gz
|
|
|
|
| |
darcs-hash:20040922203859-891bb-7e628f331129d9afeded4ea54732c37ca48cf26c.gz
|
|
|
|
|
|
|
| |
Add interpolation option key "time_interpolation_order" that allows
taking time derivatives while interpolating.
darcs-hash:20040921160917-891bb-236dc322c4bacdd2fa8d13b5c535541640e02537.gz
|
|
|
|
|
|
|
|
|
| |
Add an interpolation option "interpolation_times" that specifies for
each grid point at what time the value should be calculated. This
allows for some interpolation in time when there are sufficient time
levels.
darcs-hash:20040918132542-891bb-887b348b0e510d7f17ac32b41cb78176079ff1fb.gz
|
|
|
|
|
|
| |
Replace all CVS header tags with the standard "$Header:$".
darcs-hash:20040918132147-891bb-dea889bdd94a479ec412d14d08e9efca63e5c24d.gz
|
|
|
|
| |
darcs-hash:20040913123613-07bb3-060a47d1900cb82aa8260be38049e1e4b70f4e50.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new tags table entry to check: InterpNumTimelevels.
When this is set then the interpolator will take the given number of
timelevels as the number to use when interpolating in time. So if you
have grid functions with fewer than 3 timelevels mixed with grid
functions with 3 timelevels you can use this tag, set it to the number
of timelevels that you have available, and the interpolator will "do
the right thing".
Note that this means that GFs with only one timelevel are implicitly
treated as being constant in time.
The obvious examples, soon to be committed (I hope) are the static
conformal factor and the coordinates (although why you'd want to
interpolate the coordinates...). E.g.,
REAL confac TYPE = GF timelevels = 1 tags='tensortypealias="Scalar"
Prolongation="None" InterpNumTimelevels=1'
...
darcs-hash:20040820072138-58737-5ff68c487af14a1d72228aa6697cc9eea1ae3a89.gz
|
|
|
|
|
|
|
| |
Correct error in calculating the components' coordinate extents when
convergence_level is not zero.
darcs-hash:20040802163927-07bb3-639b6b816f790ab12935ccb4052c7c8808b7a6ff.gz
|