67 lines
1.4 KiB
C
67 lines
1.4 KiB
C
/*
|
|
* Copyright (C) 2022 NHR@FAU, University Erlangen-Nuremberg.
|
|
* All rights reserved. This file is part of MD-Bench.
|
|
* Use of this source code is governed by a LGPL-3.0
|
|
* license that can be found in the LICENSE file.
|
|
*/
|
|
#ifndef __PARAMETER_H_
|
|
#define __PARAMETER_H_
|
|
|
|
#if PRECISION == 1
|
|
# define MD_FLOAT float
|
|
# define MD_UINT unsigned int
|
|
#else
|
|
# define MD_FLOAT double
|
|
# define MD_UINT unsigned long long int
|
|
#endif
|
|
|
|
typedef struct {
|
|
int force_field;
|
|
char* param_file;
|
|
char* input_file;
|
|
char* vtk_file;
|
|
char* xtc_file;
|
|
char* write_atom_file;
|
|
MD_FLOAT epsilon;
|
|
MD_FLOAT sigma;
|
|
MD_FLOAT sigma6;
|
|
MD_FLOAT temp;
|
|
MD_FLOAT rho;
|
|
MD_FLOAT mass;
|
|
int ntypes;
|
|
int ntimes;
|
|
int nstat;
|
|
int reneigh_every;
|
|
int prune_every;
|
|
int x_out_every;
|
|
int v_out_every;
|
|
int half_neigh;
|
|
MD_FLOAT dt;
|
|
MD_FLOAT dtforce;
|
|
MD_FLOAT skin;
|
|
MD_FLOAT cutforce;
|
|
MD_FLOAT cutneigh;
|
|
int nx, ny, nz;
|
|
int pbc_x, pbc_y, pbc_z;
|
|
MD_FLOAT lattice;
|
|
MD_FLOAT xlo, xhi, ylo, yhi, zlo, zhi;
|
|
MD_FLOAT xprd, yprd, zprd;
|
|
double proc_freq;
|
|
char* eam_file;
|
|
// DEM
|
|
MD_FLOAT k_s;
|
|
MD_FLOAT k_dn;
|
|
MD_FLOAT gx, gy, gz;
|
|
MD_FLOAT reflect_x, reflect_y, reflect_z;
|
|
//MPI implementation
|
|
int balance;
|
|
int method;
|
|
int balance_every;
|
|
} Parameter;
|
|
|
|
void initParameter(Parameter*);
|
|
void readParameter(Parameter*, const char*);
|
|
void printParameter(Parameter*);
|
|
|
|
#endif
|