Author Topic: Could I convert a Equivalent_bulk system into a two-probe system?  (Read 5704 times)

0 Members and 1 Guest are viewing this topic.

Offline zdhlover

  • QuantumATK Guru
  • ****
  • Posts: 106
  • Reputation: 2
    • View Profile
Hi, dear everyone
We can easily convert a two-probe system into a  bulk_configuration--bulk_configuration_Equivalent_bulk system ,and how can I convert a Equivalent_bulk system into a two-probe system?

Did someone have ideas and give me the workflow in detail?


Thanks a lot

Offline zh

  • Supreme QuantumATK Wizard
  • *****
  • Posts: 1141
  • Reputation: 24
    • View Profile
It seems that one should do it manually and the steps are similar to those in building a two-probe system from scratch.

i) figure out the lattice vectors of electrodes;
ii) extract the coordinates of atoms belonging to the electrodes;
iii) extract the coordinates of atoms belonging to the scattering region;
iv) build the two-probe system in the usual steps.

Offline zdhlover

  • QuantumATK Guru
  • ****
  • Posts: 106
  • Reputation: 2
    • View Profile
Thanks your timely reply,  may be it's the usaual way that we can do ,but the problem is how can we set the index of the equivalent_atoms in the two-probe system when we convert a Equivalent_bulk system into a two-probe system ?


Could someone show me the trick?

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys
This is not an easy task, and depends strongly on how you created the two-probe system in the first place. However, if we assume that the original two-probe system, which later was converted into the equivalent bulk, was created using VNL or at least using a very "standard" approach, meaning, the equivalent atoms were default, first and last in the list, then it's not that hard.

Have a look at the attached script. If you just change the 4 parameters in the beginning:
  • name of the VNL file containing the equivalent bulk system
  • number of atoms in the left electrode
  • number of atoms in the right electrode
  • name of output VNL file (two-probe system)

then you can run the script, and it will make a new VNL file with the two-probe geometry. Naturally you'll have to be careful to inspect it afterwards in the Nanoscope to make sure all looks ok.

There are certain things that need to be observed, for the script to work. Most notably, apart from the equivalent atoms being "simple" (see above), the Z positions of the first and last layer of the central region (i.e. the screening layers) must be unchanged. So, if you do a relaxation on the equivalent bulk, make sure to constrain at least the first and last screening layers (this is generally necessary anyway)!

Offline zdhlover

  • QuantumATK Guru
  • ****
  • Posts: 106
  • Reputation: 2
    • View Profile
Thanks Anders Blom's  timely and zealous reply.

 May be the problem that convert a Equivalent_bulk system into a two-probe system is very common:because we can build a two-probe supercell in other software easily ,but how can we convert such a Equivalent_bulk system(supercell) into a two-probe system may be difficult .Could you tell me some trick
that we I solve such problems?

The append files are the two-probe supercell that I build in other software and the datas of  the supercell .
« Last Edit: November 9, 2009, 15:26 by zdhlover »

Offline Anders Blom

  • QuantumATK Staff
  • Supreme QuantumATK Wizard
  • *****
  • Posts: 5576
  • Country: dk
  • Reputation: 96
    • View Profile
    • QuantumATK at Synopsys
Apart from the fact that this system easily can be built in VNL (just use the Magnetic Tunnel Junction Builder in VNL 2008.10 ;) ), there are of course various reasons why people might choose to build a system in a different software, and as far as possible we will try to assist import of structures to use with ATK.

For this purpose (and others!), we are developing a new plug-in concept in the new generation of VNL, which I think will be ideal for such tasks. You can already see the concept itself in the GUI component of ATK 2009.06, although there are no importers there yet.

That said, it is a complicating factor that the file formats are so different, so many such solutions will have to be developed specifically for a particular external software and/or even task. Hopefully the community will be helpful in developing such tools for the benefit of all of us!

Finally, there is a particular difficulty in that no other software has a concept of two-probe systems, and one has to realize that for that reason the system does not contain enough information to convert it directly to a two-probe. However, with a little help from the user, it's not that hard. Basically, one needs to specify, somehow, how to create the electrode, but we will actually also have tools for that in the next GUI version.

We are also working on tools that hopefully should make it as easy to build such systems in VNL as any other software!

Now, all this perhaps doesn't help you right now... However, to make a generic script that can convert the kind of structure that you have (or rather, the kind of file format used), is a big task, and unless you are planning to do this repeatedly, it might not be worth the effort right now.

Well, actually it would probably be relatively easy to use the script above to do part of the work. However, the file format is not entirely appropriate; most notably the ordering of the atoms will make it a bit tricky (sorting needed :) ), and I'm not comfortable having an Fe atom at the right edge of the cell... If the cell is repeated in the z direction, this atom will overlap with the atom at the left edge...

Anyway, I'll let you figure that part out. But, I have made a small script (attached) that hopefully is of some help. As you can see, I just copy/pasted the coordinate report from the external software into it, then you just run it or drop the entire script on the Bulk Builder!

The script will only work if the "equivalent bulk" is an orthorhombic system (all angle 90 degrees). Note that I had to sort the coordinates; this may go wrong sometimes, since it only sorts on Z...

After this, you will have an "ATK equivalent bulk system". Your next step is to use the script in the first post to create the two-probe.

Good luck!
« Last Edit: November 9, 2009, 16:01 by Anders Blom »

Offline zdhlover

  • QuantumATK Guru
  • ****
  • Posts: 106
  • Reputation: 2
    • View Profile
Re: Could I convert a Equivalent_bulk system into a two-probe system?
« Reply #6 on: November 10, 2009, 02:05 »
 ;D ;D ;D Thanks a lot ,you are so kind and clever.I have learned more from your reply,thanks again.

The system I demonstrated in the supercell.jpg  is just a immature structure ,which is convenient for us talking about the topic.

I forget to  use the Bulk Builder in VNL sufficiently. The supercell is also a bulk. Ok, you give me a convenient way to construct the
two-probe system. Thanks ,many Thanks

wish you best!
« Last Edit: November 10, 2009, 02:13 by zdhlover »