Skip to content
Jeff Flatten edited this page Jun 26, 2024 · 6 revisions

tmol breaks poses down into sub-structures called Blocks (a generalization of the concept of 'residue' from Rosetta). Each block has a Block Type, a set of parameters defined by the database.

Block types comprise a set of atoms, the properties of those atoms, the chemical bonds between those atoms, and the inter-block chemical bonds that will join blocks together. The molecular system records the block type for each block, the coordinates of each atom, and how each block is connected (or not connected) to other blocks.

RefinedResidueType

PackedBlockTypes

PackedBlockTypes serves to accumulate ("pack") all block type specific information into Tensors so that this data can be efficiently passed and made available to the GPU.

This class is built from the collection of RefinedResidueType objects used by a PoseStack.

Other classes such as the EnergyTerms may accumulate any block-type specific data for that term into tensors and cache those tensors inside the PackedBlockTypes object.

The creation of the data stored in the PackedBlockType object can be somewhat slow; thus, it is most efficient to share a single PackedBlockTypes object between multiple PoseStacks.

Loading from Database

Patches and Variants

Adding new block types

The coordinates of a PoseStack can be modified after construction; however, all other data members must be left unaltered. If you want to modify the residue type information for an existing PoseStack, you should construct a new PoseStack object instead.

Clone this wiki locally