Logo Search packages:      
Sourcecode: adun.app version File versions  Download package

AdInteractionSystem Class Reference
[Interfaces]

#import <AdunInteractionSystem.h>

Inheritance diagram for AdInteractionSystem:

AdObject < AdDataSourceDelegation > < AdNonbondedTopologyDataSource > < AdCreation > < AdEnvironmentObservation >

List of all members.


Detailed Description

AdInteractionSystem represents the interactions (i.e. the topology) between two AdSystems. Unlike an AdSystem it doesnt "contain" any system elements e.g. atoms, as these are already part of its constituent AdSystems. Hence the return value for coordinates and accelerations is simply the combination of the coordinates & accelerations of its consituents.

An AdInteractionSystem can have two states "Active" or "Inactive" - it cannot be passive. In addition if either of its the two consituent AdSystems is "Inactive" then it should also be "Inactive". This change is automatically handled by the AdSystemNode that manages all the subsystems. Also an AdInteractionSystem cannot be made "Active" if either of the AdSystems is "Inactive". You must change the AdSystems' states first.

You should not normally create AdInteractionSystem's yourself. AdSystemNode will create and provide access to them where necessary.

Note:
The coordinates and accelerations matrices returned by an AdInteractionSystem are directly related to the coordinates and acceleration matrices of its constituents i.e. modifying them will modify the originals. Hence great care must be taken when using these matrices. In general the coordinates matrix should never be modified. AdForceField objects directly add forces to the acceleration matrix which means that the the AdSystems acceleration matrices contain the cumulative force on each atom from all interactions after AdForceFieldManager:calculateAccelerations is called.
Todo:
Move matrix combining code to Base
Todo:
Implement handling of bonded interactions between two systems
Todo:
Implement proper handling of nonbonded interaction types.
Todo:
Implement initWithCoder: (Currently assumes the types of nonbonded interactions to be CoulombElectrostatic and TypeOneVDWInteraction)

Definition at line 24 of file AdunInteractionSystem.m.


Public Member Functions

(void) - _cleanUp [implementation]
(AdMatrix *) - _combineMatrix:withMatrix: [implementation]
(InterTable *) - _combineTable:withTable: [implementation]
(void) - _createCombinedSystem [implementation]
(void) - _createSubsystemsInteractions [implementation]
(void) - _useEnvironmentDefaults [implementation]
(NSValue *) - accelerations
(NSDictionary *) - bondedInteractions
(id) - bondedTopology
(NSValue *) - coordinates [implementation]
(id) - dataSource [implementation]
(void) - dealloc [implementation]
(void) - deregisterWithEnvironment [implementation]
(id) - dynamics
(void) - encodeWithCoder: [implementation]
(void) - frameUpdate [implementation]
(void) - handleDataSourceContentsChange: [implementation]
(id) - init [implementation]
(id) - initWithCoder: [implementation]
(id) - initWithEnvironment: [implementation]
(id) - initWithEnvironment:observe: [implementation]
(NSValue *) - longRangeNonbondedInteractions
(id) - longRangeNonbondedTopology
(NSDictionary *) - nonbondedInteractionTypes
(NSValue *) - objectValueForCoordinates: [implementation]
(NSArray *) - objectValueForNonbondedInteractions: [implementation]
(NSDictionary *) - objectValueForNonbondedInteractionTypes: [implementation]
(BOOL) - observesEnvironment [implementation]
(void) - registerWithEnvironment [implementation]
(void) - reloadData [implementation]
(void) - setCurrentForceFieldState: [implementation]
(void) - setDataSource: [implementation]
(void) - setEnvironment: [implementation]
(void) - setObservesEnvironment: [implementation]
(void) - setStatus:
(NSValue *) - shortRangeNonbondedInteractions
(id) - shortRangeNonbondedTopology
(id) - state
(NSString *) - status
(void) - synchroniseWithEnvironment [implementation]
(id) - systemKeywords
(NSString *) - systemName
(void) - update [implementation]
(void) - updateDependantsOfKey: [implementation]
(void) - updateForKey:value:object: [implementation]
(NSValue *) - velocities

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index