Predicted Properties¶
Certain entries can have predicted properties associated with their structures. These properties will have been generated by Computational Chemistry methods, for which there are a range of options in terms of levels of theory, basis sets, etc., but will only be linked to from the CSD once the workflows and methodologies have been through rigorous peer review and experimental verification.
The predicted_properties
class inherits the attributes of the ccdc.entry
class.
Those entries that do not have predicted properties associated will return None:
>>> import ccdc
>>> Entry = ccdc.io.EntryReader("CSD")[0]
>>> print(Entry.identifier, Entry.predicted_properties)
AABHTZ None
Organic Semi Conductor Properties¶
The first set of such data to be accessible through the CSD python API is the dataset of Organic Semi Conductor relevant properties, created by A. Troisi, T. Nematiaram, and coworkers. The following papers describe the methodologies, please cite the relevant ones if you find them useful in your research: https://onlinelibrary.wiley.com/doi/10.1002/adfm.202001906 https://www.nature.com/articles/s41597-022-01142-7 https://pubs.aip.org/aip/jcp/article/152/19/190902/199058/Modeling-charge-transport-in-high-mobility (hole reorganisation energy) https://pubs.acs.org/doi/epdf/10.1021/acs.chemmater.2c00281 (transfer integral) https://pubs.rsc.org/en/content/articlelanding/2020/mh/d0mh01159b (dynamic disorder) https://pubs.rsc.org/en/content/articlelanding/2019/EE/C9EE01508F (singlet and triplet states, and oscillator strengths)
The semiconductor_properties
class inherits the attributes of the ccdc.entry.predicted_properties
class
The available fields are: ‘dynamic_disorder’, ‘homo_lumo_gap’, ‘hole_reorganization_energy’, ‘singlet_state_1_energy’, ‘singlet_state_1_oscillator_strength’, ‘singlet_state_2_energy’, ‘singlet_state_2_oscillator_strength’, ‘transfer_integral’, ‘triplet_state_1_energy’, ‘triplet_state_2_energy’
All values are given in kJ/mol, besides the oscillator strengths, which are unitless. A more thorough breakdown of the context for each field is available in the entry.py documentation. Accessing the data programmatically is then performed using the relevant functions of the class:
>>> import ccdc
>>> Entries = ccdc.io.EntryReader("semiconductor.sqlite")
>>> print("%-20s%-20s" % ("Entry","Transfer_integral"))
>>> for i, Entry in enumerate(Entries):
... d = Entry.predicted_properties.semiconductor_properties
... print("%-20s% -20.4f" % (Entry.identifier,d.transfer_integral))
... if i==4:
... break
Entry Transfer_integral
ABAKIZ 13.7166
ABEGIY 18.5574
ABEJIC -12.6443
ABEKOK 10.9535
ABENED 10.0844
It is intended to include these properties with the database in the Q4 2024 data release, at which point they can be accessed via ‘EntryReader(“CSD”)’. If you would like access to this functionality before that release, please get in contact with support@ccdc.cam.ac.uk, and the small external database (semicondcutor.sqlite) can be transferred.