espressomd-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ESPResSo-users] track a particle in each time step


From: Peter Košovan
Subject: Re: [ESPResSo-users] track a particle in each time step
Date: Wed, 19 Mar 2014 11:35:44 +0100

Hi Narges,

if the concerned volume is spherical, then the observable "interacts_with" will do the job. You just need to create a fake particle non-interacting partcile fixed in the centre of the volume you are interested in.

Howver, what you describe seems a bit dangerous to me. Suppose that your polymer end appears exactly at the boundary of the box. In one time step, it enters, then it gets a random kick from the thermostat and it exits, with another random kick it enters again ... and you record many exit/entry events even though the whole polymer has actually not moved at all.

A solution to your problem might be to autocorrelate the "interacts_with" observable and to find a characteristic time which your polymer spends inside the volume.

With regards,

peter


2014-03-19 11:27 GMT+01:00 Narges Nikoofard <address@hidden>:
Dear Axel and Stefan,

Many thanks for the answers.

In more details, in my problem, a single polymer is confined eg. inside a sphere. I let the polymer to fluctuate in the sphere for a long time. A small volume is assumed inside this confining sphere. I need the simulation time, when one end of the polymer enters this volume. The simulation continues until the end monomers enters the specified volume, 100 times.

I read Sec. 9.1 of the userguide. I do not know which of the opinions below is better.

1. Write the positions of the two end monomers in an output file, then analyze this file with a separate C program. I see in the userguide that observable "particle_positions" is defined and specification of the monomers is possible. However, my simulations are commonly very long, and the output file will be very huge.

2. Write the required simulation times (that end monomers enter the specified volume) in an output file. I do not know if it is possible with the observable command.

Also, I would be grateful if I can have an example on using the command "observable".

Many thanks again,
Narges


On Tue, Mar 18, 2014 at 2:21 AM, Stefan Kesselheim <address@hidden> wrote:
Hi Narges,
as Axel pointed out, the observable concept might solve your problem. It however depends on what exactly you want to do with the information if certain monomers are in certain places. You of course need to do the postprocessing on the c-level. If you tell me more details, I might be able to suggest a solution.
Cheers
Stefan

On Mar 16, 2014, at 9:59 AM, Narges Nikoofard <address@hidden> wrote:

> Dear Espresso users,
>
> I am simulating a confined polymer. I should count the number of times the end monomers enter a pre-defined region in the space. So, I need to track the end monomers' position. I need to know the end monomers' position in each time step of the simulation.
>
> As a result, I have used "integrate 1" in my code. So, I can get the monomers position in each time step and check if they are in the specified region. This makes the code very slow. Is there any way to solve this problem?
>
> Many thanks in advance,
> Narges
>
>






--
Dr. Peter Košovan

Departmtent of Physical and Macromolecular Chemistry
Faculty of Science, Charles University in Prague, Czech Republic

Katedra fyzikální a makromolekulární chemie
Přírodovědecká fakulta Univerzity Karlovy v Praze

www.natur.cuni.cz/chemistry/fyzchem/
Tel. +420221951290
Fax +420224919752


Pokud je tento e-mail součástí obchodního jednání, Přírodovědecká fakulta Univerzity Karlovy v Praze:
a) si vyhrazuje právo jednání kdykoliv ukončit a to i bez uvedení důvodu,
b) stanovuje, že smlouva musí mít písemnou formu,
c) vylučuje přijetí nabídky s dodatkem či odchylkou,
d) stanovuje, že smlouva je uzavřena teprve výslovným dosažením shody na všech náležitostech smlouvy.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]