Comments (8)
. My DNA is 70 bp long, but I do get as amount of major grooves around 64, which is way too much compared to my DNA strand.
The major/minor groove width calculations are with respect to each base pair, so you will get a value for every base pair (if using the simple phosphate distance calculation) or every non-terminal base pair (if using the El Hassan/Calladine calculation), so out of 70 potential base pairs, getting 64 major groove values seems reasonable (there's likely some end-terminal fraying). The cpptraj manual entry for nastruct
has more details (and references) on how the calculations are performed.
Does this help clear things up?
from pytraj.
yeah! thanks a lot !
from pytraj.
Hi there :)
as you`ve helped me so nicely last time.. I have another question:
I am calculating major grooves for my DNA but I have notices that the program calculates the distances in a wrong way. I have one basepair missing and one kind of doubled, but not really: (433 is missing)
'437A502T',)
('438C500T',),
('438C501G',),
('439A500T',),
('440G499C',
I have notived this, because in the arrays of these basepairs, the value is often equal to zero, but not always.
There is another line, that seems wired to me, but I have not figured out why this happens so far, it is a random line
It would be great to know how this wrong calculation is produced and how one can fix it.. Can someone help me?
from pytraj.
The CPPTRAJ (the code that pytraj uses on the back-end) manual describes how the nastruct
command determines base pairing:
Base pairs are determined either once from the �rst frame or from a reference
structure, or can be determined each frame if allframes is speci�ed. Base
pairing is determined �rst by base reference axis origin distance, then by stagger,
then by angle between base Z axes, then �nally by hydrogen bonding (at least
one hydrogen bond must be present). Base pair parameters will only be written
for determined base pairs.
So if you're using the default base pairing mode (which uses the first frame to determine base pairs) and a potential base pair does not meet the base pairing criteria, the parameters for that will not be calculated. I'm not sure if pytraj has the equivalent of the cpptraj allframes
option yet to determine base pairing at every frame (@hainm would know better).
from pytraj.
I'm not sure if pytraj has the equivalent of the cpptraj
allframes
option yet to determine base pairing at every frame (@hainm would know better).
pytraj
does not support that yet. But user can trick pytraj by specifying it in pucker_method
argument
pytraj.nastruc(..., pucker_method='altona allframes')
@cloudella48 I have not tested the code yet so please give it a try.
from pytraj.
When using the pucker_method flag I get more basepairs than I actually have in my DNA (verses the end there are completely random combinations and the two basepairs are still missing (they are always the same). Regarding the calculations I have another question because the values for major groove calculation are always around 19-20 (in the example in the documentation, too) but I know that major groove width in DNA is normally around 12-13 Angstrom or the length of a groove around 22 Angstrom. I know it is the distance in between the P atoms which is calculated but anyhow, then it is not exactly the width, is it? And do you know in what units it is calculated?
Something, which might be good for you to know: I do not see the random values = 0.00 anymore, when using the pucker_method flag (only the random basepairs)
from pytraj.
Hi there... another issue I am facing now.. when I use the allframes version and delete the columns which are randomly attached in the end I will get different output values for both versions. SO the calculation is random and does not match one version with the other. I guess this is not normal ?
from pytraj.
Dear @cloudella48,
to make sure, please use cpptraj
directly to see if the results from pytraj
is reasonable or not: https://amberhub.chpc.utah.edu/analisis-of-nucleic-acid-simulation/
(please search for nastruct
)
from pytraj.
Related Issues (20)
- TypeError: no default __reduce__ due to non-trivial __cinit__ pmap/watershell HOT 6
- Having a new error. I tried some solutions but didn't work. HOT 1
- pytraj.pca error HOT 1
- Mask selection on topology causes memory leak HOT 4
- write_traj problem when selecting a mask and specific frames HOT 1
- Build pytraj error when installing Amber22 HOT 3
- Amber22 installation: "source /home/xxxx/amber22/amber.sh" and "make test.serial" errors HOT 4
- Incorrect box dimensions when writing .rst7 from .dcd HOT 4
- Support trajin -type option for loading trajectory?
- Typo in Output of _explain() Function HOT 1
- Pytraj nastruct needs to be updated to handle [nxyz] data HOT 9
- calculated basepair matches in pytraj HOT 2
- Installation error of pytraj with pip HOT 4
- energy_decompostion throws "Fortran runtime error: Bad value during integer read" HOT 1
- Has anyone tried a Python 3.11 conda package build yet? HOT 11
- Spurious Test Failures with Cpptraj HOT 9
- ModuleNotFoundError: No module named 'pytraj.core.topology_objects' HOT 15
- Help: error building pytraj native library when make install 91% HOT 10
- Function to find the atoms of a given mask that appear in a region of xyz coordinate space? HOT 10
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pytraj.