Commit 5bdcb7b4 authored by Florian Goth's avatar Florian Goth
Browse files

work

parent 8a976449
......@@ -49,7 +49,7 @@ subroutine init_splittings(split)
chosensplitting = split
nrofsplits = 34
nrofsplits = 36
Allocate(splits(nrofsplits))
! V-T Euler
......@@ -296,15 +296,15 @@ subroutine init_splittings(split)
splits(25)%Vcoeffs(4) = splits(25)%Vcoeffs(1)
splits(25)%Vcoeffs(5) = 0.D0
call createsplit(splits(26), 3, 2) !hermitian third order method with entirely complex coefficients
call createsplit(splits(26), 3, 3) !hermitian third order method with entirely complex coefficients, originally found by Suzuki 1990
alpha = CMPLX(1.D0/2.D0, Sqrt(3.D0)/6.D0, kind=kind(0.D0))
beta = 1.D0-alpha
splits(26)%Tcoeffs(1) = alpha/2.D0
splits(26)%Tcoeffs(2) = 1.D0/2.D0
splits(26)%Tcoeffs(3) = conjg(splits(26)%Tcoeffs(1))
splits(26)%Vcoeffs(1) = alpha
splits(26)%Vcoeffs(2) = conjg(alpha)
splits(26)%Vcoeffs(1) = 0.D0
splits(26)%Vcoeffs(2) = alpha
splits(26)%Vcoeffs(3) = conjg(alpha)
! The simple Order-4 method from here: http://www.gicas.uji.es/Research/splitting-complex.html
call createsplit(splits(27), 5, 5)
......@@ -425,7 +425,24 @@ splits(30)%Tcoeffs(17) = splits(30)%Tcoeffs(1)
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)
! A hermitian method as given in Suzuki 1990
call createsplit(splits(35), 6, 6)
alpha = CMPLX(1.D0/2.D0, Sqrt(3.D0)/6.D0, kind=kind(0.D0))
beta = CMPLX(1.D0/2.D0, 0.2071067811865, dp)
splits(35)%Tcoeffs(1) =
splits(35)%Tcoeffs(2) =
splits(35)%Tcoeffs(3) =
splits(35)%Tcoeffs(4) =
splits(35)%Tcoeffs(5) =
splits(35)%Tcoeffs(6) =
splits(35)%Vcoeffs(1) = 0.D0
splits(35)%Vcoeffs(2) =
splits(35)%Vcoeffs(3) =
splits(35)%Vcoeffs(4) =
splits(35)%Vcoeffs(5) =
splits(35)%Vcoeffs(6) =
end subroutine
end module splittings
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