aboutsummaryrefslogtreecommitdiff
path: root/Tools/CodeGen
Commit message (Collapse)AuthorAge
...
* Bug fix: when asking for three timelevels for a nonevolved variable, ↵ianhin2006-07-01
| | | | actually schedule storage for them, rather than scheduling only one...
* Handle built-in Cactus boundary conditionsianhin2006-07-01
|
* Replacement for KrancThorns.m. This is a completely new API for Krancianhin2006-06-19
| | | | | | | | | | | | which is designed to be much easier to use and much easier to maintain. Instead of multiple types of thorn, there is just one, and most of the functionality from the old types is present in this new type. Some functionality (for example the TRIGGERS mechanism for evaluated quantities) has not been implemented, but if there is demand these things can be added. The new API is documented in Doc/KrancDoc.tex and there is an example in Examples/Maxwell/EMTT2.m. This is such a significant change that the major version number of Kranc has been increased from 1 to 2.
* Use CForm on CCTK_REAL values in parameters. This allows exponentialianhin2006-06-19
| | | | notation etc.
* Allow tensors to be added to non-tensor functionsianhin2006-06-19
| | | | Modify symmetry handling slightly
* Add the ability to specify extra information about a groupianhin2006-06-19
| | | | Tidy up qualifyGFName function slightly
* Improve error handling slightlyianhin2006-06-19
|
* imin and imax only need 3 entries, not 6ianhin2006-06-19
| | | | | | | | Fixed bug whereby physical boundary conditions could be called in symmetry zones, and in some cases this could lead to accessing unallocated memory and segfaults. This would never have generated incorrect output, as these points would be overwritten by the symmetry thorn anyway.
* Renamed verbosity token Full to InfoFull to avoid name clash withianhin2006-06-19
| | | | | | Mathematica 5.1 Also modified shorthands function
* Changed several scheduled functions to return void at Erik'sianhin2006-05-16
| | | | | | | | | | suggestion. Removed spurious output. CreateMoLRegistration source now requires that the group names should be passed in with an implementation prefix. This is what is currently done, so the change should be harmless.
* fixed a bug that created inconsistent code for standard boundary conditionsshusa2006-03-14
| | | | | applied to groups (the goups were always associated with the default base thorn, which is not always true).
* fix stupid typo, will not change outputshusa2006-03-14
|
* Fixed bug whereby shorthands that were assigned to but never used wereianhin2006-03-06
| | | | | | | | not declared at the top of the function. Rewrote 'cleanCalculation' and renamed it to 'removeUnusedShorthands'. This routine is for optimization; it removes shorthand assignments that are never used. See the comment in the source for more caveats.
* actually call CartSymGN to a activate symmetry boundary conditions.shusa2006-03-06
| | | | | for some strange reason this had beed omitted so far. This _should_ not break anything.
* Added feature so that the user can loop over more points in aianhin2006-02-23
| | | | | | | | | | | | | | | | | calculation than the stencil_width will allow. This is useful if you know that your difference operators are actually safe to use there. No longer "clean" the calculation five times in a row. In fact, no longer clean it at all. What was this for? It looks like it was for removing unused shorthands from a calculation. But only those shorthands which are used are declared anyway, so why is this necessary? The logic used in cleancalc doesn't find the shorthands which are used inside derivative operators, and this was stopping my code from working. Only precompute those derivatives that do not contain shorthands. If a derivative contains a shorthand, the shorthands needs to be computed before the derivative, so precomputation is not really possible.
* Get boundary information using the Cactus boundary functions, and onlyianhin2006-02-23
| | | | | loop over the physical boundaries. Use InfoMessage to output text to allow user to control verbosity.
* Added Eps to sym contextianhin2006-02-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added functions for symmetrizing and antisymmetrizing expressions in pairs of indices. Added function to query whether an index is a lower or an upper index. Invented the concept of a 'tensor attribute'. This is a piece of information about a particular tensor. Set and get with SetTensorAttribute[kernel,attr,value] and GetTensorAttribute[kernel,attr]. Intention is to have things like Symmetries, TensorWeight, TensorSpecial etc. This allows these things to be stored along with the tensor, and they can then be queried by the parts of Kranc that understand tensors. Symmetries are stored as permutation weight lists as in MathTensor, though we still only have a very rudimentary index symmetry system. Changed MakeExplicit on a list of rules to allow duplicate entries. This has the effect of allowing a shorthand or a grid function to be set more than once in a calculation, which some people like to do (i.e. x = f[], x=g[x]). Not sure why the duplicates were removed in the first place, but was probably to get rid of extra equations caused by the symmetry system. We are now more clever about recognizing tensors when this is called, so I hope it is no longer an issue. Define symmetry tensor attribute when "AssertSymmetric*" are called. Allow Eps to contain tensorial indices during validation check. New function to determine the reflection symmetries of a tensor.
* Added option to specify reflection symmetries higher up. Addedianhin2006-02-23
| | | | ability to specify group tags in the interface file.
* Reorganized the file into two parts. The top section consists ofianhin2006-02-23
| | | | | | | | | | | | | | | | | | | functions which understand the internal layout of the Groups structure. The remaining functions only use the functional interface. This was necessary as I needed to modify the Groups structure (in a backward compatible way) to include tensor type tags. So now instead of {"groupname", {var1, var2, ...}} we can now have {"groupname", {var1, var2,...}, Tags -> {TensorType -> "DD", TensorWeight -> -1/2}} for example. The rest of Kranc should use ONLY the functions at the top of this file to manipulate Groups structures. KrancThorn and CalculationFunction will satisfy this requirement, but I am no longer maintaining KrancThorns.m, so it won't be able to cope with the modified group format.
* Added option to not precompute certain derivatives. Allowed moreianhin2006-02-23
| | | | | | types of differencing operators; specifically those that have indices calculated based on shorthands. (This change was just in the type of expressions which would be rendered into the header file correctly.)
* current status of BAM code generation. code is rather complete now, but stillshusa2006-02-07
| | | | requires some debugging.
* add commentshusa2006-02-02
|
* Relaxed strictness of tensor verificationianhin2006-02-01
|
* Added preliminary support for boundary conditionsianhin2006-02-01
|
* Added missing ThornImplementation from Sym contextianhin2006-01-31
|
* fix bug with ioEveryshusa2006-01-28
|
* modify 2D outputshusa2006-01-28
|
* modify 2D outputshusa2006-01-28
|
* modify 2D outputshusa2006-01-28
|
* enable 2D output, change parfile naming conventionshusa2006-01-28
|
* Removed inclusion of precomputations.h as it is never used. Madeianhin2006-01-13
| | | | | stripping of implementation names a little more consistent, though it is still a bit messy.
* Added function for finding the variables in a group structure.ianhin2006-01-13
|
* Improved error reporting. Added more checks to calculations. Made more ↵ianhin2006-01-13
| | | | functions public.
* set default GW amplitude to 0.1shusa2005-12-24
|
* adapt number of timesteps to save resourcesshusa2005-12-21
|
* modify linear waves testshusa2005-12-21
|
* fix thorn activation sequence for linear waveshusa2005-12-21
|
* forgot to activate thorn IDLinearWavesshusa2005-12-21
|
* add 2d linear wave entryshusa2005-12-21
|
* drop calculation of L1-norm, increase number of points for small dimensionshusa2005-12-21
| | | | in robust stability test to 4
* comment out check for known functions in order to create BSSN code,shusa2005-12-16
| | | | awaits comment from Ian.
* automatically activate new thorn CactusBase/LocalReduce to make parfilesshusa2005-12-11
| | | | work with current Cactus.
* do not use SQR, CUB, QAD macros for Fortran anymore, since they are notshusa2005-11-15
| | | | | necessary, and apparently confuse some preprocessors under certain circumstances.
* move unfinished code to support the penalty multipatch methodshusa2005-11-14
| | | | | to Penalty.m, as a first step to make it easier to clean up KrancThorns.m
* uncomment a Print statementshusa2005-11-14
|
* the analogue of CCL files works out already quite reasonably nowshusa2005-11-11
|
* added functions DeclarePointer and DeclarePointersshusa2005-11-11
|
* add AddToFile function, required in the bamification processshusa2005-11-10
|
* the bamification packageshusa2005-11-10
|
* include SpaceMask in inherited implementatios for MoL thorns whenshusa2005-11-07
| | | | excision code is generated