#include "largefiles.h"#include <string.h>#include <stdlib.h>#include "InfoStream.h"#include "IMDOutput.h"#include "Output.h"#include "dcdlib.h"#include "strlib.h"#include "Molecule.h"#include "Node.h"#include "Parameters.h"#include "PDB.h"#include "SimParameters.h"#include "Vector.h"#include "structures.h"#include "MStream.h"#include "Communicate.h"#include "PatchMap.h"#include "PatchMap.inl"#include "ScriptTcl.h"#include "Lattice.h"#include <fcntl.h>#include <sys/stat.h>Go to the source code of this file.
Defines | |
| #define | PATHSEPSTR "/" |
| #define | MKDIR(X) mkdir(X,0777) |
| #define | NAMD_write NAMD_write64 |
| #define | O_LARGEFILE 0x0 |
| #define | namdMyNode Node::Object() |
| #define | simParams simParameters |
| #define | pdbData pdb |
| #define | RAD2DEG 180.0/3.14159265359 |
Functions | |
| void | NAMD_write (int fd, const char *buf, size_t count, const char *errmsg="NAMD_write64") |
| template<class xVector, class xDone> | |
| void | wrap_coor_int (xVector *coor, Lattice &lattice, xDone *done) |
| void | wrap_coor (Vector *coor, Lattice &lattice, double *done) |
| void | wrap_coor (FloatVector *coor, Lattice &lattice, float *done) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000 by The Board of Trustees of the University of Illinois. All rights reserved. |
|
|
|
|
|
|
|
|
||||||||||||||||||||
|
Definition at line 51 of file Output.C. References NAMD_bug(), and NAMD_err(). 00051 {
00052 while ( count ) {
00053 #if defined(WIN32) && !defined(__CYGWIN__)
00054 long retval = _write(fd,buf,count);
00055 #else
00056 ssize_t retval = write(fd,buf,count);
00057 #endif
00058 if ( retval < 0 && errno == EINTR ) retval = 0;
00059 if ( retval < 0 ) NAMD_err(errmsg);
00060 if ( retval > count ) NAMD_bug("extra bytes written in NAMD_write64()");
00061 buf += retval;
00062 count -= retval;
00063 }
00064 }
|
|
||||||||||||||||
|
Definition at line 190 of file Output.C. References wrap_coor_int(). Referenced by Output::coordinate(). 00190 {
00191 wrap_coor_int(coor,lattice,done);
00192 };
|
|
||||||||||||||||
|
Definition at line 186 of file Output.C. References wrap_coor_int(). 00186 {
00187 wrap_coor_int(coor,lattice,done);
00188 };
|
|
||||||||||||||||||||
|
Definition at line 154 of file Output.C. References Molecule::get_cluster(), Molecule::get_clusterSize(), Molecule::is_water(), Node::molecule, Molecule::numAtoms, Node::Object(), Position, Node::simParameters, simParams, Lattice::wrap_delta(), Lattice::wrap_nearest_delta(), SimParameters::wrapAll, SimParameters::wrapNearest, and SimParameters::wrapWater. Referenced by wrap_coor(). 00154 {
00155 SimParameters *simParams = Node::Object()->simParameters;
00156 if ( *done ) return;
00157 *done = 1;
00158 if ( ! ( simParams->wrapAll || simParams->wrapWater ) ) return;
00159 const int wrapNearest = simParams->wrapNearest;
00160 const int wrapAll = simParams->wrapAll;
00161 Molecule *molecule = Node::Object()->molecule;
00162 int n = molecule->numAtoms;
00163 int i;
00164 #ifndef MEM_OPT_VERSION
00165 Position *con = new Position[n];
00166 for ( i = 0; i < n; ++i ) {
00167 con[i] = 0;
00168 int ci = molecule->get_cluster(i);
00169 con[ci] += coor[i];
00170 }
00171 for ( i = 0; i < n; ++i ) {
00172 if ( ! wrapAll && ! molecule->is_water(i) ) continue;
00173 int ci = molecule->get_cluster(i);
00174 if ( ci == i ) {
00175 Vector coni = con[i] / molecule->get_clusterSize(i);
00176 Vector trans = ( wrapNearest ?
00177 lattice.wrap_nearest_delta(coni) : lattice.wrap_delta(coni) );
00178 con[i] = trans;
00179 }
00180 coor[i] = coor[i] + con[ci];
00181 }
00182 delete [] con;
00183 #endif
00184 }
|
1.3.9.1