Topology

Work with the bond and residue topology of structures

Animate Dihedrals

nodes.geometry.AnimateDihedrals(
    atoms=None,
    selection=True,
    frames=None,
    smoother_step=False,
    interpolate=True,
    frame=0.0,
)

GUI reference: Animate Dihedrals.

Parameters

Name Type Description Default
atoms InputGeometry Atomic geometry that contains vertices and edges None
selection InputBoolean Selection of atoms to apply this node to True
frames InputCollection Collection which holds the frames of the trajectory None
smoother_step InputBoolean Ease in and out of the individual frames if interpolating False
interpolate InputBoolean Whether to interpolate between frames of a trajectory or snap True
frame InputFloat Which frame to select from the collection. The fraction component of the float is how much to interpolate between the current and next frame 0.0

Inputs

Name Type Description
i.atoms GeometrySocket Atomic geometry that contains vertices and edges
i.selection BooleanSocket Selection of atoms to apply this node to
i.frames CollectionSocket Collection which holds the frames of the trajectory
i.smoother_step BooleanSocket Ease in and out of the individual frames if interpolating
i.interpolate BooleanSocket Whether to interpolate between frames of a trajectory or snap
i.frame FloatSocket Which frame to select from the collection. The fraction component of the float is how much to interpolate between the current and next frame

Outputs

Name Type Description
o.atoms GeometrySocket Atomic geometry with new positions based on the trajectory

Atoms to CA Curves

nodes.geometry.AtomsToCACurves(
    atoms=None,
    selection=True,
    bs_smoothing=1.0,
    threshold=4.5,
)

GUI reference: Atoms to CA Curves.

Parameters

Name Type Description Default
atoms InputGeometry Atomic geometry that contains vertices and edges None
selection InputBoolean Selection of atoms to apply this node to True
bs_smoothing InputFloat BS Smoothing 1.0
threshold InputFloat Distance (Angstroms) over which subsequent CA points are treated as a new chain 4.5

Inputs

Name Type Description
i.atoms GeometrySocket Atomic geometry that contains vertices and edges
i.selection BooleanSocket Selection of atoms to apply this node to
i.bs_smoothing FloatSocket BS Smoothing
i.threshold FloatSocket Distance (Angstroms) over which subsequent CA points are treated as a new chain

Outputs

Name Type Description
o.curves GeometrySocket Curves

Atoms to Curves

nodes.geometry.AtomsToCurves(
    atoms=None,
    selection=True,
    sort_points=False,
    cutoff=6.0,
)

GUI reference: Atoms to Curves.

Parameters

Name Type Description Default
atoms InputGeometry Atomic geometry that contains vertices and edges None
selection InputBoolean Points to maintain and use for splines, non-selected points are removed True
sort_points InputBoolean Sort points first by atom_id and chain_id before splitting to curves False
cutoff InputFloat Cutoff 6.0

Inputs

Name Type Description
i.atoms GeometrySocket Atomic geometry that contains vertices and edges
i.selection BooleanSocket Points to maintain and use for splines, non-selected points are removed
i.sort_points BooleanSocket Sort points first by atom_id and chain_id before splitting to curves
i.cutoff FloatSocket Cutoff

Outputs

Name Type Description
o.curves GeometrySocket Curves

Backbone C

nodes.geometry.BackboneC(method='Compute')

GUI reference: Backbone C.

Parameters

Name Type Description Default
method InputMenu | Literal['Read', 'Compute'] Method 'Compute'

Inputs

Name Type Description
i.method MenuSocket Method

Outputs

Name Type Description
o.c VectorSocket C

Backbone CA

nodes.geometry.BackboneCA(method='Compute')

GUI reference: Backbone CA.

Parameters

Name Type Description Default
method InputMenu | Literal['Read', 'Compute'] Method 'Compute'

Inputs

Name Type Description
i.method MenuSocket Method

Outputs

Name Type Description
o.ca VectorSocket CA

Backbone N

nodes.geometry.BackboneN(method='Compute')

GUI reference: Backbone N.

Parameters

Name Type Description Default
method InputMenu | Literal['Read', 'Compute'] Method 'Compute'

Inputs

Name Type Description
i.method MenuSocket Method

Outputs

Name Type Description
o.n VectorSocket N

Backbone NH

