[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [ESPResSo-users] Radial density map in sphere
From: |
Stefan Kesselheim |
Subject: |
Re: [ESPResSo-users] Radial density map in sphere |
Date: |
Wed, 5 Dec 2012 11:08:43 +0100 |
Dear Jacob,
On Dec 5, 2012, at 10:42 AM, Jacob Kirkensgaard <address@hidden> wrote:
>
> I am simulating stuff confined in a sphere and want to calculate a radial
> density map of a given particle type from the sphere center to the edge but
> got puzzled by the documentation for the "analyze radial_density_map"
> function.
This observable is meant to calculate particle densities (e.g. ion densities)
in a cylindrical coordinate system. I have implemented it to analyse the
particle density in a system that contains a pore and a cylindrical DNA
molecule on the axis.
It provides a "full" cylindrical coordinate system, thus r, phi and z, but
makes most sense when using a system with cylinder symmetry. I thought abound
implementing something similar for a spherical coordinate system, but never
needed it, and never wrote it.
It is invoked by specifying the range of interest in all three cylindrical
coordinates and a bin size in all directions. It needs an axis of rotation,
that can not (yet) be arbitrary but has to be aligned with one of the cartesian
axes. If you need something similar for a spherically symmetric system, and you
need it quick, I suggest to put a "fake" particle into the centre and use the
command analyse rdf.
By the way: density_map is exactly the same but for a cartesian coordinate
system.
Anyways: It is only an instantaneous observable. If you want to average it, you
(presently) have to create a "fake" correlation, that uses the observable, to
calculate the average. From the next Espresso version on, there will be a
concept of averaging observables on the fly. This "core observable"
implementation is still quite new, and we would be very interested in feedback
about it. I also suggest to take a look at the function that actually
calculates the radial_density_profile in statistics_observable.c, it is quite
straightforward.
Cheers and good luck
Stefan