Reference

Basic data structure

ProteinSecondaryStructures.SSDataType
SSData

A struct to hold secondary structure data for a single residue. The fields are:

  • resname::String - residue name
  • chain::String - chain identifier
  • resnum::Int - residue number
  • sscode::String - secondary structure code
  • phi::Float64 - phi dihedral angle
  • psi::Float64 - psi dihedral angle
  • area::Float64 - solvent accessible area (stride specific)
  • kappa::Float64 - virtual bond angle (dssp specific)
  • alpha::Float64 - virtual torsion angle (dssp specific)
source

Single-PDB runs

ProteinSecondaryStructures.stride_runFunction
stride_run(pdb_file::String; selection="protein")
stride_run(atoms::AbstractVector{<:PDBTools.Atom})

Run stride on the pdb file and return a vector containing the stride detailed secondary structure information for each residue.

When passing a PDB file, by default only the atoms belonging to standard protein residues are considered. This can be changed by setting the selection keyword argument to a different selection string, or function, following the PDBTools.jl syntax. Note that STRIDE will fail if residue or atoms types not recognized.

source
ProteinSecondaryStructures.dssp_runFunction
dssp_run(pdb_file::String; selection="protein")
dssp_run(atoms::AbstractVector{<:PDBTools.Atom})

Run DSSP on the pdb file and return a vector containing the detailed secondary structure information for each residue.

When passing a PDB file, by default only the atoms belonging to standard protein residues are considered. This can be changed by setting the selection keyword argument to a different selection string, or function, following the PDBTools.jl syntax. Note that DSSP will fail if residue or atoms types not recognized.

source
ProteinSecondaryStructures.classFunction
class(ss::Union{SSData, SSData, Int, String})

Return the secondary structure class. The input may be a SSData object, a secondary structure Int code (1-8) or a secondary structure type string (G, H, ..., C).

The secondary structure classes are:

Secondary structuress codecode number
"310 helix""G"1
"alpha helix""H"2
"pi helix""I"3
"kappa helix""P"4
"turn""T"5
"beta strand""E"6
"beta bridge""B"7
"bend""S"8
"coil""C"9
"loop"" "10
source
ProteinSecondaryStructures._is_classFunction
is_anyhelix(ss::SSData)
is_alphahelix(ss::SSData)
is_pihelix(ss::SSData)
is_kappahelix(ss::SSData)
is_310helix(ss::SSData)
is_anystrand(ss::SSData)
is_betastrand(ss::SSData)
is_betabridge(ss::SSData)
is_turn(ss::SSData)
is_bend(ss::SSData)
is_coil(ss::SSData)
is_turn(ss::SSData)

Return true if the data is of the given secondary structure type.

source

For trajectory analysis

ProteinSecondaryStructures.ss_mapFunction
ss_map(pdbfile::AbstractString, trajectory::Chemfiles.Trajectory; selection="protein")
ss_map(atoms::AbstractVector{<:PDBTools.Atom}, trajectory::Chemfiles.Trajectory)

Calculate the secondary structure map of the trajectory. Returns a matrix of secondary structure codes, where each row is a residue and each column is a frame.

The atoms to be considered may be provided directly with an atoms vector, or by reading a PDB file, in which case the selection keyword argument is used to select the atoms to be considered.

The show_progress keyword argument controls whether a progress bar is shown.

source
ProteinSecondaryStructures.ss_contentFunction
ss_content(f::F, atoms::AbstractVector{<:PDBTools.Atom}, trajectory::Chemfiles.Trajectory)

Calculate the secondary structure content of the trajectory. f is the function that returns, for each residue, if the secondary structure is of a certain type. For example, to calculate the alpha helix content, use f = is_alphahelix.

The show_progress keyword argument controls whether a progress bar is shown.

source
ss_content(f::F, ssmap::AbstractMatrix{Int})

Calculates the secondary structure content of the trajectory. f is the function that returns, for each residue, if the secondary structure is of a certain type. For example, to calculate the alpha helix content, use f = is_alphahelix.

Here, ssmap is the secondary structure map of the trajectory, as returned by the ss_map function.

source
ProteinSecondaryStructures.ss_compositionMethod
ss_composition(ssmap::AbstractMatrix{Int}, iframe::Int}

Calculates the secondary structure composition of the trajectory. Returns a dictionary of the secondary structure types and their counts, for the chosen frame.

source