Page Menu
Home
c4science
Search
Configure Global Search
Log In
Files
F78552064
fix_neb.h
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Wed, Aug 21, 14:08
Size
2 KB
Mime Type
text/x-c
Expires
Fri, Aug 23, 14:08 (2 d)
Engine
blob
Format
Raw Data
Handle
20063530
Attached To
rLAMMPS lammps
fix_neb.h
View Options
/* -*- c++ -*- ----------------------------------------------------------
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
http://lammps.sandia.gov, Sandia National Laboratories
Steve Plimpton, sjplimp@sandia.gov
Copyright (2003) Sandia Corporation. Under the terms of Contract
DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains
certain rights in this software. This software is distributed under
the GNU General Public License.
See the README file in the top-level LAMMPS directory.
------------------------------------------------------------------------- */
#ifdef FIX_CLASS
FixStyle(neb,FixNEB)
#else
#ifndef LMP_FIX_NEB_H
#define LMP_FIX_NEB_H
#include "fix.h"
namespace LAMMPS_NS {
class FixNEB : public Fix {
public:
double veng,plen,nlen,dotpath,dottangrad,gradlen,dotgrad;
int rclimber;
FixNEB(class LAMMPS *, int, char **);
~FixNEB();
int setmask();
void init();
void min_setup(int);
void min_post_force(int);
private:
int me,nprocs,nprocs_universe;
double kspring,kspringIni,kspringFinal,kspringPerp,EIniIni,EFinalIni;
bool StandardNEB,NEBLongRange,PerpSpring,FreeEndIni,FreeEndFinal;
bool FreeEndFinalWithRespToEIni,FinalAndInterWithRespToEIni;
int ireplica,nreplica;
int procnext,procprev;
int cmode;
MPI_Comm uworld;
MPI_Comm rootworld;
char *id_pe;
class Compute *pe;
int nebatoms;
int ntotal; // total # of atoms, NEB or not
int maxlocal; // size of xprev,xnext,tangent arrays
double *nlenall;
double **xprev,**xnext,**fnext,**springF;
double **tangent;
double **xsend,**xrecv; // coords to send/recv to/from other replica
double **fsend,**frecv; // coords to send/recv to/from other replica
tagint *tagsend,*tagrecv; // ditto for atom IDs
// info gathered from all procs in my replica
double **xsendall,**xrecvall; // coords to send/recv to/from other replica
double **fsendall,**frecvall; // force to send/recv to/from other replica
tagint *tagsendall,*tagrecvall; // ditto for atom IDs
int *counts,*displacements; // used for MPI_Gather
void inter_replica_comm();
void reallocate();
};
}
#endif
#endif
/* ERROR/WARNING messages:
E: Illegal ... command
Self-explanatory. Check the input script syntax and compare to the
documentation for the command. You can use -echo screen as a
command-line option when running LAMMPS to see the offending line.
E: Potential energy ID for fix neb does not exist
Self-explanatory.
E: Atom count changed in fix neb
This is not allowed in a NEB calculation.
*/
Event Timeline
Log In to Comment