Topology

Topology DSSP

Calculate the secondary structure attributes for the protein chains, based on the 1983 Kabsch algorithm

Calculate the secondary structure of a structure, storing it on the sec_struct attribute.

Outputs

Description Socket
The input Atoms with updated sec_struct attributes based on the DSSP algorithm Atoms

Inputs

Socket Default Description
Atoms None Atomic geometry that contains vertices and edges
Selection True The selection of points at which to override any existing sec_struct attribute. Unselected points will still be used for the calculation

Dihedral Phi

Outputs

Description Socket
The calculated Phi angle for the residue, in the range of (-pi, pi) Phi
The perpendicular vector from the line of BC to the point A Up
The vector BC corresponding to the backbone vector around which the angle is calculated Axis

Dihedral Psi

Outputs

Description Socket
The calculated Psi angle for the residue, in the range of (-pi, pi) Psi
The perpendicular vector from the line of BC to the point A Up
The vector BC corresponding to the backbone vector around which the angle is calculated Axis

Dihedral Chi Angle

Outputs

Description Socket
Angle
Up
Axis

Dihedral Chi Angle

Outputs

Description Socket
Angle
Up
Axis

Dihedral Nucleic Angle

Outputs

Description Socket
The angle between the vectors AB and CD, when made perpendicular to BC. Angle
The vector BA when made perpendicular to the axis BC Up
The axis vector BC Axis

Residue Mask

Returns the index for the atom for each unique group (from res_id) for each point in that group. Allows for example, all atoms in a group to be rotated around the position of the selected atom. In the video example, the atom_name is used to select an atom within the groups. Each atom’s position is then offset to that position, showing the group-wise selection.

Outputs

Description Socket
Group contains only one occurrance of the selected atom. None or more than one returns False Is Valid
Index for the group’s atom with specified name, returns -1 if not valid Index
Position of the picked point in the group, returns (0, 0, 0) if not valid Position

Inputs

Socket Default Description
atom_name 1 Atom to pick from the group

Backbone Positions

If the atoms have been through the “Compute Backbone” node, then the backbone atom positions will be available as attributes through this node. In the video example, the Alpha Carbons output is styled as spheres, where the position is mixed with some of the backbone posiitons. The backbone positions can also be selected from the AA residue higher or lower with the specified offset.

Outputs

Description Socket
The position of the backbone O atom for the residue O
The position of the backbone C atom for the residue C
The position of the backbone CA atom for the residue CA
The position of the backbone N atom for the residue N
NH

Peptide Dihedral

Rotate the atoms cumulatively for each residue, adjusting the phi and psi angles for the selected residues

Outputs

Description Socket
Transformed vector Position

Inputs

Socket Default Description
Position Position
Selection True The resulting selection must overlap with this input selection
Phi 0.0
Psi 0.0

Peptide Chi

Rotate the Chi angles for amino acid side chains

Outputs

Description Socket
Position

Inputs

Socket Default Description
Position Position
Selection True
X1 0.0
X2 0.0
X3 0.0
X4 0.0
X5 0.0

Nucleic Dihedral

Rotate the dihedral angles for nucleic acid backbone

Outputs

Description Socket
Transformed vector Position

Inputs

Socket Default Description
Position Position
Selection True The resulting selection must overlap with this input selection
Alpha 0.0
Beta 0.0
Gamma 0.0
Epsilon 0.0
Zeta 0.0 Amount to rotate around the axis

Nucleic Chi

Rotate the Chi angles for nucleic acid side chains

Outputs

Description Socket
Transformed vector Position

Inputs

Socket Default Description
Position Position
Selection True The resulting selection must overlap with this input selection
X1 0.0 Amount to rotate around the axis

Set Phi Psi Angle

Outputs

Description Socket
Geometry

Inputs

Socket Default Description
Geometry None
Selection True
Phi 0.0
Psi 0.0

Set Nucleic Dihedral

Outputs

Description Socket
Geometry

Inputs

Socket Default Description
Geometry None
Selection True The resulting selection must overlap with this input selection
Alpha 0.0
Beta 0.0
Gamma 0.0
Epsilon 0.0
Zeta 0.0 Amount to rotate around the axis

Set Chi Angle

Outputs

Description Socket
Geometry

Inputs

Socket Default Description
Geometry None
Selection True
X1 0.0
X2 0.0
X3 0.0
X4 0.0
X5 0.0

Backbone N

Outputs

Description Socket
N

Backbone CA

Outputs

Description Socket
CA

Backbone C

Outputs

Description Socket
C

Backbone O

Outputs

Description Socket
O

Backbone NH

Outputs

Description Socket
NH

Set URes ID

Outputs

Description Socket
Geometry

Inputs

Socket Default Description
Geometry None

Backbone Vectors

The Vectors that are useful for a curve when reading from a peptide backbone

Calculate Normal, Tangent and Bitangent values from protein backbone atom positions

Outputs

Description Socket
The vector used for the Normal of a curve when reading positions from a peptide backbone Normal
The vector used as the Tangent for a curve when reading values from a peptide backbone Tangent
Cross product of the Normal and Tangent Bitangent

Edge Group ID

Check if both vertices of an edge are in the same Group ID.

Outputs

Description Socket
Difference
Is Equal

Inputs

Socket Default Description
Group ID 0

