# transiesta does not converge for biased system

Dear Siesta users,

I am running transiesta on a metal/heavily p-doped semiconductor/metal system. At zero bias transiesta converges well according to the following convergence criteria

SCF.Mix density

SCF.DM.Converge .true.

SCF.DM.Tolerance 1.d-4

SCF.H.Converge .true.

SCF.H.Tolerance 1.d-3 eV

However, as soon as there is a non-zero bias I am unable to converge, even for very small values for the bias, say 0.1 eV. I tried different values for mixing and different grid spacing for the equilibrium and non-equilibrium parts. I have also controlled the variation of the Fermi level. Nothing helped. The convergence does make progress, but stops short of the criteria above. For example, using SCF.Mix density I can only reach an error of about 7e-3 for the density matrix while for the hamiltonian it does much better:

ts-scf: 82 -148924.176493 -148924.299263 -148924.299263 0.007402 -3.579231 0.000068

ts-scf: 83 -148924.177217 -148924.300175 -148924.300175 0.007312 -3.579231 0.000209

ts-scf: 84 -148924.178657 -148924.300099 -148924.300099 0.007197 -3.579231 0.000103

If I continue the calculation above the total energy keeps oscillating in the third decimal value. If I use instead SCF.Mix hamiltonian, then the density matrix converges well but the hamiltonian does not:

ts-scf: 44 -148924.261238 -148924.250726 -148924.250726 0.003672 -3.579231 0.022974

ts-scf: 45 -148924.247314 -148924.248288 -148924.248288 0.003802 -3.579231 0.018166

ts-scf: 46 -148924.225513 -148924.233580 -148924.233580 0.002878 -3.579231 0.028566

ts-scf: 47 -148924.269291 -148924.256242 -148924.256242 0.000828 -3.579231 0.007620

ts-scf: 48 -148925.094886 -148924.955382 -148924.955382 0.011201 -3.578819 0.369875

ts-scf: 49 -148924.966051 -148924.962300 -148924.962300 0.000209 -3.578819 0.376305

ts-scf: 50 -148924.941578 -148924.948857 -148924.948857 0.000210 -3.578819 0.372517

Here the oscillation is in the first decimal value. I have done many biased calculations before without this problem. Can anybody help with some ideas on how to control these oscillations to reach the desired convergence criteria?

Thanks a lot, Leo

## Question information

- Language:
- English Edit question

- Status:
- Answered

- For:
- Siesta Edit question

- Assignee:
- No assignee Edit question

- Last query:
- 2018-10-17

- Last reply:
- 2018-10-17

Nick Papior (nickpapior) said : | #1 |

What was your mixing weights tried? It maybe needs to be really low.

Sometimes it may just be because a specific bias is tricky. Also try and change the bias value.

Leonardo Fonseca (fonseca65) said : | #2 |

Hi Nick, thanks for the answer. My mixing parameters go from 0.0005 to

0.002 (see below). Since I wrote my question I tried to decrease my energy

window (bias) step size, from 0.1 eV to 0.05 eV. Then I succeeded to go

from 0 to 0.05 to 0.10 eV. I am now trying 0.15 eV. Still, convergence is

very hard, requiring hundreds of steps for each energy window value.

Perhaps by lowering the mixing parameters even further as you suggested may

help:

%block SCF.Mixers

init

mid

final

%endblock

%block SCF.Mixer.init

method pulay

weight 0.0005

history 8

next mid

next.p 0.001

%endblock

%block SCF.Mixer.mid

method pulay

weight 0.001

history 8

next final

next.p 0.0001

%endblock

%block SCF.Mixer.final

method pulay

weight 0.002

history 8

%endblock

Em qua, 17 de out de 2018 às 15:57, Nick Papior <

<email address hidden>> escreveu:

> Your question #674857 on Siesta changed:

> https:/

>

> Status: Open => Answered

>

> Nick Papior proposed the following answer:

> What was your mixing weights tried? It maybe needs to be really low.

>

> Sometimes it may just be because a specific bias is tricky. Also try and

> change the bias value.

>

> --

> If this answers your question, please go to the following page to let us

> know that it is solved:

> https:/

>

> If you still need help, you can reply to this email or go to the

> following page to enter your feedback:

> https:/

>

> You received this question notification because you asked the question.

>

Nick Papior (nickpapior) said : | #3 |

You could try with a little less history steps, sometimes the history retains some fluctuations making it harder to converge.

Also, sometimes uneven number of history steps is better because it *may* remove some symmetry in the history.

Note, these things are _very_ system dependent.

## Can you help with this problem?

Provide an answer of your own, or ask Leonardo Fonseca for more information if necessary.