nodes.geometry.BackboneNH(menu='Compute')

GUI reference: Backbone NH.

Parameters

Name Type Description Default
menu InputMenu | Literal['Read', 'Compute'] Menu 'Compute'

Inputs

Name Type Description
i.menu MenuSocket Menu

Outputs

Name Type Description
o.nh VectorSocket NH

Backbone O

nodes.geometry.BackboneO(method='Compute')

GUI reference: Backbone O.

Parameters

Name Type Description Default
method InputMenu | Literal['Read', 'Compute'] Method 'Compute'

Inputs

Name Type Description
i.method MenuSocket Method

Outputs

Name Type Description
o.o VectorSocket O

Backbone Positions

nodes.geometry.BackbonePositions(method='Compute')

GUI reference: Backbone Positions.

Parameters

Name Type Description Default
method InputMenu | Literal['Read', 'Compute'] Method 'Compute'

Inputs

Name Type Description
i.method MenuSocket Method

Outputs

Name Type Description
o.o VectorSocket The position of the backbone O atom for the residue
o.c VectorSocket The position of the backbone C atom for the residue
o.ca VectorSocket The position of the backbone CA atom for the residue
o.n VectorSocket The position of the backbone N atom for the residue
o.nh VectorSocket NH

Backbone Vector List

nodes.geometry.BackboneVectorList(ca_atoms=None, index=0)

GUI reference: Backbone Vector List.

Parameters

Name Type Description Default
ca_atoms InputGeometry CA Atoms None
index InputInteger The Index at which to sample the Position field from 0

Inputs

Name Type Description
i.ca_atoms GeometrySocket CA Atoms
i.index IntegerSocket The Index at which to sample the Position field from

Outputs

Name Type Description
o.value VectorSocket Output list with evaluated field values
o.ca_atoms GeometrySocket CA Atoms

Backbone Vectors

nodes.geometry.BackboneVectors(method='Compute')

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

GUI reference: Backbone Vectors.

Parameters

Name Type Description Default
method InputMenu | Literal['Read', 'Compute'] Method 'Compute'

Inputs

Name Type Description
i.method MenuSocket Method

Outputs

Name Type Description
o.normal VectorSocket The vector used for the Normal of a curve when reading positions from a peptide backbone
o.tangent VectorSocket The vector used as the Tangent for a curve when reading values from a peptide backbone
o.bitangent VectorSocket Cross product of the Normal and Tangent

Bond Count

nodes.geometry.BondCount(index=0)

GUI reference: Bond Count.

Parameters

Name Type Description Default
index InputInteger Index 0

Inputs

Name Type Description
i.index IntegerSocket Index

Outputs

Name Type Description
o.is_bonded BooleanSocket If the point has an edge / bond to another point
o.bonds IntegerSocket The number of bonds or edges that a point has

Break Bonds

nodes.geometry.BreakBonds(atoms=None, selection=False, cutoff=2.5)

GUI reference: Break Bonds.

Parameters

Name Type Description Default
atoms InputGeometry Atomic geometry that contains vertices and edges None
selection InputBoolean Selection of atoms to apply this node to False
cutoff InputFloat Cutoff distance over which to remove bonds (Angstrom) 2.5

Inputs

Name Type Description
i.atoms GeometrySocket Atomic geometry that contains vertices and edges
i.selection BooleanSocket Selection of atoms to apply this node to
i.cutoff FloatSocket Cutoff distance over which to remove bonds (Angstrom)

Outputs

Name Type Description
o.atoms GeometrySocket Atomic geometry that contains vertices and edges

Chain Parameter

nodes.geometry.ChainParameter()

Information for each residue within the context of the chain

GUI reference: Chain Parameter.

Outputs

Name Type Description
o.factor FloatSocket A residues relative position along a chain. 0 being the first residue in a chain, 1 being the last
o.residue_count IntegerSocket Number of residues in the chain
o.residue_index IntegerSocket Res ID along the chain if counting from 1
o.first_res_id IntegerSocket The first Res ID in a chain (truncated chains start above 1)
o.last_res_id IntegerSocket The Res ID of the last residue in chain (not equal to Length if chain is truncated)
o.index_of_first IntegerSocket Index in whole structure of the first atom in the chain
o.index_of_last IntegerSocket Index in the whole structure the last atom in the chain

Color Backbone

