aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Regenerate examplesIan Hinder2012-11-14
|
* KrancThorn.m: Ensure that conservation calculations have required entriesIan Hinder2012-11-14
|
* Calculation.m: Provide a default for UseCaKernel in GetCalculationScheduleNameIan Hinder2012-11-14
|
* EM-xTensor.m: Improve code which loads the Metrics packageIan Hinder2012-11-14
| | | | | * Add the EinsteinToolkit relative location in EinsteinExact (the submodule must be checked out) * Give an error and abort if the metrics database cannot be loaded
* Regenerate Advect exampleIan Hinder2012-11-14
|
* KrancTensor.m: Declare all derivative operators to TensorToolsIan Hinder2012-11-14
|
* TensorTools.m: Expand contractions in all derivative operatorsIan Hinder2012-11-14
| | | Previously, only contractions in the PD operator were expanded. TensorTools didn't know about other operators, as it didn't need to.
* TensorTools.m: Add a registration interface for derivative operatorsIan Hinder2012-11-14
| | | | It turns out that we need to know which symbols are going to be used as derivative operators so that we can expand contractions under them. A more general solution might have unintended consequences.
* Add ParameterConditions option for CreateThornIan Hinder2012-11-14
| | | | This option allows the user to set certain conditions on parameters which must be satisfied otherwise the thorn aborts with a given error message (details in Doc/KrancDoc.tex).
* TensorTools.m: Expand contractions within partial derivativesIan Hinder2012-11-14
| | | Previously, PD[v[ua],la] was not expanded
* TestTensorTools.m: Correct expected result for PD[u[ua],la] testIan Hinder2012-11-14
| | | The test still fails (see Issue #87).
* TestTensorTools.m: Improve output formattingIan Hinder2012-11-14
|
* Remove TestTensorTools.nbIan Hinder2012-11-14
|
* TestTensorTools.m: Improve report of tests passed and failedIan Hinder2012-11-14
|
* TestTensorTools.m: Add robustness and scriptability functionsIan Hinder2012-11-14
|
* TestTensorTools.m: Fix remaining tests - 1 failsIan Hinder2012-11-14
|
* TestTensorTools.m: Re-enable and fix most testsIan Hinder2012-11-14
| | | The old tests assumed it was possible to have the same tensor kernel with different index positions, and TensorTools has been modified since to prohibit this.
* TestTensorTools.m: Improve formatting of outputIan Hinder2012-11-14
|
* TestTensorTools.m: Make test work as a script, disable some testsIan Hinder2012-11-14
|
* Add TestTensorTools.m (script version of TestTensorTools.nb)Ian Hinder2012-11-14
| | | | Currently just copied in the content unmodified
* Correct _Ratio pattern to _RationalErik Schnetter2012-10-25
| | | | Also slightly rewrite kdiv expansion rules.
* Expect isnan in std:: namespace in C++Erik Schnetter2012-10-22
|
* Declare private functions as staticErik Schnetter2012-09-25
|
* Don't convert small integers to reals during code generationErik Schnetter2012-09-13
| | | | Don't convert small integers to reals during code generation. Small integers may be used in if conditions, and converting these to real numbers creates less efficient code.
* Optimise product of sqrt() callsErik Schnetter2012-09-13
|
* Make signbit() call compile with IBM C++ compilersErik Schnetter2012-09-13
|
* Handle Piecewise[] in code generationErik Schnetter2012-09-08
| | | | | Replace Piecewise[] by IfThen[] calls. Unfortunately, this does not work with vectorisation.
* Handle Piecewise[] during CSEErik Schnetter2012-09-08
| | | | Piecewise[] expects nested lists as arguments. CSE doesn't handle this well; therefore, replace Piecewise[] by a different function that expects regular arguments during CSE.
* Use <cmath> instead of <math.h> to access signbit()Erik Schnetter2012-09-04
|
* Reinstate dir[] naming work-around; translate Sign[] to isgn()Erik Schnetter2012-08-16
|
* Don't declare dir* variables with ptrdiff_t (use CCTK_REAL instead)Erik Schnetter2012-08-12
|
* TensorTools.m: Remove components generated by symmetries of antisymmetric ↵Ian Hinder2012-08-11
| | | | tensors
* Add ksgn, so that calls to Sign can be vectorisedErik Schnetter2012-08-10
|
* Delay converting integers to realsErik Schnetter2012-08-10
| | | | Delay converting integers to reals, so that the simplification functions still act on integers. This improves the generated code.
* Handle Sign function while vectorisingErik Schnetter2012-07-25
|
* Don't generate large integers; convert them to CCTK_REAL insteadErik Schnetter2012-07-25
|
* Correct indentation in GenericFD.hErik Schnetter2012-07-25
|
* CaKernel.m: Use CaKernel static kernelsIan Hinder2012-07-25
| | | Dynamic compilation slows down execution; we can re-enable it when we are optimising.
* Add CaKernel initialisation function to the scheduleIan Hinder2012-07-25
|
* Add BoundaryNoSync to BoundaryCalculationQErik Schnetter2012-07-24
|
* Require MPI in auto-generated thornsErik Schnetter2012-07-24
|
* Introduce cctk_ash, retire cctk_lsshErik Schnetter2012-07-03
| | | | | | | | | Introduce cctk_ash, describing the process-local array shape that has been allocated. This may be larger than cctk_lsh, the process-local shape that should be used. Retire cctk_lssh and related infrastructure to handle staggered grid functions.
* Don't #define restrict; this is now handled by the fleshErik Schnetter2012-06-17
|
* Correct expanding Scalar[]Erik Schnetter2012-06-13
| | | | | | | Handle kmadd and friends. Do not produce / operator; use ScalarINV instead to prevent problems with integer operands.
* Allow disabling UseJacobian for specific calculationsErik Schnetter2012-06-02
| | | | | Add UseJacobian as possible flag for calculations, which then overrides the thorn's UseJacobian setting.
* Implement additional vectorisation optimisationsErik Schnetter2012-05-30
| | | | | | | | | When vectorising, break the macros INV, SQR etc. apart, which allows further optimisations, such as avoinding the kmul in kmul[x, kdiv[1, y]]. Combine also operations on ToReal operands, so that these operations are performed on scalars, not on vectors, e.g. kmul[ToReal[omega], ToReal[omege]] now becomes ToReal[omega*omega].
* Merge branch 'master' of github.com:ianhinder/KrancSteve Brandt2012-05-03
|\
| * Add BoundaryNoSync value for Where in calculationsIan Hinder2012-05-02
| | | | | | This is by analogy with InteriorNoSync. Ideally, this would be determined automatically. Less ideally, there would be a Sync -> True/False flag. But BoundaryNoSync is what we have.
| * GenericFD: Provide annotation to sgn function for CUDAIan Hinder2012-05-02
| |
| * Add #include <math.h> because of copysign()Erik Schnetter2012-05-02
| |