{"action":"created","issue":{"url":"https://api.github.com/repos/gandalfcode/gandalf/issues/73","repository_url":"https://api.github.com/repos/gandalfcode/gandalf","labels_url":"https://api.github.com/repos/gandalfcode/gandalf/issues/73/labels{/name}","comments_url":"https://api.github.com/repos/gandalfcode/gandalf/issues/73/comments","events_url":"https://api.github.com/repos/gandalfcode/gandalf/issues/73/events","html_url":"https://github.com/gandalfcode/gandalf/pull/73","id":175681855,"number":73,"title":"Newparticles","user":{"login":"dhubber","id":4923605,"avatar_url":"https://avatars.githubusercontent.com/u/4923605?v=3","gravatar_id":"","url":"https://api.github.com/users/dhubber","html_url":"https://github.com/dhubber","followers_url":"https://api.github.com/users/dhubber/followers","following_url":"https://api.github.com/users/dhubber/following{/other_user}","gists_url":"https://api.github.com/users/dhubber/gists{/gist_id}","starred_url":"https://api.github.com/users/dhubber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dhubber/subscriptions","organizations_url":"https://api.github.com/users/dhubber/orgs","repos_url":"https://api.github.com/users/dhubber/repos","events_url":"https://api.github.com/users/dhubber/events{/privacy}","received_events_url":"https://api.github.com/users/dhubber/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2016-09-08T07:16:00Z","updated_at":"2016-10-19T12:05:20Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/gandalfcode/gandalf/pulls/73","html_url":"https://github.com/gandalfcode/gandalf/pull/73","diff_url":"https://github.com/gandalfcode/gandalf/pull/73.diff","patch_url":"https://github.com/gandalfcode/gandalf/pull/73.patch"},"body":"Introduces ability to add new particles on-the-fly during a simulation, principally via a new 'CreateNewParticle' function in the Hydrodynamics class.  For now, this then triggers a full tree rebuild and ghost particle creation step (since the new particles are added at the end of the real particles in the array where the ghosts would otherwise live).  The particles have to be added to a specific part of the loop (just before tree-rebuild/MPI load balancing); otherwise can cause problems.  Other smaller additions\r\n- New Supernova and supernova driver class for creating supernova explosions (essentially adding a sphere of hot particles to create a Sedov-like explosion).  Used to test newparticles algorithm.\r\n- Changed N-body class to allow Ewald periodic gravity (probably should have been in a separate branch, but it's here for now!)\r\n\r\nOutstanding issues : \r\n- Seems to generally work fine with multiple timesteps, but did occasionally crash.  I think this is simply due to the fact the Saitoh/Makino algorithm while improving things hugely is not perfect and can still lead to issues.  Possible improvements can be added in the future to this algorithm or we can make use of the Springel-tree solution when implemented.\r\n- The simple supernova driver here will not work with MPI (since it will presumably add suplicated particles to all MPI nodes).  Either need a simple way to filter this out so particles are added to a single MPI node, or simply (for now perhaps) get it to throw and exception if MPI is used with new particles.  Also, adding new particles could perhaps also trigger a load-balancing step."},"comment":{"url":"https://api.github.com/repos/gandalfcode/gandalf/issues/comments/254793013","html_url":"https://github.com/gandalfcode/gandalf/pull/73#issuecomment-254793013","issue_url":"https://api.github.com/repos/gandalfcode/gandalf/issues/73","id":254793013,"user":{"login":"rbooth200","id":15370420,"avatar_url":"https://avatars.githubusercontent.com/u/15370420?v=3","gravatar_id":"","url":"https://api.github.com/users/rbooth200","html_url":"https://github.com/rbooth200","followers_url":"https://api.github.com/users/rbooth200/followers","following_url":"https://api.github.com/users/rbooth200/following{/other_user}","gists_url":"https://api.github.com/users/rbooth200/gists{/gist_id}","starred_url":"https://api.github.com/users/rbooth200/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rbooth200/subscriptions","organizations_url":"https://api.github.com/users/rbooth200/orgs","repos_url":"https://api.github.com/users/rbooth200/repos","events_url":"https://api.github.com/users/rbooth200/events{/privacy}","received_events_url":"https://api.github.com/users/rbooth200/received_events","type":"User","site_admin":false},"created_at":"2016-10-19T12:05:20Z","updated_at":"2016-10-19T12:05:20Z","body":"Ok, the results of that in are in the [newparticles_rebase](https://github.com/gandalfcode/gandalf/tree/newparticles_rebase) branch. If it looks ok to you then it might be worth using that branch instead and cherry picking any changes you need."}}
{"actor":{"display_login":"rbooth200"}}