Is Backbone Edge

If both vertices of an edge are an alpha carbon and the edge is part of the same chain_id.

Outputs

Description Socket
Is Backbone Edge

Sample Atomic Attributes

Sample relevant atomic attributes from a set of sample atoms, onto a new set of atoms / points. Attributes are selected based on the Index input.

Outputs

Description Socket
Atoms

Inputs

Socket Default Description
Atoms None
Sample Atoms None
Index Index

Find Bonded Atom

Outputs

Description Socket
Is Valid
Index
Position

Inputs

Socket Default Description
Index Index
Method Exact
Atom Name N
Distance 2

Topology Find Bonds

Finds bonds between atoms based on distance. Based on the vdw_radii for each point, finds other points within a certain radius to create a bond to. Does not preserve the index for the points, detect bond type, or transfer all attributes

Outputs

Description Socket
Atoms

Inputs

Socket Default Description
Atoms None Atomic geometry that contains vertices and edges
Selection True Selection of atoms to apply this node to
Scale 1.0 Scale the VDW radii of the atoms when searching for bonds

Topology Break Bonds

Will delete a bond between atoms that already exists based on a distance cutoff, or is selected in the Selection input. Leaves the atoms unaffected

Outputs

Description Socket
Atomic geometry that contains vertices and edges Atoms

Inputs

Socket Default Description
Atoms None Atomic geometry that contains vertices and edges
Selection False Selection of atoms to apply this node to
Cutoff 2.5 Cutoff distance over which to remove bonds (Angstrom)

Bond Count

The number of bonds for an atom

Outputs

Description Socket
If the point has an edge / bond to another point Is Bonded
The number of bonds or edges that a point has Bonds

Inputs

Socket Default Description
Index Index

Edge Info

Get information for the selected edge, evaluated on the point domain. The “Edge Index” selects the edge from all possible connected edges. Edges are unfortunately stored somewhat randomly. The resulting information is between the evaluating point and the point that the edge is between. Point Index returns -1 if not connected. In the video example, cones are instanced on each point where the Edge Index returns a valid connection. The Edge Vector can be used to align the instanced cone along that edge. The length of the edge can be used to scale the cone to the other point. As the “Edge Index” is changed, the selected edge changes. When “Edge Index” == 3, only the atoms with 4 connections are selected, which in this model (1BNA) are just the phosphates.

Outputs

Description Socket
Whether there is a valid edge corresponding to the given index Is Valid
The index for the other point involved in this edge, -1 if not connected Point Index
The position for the other point involved in this edge, (0, 0, 0) if not connected Point Position
The index on the edge domain for the selected edge. -1 if not connected Edge Index
The vector along the selected edge. (0, 0, 0) if not connected Edge Vector
Length of the selected edge, -1 if not connected Edge Length

Inputs

Socket Default Description
Vertex Index Index
Edge Index 0 Index within the gorup of edges that are connected to this point

Point Edge Angle

Calculate the angle between two edges, selected with the edge indices. For molecule bonds, combinations of [(0, 1), (0, 2), (0, 3), (1, 2), (1, 3), (2, 3)] will select all possible bond angles. In the video example, two edges are selected with their “Edge Index” values. Those atoms which aren’t valid return false and do not get instanced. The two edge vectors are used to calculate the perpendicular vector through cross product, around which the rotation for the cone is rotated. This demonstrates the ability to calculate the edge angle between the two selected edges.

Outputs

Description Socket
Both of the selected edges are valid Is Valid
Angle between the two selected edges in radians. Returns 0 if not valid Angle
Index for “Edge A” in the Edge domain of the geometry. Returns -1 if not valid Edge Index A
Index for “Edge B” in the Edge domain of the geometry. Returns -1 if not valid Edge Index B
Vector from the current point to the other point in Edge A. Returns (0, 0, 0) if not valid. Edge Vector A
Vector from the current point to the other point in Edge B. Returns (0, 0, 0) if not valid. Edge Vector B

Inputs

Socket Default Description
Vertex Index Index The index of the point at which to evaluate this node
Edge A 0 The index of the edges of this point to select
Edge B 1 The index of the edges of this point to select

Points of Edge

Finds the conntected point for the selected “Edge Index”, and returns each point index for all of the points connected to that point. If the connection doesn’t exist, or the connection is back to the original point, -1 is returned. In the video example, a new point is selected based on the “Edge Index”. At that point, all of the connecting points are exposed as indices 0, 1, 2, 3. If that index is not a valid point or connection, or the point is the same as the original point that is being evaluated, then -1 is returned. This is one of the more complicated topology nodes, but allows indexing of the atoms that are bonded to a bonded atom. This helps with doing calculations for planar molecules.

Outputs

Description Socket
Index for the 0th point, connected to the point at the end of the selected edge. Returns -1 if not connected or self 0
Index for the 1th point, connected to the point at the end of the selected edge. Returns -1 if not connected or self 1
Index for the 2th point, connected to the point at the end of the selected edge. Returns -1 if not connected or self 2
Index for the 3th point, connected to the point at the end of the selected edge. Returns -1 if not connected or self 3
Number of edges conncted to the connected point, including this edge Total

Inputs

Socket Default Description
Vertex Index Index
Edge Index 0 Index within the gorup of edges that are connected to this point