Calculating persistence length of cellulose

78 views
Skip to first unread message

Alex Kwasi

unread,
Sep 3, 2021, 4:44:18 PM9/3/21
to mdnalysis-...@googlegroups.com
Hello Mdanalysis Users
I calculated the persistence length of cellulose with MDanalysis as follows:

from __future__ import print_function
import MDAnalysis as mda
from MDAnalysis.analysis.polymer import PersistenceLength
import matplotlib.pyplot as plt
from MDAnalysis.analysis import polymer
%matplotlib inline

u = mda.Universe("ionicbox2.prmtop", "prod2_md.nc")

print('We have a universe: {}'.format(u))
cellulose = (u.select_atoms('resname ROH'))
list(cellulose)

ags=[u.atoms.select_atoms('name O1','name O6','name O11','name O16', 'name O21', 'name O26','name O30')]  ! selecting glycosidic linkages  as the backbone atoms
list(ags[0])

p = PersistenceLength(ags[0:1])
p.run()
print(p.results)
print('The persistence length is {} A'.format(p.lp))

I used similar approach to calculate for persistence length several DP's.
The  persistence lengths  I got are  17.78, 18.13, 32.39, 17.39 and 11.16 Angstrom for cellulose of DP's 2, 3, 4, 5 and 25.  The results appears quite unreasonable i think. Could somebody tell me what I am doing wrong? Thanks in advance.
Alex 



Alex Kwasi

unread,
Sep 10, 2021, 4:36:02 PM9/10/21
to mdnalysis-...@googlegroups.com
Hello MDAnalysis Users
I posted here a challenge am currently facing in calculating persistence length  of cellulose oligomer  for the past 7 days now. It appears that no one is responding to me. Can somebody help me out. Thanks in advance
Alex Kwasi Kumi 

Oliver Beckstein

unread,
Sep 10, 2021, 8:31:31 PM9/10/21
to mdnalysis-discussion
Hi Alex,

Sorry that you haven’t gotten any replies. Typically that simply means that nobody has a particularly good answer (probably nobody else ever looked at your system)  or your question wasn’t clear enough. 

Generally speaking, we can easily help with questions of the type “I want to achieve X, how can I use MDAnalysis to accomplish that” or “I got this error message, what should I do to fix my code”.

Your question seems to be more of a scientific nature: “The output from the analysis is not what I expect for my system.”  Arriving at this statement requirements a lot of knowledge and insight into the the physics and chemistry of your system of interest.

You are likely the expert on your system (I have no idea what to expect of cellulose… I suppose it should be stiff?) so at a minimum you need to explain to all of us non-experts WHY your results are puzzling. You then have to show if there are cases where you get the expected results: What did you use for validation?  Then you have check if the algorithm used in the MDAnalysis persistence length calculation is appropriate for your case, and you should tell us what you conclude there. then you might want to present other results (eg visualization, back of the enevelope calculations, …) that indicate that the persistence calculation is wrong in some way. We can then start engaging in a discussion related to MDAnalysis.

A good strategy is to describe

1. What you are doing (including code, as you did), and concisely explain the background, i.e., your approach. Include equations, mention if this approach has been used before, etc.
2. What you expected to get (and why you expected this result)
3. What you got instead (and why this is a problem).
4. What other ways you attempted to validate your approach?
5. If you have a hypothesis to explain the problem: What you think might be going wrong?

Finish with a question. The MORE SPECIFIC THE BETTER the question is.


To sum it up: When you don’t get replies then you should try to think about how to make your question more accessible to members of the MDAnalysis community and think about who your audience is — smart people who know simulations, programming, and MDAnalysis but are almost certainly not experts on your system of interest.

The other thing to consider is that most people on this mailing list *may* have 10 minutes a day to spare answering questions. If they can’t quickly see how they can meaningfully contribute to a solution then they use their time for something more productive. We (=scientists, the MDAnalysis community) all love solving problems (otherwise we wouldn’t be doing what we are doing, right?)  and we like helping each other being productive with MDAnalysis, so if you make it as easy as possible to help then we will.
 
Oliver
--
Oliver Beckstein (he/his/him)


MDAnalysis – a NumFOCUS fiscally sponsored project




Reply all
Reply to author
Forward
0 new messages