USER_PROBLEM: Adapt the sincos profile for the periodic box.
Signed-off-by: Grzegorz Kowal <grzegorz@amuncode.org>
This commit is contained in:
parent
d62d29d0ed
commit
ab481646b6
@ -290,7 +290,7 @@ module user_problem
|
||||
integer :: i, j, k
|
||||
real(kind=8) :: r1, r2, bx, by, bz
|
||||
real(kind=8), dimension(nn) :: x, y
|
||||
real(kind=8), dimension(nn) :: snx, csx, sny, csy, thy, ch2
|
||||
real(kind=8), dimension(nn) :: snx, csx, sny, csy, thy, shy
|
||||
real(kind=8), dimension(nn,nn) :: az
|
||||
|
||||
!-------------------------------------------------------------------------------
|
||||
@ -301,16 +301,19 @@ module user_problem
|
||||
select case(profile)
|
||||
|
||||
case(2)
|
||||
snx(:) = sin(pi * x(:))
|
||||
csx(:) = cos(pi * x(:))
|
||||
snx(:) = sin(pi * x(:))
|
||||
csx(:) = cos(pi * x(:))
|
||||
sny(:) = sin(pi2 * y(:))
|
||||
csy(:) = cos(pi2 * y(:))
|
||||
thy(:) = tanh(y(:) / dlta)
|
||||
ch2(:) = cosh(y(:) / dlta)**2
|
||||
thy(:) = tanh( y(:) / dlta) &
|
||||
- tanh((y(:) + 1.0d+00) / dlta) &
|
||||
+ 1.0d+00
|
||||
shy(:) = tanh((y(:) + 1.0d+00) / dlta)**2 / dlta &
|
||||
- tanh( y(:) / dlta)**2 / dlta
|
||||
|
||||
do j = 1, nn
|
||||
do i = 1, nn
|
||||
bx = bamp * csx(i) * (csy(j) * thy(j) + sny(j) / (pi2 * dlta * ch2(j)))
|
||||
bx = bamp * csx(i) * (csy(j) * thy(j) + sny(j) * shy(j) / pi2)
|
||||
by = bamp * 5.0d-01 * snx(i) * sny(j) * thy(j)
|
||||
bz = sqrt(max(0.0d+00, bgui**2 + zeta * (bamp**2 - bx**2 - by**2)))
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user