nodes.geometry.ColorBackbone(backbone=None, side_chain=None)

GUI reference: Color Backbone.

Parameters

Name Type Description Default
backbone InputColor Backbone None
side_chain InputColor Side Chain None

Inputs

Name Type Description
i.backbone ColorSocket Backbone
i.side_chain ColorSocket Side Chain

Outputs

Name Type Description
o.color ColorSocket Color

Curve Offset Dihedral

nodes.geometry.CurveOffsetDihedral(
    position=None,
    normal=None,
    index=0,
    offset=0,
)

Offset from the current point a number of points, then use their Position and Normal to calculat a dihdral angle between them

GUI reference: Curve Offset Dihedral.

Parameters

Name Type Description Default
position InputVector The vector to use as the B & C components for Dihedral Angle calculation None
normal InputVector The normal that will be added the Position to create the A & D components of the dihedral calcaulation None
index InputInteger The index of the current point to calculate from 0
offset InputInteger The number of points to offset before calculating the angle 0

Inputs

Name Type Description
i.position VectorSocket The vector to use as the B & C components for Dihedral Angle calculation
i.normal VectorSocket The normal that will be added the Position to create the A & D components of the dihedral calcaulation
i.index IntegerSocket The index of the current point to calculate from
i.offset IntegerSocket The number of points to offset before calculating the angle

Outputs

Name Type Description
o.angle FloatSocket The calculated angle in radians

Dihedral Chi Angle

nodes.geometry.DihedralChiAngle()

GUI reference: Dihedral Chi Angle.

Outputs

Name Type Description
o.angle FloatSocket Angle
o.up VectorSocket Up
o.axis VectorSocket Axis

Dihedral Nucleic Angle

nodes.geometry.DihedralNucleicAngle()

GUI reference: Dihedral Nucleic Angle.

Outputs

Name Type Description
o.angle FloatSocket The angle between the vectors AB and CD, when made perpendicular to BC.
o.up VectorSocket The vector BA when made perpendicular to the axis BC
o.axis VectorSocket The axis vector BC

Dihedral Phi

nodes.geometry.DihedralPhi(menu='Compute')

GUI reference: Dihedral Phi.

Parameters

Name Type Description Default
menu InputMenu | Literal['Read', 'Compute'] Menu 'Compute'

Inputs

Name Type Description
i.menu MenuSocket Menu

Outputs

Name Type Description
o.phi FloatSocket The calculated Phi angle for the residue, in the range of (-pi, pi)
o.up VectorSocket The perpendicular vector from the line of BC to the point A
o.axis VectorSocket The vector BC corresponding to the backbone vector around which the angle is calculated

Dihedral Psi

nodes.geometry.DihedralPsi(method='Compute')

GUI reference: Dihedral Psi.

Parameters

Name Type Description Default
method InputMenu | Literal['Read', 'Compute'] Method 'Compute'

Inputs

Name Type Description
i.method MenuSocket Method

Outputs

Name Type Description
o.psi FloatSocket The calculated Psi angle for the residue, in the range of (-pi, pi)
o.up VectorSocket The perpendicular vector from the line of BC to the point A
o.axis VectorSocket The vector BC corresponding to the backbone vector around which the angle is calculated

Edge Group ID

nodes.geometry.EdgeGroupID(group_id=0)

GUI reference: Edge Group ID.

Parameters

Name Type Description Default
group_id InputInteger Group ID 0

Inputs

Name Type Description
i.group_id IntegerSocket Group ID

Outputs

Name Type Description
o.difference IntegerSocket Difference
o.is_equal BooleanSocket Is Equal

Edge Info

nodes.geometry.EdgeInfo(vertex_index=0, edge_index=0)

GUI reference: Edge Info.

Parameters

Name Type Description Default
vertex_index InputInteger Vertex Index 0
edge_index InputInteger Index within the gorup of edges that are connected to this point 0

Inputs

Name Type Description
i.vertex_index IntegerSocket Vertex Index
i.edge_index IntegerSocket Index within the gorup of edges that are connected to this point

Outputs

