|From:||Fernanda S Teixeira <nandast@...6816...>|
|Date:||Fri, 21 Jul 2017 12:37:08 -0300|
as i already told you, if you want to add kinetic energy to the just deposited atom, you can do that directly with fix deposit (you can specify the velocity). fix langevin makes *no* sense for this. any energy that is added orthogonal to the deposition direction is not having the effect you desire.
i also mentioned, that in my opinion the way to model the scenario you are describing is to *not* change the kinetic energy of the deposited atom, but rather add a specific amount of kinetic energy to the *neighboring* atoms and *after* your atom has reached the surface (which can be determined simply through the change in its velocity).
however, this model will require some programming. there ain't no escape from the blues.
please note, that for what you are doing fix deposit is the wrong tool. you can just use the create_atoms, and velocity commands. give the newly created atom a different atom type. define a new group with just that one atom, if needed (please be aware, that new group commands *add* to the group if it already exists, so in your case you need to delete the group before you can update it with a newly created atom) and then set up your run from there. the complex, inefficient and error-prone compute reduce is overkill here, too. just using an additional atom type for the newly created atoms solves the issue elegantly and much simpler (after it is deposited, you simply change the atom type back).
On Wed, Jul 19, 2017 at 11:43 AM, Fernanda S Teixeira <nandast@...6816...> wrote:
I am doing one deposition for each loop and I want to langevin just the atom I have just deposited.
I am trying to do that:
compute 1 all property/atom id
compute 2 all reduce max c_1
variable g equal c_2+1
print "Next atom id: $g"
group just_deposited id $g
fix 1e addatoms deposit 1 2 100000 12345 region slab_$v near 1.0 vz -70 -70 id next
But I got the message "Compute used in variable between runs is not current (../variable.cpp:1287)"
Is there a best way to do that?
Em Sáb, 2017-07-15 às 11:11 -0600, Steve Plimpton escreveu:
Fix heat will not work b/c it expects there to be some atoms
in the group, not zero before deposition takes place.
You could just thermostat (e.g. with fix langevin) the atom(s)
that you deposit.
On Sat, Jul 15, 2017 at 6:39 AM, Axel Kohlmeyer <akohlmey@...24...> wrote:
On Sat, Jul 15, 2017 at 8:19 AM, <nandast@...6816...> wrote:
> Hi Axel
> For my experimental configuration, ions are deposited. So, besides kinect
> energy, there is ionization potential energy. This energy is released as
> heat when the ion becomes a neutral. So I am trying to mimic this. I was
> thinking in add this energy as more velocity for the incoming ions, but I
> will spend that energy in stopping. It is a slightly different scenario. Do
> you think it is the only way?
it is really up to you how you build your model, but the kind of
operation you want to perform is not built into LAMMPS.
so you would have to, for example, write a custom fix style for your
purpose. that fix could track atoms by having a custom property added,
and then when its kinetic energy drops below a pre-defined value, i.e.
it has hit the surface, you add a certain amount of kinetic energy
(i.e. random velocities) to the atoms within a given distance. at that
you change the custom property to indicate, that this ion has been
neutralized. not a trivial thing to program, but not too difficult
> Thank you
> Citando Axel Kohlmeyer <akohlmey@...24...>:
>> On Fri, Jul 14, 2017 at 4:31 PM, Fernanda S Teixeira <nandast@...6816...>
>>> Dear LAMMPS users and developers,
>>> I would like to add no translational energy to a single atom (heat).
>>> This single atom is an addatom inserted by "fix deposit" that I want to
>>> release thermal energy after being stopped by the substrate.
>>> I have tried to use "fix heat" but I got a message: "Fix heat group has
>>> no atoms" even after deposition.
>> fix deposit allows you to add a kinetic energy, i.e. velocity to deposited
>> atoms. that energy is automatically released (or rather transferred) to
>> substrate, when the atoms collide with it.
>>> Additionaly, I want to add energy only to atoms just deposited, not to
>>> the atoms deposited many steps before.
>> you sound like you are talking about some other kind of "internal" energy,
>> however with classical MD point particles there is only kinetic energy.
>>> Fernanda S Teixeira
>>> Check out the vibrant tech community on one of the world's most
>>> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
>>> lammps-users mailing list
>> Dr. Axel Kohlmeyer akohlmey@...24... http://goo.gl/1wk0
>> College of Science & Technology, Temple University, Philadelphia PA, USA
>> International Centre for Theoretical Physics, Trieste. Italy.
Dr. Axel Kohlmeyer akohlmey@...24... http://goo.gl/1wk0
College of Science & Technology, Temple University, Philadelphia PA, USA
International Centre for Theoretical Physics, Trieste. Italy.
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
lammps-users mailing list
Dra. Fernanda de Sá Teixeira
Especialista em Laboratório
Laboratório de Filmes Finos
Instituto de Física da USP
Fone/Fax: 11 3091 6625 / 11 3091 7140