You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Parse secondary structure annotations from mmCIF (#65)
Unless `run_dssp` or `run_stride`, this will parse any secondary
structure annotations in the mmCIF file.
---
Co-authored by: Joe Greener <jgreener@hotmail.co.uk>
| `=`, `>`, `<` `>=`, `<=` | Properties with real values. |
289
-
| `and`, `or`, `not` | Selections subsets. |
289
+
| `and`, `or`, `not` | Selections subsets. |
290
290
291
291
The keywords supported are:
292
292
@@ -541,13 +541,31 @@ So if you wanted the graph of chain contacts in a protein complex you could give
541
541
542
542
## Assigning secondary structure
543
543
544
-
The secondary structure code of a residue or atom can be accessed after assigning the secondary structure using [DSSP](https://github.com/PDB-REDO/dssp) or [STRIDE](https://webclu.bio.wzw.tum.de/stride).
544
+
Any secondary structure assignment at a residue is accessed via [`sscode`](@ref):
545
+
```julia
546
+
sscode(res)
547
+
sscode(at)
548
+
```
549
+
Or for the whole structure:
550
+
```julia
551
+
sscode.(collectresidues(struc))
552
+
```
553
+
`sscode` may return `'-'`, indicating either that the residue has no recognized secondary structure or that it has not yet been assigned.
554
+
The secondary structure code of a residue can be changed using [`sscode!`](@ref).
555
+
556
+
mmCIF files with secondary structure [annotations](https://mmcif.wwpdb.org/dictionaries/mmcif_pdbx_v50.dic/Items/_struct_conf_type.id.html) will, by default, parse and assign secondary structure.
557
+
558
+
Secondary structure can also be assigned using [DSSP](https://github.com/PDB-REDO/dssp) or [STRIDE](https://webclu.bio.wzw.tum.de/stride).
559
+
This functionality is provided through extensions, so you must load the corresponding package library (`DSSP_jll` or `STRIDE_jll`) before this functionality will work.
560
+
545
561
To assign secondary structure when reading the structure:
[`rundssp!`](@ref), [`runstride!`](@ref), [`rundssp`](@ref) and [`runstride`](@ref) can also be used to assign secondary structure to a [`MolecularStructure`](@ref) or [`Model`](@ref):
@@ -557,21 +575,12 @@ runstride!(struc)
557
575
```
558
576
The assignment process may fail if the structure is too large, since we use an intermediate PDB file where the atom serial cannot exceed 99999 and the chain ID must be a single character.
559
577
To get access to the secondary structure code of a residue or atom as a `Char`:
560
-
```julia
561
-
sscode(res)
562
-
sscode(at)
563
-
```
564
-
Or for the whole structure:
565
-
```julia
566
-
sscode.(collectresidues(struc))
567
-
```
568
-
The secondary structure code of a residue can be changed using [`sscode!`](@ref).
569
578
[`rundssp`](@ref) and [`runstride`](@ref) can also be run directly on structure files:
570
579
```julia
571
580
rundssp("/path/to/pdb/file.pdb", "out.dssp") # Also works with mmCIF files
572
581
runstride("/path/to/pdb/file.pdb", "out.stride")
573
582
```
574
-
See the documentation for [DSSP_jll](https://docs.juliahub.com/General/DSSP_jll/stable/autodocs) and [STRIDE_jll](https://docs.juliahub.com/General/STRIDE_jll/stable/autodocs), and also [ProteinSecondaryStructures.jl](https://github.com/m3g/ProteinSecondaryStructures.jl), for other ways to run these programs.
583
+
See the documentation for [DSSP_jll](https://docs.juliahub.com/General/DSSP_jll/stable/autodocs) and [STRIDE_jll](https://docs.juliahub.com/General/STRIDE_jll/stable/autodocs), and also [ProteinSecondaryStructures.jl](https://github.com/BioJulia/ProteinSecondaryStructures.jl), for other ways to run these programs.
0 commit comments