Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 178

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 183

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 184

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 220

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 223

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 235

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 250

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 252

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 257

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 268

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 270

Deprecated: Function create_function() is deprecated in /homepages/8/d18699663/htdocs/clickandbuilds/SMF/ovito_forum/Sources/Load.php on line 273
Difference between Wigner-Seitz result and occupancy boolean for SIA

Author Topic: Difference between Wigner-Seitz result and occupancy boolean for SIA  (Read 2678 times)

Xtof

  • Jr. Member
  • **
  • Posts: 68
Hi all,

I am analysing the defects produced by a cascade in Fe obtained with LAMMPS. The crystal has an open surface and the Fe projectile comes from outside with E=10 keV.
As a result, some atoms are sputtered from the surface.
Using the Ovito GUI, according to the Wigner-Seitz modifier, there are 205 V and 178 SIA. I obtained the same thing with ovitos script that I wrote some time ago. The number of V and SIA are different as expected since some atoms are sputtered and some end up as adatom and cannot recombine with vacancies. No surprise here from the physical point of view.

However, I tried to understand more into detail what's going on using the occupancy boolean and the expression select modifier.
Occupancy == 0 (vacancies) produces 205. This correct.
Occupancy > 1 (in principle SIA) produces 109 and not 178 as given by the Wigner-Seitz modifier.

Where could the difference come from? Which is the correct result? Could there be a problem of interpretation by modifiers due to the fact that the total number of atoms in the reference crystal is not the same than the one in the final crystal (after cascade) due to the sputtering of some atoms?

With best regards,
Christophe

Alexander Stukowski

  • Administrator
  • Hero Member
  • *****
  • Posts: 638
Hi Christophe,

I can at least explain where the difference between the two numbers comes from:

The boolean expression "Occupancy > 1" selects and counts sites that contain an interstitial atom. However, it ignores the possibility that a site can contain more than one interstitial (occupancy can be >2). In your case 178-109=69 additional interstitial atoms are distributed over the 109 sites which already contain an interstitial.

The total number of interstitials reported by the WS modifier is equal to the sum of occupancy numbers of all non-empty sites minus the number of non-empty sites. In other words the interstitial count is given by the formula sum(max(Occupancy(i)-1, 0)) computed over all sites i.

Best regards,
Alex

Xtof

  • Jr. Member
  • **
  • Posts: 68
Hi Alex,

Thanks for your reply.
You said that "Occupancy > 1" selects and counts sites that contain 1 interstitial atom. I thought that this would be given by "Occupancy == 2".
If I select the sites that correspond to "Occupancy > 1", shouldn't it return the sum of all the sites with 2, 3, 4...atoms?
I calculated the number of sites with different occupancy with "Occupancy == n":
Occupancy == 2: 61
Occupancy == 3: 33
Occupancy == 4: 10
Occupancy == 5: 5
Occupancy == 6: 1
Occupancy >= 7: 0

With this exercise, I understood where was my misunderstanding: how to count interstitials. I was mistaking the number of sites with Occupancy > 1 with interstitials.
According to the definition you gave for the count of interstitials, the number of interstitials should be:
(2-1)*61 + (3-1)*33 + (4-1)*10 + (5-1)*5 + (6-1)*1 = 182.

Is that correct? It is different from 178 given by the WS modifier.

Best regards,
Christophe

Alexander Stukowski

  • Administrator
  • Hero Member
  • *****
  • Posts: 638
I'm sorry if I confused you. I wrote that the Boolean expression "counts sites that contain an interstitial atom". I mean that in the sense of "at least one", not exactly "1".

Note that the Expression Select modifier is a generic tool for selecting atoms/sites based on a user-defined criterion. In the present case, it simply reports the number of sites (not atoms!) that match the criterion. Since it doesn't know anything about the definition of interstitial atoms (unlike the WS modifier), it cannot compute the total number of SIAs. This requires evaluation of the formula I posted earlier -something which the Expression Select modifier cannot do.

Regarding the discrepancy you observe: I'm not sure where it comes from. Your formula, which leads to 182, is correct. However, I noticed that the number of sites with Occupancy>=2 is 110 according to your list. This is one more than the 109 you mentioned in your first post. Does the selection expression "Occupancy>1" still give 109?

Xtof

  • Jr. Member
  • **
  • Posts: 68