Name Type Description
o.is_valid BooleanSocket Whether there is a valid edge corresponding to the given index
o.point_index IntegerSocket The index for the other point involved in this edge, -1 if not connected
o.point_position VectorSocket The position for the other point involved in this edge, (0, 0, 0) if not connected
o.edge_index IntegerSocket The index on the edge domain for the selected edge. -1 if not connected
o.edge_vector VectorSocket The vector along the selected edge. (0, 0, 0) if not connected
o.edge_length FloatSocket Length of the selected edge, -1 if not connected

Edge Length

nodes.geometry.EdgeLength()

GUI reference: Edge Length.

Outputs

Name Type Description
o.length FloatSocket Length

Find Bonded Atom

nodes.geometry.FindBondedAtom(
    index=0,
    method='Exact',
    atom_name='N',
    distance=2,
)

GUI reference: Find Bonded Atom.

Parameters

Name Type Description Default
index InputInteger Index 0
method InputMenu | Literal['Any', 'Exact'] Method 'Exact'
atom_name InputMenu | Literal['N', 'CA', 'C', 'O', 'CB', 'CG', 'CG1', 'CG2', 'OG', 'OG1', 'SG', 'CD', 'CD1', 'CD2', 'ND1', 'ND2', 'OD1', 'OD2', 'SD', 'CE', 'CE1', 'CE2', 'CE3', 'NE', 'NE1', 'NE2', 'OE1', 'OE2', 'CH2', 'NH1', 'NH2', 'OH', 'CZ', 'CZ2', 'CZ3', 'NZ', 'OXT', 'P', 'O1P', 'OP1', 'OP2', 'O2P', 'O5', 'C5', 'C4', 'O4', 'C3', 'O3', 'C2', 'O2', 'C1', 'N1', 'N9', 'N3', 'C8', 'N7', 'C5', 'C6', 'N6', 'C2', 'C4', 'O6', 'N2', 'N4', 'O2', 'O4', 'C7'] Atom Name 'N'
distance InputInteger Distance 2

Inputs

Name Type Description
i.index IntegerSocket Index
i.method MenuSocket Method
i.atom_name MenuSocket Atom Name
i.distance IntegerSocket Distance

Outputs

Name Type Description
o.is_valid BooleanSocket Is Valid
o.index IntegerSocket Index
o.position VectorSocket Position

Find Bonds

nodes.geometry.FindBonds(atoms=None, selection=True, scale=1.0)

GUI reference: Find Bonds.

Parameters

Name Type Description Default
atoms InputGeometry Atomic geometry that contains vertices and edges None
selection InputBoolean Selection of atoms to apply this node to True
scale InputFloat Scale the VDW radii of the atoms when searching for bonds 1.0

Inputs

Name Type Description
i.atoms GeometrySocket Atomic geometry that contains vertices and edges
i.selection BooleanSocket Selection of atoms to apply this node to
i.scale FloatSocket Scale the VDW radii of the atoms when searching for bonds

Outputs

Name Type Description
o.atoms GeometrySocket Atoms

Menu Residue Mask

nodes.geometry.MenuResidueMask(atom_name='N')

GUI reference: Menu Residue Mask.

Parameters

Name Type Description Default
atom_name InputMenu | Literal['N', 'CA', 'C', 'O', 'CB', 'CG', 'CG1', 'CG2', 'OG', 'OG1', 'SG', 'CD', 'CD1', 'CD2', 'ND1', 'ND2', 'OD1', 'OD2', 'SD', 'CE', 'CE1', 'CE2', 'CE3', 'NE', 'NE1', 'NE2', 'OE1', 'OE2', 'CH2', 'NH1', 'NH2', 'OH', 'CZ', 'CZ2', 'CZ3', 'NZ', 'OXT', 'P', 'O1P', 'OP1', 'OP2', 'O2P', 'O5', 'C5', 'C4', 'O4', 'C3', 'O3', 'C2', 'O2', 'C1', 'N1', 'N9', 'N3', 'C8', 'N7', 'C5', 'C6', 'N6', 'C2', 'C4', 'O6', 'N2', 'N4', 'O2', 'O4', 'C7'] Atom Name 'N'

Inputs

Name Type Description
i.atom_name MenuSocket Atom Name

Outputs

Name Type Description
o.is_valid BooleanSocket Group contains only one occurrance of the selected atom. None or more than one returns False
o.index IntegerSocket Index for the group’s atom with specified name, returns -1 if not valid
o.position VectorSocket Position of the picked point in the group, returns (0, 0, 0) if not valid

