On 2 Feb 2017, at 12:53, Guy <
guy.pitman@bigpond.com> wrote:
Hi Ian,
Thanks for you reply-one more question:
The Kranccode example seems to imply that by adding a pointer at the bottom of the Thornlist which refers to the Kranc thorn Example, that the compilation will include that code in the simulation.
Hi Guy,
Yes, the thornlist is simply the list of thorns that are compiled into the configuration. By adding a new thorn to the thornlist, it will be included in the final executable built from that thornlist.
The simfactory thornlist (einsteintoolkit.th) doesn’t have a pointer at the end, so I assume that all of the thorns are combined in the simulation.
I'm not sure I understand what you mean by "pointer". The thornlist is just the list of thorns that are included.
By pointer I meant the path to the KrancExample SimpleWave was added at the end of the Thornlist
echo 'KrancNumericalTools/GenericFD
KrancExamples/SimpleWave' >> kranc.th
I can understand that this compiles this Example , together with some required thorns.
Without knowing what all of the individual thorns are doing, is there a risk that
the thornlist that I made up for my Kranccode example (which I did by gradually adding groups of thorns based on error messages) could be incompatible?
I think I'm not following. What are you trying to achieve? If you want to follow along the Kranc tutorial, then you only need the thornlist in that tutorial; you shouldn't need any extra thorns. Since Cactus doesn't compile out-of-the-box on Mac OS, the only change you should need to make is to compile with simfactory instead of with make. This doesn't mean using the
einsteintoolkit.th thornlist; you would still use the thornlist from the tutorial. For example, you could replace
make kranc-config THORNLIST=
kranc.th PROMPT=no
with
sim build kranc --thornlist
kranc.th
I guess I am trying to understand the relationship between Kranc thorns as in the examples and other thorns - now that I know where to look for the latter I will probably be able to work it out - presumably it only makes sense to combine certain combinations of thorns , and the example Kranc thorns require specific thorns to be present, but if you add others in to the Thornlist this may change behaviour. I am trying to understand how one would go about building a new simulation combining existing thorns and new Kranc thorns that would work together. For example would it make sense to combine more than one Kranc thorn in the thornlist?
Is there a document that explains what all the thorns do and how they can be combined?
I think you don't need this, but if you want to know what a given thorn does, your best bet is the documentation, which you can find at
https://einsteintoolkit.org/documentation/ThornDoc/--
Ian Hinder
http://members.aei.mpg.de/ianhin