102 lines
3.0 KiB
C++
102 lines
3.0 KiB
C++
/* -*- 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.
|
|
------------------------------------------------------------------------- */
|
|
|
|
#ifndef TEST_CONFIG_H
|
|
#define TEST_CONFIG_H
|
|
|
|
#include <string>
|
|
#include <utility>
|
|
#include <vector>
|
|
|
|
struct coord_t {
|
|
double x,y,z;
|
|
};
|
|
|
|
struct stress_t {
|
|
double xx,yy,zz,xy,xz,yz;
|
|
};
|
|
|
|
class TestConfig {
|
|
public:
|
|
std::string lammps_version;
|
|
std::string date_generated;
|
|
std::string basename;
|
|
double epsilon;
|
|
std::vector<std::pair<std::string,std::string>> prerequisites;
|
|
std::vector<std::string> pre_commands;
|
|
std::vector<std::string> post_commands;
|
|
std::string input_file;
|
|
std::string pair_style;
|
|
std::string bond_style;
|
|
std::string angle_style;
|
|
std::string dihedral_style;
|
|
std::string improper_style;
|
|
std::string kspace_style;
|
|
std::vector<std::string> pair_coeff;
|
|
std::vector<std::string> bond_coeff;
|
|
std::vector<std::string> angle_coeff;
|
|
std::vector<std::string> dihedral_coeff;
|
|
std::vector<std::string> improper_coeff;
|
|
std::vector<std::pair<std::string,int>> extract;
|
|
int natoms;
|
|
double init_energy;
|
|
double run_energy;
|
|
double init_vdwl;
|
|
double run_vdwl;
|
|
double init_coul;
|
|
double run_coul;
|
|
stress_t init_stress;
|
|
stress_t run_stress;
|
|
std::vector<coord_t> init_forces;
|
|
std::vector<coord_t> run_forces;
|
|
|
|
TestConfig() : lammps_version(""),
|
|
date_generated(""),
|
|
basename(""),
|
|
epsilon(1.0e-14),
|
|
input_file(""),
|
|
pair_style("zero"),
|
|
bond_style("zero"),
|
|
angle_style("zero"),
|
|
dihedral_style("zero"),
|
|
improper_style("zero"),
|
|
kspace_style("none"),
|
|
natoms(0),
|
|
init_energy(0),
|
|
run_energy(0),
|
|
init_vdwl(0),
|
|
run_vdwl(0),
|
|
init_coul(0),
|
|
run_coul(0),
|
|
init_stress({0,0,0,0,0,0}),
|
|
run_stress({0,0,0,0,0,0}) {
|
|
prerequisites.clear();
|
|
pre_commands.clear();
|
|
post_commands.clear();
|
|
pair_coeff.clear();
|
|
bond_coeff.clear();
|
|
angle_coeff.clear();
|
|
dihedral_coeff.clear();
|
|
improper_coeff.clear();
|
|
extract.clear();
|
|
init_forces.clear();
|
|
run_forces.clear();
|
|
}
|
|
virtual ~TestConfig() {};
|
|
|
|
private:
|
|
TestConfig(const TestConfig &) {};
|
|
};
|
|
|
|
#endif
|