Class SBMDynamicalModelParticleSystem#
ClassList > SBMDynamicalModelParticleSystem
This class describes a dynamical particle system. More...
#include <SBMDynamicalModelParticleSystem.hpp>
Inherits the following classes: SBMDynamicalModel
Public Types inherited from SBDDataGraphNode#
See SBDDataGraphNode
| Type | Name |
|---|---|
| enum | RenderingPass The rendering pass. |
| enum | Type The type of the data graph node. |
Public Functions#
| Type | Name |
|---|---|
| SBMDynamicalModelParticleSystem () Builds an empty particle system. |
|
| SBMDynamicalModelParticleSystem (const SBNodeIndexer & nodeIndexer) Builds a particle system associated to a set of nodes. |
|
| unsigned int | addAtom (SBAtom * atom) Adds an atom to the particle system. |
| void | addAtoms (const SBNodeIndexer & nodeIndexer) Adds atoms of a node indexer. |
| void | correctDistanceWithPBC (SBLength3 & distance) Adjusts a distance vector to account for periodic boundary conditions. |
| virtual bool | enforcePeriodicBoundaryConditions () override Enforces the periodic boundary conditions. |
| virtual void | flushMomentumBuffer () Flushes the momentum buffer. |
| virtual void | flushPositionBuffer () override Flushes the position buffer. |
| bool | getActivityFlag (SBAtom * atom) const Returns the activity flag of an atom. |
| bool | getActivityFlag (unsigned int atomIndex) const Returns the activity flag of an atom. |
| SBPointerIndexer< SBAtom > const * | getAtomIndexer () const Returns the atoms associated to the particle system. |
| virtual unsigned int | getChangedMomentumIndex (unsigned int i) const Returns the index of an changed momentum. |
| virtual unsigned int | getChangedPositionIndex (unsigned int i) override const Returns the index of an changed position. |
| virtual SBDDataGraphNode::Type | getDynamicalModelType () override const Returns the dynamical model type (returns SBDDataGraphNode::DynamicalModelParticleSystem ) |
| SBQuantity::inverseMass | getInverseMass (SBAtom * atom) const Returns the inverse mass of an atom. |
| SBQuantity::inverseMass | getInverseMass (unsigned int atomIndex) const Returns the inverse mass of an atom. |
| SBQuantity::mass | getMass (SBAtom * atom) const Returns the mass of an atom. |
| SBQuantity::mass | getMass (unsigned int atomIndex) const Returns the mass of an atom. |
| virtual SBMomentum3 const & | getMomentum (unsigned int i) const Returns the momentum of an atom. |
| virtual unsigned int | getNumberOfChangedMomentums () const Returns the number of changed momentums. |
| virtual unsigned int | getNumberOfChangedPositions () override const Returns the number of changed positions. |
| virtual SBPosition3 const & | getPosition (unsigned int i) const Returns the position of an atom. |
| virtual bool | getPositionChanged (unsigned int i) override const Returns whether position i has been changed since the last flush. |
| virtual SBDDataGraphNode::Type | getType () override const Returns the type of the data graph node (returns SBDDataGraphNode::DynamicalModelParticleSystem ) |
| virtual void | print (unsigned int offset=0) override const Prints debugging information. |
| void | removeAtom (SBAtom * atom) Removes an atom from the particle system. |
| void | removeAtom (unsigned int atomIndex) Removes an atom from the particle system. |
| void | removeAtoms (const SBNodeIndexer & nodeIndexer) Removes atoms of a node indexer. |
| int | roundForPBC (const SBQuantity::length & d) Computes the integer rounding of a length value for periodic boundary correction. |
| void | setActivityFlag (SBAtom * atom, bool flag) Sets the activity flag of an atom. |
| void | setActivityFlag (unsigned int atomIndex, bool flag) Sets the activity flag of an atom. |
| void | setMass (SBAtom * atom, SBQuantity::mass mass) Sets the mass of an atom. |
| void | setMass (unsigned int atomIndex, SBQuantity::mass mass) Sets the mass of an atom. |
| virtual void | setMomentum (unsigned int i, const SBMomentum3 & newMomentum) Updates the momentum of an atom. |
| virtual void | setPosition (unsigned int i, const SBPosition3 & newPosition) Updates the position of an atom. |
| virtual void | updateStructuralNodes () override Updates the structural nodes based on the state of the particle system. |
| virtual | ~SBMDynamicalModelParticleSystem () Deletes the particle system. |
Public Functions inherited from SBMDynamicalModel#
| Type | Name |
|---|---|
| virtual SBMDynamicalModel * | clone () override Returns a copy of the node and its descendants. |
| void | connectDynamicalSignalToSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBDynamicalEvent *) functionPointer, SBCReferenceTarget * nextReferenceTarget=0, void(SBCReferenceTarget::*)(SBDynamicalEvent *) nextFunctionPointer=0) Connects the dynamical signal to a slot. |
| void | disconnectDynamicalSignalFromSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBDynamicalEvent *) functionPointer) Disconnects the dynamical signal from a slot. |
| bool | dynamicalSignalIsConnectedToSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBDynamicalEvent *) functionPointer) const Returns true if and only if the dynamical signal is connected to a given slot. |
| virtual bool | enforcePeriodicBoundaryConditions () Enforces the periodic boundary conditions. |
| virtual void | flushPositionBuffer () Flushes the position buffer. |
| virtual void | forEachNodeDepthFirst (void(*)(SBDDataGraphNode *node) action) override Performs the action on each node in the root of the dynamical model, depth-first. |
| virtual void | forEachNodeDepthFirst (SBCClass * object, void(SBCClass::*)(SBDDataGraphNode *node) action) override Performs the object 'saction on each node in the root of the dynamical model, depth-first. |
| virtual unsigned int | getChangedPositionIndex (unsigned int i) const Returns the index of a changed position. |
| virtual SBDDataGraphNode::Type | getDynamicalModelType () const Returns the dynamical model type. |
| SBMDynamicalModelNodeRoot * | getDynamicalRoot () const Returns the root of the dynamical model. |
| virtual SBDDataGraphNode::Type | getModelType () override const Returns the model type. |
| virtual void | getNodes (SBNodeIndexer & nodeIndexer, SBNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) override const Collects nodes into nodeIndexer , based on anodeType , a selection status and avisitPredicate , with or without dependencies. |
| virtual void | getNodes (SBNodeIndexer & nodeIndexer, const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) override const Collects nodes into nodeIndexer , based on aselectionPredicate and avisitPredicate , with or without dependencies. |
| virtual unsigned int | getNumberOfChangedPositions () const Returns the number of changed positions. |
| SBIAPosition3 const & | getPeriodicBoundaryConditions () const Returns the periodic boundary conditions. |
| bool | getPeriodicBoundaryConditionsFlag () const Returns the periodic boundary conditions flag. |
| virtual bool | getPositionChanged (unsigned int i) const Returns whether position i has been changed since the last flush. |
| virtual SBDDataGraphNode::Type | getType () override const Returns the node type ( SBNode::DynamicalModel ) |
| virtual bool | hasNode (SBNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) override const Checks for nodes based on a nodeType , a selection status and avisitPredicate , with or without dependencies. |
| virtual bool | hasNode (const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) override const Checks for nodes based on a selectionPredicate and avisitPredicate , with or without dependencies. |
| virtual bool | isSerializable () override const Returns true when the class is serializable. |
| virtual void | print (unsigned int offset=0) override const Prints debugging information. |
| virtual void | serialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override const Serializes the node. |
| void | setPeriodicBoundaryConditions (SBIAPosition3 const & box) Sets the periodic boundary conditions. |
| void | setPeriodicBoundaryConditionsFlag (bool flag) Sets the periodic boundary conditions flag. |
| virtual void | unserialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override Unserializes the node. |
| virtual void | updateStructuralNodes () Updates structural nodes based on the state of the dynamical model. |
Public Functions inherited from SBMModel#
See SBMModel
| Type | Name |
|---|---|
| SB_NODE_GETTER_0 (SB_SBMMODEL_EXPORT, SBDDataGraphNode::Type, GetModelType) |
|
| SB_NODE_PREDICATE_1 (SB_SBMMODEL_EXPORT, IsModelType, SBDDataGraphNode::Type) |
|
| void | clearSourceFileName () Clears the name of the file associated to the model. |
| virtual SBMModel * | clone () override Returns a copy of the node and its descendants. |
| virtual SBDDataGraphNode::Type | getModelType () const Returns the model type. |
| SBMModel * | getNextModel () const Returns the next model in the parent. |
| virtual unsigned int | getOpacity () override const Returns the opacity. |
| SBMModel * | getPreviousModel () const Returns the previous model in the parent. |
| bool | getShadowingFlag () const Returns whether the model casts shadows. |
| const std::string & | getSourceFileName () const Returns the name of the file associated to the model. |
| virtual unsigned int | getTransparency () override const Returns the transparency. |
| virtual SBDDataGraphNode::Type | getType () override const Returns the type of the data graph node. |
| bool | hasSourceFileName () const Returns true when the model has the source file name set. |
| virtual bool | isSerializable () override const Returns true __ |
| virtual void | print (unsigned int offset=0) override const Prints debugging information. |
| virtual void | serialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override const Serializes the node. |
| virtual void | setOpacity (unsigned int opacity) override Sets the opacity. |
| void | setShadowingFlag (bool shadowingFlag) Sets whether the model casts shadows. |
| void | setSourceFileName (const std::string & fileName) Sets the name of the file associated to the model. |
| virtual void | setTransparency (unsigned int transparency) override Sets the transparency. |
| virtual void | unserialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override Unserializes the node. |
| virtual | ~SBMModel () Delete the model. |
Public Functions inherited from SBDDataGraphNode#
See SBDDataGraphNode
| Type | Name |
|---|---|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBCClassProxy *, GetProxy) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, This) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetParent) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetThis) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetNextNode) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetPreviousNode) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDocument *, GetDocument) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetRoot) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, unsigned int, GetNodeIndex) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode::Type, GetType) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, bool, GetSelectionFlag) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, bool, GetLockedFlag) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, bool, GetVisibilityFlag) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, bool, GetHighlightingFlag) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, unsigned int, GetFlags) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, std::string, GetName) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, std::string, GetClass) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, std::string, GetElement) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBCContainerUUID, GetElementUUID) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, All) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, None) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsAtom) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsBond) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsStructuralNode) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsStructuralModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsVisualModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsMesh) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsLight) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsInteractionModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsDynamicalModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsPropertyModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSimulator) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsBallAndStick) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsLicorice) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsVanDerWaals) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsCartoon) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsRibbon) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsTube) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsGaussianSurface) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSolventAccessibleSurface) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSolventExcludedSurface) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, HasMaterial) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, OwnsMaterial) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsLocked) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSerializable) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsCreated) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsErased) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSelected) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsVisible) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsHighlighted) |
|
| SB_NODE_PREDICATE_1 (SB_SBDDATAGRAPH_EXPORT, IsType, SBDDataGraphNode::Type) |
|
| SB_NODE_PREDICATE_1 (SB_SBDDATAGRAPH_EXPORT, HasOneOf, SBNodeIndexer) |
|
| virtual bool | addChild (SBDDataGraphNode * node, SBDDataGraphNode * nextNode=nullptr) Adds a child to the node. |
| bool | addMaterial (SBDDataGraphNodeMaterial * material) Adds a material. |
| bool | baseSignalIsConnectedToSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBBaseEvent *) functionPointer) const Returns true when the base signal is connected to a slot. |
| virtual bool | canAddChild (const SBDDataGraphNode * node, const SBDDataGraphNode * nextNode=nullptr) const Returns whether this node can add node as a child. |
| virtual bool | canAddChildType (SBDDataGraphNode::Type nodeType) const Returns whether this node can add a node with type nodeType as a child. |
| bool | canAddMaterial () const Returns whether can add a material to the node based on its type. |
| virtual bool | canHaveDescendantType (SBDDataGraphNode::Type nodeType) const Returns whether this node can have a node with type nodeType as a descendant. |
| virtual SBDDataGraphNode * | clone () Returns a copy of the node and its descendants. |
| void | connectBaseSignalToSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBBaseEvent *) functionPointer, SBCReferenceTarget * nextReferenceTarget=0, void(SBCReferenceTarget::*)(SBBaseEvent *) nextFunctionPointer=0) Connects the base signal to a slot. |
| unsigned int | countNodes (SBDDataGraphNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Counts nodes based on a nodeType , a selection status and avisitPredicate , with or without dependencies. |
| unsigned int | countNodes (const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Counts nodes based on a selectionPredicate and avisitPredicate , with or without dependencies. |
| void | create () Creates the node. |
| bool | descendsFrom (const SBDDataGraphNode * node) const Returns true if and only if this node isnode , or descends from it. |
| bool | descendsFrom (const SBNodeIndexer & nodeIndexer) const Returns true if and only if this node is one of the nodes of thenodeIndexer , or descends from one of them. |
| bool | descendsFrom (SBPointerIndexer< SBDDataGraphNode > * nodePointerIndexer) const Returns true if and only if this node is one of the nodes of thenodePointerIndexer , or descends from one of them. |
| void | disconnectBaseSignalFromSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBBaseEvent *) functionPointer) Disconnects the base signal from a slot. |
| virtual void | display (RenderingPass renderingPass) Displays the node. |
| virtual void | display () Displays the node (deprecated) |
| virtual void | displayForSelection () Displays the node for selection purposes (deprecated) |
| virtual void | displayForShadow () Displays the node for shadowing purposes (deprecated) |
| void | erase () Erases the node. |
| virtual void | forEachNodeDepthFirst (void(*)(SBDDataGraphNode *node) action) Performs the action on this node. |
| virtual void | forEachNodeDepthFirst (SBCClass * object, void(SBCClass::*)(SBDDataGraphNode *node) action) Performs the objects 'saction on this node. |
| unsigned int | getDefaultOpacity () const Returns the default opacity. |
| unsigned int | getDefaultTransparency () const Returns the default transparency. |
| SBDDocument * | getDocument () const Returns the document the node belongs to. |
| virtual unsigned int | getFlags () const Returns the flags. |
| virtual std::string | getHierarchyString (const std::string & separator=" / ", bool includeNodeType=false) const Returns a string with hierarchical information on the node and its parents names. |
| bool | getHighlightingFlag () const Returns the highlighting flag. |
| virtual unsigned int | getInheritedFlags () const Returns the inherited flags. |
| float | getInheritedOpacity () const Returns the cumulative opacity, when taking into account the ascendants. |
| float | getInheritedTransparency () const Returns the cumulative transparency, when taking into account the ascendants. |
| virtual bool | getLockedFlag () const Returns the locked flag. |
| SBDDataGraphNodeMaterial * | getMaterial () const Returns the material. |
| SBDDataGraphNode * | getMaterialOwner () const Returns the node whose material is inherited. |
| unsigned int | getMaximumOpacity () const Returns the maximum opacity. |
| unsigned int | getMaximumTransparency () const Returns the maximum transparency. |
| unsigned int | getMinimumOpacity () const Returns the minimum opacity. |
| unsigned int | getMinimumTransparency () const Returns the minimum transparency. |
| virtual SBQuantity::mass | getMolecularWeight () Returns the molecular weight. |
| virtual std::string const & | getName () const Returns the name of the node. |
| SBDDataGraphNode * | getNextNode () const Returns the pointer to the next node in the children of the node's parent. |
| SBDDataGraphNode * | getNextNode (SBDDataGraphNode::Type nodeType) const Returns the pointer to the next node with type nodeType in the children of the node's parent. |
| unsigned int | getNodeIndex () const Returns the node index (unique in the whole data graph, but non-persistent) |
| SBUUID | getNodeUUID () const Returns the node UUID. |
| virtual void | getNodes (SBNodeIndexer & nodeIndexer, SBDDataGraphNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Collects nodes into nodeIndexer , based on anodeType , a selection status and avisitPredicate , with or without dependencies. |
| virtual void | getNodes (SBNodeIndexer & nodeIndexer, const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Collects nodes into nodeIndexer , based on aselectionPredicate and avisitPredicate , with or without dependencies. |
| virtual unsigned int | getNumberOfAtoms () Returns the number of atoms. |
| virtual unsigned int | getNumberOfCarbons () Returns the number of carbons. |
| virtual unsigned int | getNumberOfChains () Returns the number of chains. |
| virtual unsigned int | getNumberOfCoarseGrainedAtoms () Returns the number of coarse-grained atoms. |
| virtual unsigned int | getNumberOfHydrogens () Returns the number of hydrogens. |
| virtual unsigned int | getNumberOfMolecules () Returns the number of molecules. |
| virtual unsigned int | getNumberOfNitrogens () Returns the number of nitrogens. |
| virtual unsigned int | getNumberOfOtherAtoms () Returns the number of other atoms. |
| virtual unsigned int | getNumberOfOxygens () Returns the number of oxygens. |
| virtual unsigned int | getNumberOfResidues () Returns the number of residues. |
| virtual unsigned int | getNumberOfSegments () Returns the number of segments. |
| virtual unsigned int | getNumberOfStructuralGroups () Returns the number of structural groups. |
| virtual unsigned int | getNumberOfStructuralModels () Returns the number of structural models. |
| virtual unsigned int | getNumberOfSulfurs () Returns the number of sulfurs. |
| virtual unsigned int | getOpacity () const Returns the opacity. |
| unsigned int | getOpacitySingleStep () const Returns the opacity single step. |
| std::string | getOpacitySuffix () const Returns the opacity suffix. |
| SBDDataGraphNode * | getParent () const Returns the parent of the node. |
| SBDDataGraphNode * | getPreviousNode () const Returns the pointer to the previous node in the children of the node's parent. |
| SBDDataGraphNode * | getPreviousNode (SBDDataGraphNode::Type nodeType) const Returns the pointer to the previous node with type nodeType in the children of the node's parent. |
| SBDDataGraphNode * | getRoot () const Returns the root of the hierarchy the node belongs to. |
| bool | getSelected () const Returns whether the node is selected. |
| bool | getSelectionFlag () const Returns the selection flag. |
| virtual int | getSumOfFormalCharges () Returns the sum of formal charges. |
| virtual float | getSumOfPartialCharges () Returns the sum of partial charges. |
| SBDDataGraphNode * | getThisNode () const Returns the pointer to this node. |
| virtual unsigned int | getTransparency () const Returns the transparency. |
| unsigned int | getTransparencySingleStep () const Returns the transparency single step. |
| std::string | getTransparencySuffix () const Returns the transparency suffix. |
| virtual Type | getType () const Returns the type of the data graph node. |
| std::string | getTypeString (bool humanReadable=false) const Returns a string describing the type of the data graph node. |
| bool | getVisibilityFlag () const Returns the visibility flag. |
| bool | getVisible () const Returns whether the node is visible. |
| bool | hasMaterial () const Returns whether the node has a material (by itself, or inherited) |
| virtual bool | hasNode (SBDDataGraphNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Returns whether the node has nodes based on a nodeType , a selection status and avisitPredicate , with or without dependencies. |
| virtual bool | hasNode (const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Returns whether the node has nodes based on a selectionPredicate and avisitPredicate , with or without dependencies. |
| bool | hasOneOf (const SBNodeIndexer & nodeIndexer) const Returns true if and only if this node is one of the nodes of thenodeIndexer , or is the ancestor of one of them, or is a group that stores one of them. |
| bool | hasOpacityRange () const Returns whether the node has the opacity range. |
| bool | hasTransparencyRange () const Returns whether the node has the transparency range. |
| bool | isAtom () const Returns true when the node is an atom. |
| bool | isBallAndStick () const Returns true when the node is the default ball-and-stick visual model. |
| bool | isBond () const Returns true when the node is a bond. |
| bool | isCartoon () const Returns true when the node is the default cartoon visual model. |
| bool | isCreated () const Returns true if and only if the node is created. |
| bool | isDynamicalModel () const Returns true when the node is a dynamical model. |
| bool | isErased () const Returns true if and only if the node is erased. |
| bool | isGaussianSurface () const Returns true when the node is the default Gaussian surface visual model. |
| bool | isHighlighted () const Returns whether the node is highlighted. |
| bool | isIn (const SBDDataGraphNode * node) const Returns true if and only if this node isnode , or descends from it, or belongs to a group stored innode . |
| bool | isIn (const SBNodeIndexer & nodeIndexer) const Returns true if and only if this node is one of the nodes of thenodeIndexer , or descends from one of them, or belongs to a group stored in one of the nodes of thenodeIndexer . |
| bool | isIn (SBPointerIndexer< SBDDataGraphNode > * nodePointerIndexer) const Returns true if and only if this node is one of the nodes of thenodePointerIndexer , or descends from one of them, or belongs to a group stored in of the nodes of thenodePointerIndexer . |
| bool | isInteractionModel () const Returns true when the node is a interaction model. |
| bool | isLicorice () const Returns true when the node is the default licorice visual model. |
| bool | isLight () const Returns true when the node is a light. |
| virtual bool | isLocked () const Returns whether the node is locked. |
| bool | isMesh () const Returns true when the node is a mesh. |
| bool | isModel () const Returns true when the node is a model. |
| bool | isOneOf (const SBNodeIndexer & nodeIndexer) const Returns true if and only if this node is one of the nodes of thenodeIndexer . |
| bool | isOneOf (SBPointerIndexer< SBDDataGraphNode > * nodePointerIndexer) const Returns true if and only if this node is one of the nodes of thenodePointerIndexer . |
| bool | isPropertyModel () const Returns true when the node is a property model. |
| bool | isRibbon () const Returns true when the node is the default ribbon visual model. |
| bool | isSelected () const Returns whether the node is selected. |
| virtual bool | isSerializable () const Returns true when the class is serializable. |
| bool | isSimulator () const Returns true when the node is a simulator. |
| bool | isSolventAccessibleSurface () const Returns true when the node is the default solvent accessible surface visual model. |
| bool | isSolventExcludedSurface () const Returns true when the node is the default solvent excluded surface visual model. |
| bool | isStructuralModel () const Returns true when the node is a structural model. |
| bool | isStructuralNode () const Returns true when the node is a structural node. |
| bool | isTube () const Returns true when the node is the default tube visual model. |
| bool | isType (Type type) const Returns true when the type of the node corresponds totype . |
| bool | isVanDerWaals () const Returns true when the node is the default van der Waals visual model. |
| bool | isVisible () const Returns whether the node is visible. |
| bool | isVisualModel () const Returns true when the node is a visual model. |
| bool | ownsMaterial () const Returns whether the node owns a material. |
| virtual void | print (unsigned int offset=0) const Prints some debugging information. |
| virtual bool | removeChild (SBDDataGraphNode * node) Removes a child from the node. |
| bool | removeMaterial () Removes the material. |
| void | removeMaterialsFromDescendants () Removes materials from all nodes that descend from this node, but it does not remove the material from the node itself. |
| virtual void | serialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) const Serializes the node. |
| void | setHighlightingFlag (bool flag) Sets the highlighting flag. |
| virtual void | setLockedFlag (bool flag) Sets the locked flag. |
| virtual void | setName (const std::string & name) Sets the name of the node. |
| virtual void | setOpacity (unsigned int opacity) Sets the opacity. |
| void | setSelectionFlag (bool flag) Sets the selection flag. |
| virtual void | setTransparency (unsigned int transparency) Sets the transparency. |
| void | setVisibilityFlag (bool flag) Sets the visibility flag. |
| virtual void | unserialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) Unserializes the node. |
Public Functions inherited from SBCReferenceTarget#
| Type | Name |
|---|---|
| SBCReferenceTarget () Builds the reference target. |
|
| unsigned int | getMemoryFootprint () const Returns the memory footprint. |
| void | printReferencesToOwners () const Prints the references to the owners of this reference target. |
| virtual | ~SBCReferenceTarget () Destructor. |
Public Static Functions inherited from SBDDataGraphNode#
See SBDDataGraphNode
| Type | Name |
|---|---|
| bool | canAddMaterial (SBDDataGraphNode::Type nodeType) Returns whether can add a material to a node of type nodeType . |
| void | clone (const SBNodeIndexer & sourceNodeIndexer, SBNodeIndexer & destinationNodeIndexer) Clones the nodes in sourceNodeIndexer (treated as a whole) and places the clones indestinationNodeIndexer . |
| void | forEachNodeInSelection (SBNodeIndexer & nodeIndexer, void(*)(SBDDataGraphNode *node) action) Performs the action for each node innodeIndexer __ |
| void | forEachNodeInSelection (SBNodeIndexer & nodeIndexer, SBCClass * object, void(SBCClass::*)(SBDDataGraphNode *node) action) Performs the objects 'saction for each node innodeIndexer __ |
| SBDDataGraphNode * | getNode (unsigned int nodeIndex) Returns the unique node corresponding to the node index nodeIndex . |
| std::string | getTypeString (Type type, bool humanReadable=false) Returns a string describing the type of the data graph node. |
Protected Attributes inherited from SBCReferenceTarget#
| Type | Name |
|---|---|
| SBCReferenceTargetData * | dataPointer A pointer to the private data. |
Protected Functions inherited from SBMDynamicalModel#
| Type | Name |
|---|---|
| SBMDynamicalModel () Builds a dynamical model. |
|
| SBMDynamicalModel (SBMDynamicalModelData * dataPointer) Builds a dynamical model. |
|
| virtual | ~SBMDynamicalModel () Deletes the dynamical model. |
Protected Functions inherited from SBMModel#
See SBMModel
| Type | Name |
|---|---|
| SBMModel () Builds a model. |
|
| SBMModel (SBMModelData * dataPointer) Builds a model. |
Protected Functions inherited from SBDDataGraphNode#
See SBDDataGraphNode
| Type | Name |
|---|---|
| SBDDataGraphNode () Builds a data graph node. |
|
| SBDDataGraphNode (SBDDataGraphNodeData * dataPointer) Builds a data graph node. |
|
| virtual | ~SBDDataGraphNode () Destroys the node. |
Protected Functions inherited from SBCReferenceTarget#
| Type | Name |
|---|---|
| SBCReferenceTarget (SBCReferenceTargetData * dataPointer) Protected constructor. |
|
| void | removeAllReferenceOwners () Stops all the reference owners from referencing this reference target. |
Detailed Description#
The class SBMDynamicalModelParticleSystem describes a particle system in SAMSON, i.e.
a dynamical system composed of particles. A particle system has two buffers - a position buffer and a momentum buffer - which may be used to write adaptive simulation algorithms.
Short name: SBParticleSystem
See also: SBCContainerBuffer
Public Functions Documentation#
function SBMDynamicalModelParticleSystem [1/2]#
Builds an empty particle system.
Constructs an empty particle system.
The default constructor builds an empty particle system.
See also: addAtom
function SBMDynamicalModelParticleSystem [2/2]#
Builds a particle system associated to a set of nodes.
SBMDynamicalModelParticleSystem::SBMDynamicalModelParticleSystem (
const SBNodeIndexer & nodeIndexer
)
Constructs a particle system associated to a set of nodes.
Builds a particle system using the given node indexer.
Parameters:
nodeIndexerThe node indexer specifying the nodes to associate with the particle system.
function addAtom#
Adds an atom to the particle system.
Adds the given atom to the particle system and returns its index.
Parameters:
atomThe atom to add.
Returns:
The index of the added atom, or 0 if the atom is null or the system is not initialized.
function addAtoms#
Adds atoms of a node indexer.
Adds multiple atoms to the particle system.
Adds atoms from the given node indexer to the particle system.
Parameters:
nodeIndexerThe node indexer containing atoms to add.
function correctDistanceWithPBC#
Adjusts a distance vector to account for periodic boundary conditions.
Parameters:
distanceDistance vector to be corrected in-place.
function enforcePeriodicBoundaryConditions#
Enforces the periodic boundary conditions.
Enforces periodic boundary conditions on all particle positions.
The function adjusts positions that lie outside the periodic box and updates the structural buffers.
Returns:
true if any particle position was modified, false otherwise.
Implements SBMDynamicalModel::enforcePeriodicBoundaryConditions
function flushMomentumBuffer#
Flushes the momentum buffer.
Flushes the momentum buffer, emitting signals before and after the operation.
function flushPositionBuffer#
Flushes the position buffer.
Flushes the position buffer, emitting events before and after the flush.
This updates any listeners about the pending position changes.
Implements SBMDynamicalModel::flushPositionBuffer
function getActivityFlag [1/2]#
Returns the activity flag of an atom.
Returns the activity flag of the specified atom.
Retrieves the activity flag for the given atom, if it exists.
Parameters:
atomThe atom whose activity flag is queried.
Returns:
The activity flag of the atom, or false if the atom is not found or the system is not initialized.
function getActivityFlag [2/2]#
Returns the activity flag of an atom.
Returns the activity flag of the atom at the given index.
Retrieves the activity flag for the atom at the specified index.
Parameters:
indexThe index of the atom.
Returns:
The activity flag of the atom, or false if the index is out of range or the system is not initialized.
function getAtomIndexer#
Returns the atoms associated to the particle system.
Returns a constant pointer to the atom indexer.
Returns:
Pointer to the atom indexer, or nullptr if unavailable.
function getChangedMomentumIndex#
Returns the index of an changed momentum.
virtual unsigned int SBMDynamicalModelParticleSystem::getChangedMomentumIndex (
unsigned int i
) const
Returns the index of the i-th changed momentum.
This may be used by adaptive simulation algorithms, ir order to know which momenta have been changed at a given time step.
Assume for example that particle 17, 32, and 529 have had their momentum changed since the last flush of the momentum buffer. Then the following code:
unsigned int nChangedMomenta=particleSystem->getNumberOfChangedMomentums();
for (unsigned int i=0;i<nChangedMomenta;i++) {
// changedMomentumIndex is the index of the i-th changed momentum
unsigned int changedMomentumIndex=particleSystem->getChangedMomentumIndex(i);
std::cout << changedMomentumIndex << std::endl;
}
Parameters:
iThe index of the changed momentum.
Returns:
Index of the i-th changed momentum.
See also: getMomentum, getChangedMomentumIndex, flushMomentumBuffer
function getChangedPositionIndex#
Returns the index of an changed position.
virtual unsigned int SBMDynamicalModelParticleSystem::getChangedPositionIndex (
unsigned int i
) override const
Returns the index of the i-th changed particle position.
Parameters:
iIndex in the list of changed positions (0-based).
Returns:
Index of the particle whose position changed.
Implements SBMDynamicalModel::getChangedPositionIndex
function getDynamicalModelType#
Returns the dynamical model type (returns SBDDataGraphNode::DynamicalModelParticleSystem )
virtual SBDDataGraphNode::Type SBMDynamicalModelParticleSystem::getDynamicalModelType () override const
Returns the dynamical model type of the node.
Returns SBDDataGraphNode::DynamicalModelParticleSystem.
Returns:
The dynamical model type.
Implements SBMDynamicalModel::getDynamicalModelType
function getInverseMass [1/2]#
Returns the inverse mass of an atom.
Returns the inverse mass of the specified atom.
Retrieves the inverse mass for the given atom, if it exists.
Parameters:
atomThe atom whose inverse mass is queried.
Returns:
The inverse mass of the atom, or zero if the atom is not found or the system is not initialized.
function getInverseMass [2/2]#
Returns the inverse mass of an atom.
SBQuantity::inverseMass SBMDynamicalModelParticleSystem::getInverseMass (
unsigned int atomIndex
) const
Returns the inverse mass of the atom at the given index.
Retrieves the inverse mass for the atom at the specified index.
Parameters:
indexThe index of the atom.
Returns:
The inverse mass of the atom, or zero if the index is out of range or the system is not initialized.
function getMass [1/2]#
Returns the mass of an atom.
Returns the mass of the specified atom.
Retrieves the mass for the given atom, if it exists.
Parameters:
atomThe atom whose mass is queried.
Returns:
The mass of the atom, or zero mass if the atom is not found or the system is not initialized.
function getMass [2/2]#
Returns the mass of an atom.
Returns the mass of the atom at the given index.
Retrieves the mass for the atom at the specified index.
Parameters:
indexThe index of the atom.
Returns:
The mass of the atom, or zero mass if the index is out of range or the system is not initialized.
function getMomentum#
Returns the momentum of an atom.
Returns the momentum of a particle.
Parameters:
iThe index of the particle.
Returns:
Const reference to the momentum of the particle.
function getNumberOfChangedMomentums#
Returns the number of changed momentums.
Returns the number of changed momenta since the last flush of the momentum buffer.
Returns:
Number of changed momenta.
See also: getMomentum, getChangedMomentumIndex, flushMomentumBuffer
function getNumberOfChangedPositions#
Returns the number of changed positions.
Returns the number of particle positions that have changed since the last buffer flush.
Returns:
Number of changed positions.
Implements SBMDynamicalModel::getNumberOfChangedPositions
function getPosition#
Returns the position of an atom.
Returns the position of the specified particle.
Parameters:
iIndex of the particle.
Returns:
Const reference to the particle's position.
function getPositionChanged#
Returns whether position i has been changed since the last flush.
Checks whether the position of the specified particle has changed since the last buffer flush.
Parameters:
iIndex of the particle.
Returns:
true if the particle's position has changed, false otherwise.
Implements SBMDynamicalModel::getPositionChanged
function getType#
Returns the type of the data graph node (returns SBDDataGraphNode::DynamicalModelParticleSystem )
Returns the type of the data graph node.
Returns SBDDataGraphNode::DynamicalModelParticleSystem.
Returns:
The data graph node type.
Implements SBMDynamicalModel::getType
function print#
Prints debugging information.
Prints debugging information for the particle system.
Parameters:
offsetNumber of indentation levels (tabs) to apply before each printed line.
Implements SBMDynamicalModel::print
function removeAtom [1/2]#
Removes an atom from the particle system.
Removes the given atom from the particle system if it exists.
Parameters:
atomThe atom to remove.
function removeAtom [2/2]#
Removes an atom from the particle system.
Removes an atom from the particle system by index.
Removes the atom at the given index from the particle system if the index is valid.
Parameters:
indexThe index of the atom to remove.
function removeAtoms#
Removes atoms of a node indexer.
Removes multiple atoms from the particle system.
Removes atoms specified by the given node indexer from the particle system.
Parameters:
nodeIndexerThe node indexer containing atoms to remove.
function roundForPBC#
Computes the integer rounding of a length value for periodic boundary correction.
Parameters:
dLength value to be rounded.
Returns:
Rounded integer value.
function setActivityFlag [1/2]#
Sets the activity flag of an atom.
Sets the activity flag of the specified atom.
Updates the activity flag for the given atom, if the atom exists. Generates an activity flag changed event.
Parameters:
atomThe atom whose activity flag is to be set.flagThe new activity flag value.
function setActivityFlag [2/2]#
Sets the activity flag of an atom.
Sets the activity flag of the atom at the given index.
Updates the activity flag for the atom at the specified index, if the index is valid. Generates an activity flag changed event.
Parameters:
indexThe index of the atom.flagThe new activity flag value.
function setMass [1/2]#
Sets the mass of an atom.
Sets the mass of the specified atom.
Updates the mass (and corresponding inverse mass) for the given atom, if the atom exists. Generates a mass changed event.
Parameters:
atomThe atom whose mass is to be set.massThe new mass value.
function setMass [2/2]#
Sets the mass of an atom.
Sets the mass of the atom at the given index.
Parameters:
indexThe index of the atom.massThe new mass value.
function setMomentum#
Updates the momentum of an atom.
virtual void SBMDynamicalModelParticleSystem::setMomentum (
unsigned int i,
const SBMomentum3 & newMomentum
)
Updates the momentum of the atom at the given index.
Parameters:
iIndex of the atom whose momentum is to be updated.newMomentumNew momentum value to assign to the atom.
function setPosition#
Updates the position of an atom.
virtual void SBMDynamicalModelParticleSystem::setPosition (
unsigned int i,
const SBPosition3 & newPosition
)
Sets the position of the specified particle.
The function applies periodic boundary conditions if they are enabled and updates the structural position buffer.
Parameters:
iIndex of the particle.newPositionDesired new position of the particle.
function updateStructuralNodes#
Updates the structural nodes based on the state of the particle system.
Updates the structural nodes based on the current particle positions.
This function propagates position changes from the particle system to the associated structural nodes.
Implements SBMDynamicalModel::updateStructuralNodes
function ~SBMDynamicalModelParticleSystem#
Deletes the particle system.
Destroys the particle system.
Deletes the model.