Commit 18d6ce21 authored by Florian Goth's avatar Florian Goth
Browse files

fix more splittings

parent b9b2c7d8
Pipeline #6700 passed with stage
in 59 seconds
......@@ -376,22 +376,24 @@ splits(30)%Tcoeffs(17) = splits(30)%Tcoeffs(1)
splits(31)%Tcoeffs(3) = conjg(splits(31)%Tcoeffs(2))
splits(31)%Tcoeffs(4) = conjg(splits(31)%Tcoeffs(1))
splits(31)%Vcoeffs(1) = beta
splits(31)%Vcoeffs(2) = 1.D0 - 2.D0*beta
splits(31)%Vcoeffs(3) = beta
splits(31)%Vcoeffs(4) = 0.0
splits(31)%Vcoeffs(1) = 0.0
splits(31)%Vcoeffs(2) = beta
splits(31)%Vcoeffs(3) = 1.D0 - 2.D0*beta
splits(31)%Vcoeffs(4) = beta
! My first own third order method, designed to be a hermitian sequence of Operators
call createsplit(splits(32), 4, 3)
call createsplit(splits(32), 4, 4)
beta = 1.D0/3.D0
splits(32)%Tcoeffs(1) = 1.D0/24.D0*CMPLX(3.D0, -Sqrt(3.D0), dp)
splits(32)%Tcoeffs(2) = 1.D0/8.D0*CMPLX(3.D0, Sqrt(3.D0), dp)
splits(32)%Tcoeffs(3) = conjg(splits(32)%Tcoeffs(2))
splits(32)%Tcoeffs(4) = conjg(splits(32)%Tcoeffs(1))
splits(32)%Vcoeffs(1) = beta
splits(32)%Vcoeffs(2) = 1.D0 - 2.D0*beta
splits(32)%Vcoeffs(3) = beta
splits(32)%Vcoeffs(1) = 0.D0
splits(32)%Vcoeffs(2) = beta
splits(32)%Vcoeffs(3) = 1.D0 - 2.D0*beta
splits(32)%Vcoeffs(4) = beta
! the variant with m=2 optimized for large step sizes in Blanes 2014, 2. order
! We try to exploit the trace property and reduce the computational effort.
......@@ -405,7 +407,7 @@ splits(30)%Tcoeffs(17) = splits(30)%Tcoeffs(1)
! H_5 4 hermitian splitting with positive b's designed by me
call createsplit(splits(34), 6, 5)
call createsplit(splits(34), 6, 6)
splits(34)%Tcoeffs(1) = CMPLX(0.077032770903379296850,-0.018324799648727332496, dp)
splits(34)%Tcoeffs(2) = CMPLX(0.20575040027785073837,0.083675123976098550021, dp)
splits(34)%Tcoeffs(3) = CMPLX(0.21721682881876996478, -0.15249028336674476977, dp)
......@@ -413,11 +415,12 @@ splits(30)%Tcoeffs(17) = splits(30)%Tcoeffs(1)
splits(34)%Tcoeffs(5) = conjg(splits(34)%Tcoeffs(2))
splits(34)%Tcoeffs(6) = conjg(splits(34)%Tcoeffs(1))
splits(34)%Vcoeffs(1) = 0.18995702345368160876
splits(34)%Vcoeffs(2) = 1.D0/5.D0
splits(34)%Vcoeffs(3) = 1-2.D0*(splits(34)%Vcoeffs(1)+splits(34)%Vcoeffs(2) )
splits(34)%Vcoeffs(4) = splits(34)%Vcoeffs(2)
splits(34)%Vcoeffs(5) = splits(34)%Vcoeffs(1)
splits(34)%Vcoeffs(1) = 0.D0
splits(34)%Vcoeffs(2) = 0.18995702345368160876
splits(34)%Vcoeffs(3) = 1.D0/5.D0
splits(34)%Vcoeffs(4) = 1.D0-2.D0*(splits(34)%Vcoeffs(2)+splits(34)%Vcoeffs(3) )
splits(34)%Vcoeffs(5) = splits(34)%Vcoeffs(3)
splits(34)%Vcoeffs(6) = splits(34)%Vcoeffs(2)
end subroutine
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment