NAMD
IMDOutput.C
Go to the documentation of this file.
1 
7 #include "IMDOutput.h"
8 #include "GlobalMasterIMD.h"
9 
11  imd = NULL;
12  transrate = 1;
13  ignore = 0;
14 }
15 
23  if (ignore) {
24  if (imd) delete imd;
25  }
26 }
27 
29  imd = g;
30  ignore = g->IMDignore || g->IMDignoreForces;
31 }
32 
34  if ( !imd ) return;
35  imd->imd_connection();
36  imd->get_vmd_forces();
37 }
38 
40  if (!imd || energies->tstep % transrate) return;
41  imd->send_energies(energies);
42 }
43 
44 void IMDOutput::gather_coordinates(int timestep, int N, FloatVector *coords) {
45  if ( ignore ) {
46  imd->step = timestep;
47  imd->calculate();
48  }
49  if (!imd || timestep % transrate) return;
50  imd->send_fcoords(N, coords);
51 }
52 
53 void IMDOutput::gather_velocities(int timestep, int N, FloatVector *velocities) {
54  if ( ignore ) {
55  imd->step = timestep;
56  imd->calculate();
57  }
58  if (!imd || timestep % transrate) return;
59  imd->send_velocities(N, velocities);
60 }
61 
62 void IMDOutput::gather_forces(int timestep, int N, FloatVector *forces) {
63  if ( ignore ) {
64  imd->step = timestep;
65  imd->calculate();
66  }
67  if (!imd || timestep % transrate) return;
68  imd->send_forces(N, forces);
69 }
70 
71 void IMDOutput::gather_box(int timestep, IMDBox *box) {
72  if (!imd || timestep % transrate) return;
73  imd->send_box(box);
74 }
75 
77  if (!imd || time->tstep % transrate) return;
78  imd->send_time(time);
79 }
80 
81 
82 
void gather_velocities(int timestep, int N, FloatVector *velocities)
Definition: IMDOutput.C:53
void send_time(IMDTime *)
void gather_coordinates(int timestep, int N, FloatVector *coords)
Definition: IMDOutput.C:44
void gather_energies(IMDEnergies *energies)
Definition: IMDOutput.C:39
long int tstep
Definition: imd.h:52
void send_velocities(int, FloatVector *)
Definition: imd.h:55
void gather_time(IMDTime *time)
Definition: IMDOutput.C:76
~IMDOutput()
Definition: IMDOutput.C:16
void send_box(IMDBox *)
int32 tstep
Definition: imd.h:37
Definition: imd.h:49
void gather_box(int timestep, IMDBox *box)
Definition: IMDOutput.C:71
void send_energies(IMDEnergies *)
virtual void calculate()
void gather_forces(int timestep, int N, FloatVector *forces)
Definition: IMDOutput.C:62
void send_forces(int, FloatVector *)
static float * coords
Definition: ScriptTcl.C:67
void use_imd(GlobalMasterIMD *)
Definition: IMDOutput.C:28
void send_fcoords(int, FloatVector *)
void get_imd_packet()
Definition: IMDOutput.C:33
IMDOutput()
Definition: IMDOutput.C:10