Menu Residue Name

nodes.geometry.MenuResidueName(residue_name='ALA')

GUI reference: Menu Residue Name.

Parameters

Name Type Description Default
residue_name InputMenu | Literal['UNK', 'ALA', 'ARG', 'ASN', 'ASP', 'CYS', 'GLU', 'GLN', 'GLY', 'HIS', 'ILE', 'LEU', 'LYS', 'MET', 'PHE', 'PRO', 'SER', 'THR', 'TRP', 'TYR', 'VAL', 'SNC', 'MSE', 'ASH', 'CYM', 'CYX', 'GLH', 'HID', 'HIE', 'HIP', 'HYP', 'LYN', 'DA', 'DC', 'DG', 'DT', 'PST', 'rA', 'rC', 'rG', 'rU'] Residue Name 'ALA'

Inputs

Name Type Description
i.residue_name MenuSocket Residue Name

Outputs

Name Type Description
o.res_name IntegerSocket res_name
o.selection BooleanSocket Selection

Nucleic Chi

nodes.geometry.NucleicChi(position=None, selection=True, x1=0.0)

GUI reference: Nucleic Chi.

Parameters

Name Type Description Default
position InputVector Position None
selection InputBoolean The resulting selection must overlap with this input selection True
x1 InputFloat Amount to rotate around the axis 0.0

Inputs

Name Type Description
i.position VectorSocket Position
i.selection BooleanSocket The resulting selection must overlap with this input selection
i.x1 FloatSocket Amount to rotate around the axis

Outputs

Name Type Description
o.position VectorSocket Transformed vector

Nucleic Dihedral

nodes.geometry.NucleicDihedral(
    position=None,
    selection=True,
    alpha=0.0,
    beta=0.0,
    gamma=0.0,
    epsilon=0.0,
    zeta=0.0,
)

GUI reference: Nucleic Dihedral.

Parameters

Name Type Description Default
position InputVector Position None
selection InputBoolean The resulting selection must overlap with this input selection True
alpha InputFloat Alpha 0.0
beta InputFloat Beta 0.0
gamma InputFloat Gamma 0.0
epsilon InputFloat Epsilon 0.0
zeta InputFloat Amount to rotate around the axis 0.0

Inputs

Name Type Description
i.position VectorSocket Position
i.selection BooleanSocket The resulting selection must overlap with this input selection
i.alpha FloatSocket Alpha
i.beta FloatSocket Beta
i.gamma FloatSocket Gamma
i.epsilon FloatSocket Epsilon
i.zeta FloatSocket Amount to rotate around the axis

Outputs

Name Type Description
o.position VectorSocket Transformed vector

Peptide Chi

nodes.geometry.PeptideChi(
    position=None,
    selection=True,
    x1=0.0,
    x2=0.0,
    x3=0.0,
    x4=0.0,
    x5=0.0,
)

GUI reference: Peptide Chi.

Parameters

Name Type Description Default
position InputVector Position None
selection InputBoolean Selection True
x1 InputFloat X1 0.0
x2 InputFloat X2 0.0
x3 InputFloat X3 0.0
x4 InputFloat X4 0.0
x5 InputFloat X5 0.0

Inputs

Name Type Description
i.position VectorSocket Position
i.selection BooleanSocket Selection
i.x1 FloatSocket X1
i.x2 FloatSocket X2
i.x3 FloatSocket X3
i.x4 FloatSocket X4
i.x5 FloatSocket X5

Outputs

Name Type Description
o.position VectorSocket Position

Peptide Dihedral

nodes.geometry.PeptideDihedral(position=None, selection=True, phi=0.0, psi=0.0)

GUI reference: Peptide Dihedral.

Parameters

Name Type Description Default
position InputVector Position None
selection InputBoolean The resulting selection must overlap with this input selection True
phi InputFloat Phi 0.0
psi InputFloat Psi 0.0

Inputs

Name Type Description
i.position VectorSocket Position
i.selection BooleanSocket The resulting selection must overlap with this input selection
i.phi FloatSocket Phi
i.psi FloatSocket Psi

Outputs

Name Type Description
o.position VectorSocket Transformed vector

Point Edge Angle

nodes.geometry.PointEdgeAngle(vertex_index=0, edge_a=0, edge_b=1)

