#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 50 of file Output.C. References NAMD_bug(), and NAMD_err(). 00050 {
00051 while ( count ) {
00052 #if defined(WIN32) && !defined(__CYGWIN__)
00053 long retval = _write(fd,buf,count);
00054 #else
00055 ssize_t retval = write(fd,buf,count);
00056 #endif
00057 if ( retval < 0 && errno == EINTR ) retval = 0;
00058 if ( retval < 0 ) NAMD_err(errmsg);
00059 if ( retval > count ) NAMD_bug("extra bytes written in NAMD_write64()");
00060 buf += retval;
00061 count -= retval;
00062 }
00063 }
|
|
||||||||||||||||
|
Definition at line 189 of file Output.C. References wrap_coor_int(). Referenced by Output::coordinate(). 00189 {
00190 wrap_coor_int(coor,lattice,done);
00191 };
|
|
||||||||||||||||
|
Definition at line 185 of file Output.C. References wrap_coor_int(). 00185 {
00186 wrap_coor_int(coor,lattice,done);
00187 };
|
|
||||||||||||||||||||
|
Definition at line 153 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(). 00153 {
00154 SimParameters *simParams = Node::Object()->simParameters;
00155 if ( *done ) return;
00156 *done = 1;
00157 if ( ! ( simParams->wrapAll || simParams->wrapWater ) ) return;
00158 const int wrapNearest = simParams->wrapNearest;
00159 const int wrapAll = simParams->wrapAll;
00160 Molecule *molecule = Node::Object()->molecule;
00161 int n = molecule->numAtoms;
00162 int i;
00163 #ifndef MEM_OPT_VERSION
00164 Position *con = new Position[n];
00165 for ( i = 0; i < n; ++i ) {
00166 con[i] = 0;
00167 int ci = molecule->get_cluster(i);
00168 con[ci] += coor[i];
00169 }
00170 for ( i = 0; i < n; ++i ) {
00171 if ( ! wrapAll && ! molecule->is_water(i) ) continue;
00172 int ci = molecule->get_cluster(i);
00173 if ( ci == i ) {
00174 Vector coni = con[i] / molecule->get_clusterSize(i);
00175 Vector trans = ( wrapNearest ?
00176 lattice.wrap_nearest_delta(coni) : lattice.wrap_delta(coni) );
00177 con[i] = trans;
00178 }
00179 coor[i] = coor[i] + con[ci];
00180 }
00181 delete [] con;
00182 #endif
00183 }
|
1.3.9.1