About this Manual

This manual describes PAMoC, a connected system of programs for retrieving a variety of properties from experimental and theoretical electron charge density distributions. It is designed as a complete reference to all of the program's capabilities. This manual aims to be an exhaustive and concise source of information to help you to become familiar with the application. The PAMoC documentation set is described in this chapter.

  1. Audience
  2. How to Read this Manual
    1. Notations
    2. References, Notes and Links
  3. PAMoC on the WWW
  4. History and Release Notes

1. - Audience

This manual is intended for researchers, teachers, and students who are interested in studying the properties of atoms and molecules by analyzing their electron probability density. It can also be of help in the classroom as a supplement to usual textbooks.

2. - How to Read this Manual

The Table of Contents shows how this manual is organized. The brochure and the Introduction give an overview of the general features of PAMoC. Two chapters, “The I/O system” and “Data Input”, describe how to communicate with PAMoC using keywords, environment variables, records and files. The structure and syntax of specific data input decks are also defined. The list of keywords and options is the essential reference for the PAMoC user. A manual page for each keyword describes in detail the purpose and the data input of the individual program modules, with the aid of examples of data input and output of results.
The appendices describe details of running the program, and the installation procedure.

2.1 - Notations

Throughout the manual the following notations will be used. The “Lucida Sans Typewriter” monospaced font family denotes keywords recognized by PAMoC. These have to be typed as shown, but may be in upper or lower case. Keywords which have the same meaning and produce the same action are enclosed in parentheses "()" with a vertical bar "|" as the delimiter, i.e. ( keyword1 | keyword2 | | keywordN ). A double vertical bar "||" is used to delimite two mutually exclusive options. Parentheses "( )" can be omitted if no ambiguity occurs. Keywords may require one or more parameters: <italic> embedded in brackets "< >" is used for parameters and options which should be replaced with actual values. Brackets "< >" usually indicate a set of parameters and options and can be omitted if no ambiguity occurs. Square brackets "[ ]" denote optional keywords and options.

2.2 - References, Notes, and Links

The manual is being written for online use, and is expected to be read using a browser. Therefore it makes extensive use of hyperlinks. These may refer to a position in the current manual page or to a different page of the manual. External links to pages or other resources on the World Wide Web (WWW) are also frequently used.
In most cases, an unvisited link is presented in blue, and a visited link is purple. A hover link (mouse over) is red. In addition, while the link is being activated (being clicked on), it bumps down two pixel for a split second, giving the impression of being pushed down in three-dimensional space.

References are usually signalled by numbers enclosed in brackets, […], at appropriate points in the text. Similarly, notes and external links are signalled by the capital letters N and L, respectively, followed by a number, and enclosed in brackets. All references, notes and external links signalled in a manual page (chapter) are listed in the appropriate sections at the end of the manual page, ordered according to their sequence number.

When the user hovers the mouse pointer over a reference numberThis “hover box” provides a short description of the item being hovered over., a tooltip appears, i.e. a small “hover box” with a short description of the reference being hovered over. The same happens with endnotes and external links.

In a few cases, notes and additional details are presented directly in the text in a hidden form. A small black right-pointing triangle (►) is used as a disclosure widget which indicates a closed status, with hidden additional information. The latter are presented on screen only when the widget is toggled into an “open” state, and the right-pointing triangle rotates to a small black down-pointing triangle (▼).

3. - PAMoC on the WWW

The latest information on PAMoC, including program updates, can be found at the following URL (Uniform Resource Locator, colloquially termed a web address):


which is actually the official web-site of PAMoC.

Other web-sites have been in use over the past few years, and some of them, or at least fragments thereof, can still be active or traceable. The following list may serve as a disambiguation:

4. - History and Release Notes

The release of PAMoC which is available for download is yellow highlighted. This report is not intended to be exhaustive, but simply to provide the reader with the opportunity to decide whether to make a new download.