My fault. For "Occupancy==5" it is 4 sites and not 5. It thus gives 109 in total.
"Occupancy > 1" still gives 109.

Still, there is a difference of 4 SIA between the formula and the WS modifier. I checked the LAMMPS output and, by coincidence, there are 4 atoms that were sputtered during the process.
I will do another simulation to check if it is a pure coincidence.

With best regards,
Christophe

Alexander Stukowski

  • Administrator
  • Hero Member
  • *****
  • Posts: 638
Okay, so if the number of sites with Occupancy==5 is actually 4, as you say, then your formula yields 178, exactly as predicted by the WS modifier:

(2-1)*61 + (3-1)*33 + (4-1)*10 + (5-1)*4 + (6-1)*1 = 178

The discrepancy is resolved. I don't think it is related to the loss of atoms due to sputtering.

Xtof

  • Jr. Member
  • **
  • Posts: 68
True ! I should take some holidays... :-[
Thanks a lot, Alex. Everything is resolved then and works fine.

Best regards,
Christophe

Xtof

  • Jr. Member
  • **
  • Posts: 68
I checked that many of the atoms that have "Occupancy > 2" are at the surface. Adatoms I suppose. Is there a way (a flag) to distinguish between those atoms at the surface and those that are in the bulk, besides their z coordinate?

Christophe

Alexander Stukowski

  • Administrator
  • Hero Member
  • *****
  • Posts: 638
Typically, an atom's coordination number is used to identify surface atoms. In Ovito you would use the Coordination Analysis modifier in conjunction with the Expression Modifier to compute the coordination numbers and to select atoms which are under-coordinated, i.e. which have fewer neighbours than bulk atoms.

In your case you are interested in catching the adatoms, not the surface atoms. Maybe you can do it by tweaking the cutoff radius parameter and the threshold value for the coordination number. But it depends on the kind of surface you are dealing with. You are free to develop more complex criteria which may give better results. For example, you could take into account also the original coordination number of an atom before the cascade and compare it to its new coordination number.

If you somehow manage to select the adatoms in Ovito, I would delete them from the system before doing the WS analysis.

Xtof

  • Jr. Member
  • **
  • Posts: 68
Thanks for the ideas. I will try.
Indeed, my idea is to remove the adatoms before doing the WS analysis. I think they are giving results that fluctuate too largely and therefore I would like to isolate only SIA in bulk.

Xtof

  • Jr. Member
  • **
  • Posts: 68
Re: Difference between Wigner-Seitz result and occupancy boolean for SIA
« Reply #10 on: May 09, 2017, 03:43:40 PM »
I understood why I obtained such large fluctuations when counting SIA and V in a material with open surface. It is not only adatoms. For some reasons, in some cases, the WS modifier interprets all surface atoms as SIA or V. As a result, instead of finding, say, 150 SIAs, you find several thousand. I found out using the GUI, the WS modifier, and the Select Expression 'Occupancy == 0' or 'Occupancy > 1'. My surprise was when I saw that a whole surface was interpreted as V and the one in front, as SIA. But it is not systematic. Only some cascades out of the 30 that I perform. However, it clearly affects the mean number of defects and the variance.

Therefore, I have to eliminate the surface atoms before using the WS, as you suggested in a previous post.

I tried the CoordinationNumber modifier as you suggested. In Fe, the lattice parameter = 2.86 A. I used 2.76 as cutoff and in a perfect crystal it successfully distinguishes between surface atoms (coord < 8 ) and bulk atoms (coord = 8 ).
My plan is first to eliminate the surface atoms (coord < 8 ) from the crystal with defects, save it to a file, and do the same thing with the reference crystal. Then, I will import the file of the crystal with defects and without surface atoms and use the WS modifier.

Do you think it makes sense?

Saludos,
Christophe
« Last Edit: May 09, 2017, 03:45:31 PM by Xtof »

Xtof

  • Jr. Member
  • **
  • Posts: 68
Re: Difference between Wigner-Seitz result and occupancy boolean for SIA
« Reply #11 on: May 09, 2017, 04:54:38 PM »
It does not work. After removing the atoms with 'Coordination < 8', if I use the WS modifier, it still interprets the surface as all SIAs or all Vs. As a result, there are lots of defects (thousands of atoms at the surface) that should not be taken into account.