Atom style variable evaluation on ghost atoms

Hello list, for the voronoi/atom compute I added a keyword to compute
a poly-disperse tessellation (i.e. each atom has its own radius). I
implemented that by allowing the user to specify an atom style
variable for the radius argument.

Today I've started implementing a rigorous set of tests for the
voronoi/atom compute and noticed a discrepancy for the poly-disperse
tessellation.

Long story short: atom style variables are not evaluated for ghost
atoms (but I need the radius variable to be evaluated for ghosts as
well for the tessellation to work).

I see two options:

1) patching variable.cpp to extend evaluation to ghosts (waste of
computational effort for most applications of atom style variables)

2) add a communication step to my compute

It is probably best to go with option 2, unless there are other
foreseeable uses of evaluating atom style variables on ghosts.

Any comments?
Daniel

I don’t think it makes sense for atom-style variables to
know anything about ghost atoms, or to return a value
for them. Adding a comm step to your compute
is the way to go, and the Comm class has a hook
for computes to do that. Grep for forward_comm
and reverse_comm in compute*cpp and you’ll
get a few hits.

Steve

for them. Adding a comm step to your compute
is the way to go, and the Comm class has a hook

Yeah, I went that way. It is already implemented in the patch I sent
you yesterday.
Daniel