Tentative implementation of periodic variables
Implementation of periodicity as we discussed at the meeting. In the constructor of a collective variable or function is it possible to declare, for each value, if it is periodic or not. E.g., torsions will be periodic, distances not. The difference between two values (hypothetically, a stored value and the present one) can than be computed automatically using a Value::difference() method. If difference() is called for undeclared values, an error is raised. Thus, functions of unpredictable periodicity (e.g. MATHEVAL) should allow the user to specify the periodicity (or the non-periodicity) in the input line. See how I implemented the setting of periodicity in the available Colvars. The syntax is a bit baroque (I will probably simplify it), but it seems to work. I also added a check on the fact that two labels can not be equal.
Loading
Please sign in to comment