aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
* try to work around some fp roundoff problems which were causingjthorn2002-11-22
| | | | | | | | | assertion failures: - fix a bunch of asserts to use my fuzzy-arithmetic classes - also guard assertions on sign(z) by a test that z is fuzzily nonzero git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@908 f88db872-0e4f-0410-b76b-b9085cfa78c5
* need to #define CCODE to fake "cctk.h" definitionsjthorn2002-11-22
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@907 f88db872-0e4f-0410-b76b-b9085cfa78c5
* fix comment since I renamed this file a long time ago...jthorn2002-11-22
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@906 f88db872-0e4f-0410-b76b-b9085cfa78c5
* change in terminology/notation:jthorn2002-11-21
| | | | | | | | | | | | LHS of apparent horizon equation was formerly called $H$, changed to $\Theta$ because it is in fact precisely the expansion of the surface r = h(angle). This implies renaming a lot of variables & functions & a few parameters (which aren't specified in most par files outside my own for testing this thorn) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@901 f88db872-0e4f-0410-b76b-b9085cfa78c5
* don't give a warning any more if no AH foundjthorn2002-11-21
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@898 f88db872-0e4f-0410-b76b-b9085cfa78c5
* change is_valid_drho() and is_valid_dsigma() to use fuzzy comparisonsjthorn2002-11-20
| | | | | | | with the patch boundaries, to work around fp roundoff problems git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@897 f88db872-0e4f-0410-b76b-b9085cfa78c5
* rename parameter surface_integral_method to integral_methodjthorn2002-11-15
| | | | | | | | add support for computing BH circumferences in xy, xz, yz planes as requested by Ed recently git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@893 f88db872-0e4f-0410-b76b-b9085cfa78c5
* change to using the "enum hack" for patch numbersjthorn2002-11-15
| | | | | | | so these are now available as array sizes etc git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@892 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add support for computing line integrals around a surfacejthorn2002-11-15
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@891 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add support for explicitly getting the induced 2-D (rho,sigma) metricjthorn2002-11-15
| | | | | | | add support for computing arc lengths of patches git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@890 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add explicit degree/radian conversions for rho/sigmajthorn2002-11-15
| | | | | | | add tests for whether a given drho/dsigma is valid" git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@889 f88db872-0e4f-0410-b76b-b9085cfa78c5
* change to the "enum hack" for in-class static constantsjthorn2002-11-05
| | | | | | | because some systems don't grok them properly (linker errors ) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@885 f88db872-0e4f-0410-b76b-b9085cfa78c5
* change syntax of template instantiations yet again, to satisfy(??)jthorn2002-11-05
| | | | | | | | | regatta C++ compiler -- now do everything inside namespace jtutil { ... } instead of using individual jtutil:: qualifiers git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@884 f88db872-0e4f-0410-b76b-b9085cfa78c5
* fix a nasty bug where I tried to print int(method) with a %d formatjthorn2002-11-05
| | | | | | | | | | | | in an error message (method is a CCTK keyword parameter = const char * here) instead of printing int(state.method) (the same parameter decoded into an enum for internal use) [[this bug only affected a "this should never happen" error message, and was caught by the regatta C++ compiler]] git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@883 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add (very very minimal) support for multiprocessor operation:jthorn2002-11-05
| | | | | | | | | | | | if all AHs are entirely within a single processor's chunk of the grid, then set AHFinderDirect::processor_number = 42 (or whatever that processor's processor number is) and things should work ok (this is not yet properly documented :( ) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@882 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add compuatation and printing of mean radius for each AH foundjthorn2002-11-04
| | | | | | | | | | | | | | | | | | | | | | | output format for BH info in stdout log is now INFO (AHFinderDirect): AH 1/1: r=1.86525 at (-0.000000,0.000000,-0.000000) INFO (AHFinderDirect): AH 1/1: area=45.23876324 m_irreducible=0.9486815054 and in BH_diagnostics file is now # apparent horizon 1 of 1 # # column 1 = cctk_iteration # column 2 = cctk_time # column 3 = centroid_x # column 4 = centroid_y # column 5 = centroid_z # column 6 = mean radius # column 7 = area # column 8 = m_irreducible git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@879 f88db872-0e4f-0410-b76b-b9085cfa78c5
* This log message is the one that should have been attached to thejthorn2002-10-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | previous commit, but wasn't due to an editing mistake. :( * Rename two parameters N_ghost_points --> ghost_zone_width N_overlap_points --> patch_overlap_width In both cases there's no change in semantics, "just" a name change to be clearer. * Redesign the way we specify the angular resolution: Formerly it was via a real parameter delta_drho_dsigma which gave the angular grid spacing in degrees. This was a bit clumsy -- you had to hand-calculate which spacings would evenly divide the grid sizes (typically 45 degrees, or 90 degrees for full-sphere patch systems). The new scheme uses an integer parameter N_zones_per_right_angle which gives the number of grid zones in 90 degrees, i.e. it gives 90.0/delta_drho_dsigma . This makes it easy to tell what the legal values are (integers, must be even for non-full-sphere patch systems, since they have 45-degree-wide patches). Since most par files didn't specify the old parameter, they won't need changing for the new one; another set of commits fixes all the par files in the run/ directory tree of this thorn which do specify the resolution explicitly. git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@875 f88db872-0e4f-0410-b76b-b9085cfa78c5
* *** empty log message ***jthorn2002-10-31
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@874 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add support for (mirrored, not rotating) quadrant and octant gridsjthorn2002-10-28
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@869 f88db872-0e4f-0410-b76b-b9085cfa78c5
* * rename some private functions, egjthorn2002-10-28
| | | | | | | | | | | | | | | | | | | | from interlink_plus_xy_quadrant_patch_system() to setup_ghost_zones__plus_xy_quadrant_mirrored() * add support for new mirrored patch system types in patch_system::patch_system() constructor * add comments in integrate_gridfn() to document silent assumptions: > // FIXME: > // It would be better to compute the full-sphere integral, but that would > // require knowing the gridfn's symmetries. > // > // FIXME: > // We silently assume that the patches butt-join, i.e. that they don't > // overlap, i.e. that N_overlap_points=1 git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@868 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add new patch system types to handle mirrored octant/quadrant cases,jthorn2002-10-28
| | | | | | | also rename some existing ones to make them consistent git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@867 f88db872-0e4f-0410-b76b-b9085cfa78c5
* expand/clarify comments about how we handle a corner between twojthorn2002-10-28
| | | | | | | symmetry ghost zones git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@866 f88db872-0e4f-0410-b76b-b9085cfa78c5
* * change implementation of operator==()jthorn2002-10-28
| | | | | | | | | | | | to check addresses rather than just patch numbers ==> will now work properly even on patches from different patch systems * rename ghost_zone_containing_point() to ghost_zone_containing_noncorner_point() and add explicit check that point isn't in corner git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@865 f88db872-0e4f-0410-b76b-b9085cfa78c5
* change "apparent-horizon surface point ouside the Cactus grid"jthorn2002-10-26
| | | | | | | | | and "infinity or NaN detected in interpolated geometry" from level 1 and 0 warnings respectively, to level 2 (--> won't halt Cactus run, probably won't even print anything) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@863 f88db872-0e4f-0410-b76b-b9085cfa78c5
* oops, forgot to turn storage on for the Cactus arrays!jthorn2002-10-26
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@861 f88db872-0e4f-0410-b76b-b9085cfa78c5
* * #ifdef-out code for storing BH diagnostics in Cactus arraysjthorn2002-10-26
| | | | | | | | | | | | because (for reasons I don't understand) all the Cactus arrays show up as NULL pointers at run-time :( :( * Add an option to also write the BH diagnostics to an output file inside AHFinderDirect -- this works fine. Alas the output file format is hard-wired to a simple ASCII one. :( git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@860 f88db872-0e4f-0410-b76b-b9085cfa78c5
* rename parameter file_format to horizon_file_formatjthorn2002-10-26
| | | | | | | | to avoid confusion with future file-format parameters for other types of output files (eg for BH diagnostics) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@859 f88db872-0e4f-0410-b76b-b9085cfa78c5
* store BH diagnostics (= centroid x,y,z, area, m_irreducible)jthorn2002-10-26
| | | | | | | in Cactus arrays so they're accessible to other thorns and/or I/O methods git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@858 f88db872-0e4f-0410-b76b-b9085cfa78c5
* rename internal variables from "mass" to "m_irreducible"jthorn2002-10-26
| | | | | | | to make it clearer what we're actually computing git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@857 f88db872-0e4f-0410-b76b-b9085cfa78c5
* minor permutation of code and comment clarificationjthorn2002-10-26
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@856 f88db872-0e4f-0410-b76b-b9085cfa78c5
* * Move suboptions out of top-level "method" parameter into separatejthorn2002-10-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | parameters; the top-level method parameter is now just keyword method "what should this thorn do for each apparent horizon?" { # these options are mostly for testing/debugging "horizon function" :: "evaluate the LHS function H(h)" "test Jacobian" :: "compute/print the J[H(h)] Jacobian matrix" # this is for normal apparent horizon finding "find horizon" :: "find the apparent horizon" } "find horizon" The keyword strings have changed a bit, but since most users will not need to change the default value, this shouldn't change their parameter files. * Revise driver logic to clean up handling of the different values of the top-level method parameter. * Slightly tweak output format for BH diagnostics, and documentation (thorn guide) to make it explicit that what we're calculating is the irreducible mass of the apparent horizon. Modified Files: param.ccl doc/documentation.tex par/misner-run.par run/test-ahfinderdirect/misc/Kerr.par run/test-ahfinderdirect/misc/try-5.par run/test-ahfinderdirect/misc/try-7.5-debug.par run/test-ahfinderdirect/misc/try-7.5.par run/test-ahfinderdirect/misc/try-9.par src/driver/driver.hh src/driver/find_horizons.cc src/driver/setup.cc Added Files: # new par file to compute/print the analytical horizon # for this Kerr/Schild test, for comparison with numerical ones run/test-ahfinderdirect/misc/try-7.5-horizon.par git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@855 f88db872-0e4f-0410-b76b-b9085cfa78c5
* tweak a commentjthorn2002-10-23
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@853 f88db872-0e4f-0410-b76b-b9085cfa78c5
* fix a bug which made us use the -1 ("past") time level every 2nd timejthorn2002-10-22
| | | | | | | | | | | | | | | | | step of an evolution: Previously the code found the data pointers for the Cactus g_ij and K_ij grid arrays once in its setup phase, then used those all through the evolution. The problem is... the "current time level" data pointers change at each time step, because Cactus rotates the time-level arrays rather than copying all the (big) grid array data. This commit changes the coee to just lookup the Cactus variable indices in setup, then get a fresh set of data pointers each time we look for an apparent horizon (i.e. at each time step). git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@850 f88db872-0e4f-0410-b76b-b9085cfa78c5
* change timing of when we (optionally) output the initial guess if we justjthorn2002-10-17
| | | | | | | | | | evaluate H(h): > // Note that if we decide to output h, we output it *after* any H(h) > // evaluation or horizon finding has been done, to ensure that all the > // ghost zones are filled in in case we need to print them. git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@845 f88db872-0e4f-0410-b76b-b9085cfa78c5
* * rename initial-guess suboptions to make them a bit clearerjthorn2002-10-17
| | | | | | | | | ("sphere" --> "coordinate sphere", "ellipsoid" --> "coordinate ellipsoid") * more comments in param.ccl * add option to allow only writing "large" data files every N time steps git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@838 f88db872-0e4f-0410-b76b-b9085cfa78c5
* reword/expand/combine error messages in geometry_is_finite()jthorn2002-10-13
| | | | | | | | --> now they give the actual interpolated geometry values (yes, all of them, 6 gij, 6 Kij, 18 partial_k gij) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@834 f88db872-0e4f-0410-b76b-b9085cfa78c5
* * expand NaN checks in gridfns to "is finite" checksjthorn2002-10-12
| | | | | | | | | | | | | | | (also catchs +/-infinity) * move final stage of calculation of LHS function H(h) out of Maple-generated code (in src/gr.cg/) into hand-written code in src/gr/horizon_function.c (comput_H()) so we can check that HD > 0 before taking its sqrt. [HD <= 0 probably means the inerpolated g_ij isn't positive definite] * also systematize CCTK_VWarn() printing for various error conditions in horizon_function.c git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@829 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add checks for NaNs when evaluating H(h) functionjthorn2002-10-11
| | | | | | | (separate parameters for checking h and the interpolated geometry fields) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@828 f88db872-0e4f-0410-b76b-b9085cfa78c5
* back out last change for these filesjthorn2002-10-11
| | | | | | | | | | | | | | | | > test_fuzzy.cc > * change error_exit() call to fprintf(stderr, ...) followed by abort() > so we don't need error_exit() and thus can compile standalone > (error_exit() now needs "cctk.h" :( ) > > makefile > * remove dependence on error_exit() from test_fuzzy since error_exit() does *NOT* actually need "cctk.h" if we compile with -DSTANDALONE_TEST git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@827 f88db872-0e4f-0410-b76b-b9085cfa78c5
* util.hhjthorn2002-10-11
| | | | | | | | | | | | | | | | | | | | * make fuzzy::tolerance a private data member and add set/get public fns to access it ((cleaner C++ style)) fuzzy.cc * fix template-instantiation syntax ==> now warning-free with icc 5, hopefully this will also fix the fatal errors on the Hitachi test_fuzzy.cc * change error_exit() call to fprintf(stderr, ...) followed by abort() so we don't need error_exit() and thus can compile standalone (error_exit() now needs "cctk.h" :( ) makefile * remove dependence on error_exit() from test_fuzzy git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@826 f88db872-0e4f-0410-b76b-b9085cfa78c5
* tweak warning msg formattingjthorn2002-10-10
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@825 f88db872-0e4f-0410-b76b-b9085cfa78c5
* doc/TODOjthorn2002-10-10
| | | | | | | | | | | spelling fix, clarification src/driver/setup.cc change CCTI_VWarn() to CCTK_VInfo() for a message that's not really an error git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@824 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add Peter's latest Hitachi results (leaving out -64 makes nojthorn2002-10-10
| | | | | | | difference on stdio namespace test, but difference on vector test) git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@822 f88db872-0e4f-0410-b76b-b9085cfa78c5
* comment & whitespace tweaks only -- no code changesjthorn2002-10-10
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@821 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add support for outputting te change in the horizon position fromjthorn2002-10-10
| | | | | | | | | | | | | | one Newton iteration to the next, Delta_h, at each Newton iteration (for help debugging convergence problems) also move parameters for "should we output {h,H,Delta_h} from struct IO_info to struct solver_info also make the instructions on setting environment variables in make.configuration.defn even more verbose... git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@820 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add new Hitachi results without -64 optionjthorn2002-10-09
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@819 f88db872-0e4f-0410-b76b-b9085cfa78c5
* rename files since : in filenme was confusing some compilersjthorn2002-10-09
| | | | | | | | | | | | | | | | | | | | (now use --): Modified Files: makefile Added Files: vector-std--std-vector.cc vector-std--using-namespace-std.cc vector-std--using-std-vector.cc vector_h-std--std-vector.cc vector_h-std--using-namespace-std.cc vector_h-std--using-std-vector.cc Removed Files: vector-std:std-vector.cc vector-std:using-namespace-std.cc vector-std:using-std-vector.cc vector_h-std:std-vector.cc vector_h-std:using-namespace-std.cc vector_h-std:using-std-vector.cc git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@818 f88db872-0e4f-0410-b76b-b9085cfa78c5
* rename files since : in filenme was confusing some compilersjthorn2002-10-09
| | | | | | | | | | | | | | | | | | | | (now use --): Modified Files: makefile Added Files: cstdio-std--std-printf.cc cstdio-std--using-namespace-std.cc cstdio-std--using-std-printf.cc stdio_h-std--std-printf.cc stdio_h-std--using-namespace-std.cc stdio_h-std--using-std-printf.cc Removed Files: cstdio-std:std-printf.cc cstdio-std:using-namespace-std.cc cstdio-std:using-std-printf.cc stdio_h-std:std-printf.cc stdio_h-std:using-namespace-std.cc stdio_h-std:using-std-printf.cc git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@817 f88db872-0e4f-0410-b76b-b9085cfa78c5
* add LosLobos and Hitachi results from Peter Dienerjthorn2002-10-09
| | | | git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@816 f88db872-0e4f-0410-b76b-b9085cfa78c5
* redo the LAPACK hooks so they handle the case where LAPACK isjthorn2002-10-08
| | | | | | | | | | built with a Fortran compiler different from that used to build Cactus (i.e. where Cactus doesn't know about the LAPACK compiler's support libs) --> with this change, AHFinderDirect now builds ok with icc 5 on xeon21!! git-svn-id: http://svn.einsteintoolkit.org/cactus/EinsteinAnalysis/AHFinderDirect/trunk@812 f88db872-0e4f-0410-b76b-b9085cfa78c5