Re: [AMBER-Developers] generalized distance constraints

From: Volodymyr Babin <>
Date: Tue, 10 Mar 2009 09:54:34 -0400 (EDT)

> There may be some good reasons *not* to do this, so people should feel
> free to express their ideas. But I'd like to avoid duplication of user
> interfaces to the greatest extent we can.

1. I think for a "transition period" the duplication is okay.

2. I would agree that having one abstraction for "Collective Variable" used
    all over the code is better than having many different hacks.

3. The SMD/umbrella sampling/TMD/MTMD/etc are simply different kinds
   of biasing forces acting through a CV; therefore it very natural to have
   a common code base for these.

4. Unfortunately, this is FORTRAN. In any other language I am aware of
    it would be possible to ether use native polymorphism or "pointers to
    subroutines" to emulate it; in FORTRAN there is no other way than
    if (type = DISTANCE) then ... else if (type = ANGLE) then ... else if ...
    which is not entirely good, to put it mildly.

5. Structure-wise, I would encourage to take a look at Desmond: they have
    a nice abstraction of "force pipeline" to which different parts (like,
e.g., SMD
    in our case) register their "hooks".

6. I would really appreciate any critical feedback.

Have a nice day,


AMBER-Developers mailing list
Received on Wed Mar 11 2009 - 01:24:32 PDT
Custom Search