spin polarized tbtrans calculation
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Siesta |
Fix Released
|
High
|
Nick Papior | ||
4.1 |
Fix Released
|
High
|
Nick Papior |
Bug Description
Hello, I tried to do spin polarized transport calculation, and I am first doing a sanity check of performing a spin polarized calculation for a physically spin unpolarized junction (i.e., just test the case where one has two spin component instead of one). The self-consistent transiesta calculation finished just as usual, but in the tbtrans, the calculation did not proceed beyond the first spin component. After the first spin component finishes as usual, the calculation immediately stopped at the beginning of the second spin component. I tracked the point where the code stopped, and it happens at:
line 746 of m_tbt_trik.F90
if ( n_k == 0 ) then
call create_HS(TSHS%dit, sp, 0._dp, &
spH, spS, kpt, &
else
call create_
iE, H, S, TSHS%sc_off, spH, spS, &
end if
I further tracked the create_HS in Src/m_ts_
line 234 of m_ts_sparse_
zH(ind_k) = zH(ind_k) + H(ind) * ph(jo)
The code stopped before the above line runs. Have the developers fully tested spin polarized tbtrans calculations and I am wondering are there any known issues here?
Thanks!
Changed in siesta: | |
importance: | Critical → High |
tags: | added: tbtrans |
Changed in siesta: | |
status: | Fix Committed → Fix Released |
I will check. Thanks.
Could you try and add this flag:
TBT.Spin 2
This will only calculate for the second spin-component. In this way you can parallelize across spin-components easily.