aboutsummaryrefslogtreecommitdiff
path: root/Tools/CodeGen/KrancThorn.m
Commit message (Collapse)AuthorAge
* Call CreateCalculationFunction for CaKernel source filesIan Hinder2012-01-24
|
* Tidy up argument passing for calculation and source file generationIan Hinder2012-01-24
|
* Add the CaKernel "auto-generated" epilogue to schedule.ccl and make.code.defnIan Hinder2012-01-24
|
* Create an outline of a CaKernel code fileIan Hinder2012-01-23
|
* Generate basic cakernel.ccl fileIan Hinder2012-01-23
|
* KrancThorn.m: Don't generate certain code unless we have ↵Ian Hinder2012-01-23
| | | | ConservationCalculations defined
* Merge branch 'hydro'Ian Hinder2012-01-22
|\ | | | | | | | | | | | | | | | | | | 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
| * KrancThorn.m: Fix messed up mergeIan Hinder2011-06-04
| |
| * Merge remote-tracking branch 'origin/master' into hydroIan Hinder2011-06-03
| |\
| * | Temporary commitIan Hinder2011-06-03
| | |
| * | KrancThorn.m: Expand primitive and conserved equationsIan Hinder2010-10-01
| | |
| * | KrancThorn.m: Pass thornName to ProcessConservationCalculationIan Hinder2010-10-01
| | |
| * | KrancThorn.m: Remove debugging codeIan Hinder2010-10-01
| | |
| * | KrancThorn.m: Read parameters to use from ConservationCalculationIan Hinder2010-10-01
| | |
| * | KrancThorn.m: Calls into ConservationCalculation package to generate code ↵Ian Hinder2010-10-01
| | | | | | | | | | | | for solving conservation laws
* | | Add ability to evolve ODEs in calculationsHal Finkel2011-11-01
| | |
* | | Split CodeGen.m into CodeGen.m, CodeGenC.m and CodeGenCactus.mIan Hinder2011-10-07
| | | | | | | | | | | | | | | | | | | | | - 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
* | | Add support for generating OpenCL codeErik Schnetter2011-09-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Enable selection of finite difference operators using run-time parametersIan Hinder2011-09-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | | Add assert() in vectorized code.Barry Wardell2011-06-19
| |/ |/|
* | Support no-inline functions for derivatives in vectorised codeErik Schnetter2011-05-27
| | | | | | | | | | | | | | | | | | 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.
* | Additional checks when using a JacobianIan Hinder2011-05-25
| |
* | Add support for a Jacobian to be applied to all derivativesIan Hinder2011-05-20
| |
* | Add missing package import.Barry Wardell2011-05-12
| |
* | Merge branch 'master' into xTensorBarry Wardell2011-03-20
|\ \ | | | | | | | | | | | | Conflicts: Tools/CodeGen/KrancThorn.m
| * | Improved common subexpression elimination support.Barry Wardell2011-03-16
| | |
| * | Only vectorise in differencing header if UseVectors is setIan Hinder2011-01-22
| | |
| * | Merge master into vectorIan Hinder2011-01-22
| |\ \ | | | | | | | | | | | | | | | | Fixed conflicts in: Auxiliary/Cactus/KrancNumericalTools/GenericFD/src/GenericFD.h
| | * | KrancThorn.m: Add additional check of the groups structureIan Hinder2010-12-19
| | | |
| * | | Use C++ for all source files.Erik Schnetter2010-12-06
| |/ / | | | | | | | | | Add extern "C" to scheduled functions.
| * / KrancThorn.m: Use new CheckGroups function to check the validity of the ↵Ian Hinder2010-11-29
| |/ | | | | | | groups structure in CreateThorn
| * add checkpoint tag to tensor attributesRoland Haas2010-08-23
| | | | | | | | | | | | Conflicts: Tools/CodeGen/KrancThorn.m
* | Factor out tensor code into a separate package which can eventually be used ↵Barry Wardell2010-08-11
| | | | | | | | as a wrapper around TensorTools and xTensor.
* | Add initial code for using xTensor instead of TensorTools.Barry Wardell2010-08-04
|/
* Add automatic scheduling of calculations in MoL_PseudoEvolutionIan Hinder2010-06-22
| | | | | | | | | | | | | | | | | | 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.
* add TensorParity attributeRoland Haas2010-05-06
|
* Revert "Revert "Merge branch 'master' of github.com:ianhinder/Kranc""Roland Haas2010-05-06
| | | | | | | | | | | Merge was correct after all. This reverts commit 04dfdcd32eec91978ba050a472aae2a6e7091c05. Conflicts: Tools/CodeGen/CalculationFunction.m Tools/CodeGen/Thorn.m
* Revert "Add support for vectorisation of generated code."Erik Schnetter2010-05-03
| | | | This reverts commit 8e006230f24be02831d390eaad9b90b7a7c77d2c.
* Revert "Merge branch 'master' of github.com:ianhinder/Kranc"Erik Schnetter2010-05-02
| | | | | This reverts commit 815307e624fdb8c0ee2eefc644c9bbd8244ad7f2, reversing changes made to 8e006230f24be02831d390eaad9b90b7a7c77d2c.
* Merge branch 'master' of github.com:ianhinder/KrancErik Schnetter2010-05-02
|\ | | | | | | | | | | Conflicts: Tools/CodeGen/CalculationFunction.m Tools/CodeGen/Thorn.m
| * Remove CreateSetterSourceWrapper and call CreateSetterSource directlyIan Hinder2010-04-03
| |
| * Replace sym context with Kranc context in Kranc.m. Also move interface ↵Ian Hinder2010-04-03
| | | | | | | | functions into Interface.m.
| * KrancThorn.m: Remove useless wrapper for creating configuration fileIan Hinder2010-04-03
| |
| * Move schedule generation from KrancThorn.m to Schedule.mIan Hinder2010-04-03
| | | | | | | | Also move NonevolvedTimelevels to KrancGroups.m
| * Move parameter file generation from KrancThorn.m to Param.mIan Hinder2010-04-03
| |
| * KrancThorn.m: Split into sectionsIan Hinder2010-04-03
| |
| * allow arbitray expressions for conditionsRoland Haas2010-03-23
| |
| * add options for steerability of paramtersRoland Haas2010-03-23
| |
* | Add support for vectorisation of generated code.Erik Schnetter2010-05-02
|/ | | | Vectorisation needs to be explicitly enabled by setting -DKRANC_VECTORS at build time.
* Introduce a new tensor type "DDD_sym", corresponding to the symmetryErik Schnetter2010-03-18
| | | | of dgt_i(jk).