QuantumATK Forum

QuantumATK => General Questions and Answers => Topic started by: Arya on November 18, 2013, 22:35

Title: Reusing Electrodes
Post by: Arya on November 18, 2013, 22:35
Hi All !

I was trying to simulate random defects in GNR. I went through the tutorial on reusing electrodes : http://quantumwise.com/publications/tutorials/mini-tutorials/130-reusing-electrodes

I just want to confirm if my procedure is correct? Steps I am following is as below (see attached image):

1. The GNR in yellow box is my region of interest.
2. Firstly I make extension to the yellow box by adding atoms in red boxes to be the electrode extensions.
3. I add actual electrode shown as blue boxes.
4. Then I delete random atoms from the edges of yellow box region to create a defected GNR of interest.

Is my procedure correct?
Secondly, if yes am I not changing the actual region of interest by adding those red boxes which are electrode extensions. Comparing with real life situation, would a GNR of length as in yellow box with added defects give same characteristics as the one with electrode extensions + electrodes (i.e. red + blue box regions).

Thanks
-Arya
Title: Re: Reusing Electrodes
Post by: kstokbro on November 19, 2013, 10:48
your procedure is correct.
You can extend the red region as much as you want, and you will still get the same result. This is because you system is semi-infinite both to the left and the right.
Thus if you add more electrode atoms in the central region the system is still the same.
However, if you add too few electrode atoms you do not fullfill the screening approximation and the calculation will be different and not correct.
Title: Re: Reusing Electrodes
Post by: Arya on November 20, 2013, 05:37
Thanks kstokbro !

Can you help me with following question:

I have a folder which has many files generated from atk.

1.py 2.py ..... so on

I wish to run simulation for each file in that folder. I tried following python pseudo-script:

import os
import subprocess

for root, dir, files in os.walk("."):
  for names in files:
    subprocess.call("<fullpath>/atkpython", os.path.join(root,names))

I get error command not found.
Is there any easy way of doing this: i.e. looping over all files in folder and running atkpython for each of them

Thanks,
-Arya





Title: Re: Reusing Electrodes
Post by: Anders Blom on November 20, 2013, 09:47
Do you have bash?

Code: sh
#!/bin/bash
for file in *.py ; do
    atkpython $file > $file.log
done

Save as "go.sh", then do

Quote
chmod u+x go.sh
./go.sh