- a c++-14-compliant compiler (compilation has been tested with gcc only)
- cmake (>= 2.8)
- libboost1.62-dev (older versions are also fine)
- libnlopt-dev
Download the poresize archive or clone it via git.
The code can be compiled with the following commands:
cd poresize # enter the poresize folder
mkdir build # create a new build folder. It is good practice to compile out-of-source
cd build
cmake .. # here you can specify additional options, see next section
make -j4 # compile poresize. The -jX make option makes it compile the code in parallel by using X threads.
The poresize executable will be placed in the bin folder.
Here is a list of options that can be passed to cmake during the pre-compilation stage:
-DDebug=On|OffCompiles with|without debug symbols and without|with optimisation flags (defaults toOff)-DG=On|OffCompiles with|without debug symbols and optimisation flags (defaults toOff)
poresize input_file input_file_type=oxDNA|LAMMPS r_cut histogram_bin_size steps
poresize requires 5 arguments:
- The configuration file.
- The type of configuration file. Only
LAMMPSandoxDNAare supported. - The size of the cells. The number of cells should be odd, and the code supports non-cubic boxes. As a result, the real size of the cells will be different from the one given, which is used only as a starting point. Tests have shown that, under normal circumstances, a value of 1 or 2 gives optimal results (performance wise).
- The size of the bins of the cumulative histogram that is the output of the program.
- The number of attempts at computing the radius of the largest sphere that contain a given point and does not overlap with any particle.