rainwoodman / fastpm-python

Python version of FastPM
GNU General Public License v3.0
12 stars 8 forks source link

document in equations what problem fastpm solves, how, and what I/O? #16

Open ahbarnett opened 3 years ago

ahbarnett commented 3 years ago

Dear Yu Feng,

I hope you're well (you'll remember chatting a year ago). I'm just posting a request for documentation of what exactly fastpm computes. I cannot find it in https://arxiv.org/pdf/1603.00476.pdf In other words, what are the inputs (locations and velocities of particles? grid or timestepping parameters?) and outputs, and precisely what set of equations is solved, and by what method? Even an introductory summary would be useful; equations are the best. As an example, for our FINUFFT https://finufft.readthedocs.io/ package we describe precisely what the inputs are and the outputs: formulae, tolerance achieved, how the run-time scales with the problem size, etc. Without something similar, it's hard for anyone outside the cosmo community to figure out what it does or how to use it :)

Thanks so much, Alex

rainwoodman commented 3 years ago

Hi Alex,

Indeed. The paper (like most paper on similar issues) was written for readers that are somewhat familiar with N-body solvers in the field of cosmology.

Your suggestion is a good one -- but it will be some time before I get to write down an "executive summary" of things.

Users have been reading examples [e.g. 1] and 1-on-1 chatting with me to get started.

fastpm-python is very specific for "using an N-body method to solve large scale cosmic structure formation".

A less specialized package is the generic ParticleMesh operators in pmesh[2] used by fastpm-python. pmesh contains operators (and jacobians) for resampling field representation between particles and mesh, distributed FFT, domain decomposition and load balancing. Most concepts are covered in the Hockney and Eastwood book [3], and named in similar ways. The package pmesh also suffers from a lack of 'document-quality' documentation.

[1] https://github.com/rainwoodman/fastpm-python/blob/master/examples/janus.py [2] http://github.com/rainwoodman/pmesh [3] https://www.semanticscholar.org/paper/Computer-simulation-using-particles-Hockney-Eastwood/68b5fbe75891df4bb238eb1d44ba4181b89e8c83?p2df

ahbarnett commented 3 years ago

Dear Yu, Thanks for the useful pointers. And I appreciate full documentation is a big task, don't worry :) Best wishes, Alex

On Wed, Feb 17, 2021 at 10:37 PM Yu Feng notifications@github.com wrote:

Hi Alex,

Indeed. The paper (like most paper on similar issues) was written for readers that are somewhat familiar with N-body solvers in the field of cosmology.

Your suggestion is a good one -- but it will be some time before I get to write down an "executive summary" of things.

Users have been reading examples [e.g. 1] and 1-on-1 chatting with me to get started.

fastpm-python is very specific for "using an N-body method to solve large scale cosmic structure formation".

A less specialized package is the generic ParticleMesh operators in pmesh[2] used by fastpm-python. pmesh contains operators (and jacobians) for resampling field representation between particles and mesh, distributed FFT, domain decomposition and load balancing. Most concepts are covered in the Hockney and Eastwood book [3], and named in similar ways. The package pmesh also suffers from a lack of 'document-quality' documentation.

[1] https://github.com/rainwoodman/fastpm-python/blob/master/examples/janus.py [2] http://github.com/rainwoodman/pmesh https://github.com/rainwoodman/pmesh [3] https://www.semanticscholar.org/paper/Computer-simulation-using-particles-Hockney-Eastwood/68b5fbe75891df4bb238eb1d44ba4181b89e8c83?p2df

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/rainwoodman/fastpm-python/issues/16#issuecomment-781024860, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACNZRSQNWWHTWXNZJSY5HQTS7SDN7ANCNFSM4XYWBITA .

-- *---------------------------------------------------------------------~^`^~._.~' |\ Alex H. Barnett Center for Computational Mathematics, Flatiron Institute | \ http://users.flatironinstitute.org/~ahb 646-876-5942