From 33fab0ee6228d36d320163520348a16d8a4db20b Mon Sep 17 00:00:00 2001 From: sjplimp Date: Fri, 1 Feb 2013 00:40:29 +0000 Subject: [PATCH] git-svn-id: svn://svn.icms.temple.edu/lammps-ro/trunk@9373 f3b2605a-c512-4ea7-a41b-209d697bcdaa --- src/body.cpp | 36 ++++++++++++++++++++++++++++++++ src/body.h | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 94 insertions(+) create mode 100644 src/body.cpp create mode 100644 src/body.h diff --git a/src/body.cpp b/src/body.cpp new file mode 100644 index 0000000000..d7fe8c35ad --- /dev/null +++ b/src/body.cpp @@ -0,0 +1,36 @@ +/* ---------------------------------------------------------------------- + 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. +------------------------------------------------------------------------- */ + +#include "math.h" +#include "stdlib.h" +#include "string.h" +#include "body.h" +#include "error.h" + +using namespace LAMMPS_NS; + +/* ---------------------------------------------------------------------- */ + +Body::Body(LAMMPS *lmp, int narg, char **arg) : Pointers(lmp) +{ + int n = strlen(arg[0]) + 1; + style = new char[n]; + strcpy(style,arg[0]); +} + +/* ---------------------------------------------------------------------- */ + +Body::~Body() +{ + delete [] style; +} diff --git a/src/body.h b/src/body.h new file mode 100644 index 0000000000..644b3e1e91 --- /dev/null +++ b/src/body.h @@ -0,0 +1,58 @@ +/* ---------------------------------------------------------------------- + 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. +------------------------------------------------------------------------- */ + +#ifndef LMP_BODY_H +#define LMP_BODY_H + +#include "pointers.h" +#include "atom_vec_body.h" + +namespace LAMMPS_NS { + +class Body : protected Pointers { + public: + char *style; + int size_forward; // max extra values packed for comm + int size_border; // max extra values packed for border comm + AtomVecBody *avec; // ptr to class that stores body bonus info + + Body(class LAMMPS *, int, char **); + virtual ~Body(); + + // methods implemented by child classes + + virtual int pack_comm_body(class AtomVecBody::Bonus *, double *) {return 0;} + virtual int unpack_comm_body(class AtomVecBody::Bonus *, double *) {return 0;} + virtual int pack_border_body(class AtomVecBody::Bonus *, double *) {return 0;} + virtual int unpack_border_body(class AtomVecBody::Bonus *, + double *) {return 0;} + + virtual void data_body(int, int, int, char **, char **) = 0; + virtual int noutrow(int) = 0; + virtual int noutcol() = 0; + virtual void output(int, int, double *) = 0; +}; + +} + +#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. + +*/