~ubuntu-branches/debian/sid/lammps/sid

« back to all changes in this revision

Viewing changes to src/MC/fix_gcmc.h

  • Committer: Package Import Robot
  • Author(s): Anton Gladky
  • Date: 2015-04-29 23:44:49 UTC
  • mfrom: (5.1.3 experimental)
  • Revision ID: package-import@ubuntu.com-20150429234449-mbhy9utku6hp6oq8
Tags: 0~20150313.gitfa668e1-1
Upload into unstable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
40
40
  void attempt_molecule_deletion();
41
41
  void attempt_molecule_insertion();
42
42
  double energy(int, int, tagint, double *);
 
43
  void attempt_atomic_translation_full();
 
44
  void attempt_atomic_deletion_full();
 
45
  void attempt_atomic_insertion_full();
 
46
  void attempt_molecule_translation_full();
 
47
  void attempt_molecule_rotation_full();
 
48
  void attempt_molecule_deletion_full();
 
49
  void attempt_molecule_insertion_full();
 
50
  double energy_full();
43
51
  int pick_random_gas_atom();
44
52
  tagint pick_random_gas_molecule();
45
53
  double molecule_energy(tagint);
46
 
  void get_rotation_matrix(double, double *);
47
 
  void get_model_molecule();
48
54
  void update_gas_atoms_list();
49
55
  double compute_vector(int);
50
56
  double memory_usage();
52
58
  void restart(char *);
53
59
 
54
60
 private:
55
 
  int rotation_group,rotation_groupbit;
56
 
  int rotation_inversegroupbit;
 
61
  int molecule_group,molecule_group_bit;
 
62
  int molecule_group_inversebit;
 
63
  int exclusion_group,exclusion_group_bit;
 
64
  int exclusion_group_inversebit;
57
65
  int ngcmc_type,nevery,seed;
58
66
  int ncycles,nexchanges,nmcmoves;
59
67
  int ngas;                 // # of gas atoms on all procs
60
68
  int ngas_local;           // # of gas atoms on this proc
61
69
  int ngas_before;          // # of gas atoms on procs < this proc
62
 
  int molflag;              // 0 = atomic, 1 = molecular system
 
70
  int mode;                 // ATOM or MOLECULE
63
71
  int regionflag;           // 0 = anywhere in box, 1 = specific region
64
72
  int iregion;              // GCMC region
65
73
  char *idregion;           // GCMC region id
66
74
  bool pressure_flag;       // true if user specified reservoir pressure
67
 
                            // else false
 
75
  bool charge_flag;         // true if user specified atomic charge
 
76
  bool full_flag;           // true if doing full system energy calculations
68
77
 
69
 
  tagint maxmol;            // largest molecule tag across all existing atoms
70
78
  int natoms_per_molecule;  // number of atoms in each gas molecule
71
79
 
72
80
  double ntranslation_attempts;
86
94
  double displace;
87
95
  double max_rotation_angle;
88
96
  double beta,zz,sigma,volume;
89
 
  double pressure,fugacity_coeff;
 
97
  double pressure,fugacity_coeff,charge;
90
98
  double xlo,xhi,ylo,yhi,zlo,zhi;
91
99
  double region_xlo,region_xhi,region_ylo,region_yhi,region_zlo,region_zhi;
92
100
  double region_volume;
 
101
  double energy_stored;
93
102
  double *sublo,*subhi;
94
103
  int *local_gas_list;
95
104
  double **cutsq;
96
105
  double **atom_coord;
97
 
  double *model_atom_buf;
98
106
  imageint imagetmp;
99
107
 
100
108
  class Pair *pair;
104
112
  
105
113
  class Atom *model_atom;
106
114
 
 
115
  class Molecule **onemols;
 
116
  int imol,nmol;
 
117
  double **coords;
 
118
  imageint *imageflags;
 
119
  class Fix *fixshake;
 
120
  int shakeflag;
 
121
  char *idshake;
 
122
  
 
123
  class Compute *c_pe;
 
124
 
107
125
  void options(int, char **);
108
126
};
109
127
 
164
182
simulated. The general molecule flag is off, but GCMC's molecule flag
165
183
is on.
166
184
 
167
 
E: Fix gcmc incompatible with given pair_style
168
 
 
169
 
Some pair_styles do not provide single-atom energies, which are needed
170
 
by fix gcmc.
171
 
 
172
185
E: Cannot use fix gcmc in a 2d simulation
173
186
 
174
187
Fix gcmc is set up to run in 3d only. No 2d simulations with fix gcmc
175
188
are allowed.
176
189
 
177
 
E: Cannot use fix gcmc with a triclinic box
178
 
 
179
 
Fix gcmc is set up to run with othogonal boxes only. Simulations with
180
 
triclinic boxes and fix gcmc are not allowed.
181
 
 
182
190
E: Could not find fix gcmc rotation group ID
183
191
 
184
192
Self-explanatory.