Friday, September 23, 2011

Update

The plan, over a month ago, was to re-make all of the figures using one of the codes that stays symmetric, so that we would not have to do any re-centering shenanigans.   I had also wished to make some plots with the evolution of the gravitational potential, and the evolution of the actions, using the new action capability.  I have made many many plots over the last few weeks but the difficulty is the following.  I have 4 versions of the code, three of which are broken, and one of which does not stay centered.  Let us label them.

A) Walter's code, original 1Dgrav code that I was using since last fall - does not preserve symmetry
B) Walter's code, updated, Grav1D that he provided a couple of months ago
C) Walter's code, explicit symmetry enforced, included as an option in Grav1D distribution
D) Jerry's code, explicit symmetry enforced, includes both action and angle outputs

In addition there is Walter's action post-processing step. 

All the plots in the draft were made with code A.  A majority of these results, made with code A have been double checked with code D, however, code D cannot run to late times.  There is an intermittent bug that causes the system to explode.  This bug is difficult to track, because it happens after a long time, and if the particle state is dumped just before the explosion and the code re-started, the system does not explode in the same way at the same time.  At present, it does not seem to be an option to use code D to regenerate all the plots.

Code C is problematic, either I have misunderstood the way the initial conditions are meant to be set up, or it simply is not doing what it is intended to do.  Code C takes initial conditions on the positive x axis only, and assumes explicit symmetry for particles on the negative half.  I will email files for all initial conditions, but here is a plot of  the initial condition I put in (which is 1/2 the sign wave that I had put in before):


After about 20 time steps the system looks as follows:



Which is clearly not monolithically collapsing about x=0 and v=0.   I don't believe this is the intended behavior.

Code B, which I had decided to use instead of code A to generate all the plots (because in the runs I checked, it stayed centered to around 5 decimal places), is also not working but it took me much longer to realize it.  Unfortunately at the moment, I am having trouble finding the output that made me conclude that it was broken (I've been combinatorically comparing 12 runs from 4 codes, with 700 time dumps each, it's totally miserable) but at a minimum, code B is not staying symmetric even approximately for some of the runs, for example, here is an output from code B for the density profile, without the centering iterator.


   At this point I am getting frustrated because this process is not leading to any new science output and I have used up a truely unwise amout of time trying ot sort it out.  I'd like to move ahead on the paper with code A, which is the original outputs for the paper.  I believe code A because I have confirmed that at least in the early stages, code A and code D agree with one another particle by particle, and those codes are independent.   It's unfortunate because I will not be able to do some of the tests I had hoped, because the iterator is simply not good enough at finding the center to do them.

Just for completeness, here's what's up with code D, sometimes early, sometimes late, the particles fly off to infinity:



A few questions:

1) Walter, if there is something easy and obvious that you can suggest to fix code C, then I'd be willing to try one more time with that one.   The same goes for Jerry with code D.

2)  For the runs that are not centered, do the action integrals that you compute make any sense... are they still valid?