| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
| |
Pass MPI communicators as pointers instead of ints because they may
not be implemented as ints.
Use MPI_COMM_NULL instead of -1 as illegal communicator.
darcs-hash:20050826144511-891bb-324a5d22efcbbd53cac35899e30559b06cfdfdb6.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
|
|
|
|
|
|
|
|
|
|
| |
Split MPI_COMM_WORLD according to a new parameter Carpet::model into
different sets, and evolve these sets independently.
Add aliased functions to query the MPI communicators for this
simulation and for all models.
darcs-hash:20050825084739-891bb-7f102b46ec495f884be5197eaf077eef93f89dac.gz
|
|
|
|
|
|
|
| |
Initialise Carpet's MPI communicator not with MPI_COMM_WORLD, but with
a communicator that is passed in.
darcs-hash:20050825084335-891bb-38744ff9cbfb5349e34676897dba3356ef7e462e.gz
|
|
|
|
| |
darcs-hash:20050824145010-891bb-0173d254969a5c9123aae3882f461d03434f936c.gz
|
|
|
|
| |
darcs-hash:20050824144936-891bb-4519b3de89acb2fa1a0fe82443fab9cece3d0549.gz
|
|
|
|
| |
darcs-hash:20050824113516-891bb-b3b73b0c0bc89ad54bd64d6919621e7a76d6accc.gz
|
|
|
|
|
|
|
|
|
|
| |
Before a variable is output it is checked whether it has been output already
during the current iteration (eg. due to triggers).
This check was only variable-based and therefore caused problems when the
same variable was to be output to multiple files (using different alias names).
Now the check has been extended to also take the output filenames into account.
darcs-hash:20050823135345-776a0-1555987b4aee34bb646e67f491375dbcc44dddad.gz
|
|
|
|
|
|
|
|
|
| |
The low-level routine gdata::change_processor() wasn't aware of the collective
commbuffers communication scheme. This caused problems with CarpetInterp
which still uses this function in order to communicate data. But not for long
anymore, another patch is waiting already to be pushed.
darcs-hash:20050816135442-776a0-60371ebba14505a9d402bb08a9b0696d4b3d4702.gz
|
|
|
|
|
|
|
|
|
| |
CarpetLib's comm_state class (actually, it's still just a struct) has been
extended to handle collective buffer communications for all possible C datatypes
at the same time. This makes it unnecessary for the higher-level communication
routines to loop over each individual datatype separately.
darcs-hash:20050815150023-776a0-dddc1aca7ccaebae872f9f451b2c3595cd951fed.gz
|
|
|
|
|
|
| |
Do not shrink the domain if the buffer zones are outer.
darcs-hash:20050812143317-891bb-5e95257cd7a5685fbcc02985e5802e3f1e070a78.gz
|
|
|
|
|
|
|
|
| |
For each refinement level that is to be recomposed, check whether it
has the same structure as before, and if so, do nothing. This is
controlled by a new flag CarpetLib::fast_recomposing.
darcs-hash:20050811120347-891bb-f937c21ddeac7d909cae41d487e9fd74a5ce8cc8.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:20050811163508-891bb-a25e3c59937a75684218fde1cf4fafd19087f2c9.gz
|
|
|
|
|
|
|
| |
Update the waveinterp test cases after correcting three timelevel
initialisation.
darcs-hash:20050811113402-891bb-b40f5401b44d626bda9611de2622a77395c16295.gz
|
|
|
|
| |
darcs-hash:20050810192718-891bb-91b71ce58755065f6846a5bd40686c9953f3d1a6.gz
|
|
|
|
|
|
|
|
| |
There was another error in the three timelevel initialisation. The
first backwards time step did not have enought coarser level time
steps for the necessary prolongation operations.
darcs-hash:20050810192602-891bb-ba9ed7d58dea6a3ddbf59be0fa6baa1ede509963.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
|
|
|
|
|
|
|
|
| |
Provide a grid function "evolution_mask" which is zero for all grid
points that do not need to be evolved because they are going to be
restrict from a finer grid.
darcs-hash:20050810125908-891bb-3a6441b6cd41b7bafda6a42c672925ac98fbb668.gz
|
|
|
|
|
|
|
|
|
| |
This fixes a typo in the previous push.
I also took the opportunity to bring the patch into better compliance
with the coding style.
darcs-hash:20050809143402-90671-5feae89e34e29f1648b31a66d97d578a5b283f1b.gz
|
|
|
|
| |
darcs-hash:20050811170351-891bb-b7c586cb8494f23fac7254f169a1a2aeec523f97.gz
|
|
|
|
|
|
|
|
|
|
| |
Added a ostream & << operator for the data class.
Made an explicit instantiation for CCTK_REAL.
Usually the amount of data renders such an operator useless,
but in test programs it is handy to be able to just print the data values.
darcs-hash:20050809093318-90671-dd30c55dc8757efa96a9bfbe90a48ff445e26f07.gz
|
|
|
|
| |
darcs-hash:20050809093357-891bb-88b8f8019ddd2c088e8fbe326f45a9d0eea34114.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Deprecated the previous buffer zone mechanism.
Introduce new parameters Carpet::use_outer_buffer_zones and
Carpet::num_integrator_substeps. The number of buffer zones are then
calculated automatically, and are added to the outer edge of the grid
instead of reducing the domain.
Adapt to the API change of the dh class.
Both new and old style buffer zones can exist at the same time,
although I would not do that.
darcs-hash:20050809091707-891bb-c25d68de3b04b03c06078aaee39f389b67f1416a.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename the previous buffer zones to "inner buffer zones". Introduce
additional "outer buffer zones". Their meaning is the same, except
that inner buffer zones are taken from the computational domain,
making it smaller, while outer buffer zones are added to the outside,
similar to ghost zones. This makes them easier to handle, both
internally in Carpet and for the end user.
This changes the API of the dh class.
There is a new field "is_interproc" in the "dboxes" structure; it
specifies whether the whole boundary is an interprocessor boundary.
(Note that boundaries can be partly interprocessor and partly
refinement boundaries.)
Both kinds of buffer zones can exist at the same time, although I
would not do that.
darcs-hash:20050808200647-891bb-9d9a8eefaf7bcb665d09869a8b564f3769d2ecc2.gz
|
|
|
|
|
|
|
|
|
|
|
|
| |
When converting from physicsl time steps (delta_time) to Carpet's time
steps (th::delta_time), do not divide by abs(delta_time), but by
delta_time instead.
When evolving backwards in time while initialising three time levels,
change the sign of the physical time steps only, not the sign of
Carpet's time steps.
darcs-hash:20050809084940-891bb-2517b1568696c71278a98db6261515817a90247a.gz
|
|
|
|
| |
darcs-hash:20050808194745-891bb-74c3f74d1b5a5886ea63e11671aa7f425d5a8daa.gz
|
|
|
|
|
|
| |
Use positive time levels when outputtting all time levels.
darcs-hash:20050808180907-891bb-7fdf3f70084dbcd9bc49d6b50869de8774032805.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The waveinterp testsuite was broken, many output files had different values.
Also, the old output files didn't contain the recently introduced header comment
lines saying which thorn did output them.
The waveinterp testsuite has now been split into two separate tests,
waveinterp-1p and waveinterp-2p to run on 1 and 2 processors respectively.
The only differences are in the CarpetIOASCII files which contain either
1 or 2 components in the output.
darcs-hash:20050808164941-776a0-fbecb78b32c48a16f030996afcf1259276c0a0a0.gz
|
|
|
|
|
|
|
|
|
| |
DISTRIB=const variables are supposed to be identical on all
processors. Output them only on the root processors to save space.
This makes it also possible to compare output from different numbers
of processors in test cases.
darcs-hash:20050808114339-891bb-f058e467a9b95610675245bdb6dfa2cfa3104c6c.gz
|
|
|
|
|
|
|
| |
These default settings are now believed to be sensible and safe for
everybody.
darcs-hash:20050808132929-891bb-48231878e0a5ea02312823f4b96cad1c79fdba9f.gz
|
|
|
|
| |
darcs-hash:20050808132501-891bb-e03ca26e0adfe32f01065ecae0b987785855190a.gz
|
|
|
|
| |
darcs-hash:20050808132424-891bb-e352aafd9745fb66df45212a4a28e3175a7b58f0.gz
|
|
|
|
|
|
|
|
|
|
|
|
| |
These types are
typedef vect<vect<bool,dim>,2> b2vect;
typedef vect<vect<int,dim>,2> i2vect;
They are similar to bbvect and iivect, but have the order reversed.
They are useful if you need one element per face of a grid variable.
darcs-hash:20050808132221-891bb-fa40b6d4fb8e760c7005adf7e526dd0a6597f0ec.gz
|
|
|
|
|
|
|
|
|
|
| |
Disable the check for time extrapolation for grid functions that are
not interpolated but copied (transport_operator=op_copy). This check
needs to know the sign of delta_time, and that sign is not known here.
(For example, 3-timelevel-initialisation evolves both forwards and
backwards in time.)
darcs-hash:20050726111122-891bb-0c2130f2dfdd86c25575cbb88cb7c8ad80089eac.gz
|
|
|
|
| |
darcs-hash:20050726110949-891bb-fe7d442ee41c585b7078fd6746840cd68de1d770.gz
|
|
|
|
|
|
|
|
|
|
|
| |
3-timelevel-initialisation was broken: the refinement levels were
initialised in the wrong order, so that the method was formally only
first order convergent.
Reorder how the individual steps of the algorithm traverse the
refinement levels.
darcs-hash:20050725212427-891bb-72d0e8554e98e7126187b61ef87fe447085dc4af.gz
|
|
|
|
| |
darcs-hash:20050725122347-891bb-bb71264acc713fce942f5409592f543f2eece03b.gz
|
|
|
|
| |
darcs-hash:20050725121823-891bb-0e8ca67a430b353f20100f562b1455b309393511.gz
|
|
|
|
| |
darcs-hash:20050725121646-891bb-829f88b403542b5be5bcfc3d1aa41b2d57c46ade.gz
|
|
|
|
|
|
|
| |
Move some loops out of functions and into the caller. This makes it
easier to see which levels are walked in what order.
darcs-hash:20050725121402-891bb-0997ea576c96edba7ee53cc7df85a5994c3f6d15.gz
|
|
|
|
|
|
|
| |
Give some local functions better names and reorder them.
No change in functionality.
darcs-hash:20050724114350-891bb-7610f8d3b11165ad04fc65e3e8c6f7d869b8d474.gz
|
|
|
|
| |
darcs-hash:20050723214656-891bb-51db2a158414910d2ee942ce8bda00c9f6588e9a.gz
|
|
|
|
|
|
|
| |
Do not resize source_map twice.
Rename Util_TableGetIntArray return value from ierr to iret.
darcs-hash:20050801124730-891bb-4b25ee01ef6a3a21d75a19bc1500eec4ccaf310f.gz
|
|
|
|
|
|
|
| |
Prepend column numbers to column descriptions in the header of the
files.
darcs-hash:20050730073824-891bb-54139304b2c3da5a767f6f1a6a357234bb6f6c74.gz
|
|
|
|
|
|
|
| |
Prepend column numbers to column descriptions in the header of the
files.
darcs-hash:20050730073713-891bb-b3588e78345c9ffacff6c314cd4f6869e4a42e04.gz
|
|
|
|
|
|
|
|
|
|
|
|
| |
The parfiles didn't run because not all thorns were activated.
test_rad.par activated IOASCII and set an IOASCII parameter instead of using
CarpetIOASCII. multipatch.par was a very old parfile which didn't run at all.
It was therefore removed.
This closes bug report http://bugs.carpetcode.org/show_bug.cgi?id=78
"Fails to run test par files (unactivated thorns)".
darcs-hash:20050728171716-776a0-104c9ba1f0ff601febbcc682ff60c43edcaba5f0.gz
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
from a single chunked checkpoint file
The list of HDF5 datasets to process is now reordered so that processor-local
components are processed first. When processing the list of datasets, only
those will be reopened from which more data is to be read. The check when
a variable of a given timelevel has been fully recovered was improved.
This closes http://bugs.carpetcode.org/show_bug.cgi?id=87 "Single-file,
many-cpu recovery very slow".
darcs-hash:20050728122546-776a0-21dfceef87e12e72b8a0ccb0911c76066521e192.gz
|