Dear all

I will here give information about the tbtrans versions.
First of all there exists 2 different versions of tbtrans from trunk-424
and onwards.

1. tbtrans version from siesta-3.1 and trunk-424 (in Util/TBTrans)
I have searched through the files and found no inconsistency. The current
gets calculated on each spin component and showed for each spin component.
In line 317/311 of tbtrans in siesta-3.1 and trunk-424 respectively, the
loop of the spin start. However, the current variable gets initialized to 0
in line 521/515 respectively.
So in that case there is no error. It is the current for each spin.

2. tbtrans_rep (my version) only from trunk-424 and trunk-427 (in
Util/TBTrans_rep)
Yes, here there is an error. However, the error is not that it is the total
current.
The error is that after the first spin we get  (below Current_spin[i] is
the correctly calculated spin current)

Current = Current_spin1

After the second spin we get

Current = Current_spin1*38.73*1e-6*13.6058 + Current_spin2

Thus tbtrans_rep should have shown Current_spin2.
So to find the correct Current_spin2 we find:
Current_spin2 = Current - Current_spin1*5.26952634e-4

The spin part in the tbtrans_rep has some errors
Yes, this is wrong and I have submitted a patch for the tbtrans_rep. Thanks
a lot for noticing it.
In this context I also discovered another error related to the spin. This
error was exactly what you mentioned. The averaged files for spin is the
accumulated transmission, TDOS and PDOS.
Here it is a simple manner of subtracting the two. If in doubt please
contact me.

I have attached a patch that should be applied to the siesta-trunk-427
version.

Kind regards Nick


2012/12/12 <[email protected]>

> Dear Dr. Andersen,
>
> We are running spin polarized calculations at finite bias with the tbtrans
> version from siesta 3.1. In the tbtrans output there is a line for the Spin
> Up current as well as a line at the end of the file with another current
> value. We initially thought that the second values was the Spin Down
> current; however, we now think that this second value is actually the total
> current (Spin Up + Spin Down). Could you please confirm if this is the
> case, that is: is second current value in the output file is indeed the
> total current?
>
> Looking closely at the tbtrans.F routine from both the siesta 3.1 tbtrans
> as well as the trunk-424 tbtrans, it seems that indeed, the current values
> is set to 0 outside the spin loop, so that for the second spin value (Spin
> Down) the current in not reset to 0. This is however not documented in the
> manual and it seems to us a bit awkward programming.
>
> Best regards,
>
> Diana M. Otálvaro
> Doctoral Candidate
> Computational Material Science
> MESA+ Institute for Nanotechnology
> University of Twente
> Enschede, Nederland
> [email protected]
>
>
>
>
>

Attachment: tbtrans_rep_427.patch
Description: Binary data

Responder a