From: Giacomo Fiorin (giacomo.fiorin_at_temple.edu)
Date: Wed Oct 14 2009 - 18:57:43 CDT
Hi Bin, dummy_atom_pos is initialized earlier on, after the argument
of "dummyAtom". Did you experience that this position is still zero
(the origin) even when you give it some other point in space?
Giacomo
---- ----
Giacomo Fiorin
ICMS - Institute for Computational Molecular Science
Temple University
1900 N 12 th Street, Philadelphia, PA 19122
work phone: (+1)-215-204-4216
mobile: (+1)-267-324-7676
mail: giacomo.fiorin_at_temple.edu
---- ----
On Wed, Oct 14, 2009 at 5:57 PM, BIN ZHANG <zhngbn_at_gmail.com> wrote:
> Hi, all:
> While experiencing with the newly available and great colvar module, I found
> a strange behavior for the *dummyAtom* option. It seems to me that the
> center of mass for the dummy atom would always be zero with the current code
> in the CVS. Actually, looking at the function atom_group::center_of_mass()
> in the colvaratoms.C file, it looks like a bug to me. The blue code I added
> myself, should be necessary to get the correct center of mass, I think.
> Does this make sense to you ?
> Thanks,
> Bin
> ===============================================
> cvm::atom_pos cvm::atom_group::center_of_mass() const
> {
> if (b_dummy) {
> return dummy_atom_pos;
> }
> cvm::atom_pos com (0.0, 0.0, 0.0);
> for (cvm::atom_const_iter ai = this->begin();
> ai != this->end(); ai++) {
> com += ai->mass * ai->pos;
> }
> com /= this->total_mass;
> return com;
> }
>
This archive was generated by hypermail 2.1.6 : Wed Feb 29 2012 - 15:53:22 CST