1 /* -*- c++ -*- ---------------------------------------------------------- 2 LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator 3 https://www.lammps.org/, Sandia National Laboratories 4 Steve Plimpton, sjplimp@sandia.gov 5 6 Copyright (2003) Sandia Corporation. Under the terms of Contract 7 DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains 8 certain rights in this software. This software is distributed under 9 the GNU General Public License. 10 11 See the README file in the top-level LAMMPS directory. 12 ------------------------------------------------------------------------- */ 13 14 #ifdef FIX_CLASS 15 // clang-format off 16 FixStyle(temp/csld,FixTempCSLD); 17 // clang-format on 18 #else 19 20 #ifndef LMP_FIX_TEMP_CSLD_H 21 #define LMP_FIX_TEMP_CSLD_H 22 23 #include "fix.h" 24 25 namespace LAMMPS_NS { 26 27 class FixTempCSLD : public Fix { 28 public: 29 FixTempCSLD(class LAMMPS *, int, char **); 30 ~FixTempCSLD(); 31 int setmask(); 32 void init(); 33 void end_of_step(); 34 int modify_param(int, char **); 35 void reset_target(double); 36 virtual double compute_scalar(); 37 void write_restart(FILE *); 38 void restart(char *buf); 39 virtual void *extract(const char *, int &); 40 41 private: 42 double t_start, t_stop, t_period, t_target; 43 double **vhold; 44 double energy; 45 int nmax, which; 46 int tstyle, tvar; 47 char *tstr; 48 49 char *id_temp; 50 class Compute *temperature; 51 int tflag; 52 53 class RanMars *random; 54 }; 55 56 } // namespace LAMMPS_NS 57 58 #endif 59 #endif 60 61 /* ERROR/WARNING messages: 62 63 E: Illegal ... command 64 65 Self-explanatory. Check the input script syntax and compare to the 66 documentation for the command. You can use -echo screen as a 67 command-line option when running LAMMPS to see the offending line. 68 69 E: Fix temp/csld is not compatible with fix rattle or fix shake 70 71 These two commands cannot currently be used together with fix temp/csld. 72 73 E: Variable name for fix temp/csld does not exist 74 75 Self-explanatory. 76 77 E: Variable for fix temp/csld is invalid style 78 79 Only equal-style variables can be used. 80 81 E: Temperature ID for fix temp/csld does not exist 82 83 Self-explanatory. 84 85 W: Cannot thermostat atoms in rigid bodies 86 87 UNDOCUMENTED 88 89 E: Fix temp/csld variable returned negative temperature 90 91 Self-explanatory. 92 93 E: Could not find fix_modify temperature ID 94 95 The compute ID for computing temperature does not exist. 96 97 E: Fix_modify temperature ID does not compute temperature 98 99 The compute ID assigned to the fix must compute temperature. 100 101 W: Group for fix_modify temp != fix group 102 103 The fix_modify command is specifying a temperature computation that 104 computes a temperature on a different group of atoms than the fix 105 itself operates on. This is probably not what you want to do. 106 107 */ 108