Skip to content

Quick start

What is ZZLib?

ZZlib is a Python library that provides a collection of utilities for scientific computing and molecular modeling. Key features include:

  • Structure handling and analysis via Schrodinger API integration.
  • Enhanced program execution and remote operation capabilities.
  • Support for both local and distributed computing workflows.
  • Convenient helper classes and functions.

The library is designed to be modular, you can use individual components independently based on your needs.

For more details, see API Reference.

Installation

ZZlib requires Python 3.8 or higher. You can install it directly using pip:

pip install zzlib

For better package management and to avoid potential conflicts with other Python packages, we recommend using a Python environment manager, you can learn more about venv or Conda.

Additional Requirements for zzlib.sch Module

The zzlib.sch module requires Schrodinger software installation (other modules can be used independently without Schrodinger):

Schrodinger Suite can be installed from Schrodinger Official Website. A valid license is required for specific functionalities.

For academic institutions:

When using zzlib.sch module with Schrodinger, you must comply with Schrodinger's End User License Agreement (EULA).

The zzlib package has been verified to be compatible with Schrodinger versions 2022-4 through 2023-4. For issues with other versions, please report at GitHub Issues.

Using zzlib.sch Module

To use the zzlib.sch module, execute your scripts using schrun:

schrun your_script.py

First-time execution of schrun will create a Schrodinger Python virtual environment. This requires the SCHRODINGER environment variable to point to your Schrodinger installation (e.g., /opt/schrodinger/2023-4). For linux, you can run:

export SCHRODINGER="/opt/schrodinger/2023-4"

A "Schrun" Jupyter kernel will also be installed automatically for using zzlib.sch in Jupyter notebooks.

Important Notes

  • Scripts run with schrun operate in a separate environment from your zzlib installation.
  • Python version will be fixed to Schrodinger's version (typically 3.8).
  • Package installations are not shared. To install packages in the Schrodinger environment:

    schrun -C "pip install package_name"
    
  • To run commands in the Schrodinger environment:

    schrun -C "command"
    

    For example:

    schrun -C "python"
    schrun -C "bash"
    schrun -C "which python"