mofstructure documentation¶
Introduction¶
mofstructure is a powerful and user-friendly Python module designed for the manipulation and analysis of metal-organic frameworks (MOFs) and other porous materials, including covalent organic frameworks (COFs) and zeolites. The module offers a range of functions that streamline complex tasks related to the study and modification of these structures. Whether you are a researcher, scientist, or student working in the field of materials science, mofstructure provides the tools you need to efficiently analyze and manipulate these intricate frameworks.
Key Features of mofstructure¶
The mofstructure module includes a variety of features that simplify common operations and enhance the workflow for users working with MOFs and similar materials. Some of the key functionalities include:
Computation of Geometric Properties of MOFs: - mofstructure integrates seamlessly with the zeo++ software in the background to enable quick and accurate computation of all porosity-related properties. Users can easily obtain essential metrics such as Pore Limiting Diameter (PLD), Largest Cavity Diameter (LCD), Accessible Surface Area (ASA), and other geometric characteristics critical to the analysis of MOFs.
Automated Removal of Unbound Guest Molecules: - The module offers an automated process for identifying and removing unbound guest molecules from the framework. This feature is particularly useful when preparing structures for simulations or other computational analyses where the presence of unbound molecules could skew results.
Deconstruction of Metal-Organic Frameworks into Building Units: - mofstructure allows users to deconstruct MOFs into their constituent building units, including organic ligands, metal clusters, organic secondary building units (SBUs), and metal SBUs. For each building unit, the module computes important cheminformatic identifiers such as SMILES strings, InChI, and InChIKey. Additionally, it identifies the type of metal SBU and determines the coordination number of the central metal atom, which is crucial for understanding the structural properties of the framework.
Wrapping Systems Around Unit Cells to Remove the Effect of Periodic Boundary Conditions (PBC): - When visualizing CIF files or converting CIF files to XYZ format, systems may appear uncoordinated due to the effects of periodic boundary conditions. mofstructure provides a solution by wrapping systems around their unit cells, ensuring a more accurate and visually coherent representation of the structure.
Separation of Building Units into Regions: - This feature is essential for users who need to substitute specific ligands or building units within a framework. By separating building units into distinct regions, mofstructure enables targeted modifications, allowing for precise customization of the framework’s properties.
- Installation
- Quick Start Guide
- Running on the Command Line
- Using mofstructure as a Library
- How to Guide
- Run on the Command Line
- Processing Multiple CIF Files
- Use as a Library
- API Reference
- MOF Deconstructions
all_ferrocene_metals()
angle_tolerance_to_rad()
ase_2_pybel()
ase_2_xyz()
check_planarity()
compute_ase_neighbour()
compute_cheminformatic_from_rdkit()
compute_inchis()
compute_openbabel_cheminformatic()
compute_smi()
connected_components()
covalent_radius()
dfsutil_graph_method()
find_COS()
find_carbonyl_sulphate()
find_carboxylates()
find_key_or_value()
find_phosphate()
find_phosphite()
find_sulfides()
find_unique_building_units()
inter_atomic_distance_check()
is_ferrocene()
is_irmof()
is_mof32()
is_paddlewheel()
is_paddlewheel_with_water()
is_rodlike()
is_uio66()
ligands_and_metal_clusters()
longest_list()
matrix2dict()
max_index()
metal_coordination_enviroment()
metal_coordination_number()
metal_in_porphyrin()
metal_in_porphyrin2()
mof_regions()
move2front()
obmol_2_rdkit()
remove_unbound_guest()
remove_unbound_guest_and_return_unique()
rod_manipulation()
secondary_building_units()
transition_metals()
wrap_systems_in_unit_cell()
- Computing Porosity
- Computing stacking in 2D systems and inter-layer height
- MOF Deconstructions
- Updates Version 0.1.4
- Updates Version 0.1.5
- Updates Version 0.1.6
- Updates Version 0.1.7
- Updates Version 0.1.8
- Updates Version 0.1.8.1
- Updates Version 0.1.8.2
Support¶
The module contains much more functionalities. If you are struggling or wish to compute a new quantity that is not yet present, feel free to send me an email: bafgreat@gamil.com.
Roadmap¶
In the future, the code should be able to:
Compute RCSR topological code
Substitute building units in a MOF to enable framework functionalization
Automatically curate CIFs
Deconstruct COFs into their building units