Bio3d network analysis
Hi
I am working on understanding allosteric motions for myo1b motor protein structures from 200 ns simulations. I got nice cross correlations which show nice differences for each construct. Now, i want to use those cross-correlations for network analysis to see any correlated or anti-correlated motions between nodes (subdomains) defined. First of all, it seems to me that networks change based on cutoff.cij. Secondly, I have applied Cmap filtering for cna analysis and it gives me nice sub-domains however I loose some correlations,which are seen in cross-correlation map, between nodes because of 'dcut'.
So, I do not want to use 'cmap' for filtering because it is helpful to determine nodes but it removes some correlations which I think they are significant. My question is: Is there any way to define 'best' cutoff value without filtering them with contact map?
I appreciate any of your help! Thanks,
Comments (2)
-
-
- changed status to resolved
User has found a suitable cutoff value and replied via email.
- Log in to comment
Hi,
Currently, the only way to find a suitable cutoff is to try a range of different values, map the couplings (as lines connecting residue pairs) after filtering to molecular structure, and judge it by your own expertise about your system. You can use the function
pymol.dccm
to visualize the correlations. To my experience, a cutoff value in the range 0.3~0.7 is acceptable. Too low or too high indicates that your system is either very rigid or very dynamic.Note that long distance correlation can be spurious due to the limited simulation time (nano-second time scale is not long enough). I may suggest test the "robustness" of these correlations. For example, you can run multiple MD replicates (e.g. 5) under the same simulation conditions except for a randomly generated initial velocities, or split a single long MD trajectory into multiple chunks. Calculate correlations for each replicate (or chunk) and see if the correlation is constantly strong (above a certain threshold) across replicates. If it is, keep this correlation no matter how far the residue pairs spatially locate; Otherwise, apply the contact map to filter it. This is the same idea as we have implemented in our recent paper. You can do this type of filtering using the function
filter.dccm
. An example of how to use it is shown below:Any other comment, guys?