GUI reference: Point Edge Angle.

Parameters

Name Type Description Default
vertex_index InputInteger The index of the point at which to evaluate this node 0
edge_a InputInteger The index of the edges of this point to select 0
edge_b InputInteger The index of the edges of this point to select 1

Inputs

Name Type Description
i.vertex_index IntegerSocket The index of the point at which to evaluate this node
i.edge_a IntegerSocket The index of the edges of this point to select
i.edge_b IntegerSocket The index of the edges of this point to select

Outputs

Name Type Description
o.is_valid BooleanSocket Both of the selected edges are valid
o.angle FloatSocket Angle between the two selected edges in radians. Returns 0 if not valid
o.edge_index_a IntegerSocket Index for “Edge A” in the Edge domain of the geometry. Returns -1 if not valid
o.edge_index_b IntegerSocket Index for “Edge B” in the Edge domain of the geometry. Returns -1 if not valid
o.edge_vector_a VectorSocket Vector from the current point to the other point in Edge A. Returns (0, 0, 0) if not valid.
o.edge_vector_b VectorSocket Vector from the current point to the other point in Edge B. Returns (0, 0, 0) if not valid.

Points of Edge

nodes.geometry.PointsOfEdge(vertex_index=0, edge_index=0)

GUI reference: Points of Edge.

Parameters

Name Type Description Default
vertex_index InputInteger Vertex Index 0
edge_index InputInteger Index within the gorup of edges that are connected to this point 0

Inputs

Name Type Description
i.vertex_index IntegerSocket Vertex Index
i.edge_index IntegerSocket Index within the gorup of edges that are connected to this point

Outputs

Name Type Description
o._0 IntegerSocket Index for the 0th point, connected to the point at the end of the selected edge. Returns -1 if not connected or self
o._1 IntegerSocket Index for the 1th point, connected to the point at the end of the selected edge. Returns -1 if not connected or self
o._2 IntegerSocket Index for the 2th point, connected to the point at the end of the selected edge. Returns -1 if not connected or self
o._3 IntegerSocket Index for the 3th point, connected to the point at the end of the selected edge. Returns -1 if not connected or self
o.total IntegerSocket Number of edges conncted to the connected point, including this edge

Residue Dihedral Angle

nodes.geometry.ResidueDihedralAngle(a=6, c=2, d=3)

GUI reference: Residue Dihedral Angle.

Parameters

Name Type Description Default
a InputInteger Atom to pick from the group 6
c InputInteger Atom to pick from the group 2
d InputInteger Atom to pick from the group 3

Inputs

Name Type Description
i.a IntegerSocket Atom to pick from the group
i.c IntegerSocket Atom to pick from the group
i.d IntegerSocket Atom to pick from the group

Outputs

Name Type Description
o.value FloatSocket Value
o.ba_bc VectorSocket The vector BA when made perpendicular to the axis BC
o.cd_bc VectorSocket The Vector CD when makde perpendicular to the axis BC
o.bc VectorSocket The axis vector BC

Residue Mask

nodes.geometry.ResidueMask(atom_name=1)

GUI reference: Residue Mask.

Parameters

Name Type Description Default
atom_name InputInteger Atom to pick from the group 1

Inputs

Name Type Description
i.atom_name IntegerSocket Atom to pick from the group

Outputs

Name Type Description
o.is_valid BooleanSocket Group contains only one occurrance of the selected atom. None or more than one returns False
o.index IntegerSocket Index for the group’s atom with specified name, returns -1 if not valid
o.position VectorSocket Position of the picked point in the group, returns (0, 0, 0) if not valid

Residue Parameter

nodes.geometry.ResidueParameter()

GUI reference: Residue Parameter.

Outputs

Name Type Description
o.factor FloatSocket An atom’s relative position in a residue, with the first atom being 0 and the last atom being 1
o.atom_count IntegerSocket Number of atoms in a residue
o.atom_index IntegerSocket Index of an atom in a residue when counting from 0
o.first_atom_name IntegerSocket the atom_name for the first atom in a residue
o.last_atom_name IntegerSocket The atom_name for the last atom in a residue
o.index_of_first IntegerSocket Index (in the whole structure) for the first atom in a residue
o.index_of_last IntegerSocket Index (in the whole structure) for the last atom in a residue

Sample Nearest Atoms

