How to understand the output "INFO" which includes Gen, Tr, Acc, Rem and Err?

58 views
Skip to first unread message

Leon Wang

unread,
Dec 31, 2019, 11:26:04 AM12/31/19
to fullrmc
Hi, Bachir,

Happy New Year!

I am learning to use fullrmc as well as XRD refinement. If I asked any silly questions, please forgive me and provide me some references.

I apply fullrmc to refine structure with input file g(r) (and SQ [refinement was slow and not considered]).
Here are my questions.
1. How to understand the output <INFO> which consists of Gen, Tr, Acc, Rem, and Err?
2. How can I know the refined structure is reasonable and acceptable? Below is the output from a refinement of Hollandite phase materials. There are 19152 atoms in a 6x6xx21 supercell. I am not fully sure the refinement is good enough or not because I do not understand above info.

fullrmc.png


3. What is the critical factor(s) to tell a refinement reasonable?

Any further suggestion would be highly appreciated.

Best,
Leon

Bachir Aoun

unread,
Jan 2, 2020, 9:56:16 AM1/2/20
to fullrmc
Hello Leon,

  • Gen: the number of generated moves upon selected groups
  • Tr: Number of applied and tried moves upon the selected groups
  • Acc: Number of accepted moves
  • Rem: Number of removed atoms
  • Err: Engine total standard error
Let me explain give you a bit more details.
fullrmc's stochastic engine has 4 major components to it
  1. Selector: a user can set a type of selector or define his own to help the engine selecting the groups in runtime. The default selector is a random selector
  2. Groups: the stochastic engine works with groups of atoms instead of atoms. A user can specify any atoms grouping the way he likes. By default, the engine build atomic groups for all your structure's atoms
  3. Generator: each group can have a customized way to moving when selected and this is set using the moves generators
  4. Constraints: there are experimental constraints and chemical/physical ones. At each runtime step, the engine selects a group using the help of the selector and this is (GEN). chemical/physical constraints are calculated. if any of those constraint total error increases the step stops and the move is not tried by the experimental constraint. If all chemical/physical constraints accept the move then the experimental constraints are calculated and this is (TR). If the experimental constraints accept the move then the engine decides upon accepting the move and this is (ACC)
A user can define EmptyGroups with remove generator, those groups will test removing the atom from the system and this if accepted will generate (REM)

If your simulation is slow, it's because your moves are not accepted or even tried. you might want to check your parameters and maybe set different groups and move generators.

Testing if the simulation is successful is really up to the scientist to decide. you should visualize your constraints and judge by yourself. MY recommendation to you  is don't wait until everything is perfect because this is not physical, when you have good agreement with your experimental data within the range of error of your experimental data then you should stop. Keep in mind the solution is likely not unique which is the beauty and the curse of this approach. You must always explain and defend a valid solution or reject it yourself and try a different approach using different groups and move generators.

hope that long answer helps

regards

Leon Wang

unread,
Jan 6, 2020, 10:44:57 PM1/6/20
to fullrmc
Thank you so much for your instruction. It is very helpful.
Reply all
Reply to author
Forward
0 new messages