narupa.app.imd_app module¶
Module providing an implementation of an Narupa iMD application, for publishing simulations and trajectories for consumption by clients that can be interacted with in real-time through biasing potentials.
-
class
narupa.app.imd_app.
NarupaImdApplication
(server: narupa.core.narupa_server.NarupaServer, discovery: Optional[narupa.essd.server.DiscoveryServer] = None, name: Optional[str] = None)¶ Bases:
narupa.app.frame_app.NarupaFrameApplication
Application-level class for implementing a Narupa iMD server, something that publishes
FrameData
that can be consumed, e.g. simulation trajectories, and can received interactive forces in real-time, allowing the simulation to be biased.>>> with NarupaImdApplication.basic_server() as app: # fire up interactive molecular dynamics ... with NarupaImdClient() as client: ... client.interactions # print any active interactions (in this case, none). {}
-
DEFAULT_SERVER_NAME
= 'Narupa iMD Server'¶
-
imd
¶ The iMD service attached to this application. Use it to access interactive forces sent by clients, so they can be applied to a simulation.
Returns: An ImdStateWrapper
for tracking interactions.
-