DiffFit: Visually-Guided Differentiable Fitting of Molecule Structures to Cryo-EM Map
IEEE VIS 2024 Submission arXiv preprint, Video, OSF repo
toolshed install <path to the downloaded .whl file>
Now, DiffFit should be fully installed. Launch it via Tools > Volume Data > DiffFit
Right-click in the panel to access DiffFit's help page.
2.7
Å from the webpage8jgf.cif
and emd_36232.map
) under, for example, D:\GIT\DiffFitViewer\run\input\8JGF
pixel
value from the log, which represents the grid spacing for this volume, which is 1.04
in this case8JGF_transformed.cif
. This step is only for demo purpose and is not necessary for real use cases8JGF_transformed.cif
under D:\GIT\DiffFitViewer\run\input\8JGF\subunits_cif
subunits_mrc
and subunits_npy
, under D:\GIT\DiffFitViewer\run\input\8JGF\
runscript "D:\GIT\DiffFitViewer\src\convert2mrc_npy.py" "D:\GIT\DiffFitViewer\run\input\8JGF\subunits_cif" "D:\GIT\DiffFitViewer\run\input\8JGF\subunits_mrc" "D:\GIT\DiffFitViewer\run\input\8JGF\subunits_npy" 2.7 1.04
Run!
D:\GIT\DiffFitViewer\run\input\8JGF\emd_36232.map
D:\GIT\DiffFitViewer\run\input\8JGF\subunits_cif
D:\GIT\DiffFitViewer\run\input\8JGF\subunits_mrc
D:\GIT\DiffFitViewer\run\output\8JGF
fit_single_demo
0.20
. Or use the author recommended contour level 0.162
. DiffFit is very robust against this parameter, a value between 0.02 - 0.4 is fine in this case.Run!
View
tab to examine the results.
D:\GIT\DiffFitViewer\run\input\8JGF\emd_36232.map
D:\GIT\DiffFitViewer\run\input\8JGF\subunits_cif
D:\GIT\DiffFitViewer\run\output\8JGF\fit_single_demo
0.5
or the value you desire0.5
or the value you desireLoad
3.5
Å from the webpage8smk.cif
and emd_40589.map
) under, for example, D:\GIT\DiffFitViewer\run\input\8SMK
pixel
value from the log, which represents the grid spacing for this volume, which is 0.835
in this case8SMK_transformed.cif
. This step is only for demo purpose and is not necessary for real use casessubunits
under D:\GIT\DiffFitViewer\run\input\8SMK
runscript "D:\GIT\DiffFitViewer\src\split_chains.py" "D:\GIT\DiffFitViewer\run\input\8SMK\8SMK_transformed.cif" "D:\GIT\DiffFitViewer\run\input\8SMK\subunits" 3.5 0.835
D:\GIT\DiffFitViewer\run\input\8SMK\subunits_cif
D:\GIT\DiffFitViewer\run\input\8SMK\subunits_mrc
D:\GIT\DiffFitViewer\run\input\8SMK\subunits_npy
subunits_cif
and subunits_mrc
Run!
D:\GIT\DiffFitViewer\run\input\8SMK\emd_40589.map
D:\GIT\DiffFitViewer\run\input\8SMK\subunits_cif
D:\GIT\DiffFitViewer\run\input\8SMK\subunits_mrc
D:\GIT\DiffFitViewer\run\output\8SMK
round1
0.8
. Or use the author recommended contour level 5.0
. DiffFit is very robust against this parameter, a value between 0.1 - 5.0 is fine in this case.30
300
Run!
View
tab to examine the results.
D:\GIT\DiffFitViewer\run\input\8SMK\emd_40589.map
D:\GIT\DiffFitViewer\run\input\8SMK\subunits_cif
D:\GIT\DiffFitViewer\run\output\8SMK\composite_unique_chains
6
or the value you desire15
or the value you desireLoad
3.5
, and click Simulate volume
Zero density
Mol Id
at a different place, or for a different Mol Id
until there is no good fitworking volume
by File > Save > Files of type as MRC > Map as the desired one
as a new name, for example, emd_40589_round_1.mrc
D:\GIT\DiffFitViewer\run\input\8SMK\emd_40589_round_1.mrc
subunits_cif
and subunits_mrc
round2
10
, and the # quaternions to 100
Run!
The whole procedure is the same as in Scenario 1: Fit a single structure,
only that there will be multiple structures under subunits_cif
.
There is a demo data set with one volume map and three structures to search against.
If you have put DiffFit under D:\GIT\DiffFitViewer
,
you can just hit Run!
in the Compute tab and then go to the View tab.
If otherwise, you just need to change the path for the input and the output data.
If you want to search against the whole candidate library for this case from DomainFit, you can either follow Steps 1-3 from its doc to generate the PDB files for the domains, or just download the ones generated by us from this Google Drive link. Of note is that we generated 359 PDB files by following DomainFit's Steps 1-3, instead of the mentioned 344 files.
The computing time for searching the whole candidate library on one RTX 4090 is about 10 minutes.