From global ID to local ID

Dear Steve and all LAMPPS users,Is the global ID difined in the data document?
Is the local ID related to the number of processors?I want to know the rule
of mapping from global ID to local ID.
which one in the picture above will be possible?

That's all. Thank you very much for explanation.

Regards,
Erchia

Unnamed.png

Dear Steve and all LAMPPS users,

please update your spell-checker customization. it is LAMMPS. :wink:

Is the global ID difined in the data document?

yes. that is, if you do use atom ids (some simulations setups can do
without). for details, please (re-)read the read_data documentation. it is
very detailed and needs to be studied carefully to avoid mistakes.

Is the local ID related to the number of processors?I want to know the
rule

it has been explained here quite a few times. we would appreciate it a
*lot* if people would have the courtesy to spend some time on researching
their questions in the mailing list archives. in short: local atoms up to
"atom->nlocal" are the atoms "owned" by a domain, the rest are ghost atoms
owned by neighboring domains.

of mapping from global ID to local ID.

which one in the picture above will be possible?

i don't understand what this graph is supposed to represent. but
Atom->map(i);
will return the local id of a global id 'i', if present or -1 otherwise.
Atom->tag[i]
contains the global id of local id 'i'

axel.

Unnamed.png

Dear Steve and all LAMMPS users,
I am sorry for my fault.

In the atom_modify document: Various commands, particularly those which use random numbers (e.g. velocity create, and fix langevin), may generate (statistically identical) results which depend on the order in which atoms are processed.
If I want to apply the random force of the Langevin thermostat in the global order, how can I realize it?
I don't know what the local ID is like.A data document is in the email attachment.The input script is as below.

Unnamed.png

gufinal2.data (254 KB)

Dear Steve and all LAMMPS users,

I am sorry for my fault.

In the atom_modify document: Various commands, particularly those which use random numbers (e.g. velocity create, and fix langevin), may generate (statistically identical) results which depend on the order in which atoms are processed.

If I want to apply the random force of the Langevin thermostat in the global order, how can I realize it?

You cannot. At least not without a prohibitively expensive amount of communication or through “unparallelizing” LAMMPS. It doesn’t make sense either.

I don’t know what the local ID is like.A data document is in the email attachment.The input script is as below.

I just explained how the forward and backward mappings work and where you can find more information.

dimension 3

units metal

boundary p p f

atom_style full

neighbor 3.0 bin

read_data gufinal2.data

Then are the local IDs listed from 1 to 3920 in order?

Please forgive me for poor knowledge about programming.It will be appreciated if the more detailed location of the mapping function in the .cpp document will be shown.

Sorry, but this is a case of “if you cannot stand the heat, get out of the kitchen”. Either you have to improve your programming knowledge (particularly about in-line class methods) or stop trying to do something that is dependent on it. Not to mention, that it is a very basic skill to locate a specific function in a bunch of sources. grep is your friend.
Axel

You could generate a random # that is based on the global
ID and the current timestep as the “seed”. It would be
easy to do that in a non-random way, so I advise against it.

Steve