aboutsummaryrefslogtreecommitdiff
path: root/Carpet/CarpetLib/src/prolongate_3d_real8_weno.F90
Commit message (Collapse)AuthorAge
* CarpetLib: Add support for OpenMPErik Schnetter2007-08-21
| | | | | | | | | | | Add #pragma omp statements for loops in reduction and prolongation operators. Change loop control variables to signed types. Add functions to determine the number of active threads. Add a parameter to set the number of threads if desired. darcs-hash:20070821185237-dae7b-56827b72a69b5fa1b3d1316379a0f155696b4cb2.gz
* CarpetLib: Reorganise prolongation and restriction operatorsErik Schnetter2007-01-12
| | | | | | | | | | | | | | | | | | | | | | | | Reorganise prolongation and restriction operators. This is a major implementation change. Most operators are now written as C++ templates instead of as Fortran 77 code. This simplifies the code, since C++ routines can be called more easily, and they also have access to CarpetLib's high-level data structures. Previously, the operators combined temporal and spatial interpolation. Now, time interpolation and space interpolation are handled separately. This may be less efficient, but simplifies the code significantly, since there are now N+M instead of N*M routines, for N time interpolation and M space interpolation methods. Remove the minmod prolongation operator, which was previously disabled. Add support for cell centering, using a method described by Simon Hern, and suggested for Carpet by Ian Hawke. darcs-hash:20070112205812-dae7b-5329795aa698e7bbc3671b1504134885dd830238.gz
* [CarpetLib] add option to omit Fortran 90 files by adding -DOMIT_F90 to ↵Jonathan Thornburg2006-08-29
| | | | | | | | | | | | | | | | | | | | | | | | compiler flags Carpet is _almost_ entirely written in C, C++, and Fortran 77, but there are a few Fortran 90 files in CarpetLib defining the ENO and WENO prolongation operators. This patch allows Carpet to be compiled without a Fortran 90 compiler if these (ENO/WENO) operators are not needed, by defining the C preprocessor symbol OMIT_F90. For example, you could do this by putting CFLAGS=-DOMIT_F90 CXXFLAGS=-DOMIT_F90 F77FLAGS=-DOMIT_F90 F90FLAGS=-DOMIT_F90 in a ~/.cactus/config file. I emphasize that in the default case, where OMIT_F90 is not defined, this patch is a no-op: the ENO and WENO prolongation operators are still defined, a Fortran 90 compiler is still needed to compile CarpetLib, you still pass go, you still collect $200. :) This patch only changes the behavior of Carpet in the non-default case where OMIT_F90 is defined. darcs-hash:20060829170502-b0a3f-0d423f190bd7388faa9e1a6e0a980694b044516b.gz
* CarpetLib: Add WENO prolongationI.Hawke2006-03-10
WENO prolongation should be more accurate than ENO prolongation whilst retaining the monotonicity properties of the ENO operators. The WENO operators will only work with prolongation_order_space = 5 because of the stencil width (requires 3 ghost zones). darcs-hash:20060310132742-34bfa-32c65e7f67cb91ab36dd125a5327f2e16286e807.gz