mirror of
https://github.com/triqs/dft_tools
synced 2024-09-16 17:35:31 +02:00
c426946803
The mapping for NORMION = True has been implemented. Also, the orthogonalization loop has been fixed. First of all, orthogonalization should be done separately for each block map 'bl_map'. Second, one has to take into account that the orbital dimensions of the block matrix can vary from block to block. To make that the overlap matrix is non-singular one, thus, has to pass to 'orthogonalize_projector_matrix()' only a view of a submatrix of 'pmat' corresponding to the current block. Two tests to check the simplest cases have been added.
23 lines
942 B
Plaintext
23 lines
942 B
Plaintext
density matrix: [[[[ 0.53073815 0.00000001 -0. -0.00000002 0. ]
|
|
[ 0.00000001 0.53074869 0. 0.00000002 -0.00000001]
|
|
[-0. 0. 0.54606387 -0. -0.0000001 ]
|
|
[-0.00000002 0.00000002 -0. 0.5308456 -0. ]
|
|
[ 0. -0.00000001 -0.0000001 -0. 0.54513241]]
|
|
|
|
[[ 0.53004807 0.00000002 0. 0.00000001 -0. ]
|
|
[ 0.00000002 0.53003083 0. -0.00000001 -0. ]
|
|
[ 0. 0. 0.54606372 0. 0.00000009]
|
|
[ 0.00000001 -0.00000001 0. 0.52993693 0. ]
|
|
[-0. -0. 0.00000009 0. 0.54513254]]]]
|
|
overlap matrix: [[[[ 1. -0. -0. -0. -0.]
|
|
[-0. 1. 0. 0. -0.]
|
|
[-0. 0. 1. 0. -0.]
|
|
[-0. 0. 0. 1. 0.]
|
|
[-0. -0. -0. 0. 1.]]
|
|
|
|
[[ 1. 0. -0. 0. 0.]
|
|
[ 0. 1. 0. -0. -0.]
|
|
[-0. 0. 1. -0. 0.]
|
|
[ 0. -0. -0. 1. -0.]
|
|
[ 0. -0. 0. -0. 1.]]]]
|