mirror of
https://github.com/triqs/dft_tools
synced 2025-04-25 09:44:53 +02:00
[fix] U_matrix renamed to U_matrix_slater e7310c8
This commit is contained in:
parent
beb9fc6fc6
commit
b2271d578e
@ -24,7 +24,7 @@ SK.block_structure.pick_gf_struct_solver([{'ud_0': [0,1,2],'ud_1': [0,1,2]}])
|
|||||||
# Now we set up the U matrix, first in cubic (Wien2k) convention:
|
# Now we set up the U matrix, first in cubic (Wien2k) convention:
|
||||||
U = 2.0
|
U = 2.0
|
||||||
J = 0.2
|
J = 0.2
|
||||||
U_sph = U_matrix(l=2, U_int=U, J_hund=J)
|
U_sph = U_matrix_slater(l=2, U_int=U, J_hund=J)
|
||||||
U_sph = np.kron(np.reshape(np.eye(2),(1,2,1,2)),np.kron(np.reshape(np.eye(2),(2,1,2,1)),U_sph))
|
U_sph = np.kron(np.reshape(np.eye(2),(1,2,1,2)),np.kron(np.reshape(np.eye(2),(2,1,2,1)),U_sph))
|
||||||
U_mat = transform_U_matrix(U_sph, SK.T[0].conjugate())
|
U_mat = transform_U_matrix(U_sph, SK.T[0].conjugate())
|
||||||
|
|
||||||
|
@ -29,7 +29,7 @@ SK.block_structure.pick_gf_struct_solver([{'up_1': [0],'up_2': [0],'up_3': [0],'
|
|||||||
# Now we set up the U matrix, first in cubic Wien2k convention:
|
# Now we set up the U matrix, first in cubic Wien2k convention:
|
||||||
U = 2.0
|
U = 2.0
|
||||||
J = 0.2
|
J = 0.2
|
||||||
U_mat = U_matrix(l=2,U_int=U,J_hund=J,basis='other', T=SK.T[0].conjugate())
|
U_mat = U_matrix_slater(l=2,U_int=U,J_hund=J,basis='other', T=SK.T[0].conjugate())
|
||||||
|
|
||||||
# Now we set up the Hamiltonian:
|
# Now we set up the Hamiltonian:
|
||||||
h_sumk = h_int_slater(['up','down'], range(5), U_mat, off_diag=True)
|
h_sumk = h_int_slater(['up','down'], range(5), U_mat, off_diag=True)
|
||||||
|
@ -26,7 +26,7 @@ dc_type = 1 # DC type: 0 FLL, 1 Held, 2 AMF
|
|||||||
#J = 0.8
|
#J = 0.8
|
||||||
#dc_type = 0 # DC type: 0 FLL, 1 Held, 2 AMF
|
#dc_type = 0 # DC type: 0 FLL, 1 Held, 2 AMF
|
||||||
## Construct Slater U matrix
|
## Construct Slater U matrix
|
||||||
#U_sph = U_matrix(l=2, U_int=U, J_hund=J)
|
#U_sph = U_matrix_slater(l=2, U_int=U, J_hund=J)
|
||||||
#U_cubic = transform_U_matrix(U_sph, spherical_to_cubic(l=2, convention='wien2k'))
|
#U_cubic = transform_U_matrix(U_sph, spherical_to_cubic(l=2, convention='wien2k'))
|
||||||
#Umat = t2g_submatrix(U_cubic, convention='wien2k')
|
#Umat = t2g_submatrix(U_cubic, convention='wien2k')
|
||||||
## Construct Slater Hamiltonian
|
## Construct Slater Hamiltonian
|
||||||
|
@ -51,7 +51,7 @@ U = 8.0
|
|||||||
J = 1.0
|
J = 1.0
|
||||||
|
|
||||||
|
|
||||||
U_sph = U_matrix(l=2, U_int=U, J_hund=J)
|
U_sph = U_matrix_slater(l=2, U_int=U, J_hund=J)
|
||||||
U_cubic = transform_U_matrix(U_sph, spherical_to_cubic(l=2, convention=''))
|
U_cubic = transform_U_matrix(U_sph, spherical_to_cubic(l=2, convention=''))
|
||||||
Umat, Upmat = reduce_4index_to_2index(U_cubic)
|
Umat, Upmat = reduce_4index_to_2index(U_cubic)
|
||||||
|
|
||||||
|
@ -58,7 +58,7 @@ def dmft_cycle():
|
|||||||
J = 1.0
|
J = 1.0
|
||||||
|
|
||||||
|
|
||||||
U_sph = U_matrix(l=2, U_int=U, J_hund=J)
|
U_sph = U_matrix_slater(l=2, U_int=U, J_hund=J)
|
||||||
U_cubic = transform_U_matrix(U_sph, spherical_to_cubic(l=2, convention=''))
|
U_cubic = transform_U_matrix(U_sph, spherical_to_cubic(l=2, convention=''))
|
||||||
Umat, Upmat = reduce_4index_to_2index(U_cubic)
|
Umat, Upmat = reduce_4index_to_2index(U_cubic)
|
||||||
|
|
||||||
|
@ -128,7 +128,7 @@ We now set up the interaction Hamiltonian. Since we want to rotate the interacti
|
|||||||
|
|
||||||
U = 2.0
|
U = 2.0
|
||||||
J = 0.2
|
J = 0.2
|
||||||
U_mat = U_matrix(l=2,U_int=U,J_hund=J,basis='other', T=SK.T[0].conjugate())
|
U_mat = U_matrix_slater(l=2,U_int=U,J_hund=J,basis='other', T=SK.T[0].conjugate())
|
||||||
|
|
||||||
In the last line we use the Wien2k convention to write the U matrix in the cubic harmonics. Next, we want to set up a Hamiltonian and rotate it into the *solver* basis::
|
In the last line we use the Wien2k convention to write the U matrix in the cubic harmonics. Next, we want to set up a Hamiltonian and rotate it into the *solver* basis::
|
||||||
|
|
||||||
|
@ -124,7 +124,7 @@ We now set up the interaction Hamiltonian. Since we want to rotate the interacti
|
|||||||
|
|
||||||
U = 2.0
|
U = 2.0
|
||||||
J = 0.2
|
J = 0.2
|
||||||
U_sph = U_matrix(l=2, U_int=U, J_hund=J)
|
U_sph = U_matrix_slater(l=2, U_int=U, J_hund=J)
|
||||||
U_sph = np.kron(np.reshape(np.eye(2),(1,2,1,2)),np.kron(np.reshape(np.eye(2),(2,1,2,1)),U_sph)) # inflating the matrix
|
U_sph = np.kron(np.reshape(np.eye(2),(1,2,1,2)),np.kron(np.reshape(np.eye(2),(2,1,2,1)),U_sph)) # inflating the matrix
|
||||||
U_mat = transform_U_matrix(U_sph, SK.T[0].conjugate())
|
U_mat = transform_U_matrix(U_sph, SK.T[0].conjugate())
|
||||||
|
|
||||||
|
@ -67,7 +67,7 @@ h_int = h_int_density(spin_names, n_orb, map_operator_structure=SK.sumk_to_solve
|
|||||||
#J = 0.8
|
#J = 0.8
|
||||||
#dc_type = 0 # DC type: 0 FLL, 1 Held, 2 AMF
|
#dc_type = 0 # DC type: 0 FLL, 1 Held, 2 AMF
|
||||||
## Construct Slater U matrix
|
## Construct Slater U matrix
|
||||||
#U_sph = U_matrix(l=2, U_int=U, J_hund=J)
|
#U_sph = U_matrix_slater(l=2, U_int=U, J_hund=J)
|
||||||
#U_cubic = transform_U_matrix(U_sph, spherical_to_cubic(l=2, convention='wien2k'))
|
#U_cubic = transform_U_matrix(U_sph, spherical_to_cubic(l=2, convention='wien2k'))
|
||||||
#Umat = t2g_submatrix(U_cubic, convention='wien2k')
|
#Umat = t2g_submatrix(U_cubic, convention='wien2k')
|
||||||
## Construct Slater Hamiltonian
|
## Construct Slater Hamiltonian
|
||||||
|
@ -73,10 +73,10 @@ for dmi in dm:
|
|||||||
# Test convert_operator
|
# Test convert_operator
|
||||||
SK = SumkDFT(hdf_file = 'SrVO3.ref.h5', use_dft_blocks=True)
|
SK = SumkDFT(hdf_file = 'SrVO3.ref.h5', use_dft_blocks=True)
|
||||||
BS = SK.block_structure
|
BS = SK.block_structure
|
||||||
from triqs.operators.util import h_int_slater, U_matrix, t2g_submatrix, transform_U_matrix
|
from triqs.operators.util import h_int_slater, U_matrix_slater, t2g_submatrix, transform_U_matrix
|
||||||
|
|
||||||
|
|
||||||
U3x3 = t2g_submatrix(U_matrix(2, U_int=2, J_hund=0.2, basis='spheric'))
|
U3x3 = t2g_submatrix(U_matrix_slater(2, U_int=2, J_hund=0.2, basis='spheric'))
|
||||||
|
|
||||||
BS.transformation = [{'up':np.eye(3), 'down': np.eye(3)}]
|
BS.transformation = [{'up':np.eye(3), 'down': np.eye(3)}]
|
||||||
H0 = h_int_slater(spin_names=['up','down'], n_orb=3, U_matrix=U3x3, off_diag=False)
|
H0 = h_int_slater(spin_names=['up','down'], n_orb=3, U_matrix=U3x3, off_diag=False)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user