Basically it should look like this (might be incomplete!)
scf (T, V, g, S, A, Enuc, C = None, nel, nbas = None, scf_param [dict]):
initial guess:
core guess (H = T + V)
user input (via C)
scf loop:
get F (from D or diis)
diag (F, A)
calc err
check convergence
return:
eps, C, D
Basically it should look like this (might be incomplete!)