<div dir="ltr">Dear Junhwan,<div><br></div><div>Nathan is correct; this is an Enzo 'feature' and has to do with how Enzo treats dark matter particles at the boundary conditions.  Particles are smoothed onto a grid to calculate a density field using cloud-in-cell interpolation, which is necessary to solve Poisson's equation.  While the boundary conditions between grids (i.e., ghost zones where mass has been deposited) are exchanged when Poisson's equation is actually solved, this is NOT done prior to an Enzo output, so there's some missing mass along the grid boundaries.  Neither Enzo nor yt is broken - this is expected behavior for Enzo, although it does not translate to pretty pictures when you're looking at the dark matter density field, particularly at early times.</div><div><br></div><div>With regards to why MUSIC displays this behavior more egregiously than CICASS, I believe that it has nothing to do with Enzo reading in particle displacements vs. actual positions, since the displacements are immediately converted to particle positions upon being read in.  Rather, there are three possible differences between MUSIC and CICASS that would both lean in the direction of MUSIC showing more of an effect than CICASS:</div><div><br></div><div>1) MUSIC allows the user to use 2nd order Lagrangian perturbation theory to calculate initial conditions and CICASS uses 1st order LPT.  Due to this, MUSIC probably results in the particles initially being moved further from their initial positions at the centers of cells, and thus the effect is substantially more pronounced.  You could test this by turning off 2LPT in MUSIC (use_2LPT = no) and check to see if there's a difference.  If you're already using 1st order LPT for both codes, then this is not your problem.</div><div><br></div><div>2) When MUSIC initially reads in the particle displacements, some particles could be initially displaced far enough from the center of the grid cell that their mass is mostly in the ghost zones, or moved into the ghost zones entirely. This means that a lot of mass will be missing around grid edges. This will show up if data is written out prior to the first timestep, but when you call RebuildHierarchy it will immediately get fixed and things should look fine - and I note that this should not affect the simulation evolution in any way!  If you read in the CICASS ICs - i.e, reading particle positions directly - the ring code will ensure that particles are in the correct grids at simulation initialization, which mitigates this effect.</div><div><br></div><div>3) You could have turned off parallel IO when you used the CICASS ICs, which would make everything look fine since there's just a single root grid tile.  If you'd like to send me the two Enzo IC files, I'd be happy to inspect them.</div><div><br></div><div>Finally, if you are really concerned and want to double-check that the code is doing the right thing, I have an IPython notebook that makes simple dark matter density projections by depositing the particles directly onto a 2D uniform array, which I wrote due to precisely the 'feature' you're seeing.  This notebook is a rather ugly hack, uncommented, and presented without any promise of support; however, it gets the job done.</div><div><br></div><div>I hope this helps!<br><br></div><div>Regards,</div><div>Brian</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jun 15, 2015 at 5:02 PM, Junhwan Choi (최준환) <span dir="ltr"><<a href="mailto:choi.junhwan@gmail.com" target="_blank">choi.junhwan@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thank you Nathan,<br>
<br>
As I mentioned in my original inquire, if I use other IC generator<br>
such as CICASS, I do not get this wired square.<br>
I found that the MUSIC generates ParticleDisplacements_x/y/z, while<br>
the CICASS generates ParticlePositions for the DM particle position<br>
information.<br>
If this is the intrinsic enzo issue, there could be a subtle flaw for<br>
the enzo's DM N-body calculation if one uses MUSIC output.<br>
If this is a case, I had better report it to enzo user mailing list…<br>
<br>
Best,<br>
Junhwan<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
On Mon, Jun 15, 2015 at 1:20 PM, Nathan Goldbaum <<a href="mailto:nathan12343@gmail.com">nathan12343@gmail.com</a>> wrote:<br>
> If this is a plot of the Enzo "Dark_Matter_Density" field that gets written<br>
> to Enzo output files, then the artifacts you're seeing are generated by<br>
> Enzo. yt is just plotting whatever is in your output files.<br>
><br>
> You should be able to see how Enzo generates this field by grepping the<br>
> codebase for "OutputSmoothedDarkMatter" and looking at the relevant code<br>
> sections. One key thing: I believe Enzo's CIC deposit machinery doesn't<br>
> handle grid boundary conditions properly, so and particles that should<br>
> contribute to the cells that are at a grid boundary will only contribute if<br>
> they are on one side of the grid boundary. This would lead to the deficits<br>
> you're seeing. I haven't looked at that code in a while so please excuse me<br>
> if I'm misremembering here.<br>
><br>
> Hope that's helpful,<br>
><br>
> Nathan<br>
><br>
> On Mon, Jun 15, 2015 at 9:59 AM, Junhwan Choi (최준환) <<a href="mailto:choi.junhwan@gmail.com">choi.junhwan@gmail.com</a>><br>
> wrote:<br>
>><br>
>> Hi yt users,<br>
>><br>
>> I have asked a similar question previously but I did get partial<br>
>> answer so that I ask again.<br>
>> I have made cosmological IC from MUSIC and run with enzo.<br>
>> I made the DM density map with velocity arrow at z=200 which is<br>
>> initial redshift using yt (and attach the figure).<br>
>> It shows the wired square feature.<br>
>> Previously, John wise suggested me to use enzo SPH smoothing to remove<br>
>> this issue and it worked.<br>
>> But, after test a few more run, I have couple more fundamental<br>
>> questions on this issue.<br>
>><br>
>> 1) Is this wired square effect is real effect in enzo or visualization in<br>
>> yt?<br>
>>     If this is an intrinsic enzo effect, we can say that DM gravity<br>
>> calculation at high-z some kind of error.<br>
>>     If this is an visualization effect, I found that other enzo<br>
>> simulation using different IC generator does not show this effect (see<br>
>> question 2).<br>
>>     This difference makes me very confused.<br>
>><br>
>> 2) I tested with other IC generator and I do not see the wired square<br>
>> feature.<br>
>>     I found that other IC generator output real DM position while<br>
>> MUSIC IC generate displacement of DM particle position.<br>
>>     Can it be the origin of issue?<br>
>><br>
>><br>
>> I think this inquiry can go to enzo mailing list or MUSIC developer.<br>
>> If it is necessary, I can ask it to other place.<br>
>><br>
>> Thank you in advance,<br>
>> Junhwan<br>
>><br>
>> _______________________________________________<br>
>> yt-users mailing list<br>
>> <a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
>> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" rel="noreferrer" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
>><br>
><br>
><br>
> _______________________________________________<br>
> yt-users mailing list<br>
> <a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
> <a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" rel="noreferrer" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
><br>
_______________________________________________<br>
yt-users mailing list<br>
<a href="mailto:yt-users@lists.spacepope.org">yt-users@lists.spacepope.org</a><br>
<a href="http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org" rel="noreferrer" target="_blank">http://lists.spacepope.org/listinfo.cgi/yt-users-spacepope.org</a><br>
</div></div></blockquote></div><br></div>