Version or
Revision Date
2017 New features: …
2016 New features: PAMoC can evaluate atomic charges by the Electronegativity Equalization Method.
2015 Updated features: the radial integration code has been rewritten to include several Gaussian quadrature rules (Legendre, Laguerre, generalized Laguerre, Hermite, Chebyshev, Gill-Chien) and different transformations of the radial coordinate (Becke, Ahlrichs, Gill's MultiExp, Knowles Log-k, Handy), in addition to the only quadrature scheme (Euler-Maclaurin with Handy grid) in the “2010-07-27” version.
Updated features: the grid pruning scheme was restyled and the SG0 grid by Gill and Chien was included.
2014 New features: …
2013 New features: …
2012 2012 is the year of author's retirement. From the summer of this year, a profound revision of the PAMoC code was undertaken by the author (who called it RV, ie Retirement Version, due to the coincidence with the beginning of his retirement). This fact had some consequences:
  • moving from the computing facilities of the ISTM to the home computer [equipped with an Intel® CoreTM i7 3770 processor (8M Cache, up to 3.90 GHz)]
  • moving from Red Hat Enterprise Linux operating system to the UBUNTU Linux distribution.
  • moving from the Portland Group, Inc. (PGI) Fortran compilers to the GNU Fortran Compiler (gfortran).
  • revising the Fortran code thoroughly (a first compilation of the code by gfortran showed up a number of errors and a lot of diagnostic messages).
  • At the ISTM no one is in charge of the maintenance of the PAMoC code and the Online User's Manual. However, the PAMoC website, including the download page, is still hosted by the ISTM website (till november 2014).
It was also an opportunity that gave birth to a new version of PAMoC. But the development of this new version was subject to some constraints:
  • Upgrading and mantaining PAMoC is no longer part of a job, but it has become simply a hobby.
  • Since family and social obligations have the highest priority, Pamoc developments are expected to be somewhat diluted over time.
but with some benefits
  • All the bureaucratic crap associated with public research are no longer a sword of Damocles and they ended up on the back burner.
  • PAMoC developments may follow different priority criteria, such as an elegant restyling, completeness of the design, care and deepening of the details, curiosity and fun. It can even happen that a page of the manual, with a clear, structured and attractive lay-out of the text, is published on the web before the drafting of the corresponding piece of code.
As a first step, all the interactive pieces of code have been extracted from PAMoC and developed independently in the form of interactive user interfaces.
2010-07-27 PAMoC, Version 2010-07-27, was made available for download on the web (gzipped, ELF 32-bit LSB executable, Intel 80386, version 1, statically linked, not stripped).
2010-07-23 New features: CRYSTAL-XX print-output files are seen by PAMoC as a new type of IDF.
2010-05-25 New features: CIF's files are seen by PAMoC as a new type of IDF. In addition, the interactive section of PAMoC can generate CIF's files.
2010-05-05 PAMoC for the first time was made available for download on the web (gzipped, ELF 32-bit LSB executable, Intel 80386, version 1, dynamically linked (uses shared libs), not stripped). The package comprises:
  • Reading most common versions of VALRAY binary data files.
  • Reading AIMPAC wavefunction files (.wfn).
  • Reading most of the XD ascii files.
  • Molecular electrostatic outer moments (charge through hexadecapole).
  • Electrostatic inner moments at nuclear centres and at any given point (Potential, Electric Field, and Electric Field Gradient).
  • Nuclear centred Distributed Multipole Analysis (DMA: Mulliken, Stone, Becke, Hirshfeld's stockholder partitioning, Bader's QCT atoms, and Stewart's pseudoatoms).
  • Experimental charge density approach to energies of nonbonded interactions between molecules (Spackman's ECDA).
  • Topological analysis of scalar fields: charge distribution (Bader's QTAIM).
  • Bond path analysis (Bader's QTAIM).
  • Computation of errors on the experimental electron density and the properties derived therefrom using the full variance-covariance matrix.
  • Various utilities allowing geometry manipulations, general housekeeping operations.
  • Graphics facilities to visualise the results.
The User's Manual was published online on the web site of the ISTM.
1995 It is the year of birth of PAMoC. The code has been originated by merging of three separate codes developed at the CSRSRC in Milano in the late 80's and early 90's: EXTREME (CSRSRC Version by Mario Barzaghi, 1989), PROAIM (CSRSRC Version by Mario Barzaghi, 1989), and proXray (by Mario Barzaghi and Felicita Merati, 1993).
EXTREME/CSRSRC and PROAIM/CSRSRC were locally-modified versions of Bader's codes which implement quantum theory of atoms in molecules to theoretical (ab-initio) electron charge distributions. The proXray code was intended to apply Bader's quantum theory of atoms in molecules and crystals to experimental electron charge distributions. It was interfaced to the VALRAY code by R.F. Stewart and M.A. Spackman, and it also implemented Spackman's model (1986) for calculation of intermolecular interaction energies.