This HTML automatically generated with rman for NEMO
Table of Contents


ccdpot - potential of an infinitesimally thin disk


ccdpot [parameter=value]


Computes the potential in the plane of an infinitesimally thin disk. The method used here is VERY slow, since it evaluates the integral exactly as given in Eq. 2-3 of e.g. Galactic Dynamics by Binney and Tremaine (1987, 2008). The integral is replaced by a sum over the pixel values of the input image of
   Pot(P) = -Gravc * SUM   ---------- dx dy 
                            | p - P |

P, and p are vector positions, Sigma(p) is the surface density at position p. dx and dy are pixel sizes and the distance |p-P| is measured in pixels.

A faster way is to use FFT’s, as described by Hockney & Eastwood (1978), and implemented in MIRIAD’s potfft program.


The following parameters are recognized in any order if the keyword is also given:
Input image file, in image(5NEMO) format. No default.
Output image file. No default.
Gravitional constant. Normally taken as 1, but this allows you to more easily convert to your own units already. See also units(5NEMO) . Default: 1
Give a rolling percentage progress report every N pixels computed. Default: 0 (meaning no progress report)
Set this to how often the integral is computed, in order for fast versions (small maps) to get accurate timings on fast machines. [Default: 1]


As an example, if units are 1e10Msun and kpc, Gravc = 43007.1 (see units(1NEMO) , the potential

See Also

potential(GIPSY), potfft(MIRIAD), rotcurves(1NEMO) , units(1NEMO) , image(5NEMO)


Since for each of the N^2 pixels, all other N^2 pixels will be interrogated, this algorithm is O(N^4). In practice you will find it to be more like O(N^5). The code precomputes a kernel, which is simplified if we can assume the pixel size in X and Y are the same. If not, the program will currently probably compute it terribly wrong.


Peter Teuben (loosely based on Roelof Bottema’s POTENTIAL code)

Update History

26-Jul-02    V0.1 Created to check potfft   PJT
22-oct-02    V0.2 correct kernel at (0,0)    PJT
28-feb-03    V0.3 added gravc=    PJT
17-mar-2021    V0.6

Table of Contents