The command line interface includes all of mollib’s functions for processing and analyzing molecules and molecular data. Mollib can be accessed either through the mollib or ml commands.

$  ml --help
usage: mollib [-h] [-d | -s | -v] [--list-plugins] [--list-settings]

A molecular processor

optional arguments:
  -h, --help       show this help message and exit
  -d, --debug      Print debugging statements
  -s, --suppress   Suppress all messages, except critical
  -v, --verbose    Print extra information
  --list-plugins   List the installed plugins
  --list-settings  List the available sections for settings
  --version        Show the program version

    process        Process the structure
    measure        Measure geometries in molecules
    hbonds         Find and report hydrogen bonds in molecules
    pa             Singular Value Decomposition of partially aligned NMR data
                   (RDCs and RACSs)
-h / --help
Get basic help information on usage of the command line interface, or one one of the mollib commands.
-d / --debug
Display debug messages to the terminal. This is usually only useful to developers or in helping to debug issues.
-s / --suppress
Display only errors and critical errors.
-v / --verbose
Display informational messages to the terminal. By default, only warning and error messages are displayed.
Display the version number of the installed mollib.

Display a list of installed and enabled plugins.

$  ml --list-plugins
Installed plugins:
   process         Enabled
   measure         Enabled
   hydrogenate     Enabled
   hbonds          Enabled
   pa              Enabled

Display a list of the settings sections that will be interpreted from configuration files.

$  ml --list-settings
Installed settings sections:

Configuration Files

Mollib will check for a .mollibrc configuration file and a configuration file passed with the -c filename / --config filename commandline argument for configuration parameters.

Configuration files customize mollib’s behavior from default values. If a .mollibrc file is present and a configuration file is specified in the commandline, the commandline configuration file will take precedence for parameters that are mentioned in both.

The following is an example configuration file. Note that only the parameters that need to be changed can be specified in the file.

default_pH = 7.0
pKs = {'ASP': {'OD1-OD2': (-1.0, 3.5)},
       'GLU': {'OE1-OE2': (-1.0, 4.2)},
       'HIS': {'ND1-NE2': (6.6, 14.0)},
       'CYS': {'SG': (6.8,)},
       'TYR': {'OH': (10.3,)},
       'LYS': {'NZ': (10.5, 14.0, 14.0)},
       'last': {'O-OXT': (-1.0, 3.3)},
       'first': {'N': (7.7, 14.0, 14.0),}

bond_length = {'N-H': 1.023,
               'C-H': 1.117,
               'C-C': 1.517,
               'N-H2': 1.01,
               'O-H': 0.958,
               'C-N': 1.488,
               'C=O': 1.250,
               'C-O': 1.413,