nodes.geometry.SampleNearestAtoms(atoms=None)

GUI reference: Sample Nearest Atoms.

Parameters

Name Type Description Default
atoms InputGeometry Atomic geometry that contains vertices and edges None

Inputs

Name Type Description
i.atoms GeometrySocket Atomic geometry that contains vertices and edges

Outputs

Name Type Description
o.color ColorSocket Color
o.b_factor FloatSocket b_factor
o.atomic_number IntegerSocket atomic_number
o.chain_id IntegerSocket chain_id
o.res_id IntegerSocket res_id
o.res_name IntegerSocket res_name

Set Chi Angle

nodes.geometry.SetChiAngle(
    geometry=None,
    selection=True,
    x1=0.0,
    x2=0.0,
    x3=0.0,
    x4=0.0,
    x5=0.0,
)

GUI reference: Set Chi Angle.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
selection InputBoolean Selection True
x1 InputFloat X1 0.0
x2 InputFloat X2 0.0
x3 InputFloat X3 0.0
x4 InputFloat X4 0.0
x5 InputFloat X5 0.0

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.selection BooleanSocket Selection
i.x1 FloatSocket X1
i.x2 FloatSocket X2
i.x3 FloatSocket X3
i.x4 FloatSocket X4
i.x5 FloatSocket X5

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Set Nucleic Dihedral

nodes.geometry.SetNucleicDihedral(
    geometry=None,
    selection=True,
    alpha=0.0,
    beta=0.0,
    gamma=0.0,
    epsilon=0.0,
    zeta=0.0,
)

GUI reference: Set Nucleic Dihedral.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
selection InputBoolean The resulting selection must overlap with this input selection True
alpha InputFloat Alpha 0.0
beta InputFloat Beta 0.0
gamma InputFloat Gamma 0.0
epsilon InputFloat Epsilon 0.0
zeta InputFloat Amount to rotate around the axis 0.0

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.selection BooleanSocket The resulting selection must overlap with this input selection
i.alpha FloatSocket Alpha
i.beta FloatSocket Beta
i.gamma FloatSocket Gamma
i.epsilon FloatSocket Epsilon
i.zeta FloatSocket Amount to rotate around the axis

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Set Phi Psi Angle

nodes.geometry.SetPhiPsiAngle(geometry=None, selection=True, phi=0.0, psi=0.0)

GUI reference: Set Phi Psi Angle.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
selection InputBoolean Selection True
phi InputFloat Phi 0.0
psi InputFloat Psi 0.0

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.selection BooleanSocket Selection
i.phi FloatSocket Phi
i.psi FloatSocket Psi

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Set URes ID

nodes.geometry.SetUResID(geometry=None)

GUI reference: Set URes ID.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None

Inputs

Name Type Description
i.geometry GeometrySocket Geometry

Outputs

Name Type Description
o.geometry GeometrySocket Geometry

Structure Parameter

nodes.geometry.StructureParameter()

GUI reference: Structure Parameter.

Outputs

Name Type Description
o.atom_factor FloatSocket Factor of the atom within the structure, which is the relative position of the Index within the overall structure between 0 and 1
o.index IntegerSocket Index of the point within the structure. Equal to the Index input node
o.atom_count IntegerSocket Number of atoms in the structure, equal to the size of the Point Domain
o.index_of_first IntegerSocket Index of first atom in the entire structure, which will always be 0
o.index_of_last IntegerSocket Index of last atom in the entire structure. Equal to Atom Count - 1
o.residue_factor FloatSocket Residue Factor
o.residue_index IntegerSocket A unique Group ID that increases whenever Sub Group ID or Group ID change
o.residue_count IntegerSocket Residue Count

Switch Residue Name

nodes.geometry.SwitchResidueName(
    ala=6,
    arg=6,
    asn=6,
    asp=6,
    cys=6,
    glu=6,
    gln=6,
    gly=6,
    his=6,
    ile=6,
    leu=6,
    lys=6,
    met=6,
    phe=6,
    pro=6,
    ser=6,
    thr=6,
    trp=6,
    tyr=6,
    val=6,
)

GUI reference: Switch Residue Name.

Parameters

