From: Karl Decker (kaelenmitharos_at_gmail.com)
Date: Fri Feb 10 2017 - 15:51:02 CST

Thank you for including that command in the VMD CVS, Joshua Vermaas. I've
gotten an account, checked out VMD through CVS, and found the py_molecule.C
source file that contains the definition of the python object
mol_get_volumetric(). I'm in the process of assessing how I would use the
mol_get_volumetric in my plugin. Thanks very much for the help.

I do have another question, though. Are fully compiled builds from the
source code on CVS available for download? If not, it may be difficult to
use the features available through CVS, as I have not been able to compile
VMD on my machine.

Also, what format does the VolMap data take? It's not clear from the
sources I've seen.

Thanks,
Karl

On Tue, Feb 7, 2017 at 3:51 PM, Vermaas, Joshua <Joshua.Vermaas_at_nrel.gov>
wrote:

> Hi Karl,
>
> It sounds like you want to interact with volume maps already loaded into
> VMD. When I needed to do this for my own purposes, I dug into VMD internals
> and wrote something to access volumetric datasets and make it accessible to
> VMD's python interface (this is now in the VMD CVS as
> molecule.get_volumetric). From there, you can access the data itself in
> python and do whatever you want. This does not expose a pointer to VMD's
> internal data structure directly (which isn't even useful, since its stored
> out of order as far as numpy is concerned), however since the copy never
> went to disk, it was fast enough to be efficient.
>
> -Josh
>
> On 02/07/2017 02:15 PM, Karl Decker wrote:
> Is it possible to share memory between two processes, one of which is VMD?
> I'm aware this is generally messy and dangerous, but it's one way to avoid
> writing large files to disk and slowing down the execution of the plugin
> we're designing. It would obviously take some effort to write the code for
> sharing the memory between two processes, but first I want to know: can VMD
> even be made to share its memory with another process?
>
> Alternatively, we are considering implementing a python plugin to VMD. Can
> VMD be made to share memory with a plugin?
>
> The memory we want to share is from VolMap, specifically a distance map
> generated in VolMap. The idea is to sidestep writing the map to disk
> because it takes too long.
>
> Thanks,
> Karl
>
>