Package edu.duke.cs.osprey.molscope.molecule

Types

Link copied to clipboard
data class Atom(element: Element, name: String, pos: Vector3d)
Link copied to clipboard
class AtomMap : Bijection<Atom>

A bijection between two sets of atoms.

Link copied to clipboard
class AtomPair(a: Atom, b: Atom)

A pair of atoms that defines equality by atom identity (ie ===), and is insensitive to atom order.

Link copied to clipboard
interface ChainGenerator

Generates chains for non-polymer molecules when combining with polymers.

Link copied to clipboard
interface ChainIdGenerator

Creates unique chain ids to solve chain id conflicts when combining molecules into Polymers.

Link copied to clipboard
class ChainMap : Bijection<Polymer.Chain>
Link copied to clipboard
class ContentAtomPair(a: Atom, b: Atom)

A pair of atoms that defines equality by atom equality (ie ==), and is insensitive to atom order.

Link copied to clipboard
enum Element : Enum<Element>
Link copied to clipboard
open class Molecule(name: String, type: String?, netCharge: Int?)

A collection of atoms (possibly) connected together by covalent bonds.

Link copied to clipboard
class MoleculeMap : Bijection<Molecule>
Link copied to clipboard
open class MoleculeMaps(mols: MoleculeMap, atoms: AtomMap)
Link copied to clipboard
typealias MoleculeSelector = (Molecule) -> List<Atom>

A function that returns a subset of atoms in a molecule

Link copied to clipboard
object MoleculeSelectors
Link copied to clipboard
class Polymer(name: String) : Molecule

An extension to Molecule that supports residues in a chain topology, and separates mainchain from sidechain

Link copied to clipboard
class PolymerMaps(maps: MoleculeMaps, chains: ChainMap, residues: ResidueMap) : MoleculeMaps
Link copied to clipboard
class ResidueMap : Bijection<Polymer.Residue>

Functions

Link copied to clipboard
fun Collection<Atom>.allPairs(other: Collection<Atom>): List<AtomPair>
Link copied to clipboard
fun Collection<Molecule>.combine(name: String, chainIdGenerator: ChainIdGenerator? = null, chainGenerator: ChainGenerator? = null): Pair<Molecule, AtomMap>

Combine multiple Molecules into a single Molecule (by making copies of the input molecules) and returns a map between the input atoms (A side) and the atoms in the combined molecule (B side).

Link copied to clipboard
fun MoleculeSelector.filter(mol: Molecule): Molecule

Applies the selector and returns a new molecule containing only the selected atoms. Polymer structure is preserved where possible

Link copied to clipboard
fun Iterable<Set<Atom>>.intersection(): MutableSet<Atom>
fun Set<Atom>.intersection(other: Set<Atom>): MutableSet<Atom>
Link copied to clipboard
fun Collection<Atom>.toIdentitySet(): MutableSet<Atom>
Link copied to clipboard
fun Iterable<Set<Atom>>.union(): MutableSet<Atom>
fun Set<Atom>.union(other: Set<Atom>): MutableSet<Atom>