| Commit message (Collapse) | Author | Age |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
ConservationCalculations defined
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
Auxiliary/Cactus/KrancNumericalTools/GenericFD/src/MathematicaCompat.h
Examples/kranc.th
Tools/CodeGen/Kranc.m
Tools/CodeGen/KrancTensor.m
Tools/CodeGen/Schedule.m
Tools/CodeGen/Thorn.m
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
for solving conservation laws
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- CodeGenC.m still contains Fortran variants. These might be moved into CodeGenFortran.m.
- Several other modules essentially need to pull in all three packages due to newly broken abstraction barriers. This can be fixed incrementally.
- Indent and format all three files consistently
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This must be enabled via an option UseOpenCL->True, similar to
vectorisation.
* When generating code for a calculation, stringify the kernel and
call the OpenCL run time, when OpenCL code should be generated.
* Stringify Differencing.h when OpenCL is used.
* Move certain function calls out of the body of the generated code
and into the wrapper, e.g. screen output and checking whether
grid functions have memory.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Partial derivative definitions can now depend on Mathematica variables
corresponding to parameters defined in IntParameters. These parameters
should be defined with an AllowedValues -> {1, 2, 3, …}
entry. Derivative operators are created for all possible values of the
parameter. At run-time, a switch statement in the grid function loop
selects which set of operators are used. Only one parameter can
currently be used.
|
| |/
|/| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Create two versions of the derivative operators, once as macro, and
once as no-inline function. When a function is used, then the grid
spacing 1/dx must be passed in explicitly. This was done differently
before and is now slightly faster and shorter. The no-inline function
reduces code size, and should probably also be available for the
non-vectorised code, but this is not implemented.
|
| | |
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
Conflicts:
Tools/CodeGen/KrancThorn.m
|
| | | |
|
| | | |
|
| |\ \
| | | |
| | | |
| | | |
| | | | |
Fixed conflicts in:
Auxiliary/Cactus/KrancNumericalTools/GenericFD/src/GenericFD.h
|
| | | | |
|
| |/ /
| | |
| | |
| | | |
Add extern "C" to scheduled functions.
|
| |/
| |
| |
| | |
groups structure in CreateThorn
|
| |
| |
| |
| |
| |
| | |
Conflicts:
Tools/CodeGen/KrancThorn.m
|
| |
| |
| |
| | |
as a wrapper around TensorTools and xTensor.
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before this commit, Kranc required the user to use the Schedule key in
a calculation to give a Cactus schedule specification. Scheduling
analysis functions which compute only on the grid interior (e.g. those
that take derivatives) was problematic because boundary conditions
were not applied (e.g. symmetries and physical), leading to either
poison or undefined values on the grid. Calculations scheduled in
ANALYSIS could not have prolongation in time with mesh refinement.
This commit introduces a new way to schedule functions which is
completely automatic. If the Schedule key is omitted, the calculation
is scheduled in MoL_PseudoEvolution which means it will be called in
all necessary places. Each such calculation will have its own
schedule group, in which boundary conditions are also selected and
applied (if necessary). Boundary conditions are also applied
in POSTRESTRICT and POSTRESTRICTINITIAL.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Merge was correct after all.
This reverts commit 04dfdcd32eec91978ba050a472aae2a6e7091c05.
Conflicts:
Tools/CodeGen/CalculationFunction.m
Tools/CodeGen/Thorn.m
|
|
|
|
| |
This reverts commit 8e006230f24be02831d390eaad9b90b7a7c77d2c.
|
|
|
|
|
| |
This reverts commit 815307e624fdb8c0ee2eefc644c9bbd8244ad7f2, reversing
changes made to 8e006230f24be02831d390eaad9b90b7a7c77d2c.
|
|\
| |
| |
| |
| |
| | |
Conflicts:
Tools/CodeGen/CalculationFunction.m
Tools/CodeGen/Thorn.m
|
| | |
|
| |
| |
| |
| | |
functions into Interface.m.
|
| | |
|
| |
| |
| |
| | |
Also move NonevolvedTimelevels to KrancGroups.m
|
| | |
|
| | |
|
| | |
|
| | |
|
|/
|
|
| |
Vectorisation needs to be explicitly enabled by setting -DKRANC_VECTORS at build time.
|
|
|
|
| |
of dgt_i(jk).
|