Acellera / htmd

HTMD: Programming Environment for Molecular Discovery
https://software.acellera.com/docs/latest/htmd/index.html
Other
253 stars 58 forks source link

Error : model.viewStates(nucleic=True), not recognize the 'nucleic' parameter #1073

Closed vas2201 closed 3 months ago

vas2201 commented 8 months ago

I am currently engaged in conformational analysis for RNA using adaptive simulations. I've encountered an issue where the code does not recognize the 'nucleic' parameter in the snippet provided below. Could you please provide some guidance on how to resolve this?.

model.numsamples = 1 model.viewStates(nucleic=True)


TypeError Traceback (most recent call last) Cell In[47], line 2 1 model.numsamples=1 ----> 2 model.viewStates(nucleic=True) 3 #model.viewStates(protein=True)

TypeError: Model.viewStates() got an unexpected keyword argument 'nucleic'

stefdoerr commented 8 months ago

I know this is very stupid but just pass protein=True (it's very old code, I was not thinking of the larger picture back then). It's only used for alignment anyway so if you want just use getStates and write the returned mols to files and visualize them as you like.

vas2201 commented 8 months ago

Thanks for your reply. However, the code return with pdbs with empty coordinates (nan).
mols = model.getStates() mol.write(f"molecule_{i}.pdb").

Output of pdb file :

CRYST1 74.052 78.967 74.636 90.00 90.00 90.00 P 1 1 MODEL 1 ATOM 1 P GUA 1 nan nan nan 0.00 0.00 RNAA P
ATOM 2 O1P GUA 1 nan nan nan 0.00 0.00 RNAA O
ATOM 3 O2P GUA 1 nan nan nan 0.00 0.00 RNAA O
ATOM 4 O5' GUA 1 nan nan nan 1.00 0.00 RNAA O
ATOM 5 C5' GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 6 H5' GUA 1 nan nan nan 1.00 0.00 RNAA H
ATOM 7 H5'' GUA 1 nan nan nan 1.00 0.00 RNAA H
ATOM 8 C4' GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 9 H4' GUA 1 nan nan nan 1.00 0.00 RNAA H
ATOM 10 O4' GUA 1 nan nan nan 1.00 0.00 RNAA O
ATOM 11 C1' GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 12 H1' GUA 1 nan nan nan 1.00 0.00 RNAA H
ATOM 13 N9 GUA 1 nan nan nan 1.00 0.00 RNAA N
ATOM 14 C4 GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 15 N2 GUA 1 nan nan nan 1.00 0.00 RNAA N
ATOM 16 H21 GUA 1 nan nan nan 1.00 0.00 RNAA H
ATOM 17 H22 GUA 1 nan nan nan 1.00 0.00 RNAA H
ATOM 18 N3 GUA 1 nan nan nan 1.00 0.00 RNAA N
ATOM 19 C2 GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 20 N1 GUA 1 nan nan nan 1.00 0.00 RNAA N
ATOM 21 H1 GUA 1 nan nan nan 1.00 0.00 RNAA H
ATOM 22 C6 GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 23 O6 GUA 1 nan nan nan 1.00 0.00 RNAA O
ATOM 24 C5 GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 25 N7 GUA 1 nan nan nan 1.00 0.00 RNAA N
ATOM 26 C8 GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 27 H8 GUA 1 nan nan nan 1.00 0.00 RNAA H
ATOM 28 C2' GUA 1 nan nan nan 1.00 0.00 RNAA C
ATOM 29 H2'' GUA 1 nan nan nan 0.00 0.00 RNAA H
ATOM 30 O2' GUA 1 nan nan nan 1.00 0.00 RNAA O

stefdoerr commented 7 months ago

Sorry for the super late response but can you try also protein=False? This might disable all the aligning and just work fine

vas2201 commented 7 months ago

I tried with given option, The kernel is interrupted after this error message. No output.

Getting state Molecules: 0%| | 0/5 [00:00<?, ?it/s]/home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:46: RuntimeWarning: Mean of empty slice. centroidP = P.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/numpy/core/_methods.py:184: RuntimeWarning: invalid value encountered in divide ret = um.true_divide( /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:47: RuntimeWarning: Mean of empty slice. centroidQ = Q.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:27: RuntimeWarning: invalid value encountered in scalar divide RMSD = np.sqrt(np.abs(RMSD / P.shape[0])) Getting state Molecules: 20%|██████████████████ | 1/5 [00:00<00:01, 2.29it/s]/home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:46: RuntimeWarning: Mean of empty slice. centroidP = P.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/numpy/core/_methods.py:184: RuntimeWarning: invalid value encountered in divide ret = um.true_divide( /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:47: RuntimeWarning: Mean of empty slice. centroidQ = Q.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:27: RuntimeWarning: invalid value encountered in scalar divide RMSD = np.sqrt(np.abs(RMSD / P.shape[0])) Getting state Molecules: 40%|████████████████████████████████████ | 2/5 [00:00<00:01, 2.39it/s]/home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:46: RuntimeWarning: Mean of empty slice. centroidP = P.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/numpy/core/_methods.py:184: RuntimeWarning: invalid value encountered in divide ret = um.true_divide( /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:47: RuntimeWarning: Mean of empty slice. centroidQ = Q.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:27: RuntimeWarning: invalid value encountered in scalar divide RMSD = np.sqrt(np.abs(RMSD / P.shape[0])) Getting state Molecules: 60%|██████████████████████████████████████████████████████ | 3/5 [00:01<00:00, 2.40it/s]/home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:46: RuntimeWarning: Mean of empty slice. centroidP = P.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/numpy/core/_methods.py:184: RuntimeWarning: invalid value encountered in divide ret = um.true_divide( /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:47: RuntimeWarning: Mean of empty slice. centroidQ = Q.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:27: RuntimeWarning: invalid value encountered in scalar divide RMSD = np.sqrt(np.abs(RMSD / P.shape[0])) Getting state Molecules: 80%|████████████████████████████████████████████████████████████████████████ | 4/5 [00:01<00:00, 2.46it/s]/home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:46: RuntimeWarning: Mean of empty slice. centroidP = P.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/numpy/core/_methods.py:184: RuntimeWarning: invalid value encountered in divide ret = um.true_divide( /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:47: RuntimeWarning: Mean of empty slice. centroidQ = Q.mean(axis=0) /home/nmrbox/spenumutchu/anaconda3/envs/100htmd/lib/python3.9/site-packages/moleculekit/align.py:27: RuntimeWarning: invalid value encountered in scalar divide RMSD = np.sqrt(np.abs(RMSD / P.shape[0])) Getting state Molecules: 100%|██████████████████████████████████████████████████████████████████████████████████████████| 5/5 [00:02<00:00, 2.38it/s]

stefdoerr commented 3 months ago

I believe this should be fixed in the latest HTMD version. Sorry for the very late fix.