Name Type Description Default
ala InputInteger ALA 6
arg InputInteger ARG 6
asn InputInteger ASN 6
asp InputInteger ASP 6
cys InputInteger CYS 6
glu InputInteger GLU 6
gln InputInteger GLN 6
gly InputInteger GLY 6
his InputInteger HIS 6
ile InputInteger ILE 6
leu InputInteger LEU 6
lys InputInteger LYS 6
met InputInteger MET 6
phe InputInteger PHE 6
pro InputInteger PRO 6
ser InputInteger SER 6
thr InputInteger THR 6
trp InputInteger TRP 6
tyr InputInteger TYR 6
val InputInteger VAL 6

Inputs

Name Type Description
i.ala IntegerSocket ALA
i.arg IntegerSocket ARG
i.asn IntegerSocket ASN
i.asp IntegerSocket ASP
i.cys IntegerSocket CYS
i.glu IntegerSocket GLU
i.gln IntegerSocket GLN
i.gly IntegerSocket GLY
i.his IntegerSocket HIS
i.ile IntegerSocket ILE
i.leu IntegerSocket LEU
i.lys IntegerSocket LYS
i.met IntegerSocket MET
i.phe IntegerSocket PHE
i.pro IntegerSocket PRO
i.ser IntegerSocket SER
i.thr IntegerSocket THR
i.trp IntegerSocket TRP
i.tyr IntegerSocket TYR
i.val IntegerSocket VAL

Outputs

Name Type Description
o.output IntegerSocket Output

Topology DSSP

nodes.geometry.TopologyDSSP(atoms=None)

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

GUI reference: Topology DSSP.

Parameters

Name Type Description Default
atoms InputGeometry Atomic geometry that contains vertices and edges None

Inputs

Name Type Description
i.atoms GeometrySocket Atomic geometry that contains vertices and edges

Outputs

Name Type Description
o.atoms GeometrySocket The input Atoms with updated sec_struct attributes based on the DSSP algorithm

Unique Chain ID

nodes.geometry.UniqueChainID(cutoff=4.5)

Compute a unique Group ID based on the chain_id attribute, but also incrememnting if subsequent points are over a cutoff distance from each other

GUI reference: Unique Chain ID.

Parameters

Name Type Description Default
cutoff InputFloat Threshold distance over which the next points are considered to be part of a new chain 4.5

Inputs

Name Type Description
i.cutoff FloatSocket Threshold distance over which the next points are considered to be part of a new chain

Outputs

Name Type Description
o.group_id IntegerSocket Calculated Group ID attribute

Unique Residue ID

nodes.geometry.UniqueResidueID()

GUI reference: Unique Residue ID.

Outputs

Name Type Description
o.group_id IntegerSocket A unique Group ID for eash residue

Visualize Chi Angle

nodes.geometry.VisualizeChiAngle(
    geometry=None,
    selection=True,
    factor=0.5,
    value=0.61,
    radius=0.2,
)

GUI reference: Visualize Chi Angle.

Parameters

Name Type Description Default
geometry InputGeometry Geometry None
selection InputBoolean Selection True
factor InputFloat Factor 0.5
value InputFloat A value which will be scaled appropriately for the world 0.61
radius InputFloat Radius 0.2

Inputs

Name Type Description
i.geometry GeometrySocket Geometry
i.selection BooleanSocket Selection
i.factor FloatSocket Factor
i.value FloatSocket A value which will be scaled appropriately for the world
i.radius FloatSocket Radius

Outputs

Name Type Description
o.mesh GeometrySocket Mesh
o.curve GeometrySocket Curve

Visualize Relative Atoms

nodes.geometry.VisualizeRelativeAtoms(
    atoms=None,
    selection=True,
    scale=1.0,
    position=None,
    target_index=100,
    target_position=None,
)

GUI reference: Visualize Relative Atoms.

Parameters

Name Type Description Default
atoms InputGeometry Atoms None
selection InputBoolean Selection True
scale InputFloat Scale 1.0
position InputVector Position None
target_index InputInteger Index for the selected point to measure to 100
target_position InputVector Target Position None

Inputs

Name Type Description
i.atoms GeometrySocket Atoms
i.selection BooleanSocket Selection
i.scale FloatSocket Scale
i.position VectorSocket Position
i.target_index IntegerSocket Index for the selected point to measure to
i.target_position VectorSocket Target Position

Outputs

Name Type Description
o.instances GeometrySocket Instances