.. biobuild documentation master file, created by sphinx-quickstart on Tue Jun 13 14:40:03 2023. You can adapt this file completely to your liking, but it should at least contain the root `toctree` directive. Installation ------------ `BuildAMol` can be directly installed via `pip` from the python package index: .. code-block:: bash pip install buildamol If you want to install BuildAMol from source, you can clone the repository and install it using the following command: .. code-block:: bash git clone https://github.com/NoahHenrikKleinschmidt/buildamol cd buildamol pip install . Optional dependencies --------------------- BuildAMol relies only on `biopython `_ for its core functions. However, many additional features may require other libraries. Especially, `RDKit `_ provides many useful features that BuildAMol can use if it is installed. Apart from RDKit, BuildAMol supports data exchange between `Openbabel `_ and `OpenMM `_. If you want to install these libraries you can use the following commands: .. code-block:: bash pip install buildamol[rdkit] pip install buildamol[openbabel] pip install buildamol[openmm] # or all at once pip install buildamol[full] We recommend to install at least `buildamol[rdkit]` if you want to use most features of `BuildAMol`. Updating BuildAMol ------------------ .. warning:: When updating BuildAMol to a newer version, make sure to export any custom default `PDBECompounds` or `CHARMMTopology` settings before updating, as the update will overwrite the pickle files where defaults are stored. You can re-set the custom settings after the update. In order to export the custom data it is recommended not to pickle the objects (as a pickled object may not be compatbile with a newer version of BuildAMol). Instead we recommend to export your data to an agnostic format before updating. BuildAMol offers quick-exports to JSON and XML formats for such purposes. Both the `PDBECompounds` and `CHARMMTopology` classes have methods to export their data to JSON and XML formats. Alternatively, to export all custom resources at once, you can use the following functions: .. code-block:: python import buildamol as bam bam.export_custom_resources('my_settings') # update ... # after updating buildamol bam.import_custom_resources('my_settings')