Changing U' to transpose(U) for peace of mind

This commit is contained in:
Nuwan Yapa 2024-12-27 18:33:01 -05:00
parent 95ccd11057
commit 2715191ee5
3 changed files with 5 additions and 5 deletions

View File

@ -181,7 +181,7 @@ function get_jacobi_V2_matrix(V_of_r, basis::ho_basis_2B, μω_global; atol=10^-
V_relative = get_sp_V_matrix(V_relative_elem, basis.n1s, basis.l1s, [basis.n2s, basis.l2s]; dtype=ComplexF64, cache=V_relative_cache) + get_sp_V_matrix(V_relative_elem, basis.n2s, basis.l2s, [basis.n1s, basis.l1s]; dtype=ComplexF64, cache=V_relative_cache) V_relative = get_sp_V_matrix(V_relative_elem, basis.n1s, basis.l1s, [basis.n2s, basis.l2s]; dtype=ComplexF64, cache=V_relative_cache) + get_sp_V_matrix(V_relative_elem, basis.n2s, basis.l2s, [basis.n1s, basis.l1s]; dtype=ComplexF64, cache=V_relative_cache)
U = Moshinsky_transform(basis) U = Moshinsky_transform(basis)
V2 = U' * V_relative * U V2 = transpose(U) * V_relative * U
return V2 return V2
end end
@ -217,7 +217,7 @@ function get_src_V12_matrix(V_of_r, basis::ho_basis_2B, μω_global; atol=10^-6,
V_relative = get_sp_V_matrix(V_relative_elem, basis.n1s, basis.l1s, [basis.n2s, basis.l2s]; dtype=ComplexF64, E_max=basis.E_max) V_relative = get_sp_V_matrix(V_relative_elem, basis.n1s, basis.l1s, [basis.n2s, basis.l2s]; dtype=ComplexF64, E_max=basis.E_max)
U = Moshinsky_transform(basis) U = Moshinsky_transform(basis)
V12 = U' * V_relative * U V12 = transpose(U) * V_relative * U
return V12 return V12
end end

View File

@ -31,7 +31,7 @@ V_relative_elem(l, n1, n2) = Va * V_Gaussian(Ra, l, n1, n2; μω_gen=μω_global
@time "V2" V2 = get_sp_V_matrix(V_elem, basis.n2s, basis.l2s, [basis.n1s, basis.l1s]; E_max=E_max) @time "V2" V2 = get_sp_V_matrix(V_elem, basis.n2s, basis.l2s, [basis.n1s, basis.l1s]; E_max=E_max)
@time "V relative" V_relative = get_sp_V_matrix(V_relative_elem, basis.n1s, basis.l1s, [basis.n2s, basis.l2s]; E_max=E_max) @time "V relative" V_relative = get_sp_V_matrix(V_relative_elem, basis.n1s, basis.l1s, [basis.n2s, basis.l2s]; E_max=E_max)
@time "Moshinsky brackets" U = Moshinsky_transform(basis) @time "Moshinsky brackets" U = Moshinsky_transform(basis)
@time "V12" V12 = U' * V_relative * U @time "V12" V12 = transpose(U) * V_relative * U
println("Calculating spectrum") println("Calculating spectrum")
@time "H" H = T1 + T2 + T_cross + V1 + V2 + V12 @time "H" H = T1 + T2 + T_cross + V1 + V2 + V12

View File

@ -1,4 +1,4 @@
println("### Test: U' * U == identity") println("### Test: transpose(U) * U == identity")
using LinearAlgebra using LinearAlgebra
@ -15,7 +15,7 @@ println("Basis size = ", basis.dim)
@time "Moshinsky brackets" U = Moshinsky_transform(basis) @time "Moshinsky brackets" U = Moshinsky_transform(basis)
check = U' * U - I check = transpose(U) * U - I
println("Maximum = ", maximum(abs.(check))) println("Maximum = ", maximum(abs.(check)))
println("Norm = ", sum(check .* conj(check))) println("Norm = ", sum(check .* conj(check)))