> 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,
Volodymyr
_______________________________________________
AMBER-Developers mailing list
AMBER-Developers.ambermd.org
http://lists.ambermd.org/mailman/listinfo/amber-developers
Received on Wed Mar 11 2009 - 01:24:32 PDT