xchem / XChemExplorer

6 stars 8 forks source link

Multiple Compound Code Functionality #410

Open TJGorrie opened 2 years ago

TJGorrie commented 2 years ago

Just to re-iterate what was said in the meeting earlier today

XCE should be able to handle if multiple compound codes and SMILES are placed into soakdb. This functionality will be necessary for combi soaks and multipin cross contamination.

Compound codes and Smiles should be separated by ";". e.g. Z10001;Z20001;Z30001 - same for subsequent smiles if necessary.

XCE should then, automatically split the compound code and smiles fields for ";" and iterate through all compound codes loop for any processes it might need. (Creating a dictionary if it needs to per crystal?). In most circumstances it will loop through one compound but it will extend to really silly experiments.

Ideally, when it encounters multiple compound codes for XCE should fetch/generate restraints for each compound and then merge them together into a merged.cif file (or a different file name) with appropriate header information. And also generate individual ligand images for the possible compounds.

XCDB will be updated to handle ManyToMany relationships between compounds and crystals.

tkrojer commented 2 years ago

first implemented in v1.8.0 (17/12/2021), but requires testing; preparation of multiple 2D compound images not yet supported