BFEE2
BFEE2 copied to clipboard
How to Install BFEE2 VMD Plugin?
Is there a step-by-step tutorial for installing the BFEE2 VMD Plugin?
I tried to install BFEE2 using conda on my Windows machine, but I am running into an issue. I get an error that the module Pyside2 cannot be found:
(base) C:\Users\Christos>python3 C:\Users\Christos\anaconda3\Scripts\BFEE2Gui.py
Traceback (most recent call last):
File "C:\Users\Christos\anaconda3\Scripts\BFEE2Gui.py", line 43, in <module>
from PySide2.QtWidgets import QApplication
ModuleNotFoundError: No module named 'PySide2'
However, during the installation process, I can see that pyside2 was installed:
The following NEW packages will be INSTALLED:
appdirs conda-forge/noarch::appdirs-1.4.4-pyh9f0ad1d_0
bfee2 conda-forge/noarch::bfee2-2.3.0-pyhd8ed1ab_0
biopython conda-forge/win-64::biopython-1.79-py38h294d835_1
brotli conda-forge/win-64::brotli-1.0.9-h8ffe710_7
brotli-bin conda-forge/win-64::brotli-bin-1.0.9-h8ffe710_7
cftime conda-forge/win-64::cftime-1.6.0-py38hbdcd294_1
curl pkgs/main/win-64::curl-7.82.0-h2bbff1b_0
cycler conda-forge/noarch::cycler-0.11.0-pyhd8ed1ab_0
fonttools conda-forge/win-64::fonttools-4.33.3-py38h294d835_0
griddataformats conda-forge/noarch::griddataformats-0.7.0-pyhd8ed1ab_0
gsd conda-forge/win-64::gsd-2.5.2-py38hbdcd294_0
hdf4 conda-forge/win-64::hdf4-4.2.15-h0e5069d_3
hdf5 conda-forge/win-64::hdf5-1.12.1-nompi_h2a0e4a3_100
joblib conda-forge/noarch::joblib-1.1.0-pyhd8ed1ab_0
kiwisolver conda-forge/win-64::kiwisolver-1.4.2-py38hbd9d945_1
libbrotlicommon conda-forge/win-64::libbrotlicommon-1.0.9-h8ffe710_7
libbrotlidec conda-forge/win-64::libbrotlidec-1.0.9-h8ffe710_7
libbrotlienc conda-forge/win-64::libbrotlienc-1.0.9-h8ffe710_7
libclang conda-forge/win-64::libclang-11.1.0-default_h5c34c98_1
libcurl pkgs/main/win-64::libcurl-7.82.0-h86230a5_0
libnetcdf conda-forge/win-64::libnetcdf-4.8.1-nompi_h1cc8e9d_101
libssh2 conda-forge/win-64::libssh2-1.10.0-h680486a_2
libxslt conda-forge/win-64::libxslt-1.1.33-h65864e5_2
libzip conda-forge/win-64::libzip-1.8.0-hfed4ece_1
m2w64-gcc-libgfor~ conda-forge/win-64::m2w64-gcc-libgfortran-5.3.0-6
m2w64-gcc-libs conda-forge/win-64::m2w64-gcc-libs-5.3.0-7
m2w64-gcc-libs-co~ conda-forge/win-64::m2w64-gcc-libs-core-5.3.0-7
m2w64-gmp conda-forge/win-64::m2w64-gmp-6.1.0-2
m2w64-libwinpthre~ conda-forge/win-64::m2w64-libwinpthread-git-5.0.0.4634.697f757-2
matplotlib-base conda-forge/win-64::matplotlib-base-3.5.1-py38h1f000d6_0
mdanalysis conda-forge/win-64::mdanalysis-2.1.0-py38h885f38d_1
mmtf-python conda-forge/noarch::mmtf-python-1.1.2-py_0
mrcfile conda-forge/noarch::mrcfile-1.3.0-pyh44b312d_0
msgpack-python conda-forge/win-64::msgpack-python-1.0.3-py38hbd9d945_1
msys2-conda-epoch conda-forge/win-64::msys2-conda-epoch-20160418-1
munkres conda-forge/noarch::munkres-1.1.4-pyh9f0ad1d_0
netcdf4 conda-forge/win-64::netcdf4-1.5.8-nompi_py38h0500770_101
networkx conda-forge/noarch::networkx-2.8-pyhd8ed1ab_0
pandas conda-forge/win-64::pandas-1.4.2-py38hcc40339_1
parmed conda-forge/win-64::parmed-3.4.3-py38heb73c8a_2
patsy conda-forge/noarch::patsy-0.5.2-pyhd8ed1ab_0
pyqt-impl conda-forge/win-64::pyqt-impl-5.12.3-py38h885f38d_8
pyqt5-sip conda-forge/win-64::pyqt5-sip-4.19.18-py38h885f38d_8
pyqtchart conda-forge/win-64::pyqtchart-5.12-py38h885f38d_8
pyqtwebengine conda-forge/win-64::pyqtwebengine-5.12.1-py38h885f38d_8
pyside2 conda-forge/win-64::pyside2-5.13.2-py38hadd4fab_7
scikit-learn conda-forge/win-64::scikit-learn-1.0.2-py38hb60ee80_0
scipy conda-forge/win-64::scipy-1.8.0-py38ha1292f7_1
seaborn conda-forge/noarch::seaborn-0.11.2-hd8ed1ab_0
seaborn-base conda-forge/noarch::seaborn-base-0.11.2-pyhd8ed1ab_0
statsmodels conda-forge/win-64::statsmodels-0.13.2-py38h6f4d8f0_0
threadpoolctl conda-forge/noarch::threadpoolctl-3.1.0-pyh8a188c0_0
unicodedata2 conda-forge/win-64::unicodedata2-14.0.0-py38h294d835_1
In any case, I would prefer to be able to use the VMD plugin but I cannot seem to find any information how to install the extension into VMD.
@christos-efthymiou You can find a detailed tutorial here (https://www.nature.com/articles/s41596-021-00676-1).
Regarding your problem, I think that you were opening BFEE2Gui.py using a different Python environment than the one with PySide2.
Thank you, using python instead of python3 fixed the problem and the interface opened.
In terms of adding the extension to VMD, the only thing I can find is "Optionally, one can link BFEE2 with VMD through File→Settings. If BFEE2 is not linked with VMD, some input files, e.g., the structure file of the extended water box, cannot be generated automatically." I clicked File and Settings and added the full path to VMD on my computer:
However, when I go into VMD I still do not see BFEE2 in the extensions. Where should it be located? Or is it not an extension that can be viewed/opened in VMD and instead needs to be opened each time in the command line?
Thank you for your help.
I also wanted to ask about how to use BFEE to calculate the free binding energy of a protein-protein interaction. When I open the GUI, I do not see an option to choose a protein-protein interaction.
However, on the VMD plugins site here https://www.ks.uiuc.edu/Research/vmd/plugins/bfeestimator/, it shows the ability to select a protein-protein interaction:
Why does the GUI look different on the above site compared to what I see on my computer?
@christos-efthymiou BFEE2 is not a VMD extension. It only calls VMD to parse CHARMM-formatted files.
I also wanted to ask about how to use BFEE to calculate the free binding energy of a protein-protein interaction. When I open the GUI, I do not see an option to choose a protein-protein interaction.
However, on the VMD plugins site here https://www.ks.uiuc.edu/Research/vmd/plugins/bfeestimator/, it shows the ability to select a protein-protein interaction:
Why does the GUI look different on the above site compared to what I see on my computer?
We have two versions of BFEE. BFEE1 is a VMD extension, and BFEE2 is a Python package that can do lots of things which cannot be handled inside VMD (e.g. support of Amber FF). We suggest you use BFEE2 whenever possible.
Thank you for the clarification. In my case, as I would like to calculate the binding energy between two protein chains, do I just randomly assign one chain to be the protein and the other to be the ligand (since protein:protein is not an option in the BFEE2 python package)?
Additionally, how do I designate the selection? For example, I have protein chains A and C in my PDB file. How do I select those in the Other Parameters section?
I tried just using A and C, but I get an error that no selection has been made.
I have just checked the PDB file and I believe I have found the ID I need to provide to designate my selection. However, now when I run the program I get the following error:
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'altLocs' Using default value of ' '
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'icodes' Using default value of ' '
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'chainIDs' Using default value of ''
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'occupancies' Using default value of '1.0'
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'elements' Using default value of ' '
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'record_types' Using default value of 'ATOM'
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1124: UserWarning: Found missing chainIDs. Corresponding atoms will use value of 'X'
warnings.warn("Found missing chainIDs."
[WinError 193] %1 is not a valid Win32 application
How can I fix this?
Thank you for the clarification. In my case, as I would like to calculate the binding energy between two protein chains, do I just randomly assign one chain to be the protein and the other to be the ligand (since protein:protein is not an option in the BFEE2 python package)?
Additionally, how do I designate the selection? For example, I have protein chains A and C in my PDB file. How do I select those in the Other Parameters section?
I tried just using A and C, but I get an error that no selection has been made.
I have just checked the PDB file and I believe I have found the ID I need to provide to designate my selection. However, now when I run the program I get the following error:
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'altLocs' Using default value of ' ' warnings.warn("Found no information for attr: '{}'" C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'icodes' Using default value of ' ' warnings.warn("Found no information for attr: '{}'" C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'chainIDs' Using default value of '' warnings.warn("Found no information for attr: '{}'" C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'occupancies' Using default value of '1.0' warnings.warn("Found no information for attr: '{}'" C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'elements' Using default value of ' ' warnings.warn("Found no information for attr: '{}'" C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'record_types' Using default value of 'ATOM' warnings.warn("Found no information for attr: '{}'" C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1124: UserWarning: Found missing chainIDs. Corresponding atoms will use value of 'X' warnings.warn("Found missing chainIDs." [WinError 193] %1 is not a valid Win32 application
How can I fix this?
try this in VMD (after loading psf and pdb)
set chainA [atomselect top "segname A"]
$chainA set chain A
set chainB [atomselect top "segname B"]
$chainB set chain B
set all [atomselect top all]
$all writepsf all.psf
$all writepdb all.pdb
When I check my PDB file (and the PSF file), I see that the two chains seem to be designated by the codes AP1 and CP1:
However, even after entering these codes in the BFEE2 plugin I get this error:
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'altLocs' Using default value of ' '
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'icodes' Using default value of ' '
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'chainIDs' Using default value of ''
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'occupancies' Using default value of '1.0'
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'elements' Using default value of ' '
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1078: UserWarning: Found no information for attr: 'record_types' Using default value of 'ATOM'
warnings.warn("Found no information for attr: '{}'"
C:\Users\Christos\anaconda3\lib\site-packages\MDAnalysis\coordinates\PDB.py:1124: UserWarning: Found missing chainIDs. Corresponding atoms will use value of 'X'
warnings.warn("Found missing chainIDs."
[WinError 193] %1 is not a valid Win32 application
[WinError 193] %1 is not a valid Win32 application
To try the commands you suggested in the VMD TK Console, I first loaded the PDB file and PSF file that had been created when I set up a previous simulation using QwikMD. Then, I entered the commands you gave:
However, I am not sure how to proceed from here. Does this create new PDB and PSF files with specific changes made that I should then load into BFEE2? I am just a bit confused and appreciate any help.
This is probably an Python installation issue. See for example https://stackoverflow.com/questions/65550077/python-winerror-193-1-is-not-a-valid-win32-application