This is the updated version of the former CENSO 1.3 program. New features include the possibility to use CENSO
as a package from within Python, template files, dummy functionals, and more! For more information about the use and the capabilities of CENSO 2.0 visit the documentation here.
Can be installed using pip
by running
pip install .
If you want to install and run CENSO
without pip
you can add the CENSO/src
directory to your $PYTHONPATH
and add CENSO/bin
to your $PATH
.
Basic usage:
python3 -m censo -i [path to ensemble input] --maxcores [number of cores] ...
For information about command line options use the -h
option.
If you want to run it via helper script after adding it to your $PATH
:
censo -i [path to ensemble input] --maxcores [number of cores]
Please note that the --maxcores
option is required for every run.
CENSO can also be used as a package. A basic setup for a CENSO run in a Python file would look like this:
from censo.ensembledata import EnsembleData
from censo.configuration import configure
from censo.ensembleopt import Prescreening, Screening, Optimization
from censo.properties import NMR
workdir = "/absolute/path/to/your/workdir" # CENSO will put all files in this directory
input_path = "rel/path/to/your/inputfile" # path relative to the working directory
ensemble = EnsembleData(workdir)
ensemble.read_input(input_path, charge=0, unpaired=0)
ncores = os.cpu_count() # Could be set to any other positive integer
# If the user wants to use a specific rcfile:
configure(rcpath="/abs/path/to/rcfile")
# Setup all the parts that the user wants to run
parts = [
part(ensemble) for part in [Prescreening, Screening, Optimization, NMR]
]
# Run all the parts and collect their runtimes
part_timings = []
for part in parts:
part_timings.append(part.run(ncores))
# If no Exceptions were raised, all the output can now be found in 'workdir'
# Data is given in a formatted plain text format (*.out) and and json format
# The files used in the computations for each conformer can be found in the folders
# generated by each part, respectively (e.g. '0_PRESCREENING/CONF2/...')
CENSO
is free software: you can redistribute it and/or modify it under
the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
CENSO
is distributed in the hope that it will be useful,
but without any warranty; without even the implied warranty of
merchantability or fitness for a particular purpose. See the
GNU Lesser General Public License for more details.