aboutsummaryrefslogtreecommitdiff
path: root/src/Dissipation_6_5_min_err_coeff.F90
diff options
context:
space:
mode:
Diffstat (limited to 'src/Dissipation_6_5_min_err_coeff.F90')
-rw-r--r--src/Dissipation_6_5_min_err_coeff.F9032
1 files changed, 16 insertions, 16 deletions
diff --git a/src/Dissipation_6_5_min_err_coeff.F90 b/src/Dissipation_6_5_min_err_coeff.F90
index 991d1ff..48105b4 100644
--- a/src/Dissipation_6_5_min_err_coeff.F90
+++ b/src/Dissipation_6_5_min_err_coeff.F90
@@ -65,7 +65,7 @@ subroutine dissipation_6_5_opt (var, lsh, gsh, lbnd, bb, gsize, &
end if
center = gsh(1) / 2
- ir = center + gsize(1)
+ ir = center + max(gsize(1),3)
call set_dmatrix_half ( d(1:ir,1:ir), 1 )
@@ -78,7 +78,7 @@ subroutine dissipation_6_5_opt (var, lsh, gsh, lbnd, bb, gsize, &
atmp(1:ir,1:center) = tmp(1:ir,1:center)
- il = center + 1 - gsize(1)
+ il = center + 1 - max(gsize(1),3)
d = zero
call set_dmatrix_half ( d(il:ni,il:ni), 2 )
tmp(il:ni,il:ni) = -transpose ( &
@@ -277,7 +277,7 @@ subroutine dissipation_6_5_opt (var, lsh, gsh, lbnd, bb, gsize, &
end if
center = gsh(2) / 2
- jr = center + gsize(2)
+ jr = center + max(gsize(2),3)
call set_dmatrix_half ( d(1:jr,1:jr), 1 )
@@ -290,7 +290,7 @@ subroutine dissipation_6_5_opt (var, lsh, gsh, lbnd, bb, gsize, &
atmp(1:jr,1:center) = tmp(1:jr,1:center)
- jl = center + 1 - gsize(2)
+ jl = center + 1 - max(gsize(2),3)
d = zero
call set_dmatrix_half ( d(jl:nj,jl:nj), 2 )
tmp(jl:nj,jl:nj) = -transpose ( &
@@ -302,15 +302,15 @@ subroutine dissipation_6_5_opt (var, lsh, gsh, lbnd, bb, gsize, &
atmp(jl:nj,center+1:nj) = tmp(jl:nj,center+1:nj)
- allocate ( ycoeff(patch)%coeff(nj,nj) )
+ end if
- ycoeff(patch)%coeff = atmp
+ allocate ( ycoeff(patch)%coeff(nj,nj) )
- savedy(patch) = .true.
+ ycoeff(patch)%coeff = atmp
- deallocate ( atmp, d, b, h, tmp )
+ savedy(patch) = .true.
- end if
+ deallocate ( atmp, d, b, h, tmp )
end if
@@ -491,7 +491,7 @@ subroutine dissipation_6_5_opt (var, lsh, gsh, lbnd, bb, gsize, &
end if
center = gsh(3) / 2
- kr = center + gsize(3)
+ kr = center + max(gsize(3),3)
call set_dmatrix_half ( d(1:kr,1:kr), 1 )
@@ -504,7 +504,7 @@ subroutine dissipation_6_5_opt (var, lsh, gsh, lbnd, bb, gsize, &
atmp(1:kr,1:center) = tmp(1:kr,1:center)
- kl = center + 1 - gsize(3)
+ kl = center + 1 - max(gsize(3),3)
d = zero
call set_dmatrix_half ( d(kl:nk,kl:nk), 2 )
tmp(kl:nk,kl:nk) = -transpose ( &
@@ -516,15 +516,15 @@ subroutine dissipation_6_5_opt (var, lsh, gsh, lbnd, bb, gsize, &
atmp(kl:nk,center+1:nk) = tmp(kl:nk,center+1:nk)
- allocate ( zcoeff(patch)%coeff(nk,nk) )
+ end if
- zcoeff(patch)%coeff = atmp
+ allocate ( zcoeff(patch)%coeff(nk,nk) )
- savedz(patch) = .true.
+ zcoeff(patch)%coeff = atmp
- deallocate ( atmp, d, b, h, tmp )
+ savedz(patch) = .true.
- end if
+ deallocate ( atmp, d, b, h, tmp )
end if