The Cambridge Structural Database is the world repository of small molecule crystal structures. The database holds bibliographic, 2D chemical and 3D structural results from crystallographic analyses of organics, organometallics and metal complexes. Both X-ray and neutron diffraction studies are included for compounds containing up to ca. 500 atoms (including hydrogens). NOTE: The database is available on helix.nih.gov.
Along with the database are tools for search, retreival, analysis, and display of the CSD contents. These include ConQuest (for text, numeric, 2D substructure and 3D geometric searching) and VISTA (statistical analysis and display of geometric and other data).
NIH users can access the CSD directly via the WebCSD portal. New structures are added weekly for up-to-date searches. Users can perform searches - Similarity, Substructure, Text and Numerical - as well as browse the database. The portal is restricted to NIH IP addresses only. If you are at home, you must connect to the NIH VPN before using.
This application requires a graphical connection.
To use, type module load CSD, then cq &, at the prompt.
Sample session: (replace 'username' with your own Helix/Biowulf username).Due to licensing restrictions, conquest is only available to run on helix.nih.gov.
[user@helix ~]$ module load CSD [user@cn3144 ~]$ cq &
Loading the CSD module will also set up the paths for the CSD python API installation. Sample interactive session:
[user@helix ~]$ module load CSD
[+] Loading Cambridge Structural Database 2020 on helix
# Note: the following is required to run without an Xwindows display
# but will prevent diagram generation and other graphics-oriented
# pieces of the CSD from running
[user@helix ~]$ export CCDC_PYTHON_API_NO_QAPPLICATION=True
[user@helix ~]$ python
Python 3.7.6 | packaged by conda-forge | (default, Jan 7 2020, 22:33:48)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from ccdc import io
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-user'
>>> csd_reader = io.EntryReader('CSD')
>>> cryst_abebuf = csd_reader.crystal('ABEBUF')
>>> mol_abebuf = csd_reader.molecule('ABEBUF')
>>> round(mol_abebuf.molecular_weight, 3)
317.341
>>> mol_abebuf.is_organic
True
>>> print(mol_abebuf.heaviest_component.smiles)
O=C1Nc2ccccc2C(=O)Nc2ccccc12
>>> quit()
[user@helix ~]$ exit