修改了两处不严谨的地方,gfortran环境下会warning,1:get_non_uniformgrid.f90中,IF判断中IF(SourceLength/GridSize.gt.51)改SourceLength/GridSize为整型SourceGridNum;2:替换旧写法PAUSE语句为READ(*,*)

这个提交包含在:
2026-08-18 18:48:15 +08:00
父节点 d855afd251
当前提交 4c4b501612
修改 2 个文件,包含 17 行新增17 行删除
+16 -16
查看文件
@@ -30,17 +30,17 @@ SUBROUTINE GET_NON_UNIFORMGRID
! ----------------------------end of mesh------------------------------------! ! ----------------------------end of mesh------------------------------------!
! -------------------------------mesh x----------------------------------------! ! -------------------------------mesh x----------------------------------------!
IF(Logi_Sourcelenth) THEN !The number of grids occupied by the source is odd IF(Logi_Sourcelenth) THEN !The number of grids occupied by the source is odd
if(SourceLength/GridSize.gt.51)then if(SourceGridNum.gt.51)then
do ii=nxs-(SourceLength/GridSize-1)/2,nxs+(SourceLength/GridSize-1)/2,1 do ii=nxs-(SourceGridNum-1)/2,nxs+(SourceGridNum-1)/2,1
Cdelx(ii)=GridSize Cdelx(ii)=GridSize
end do end do
do ii=nxs-(SourceLength/GridSize-1)/2-1,1,-1 do ii=nxs-(SourceGridNum-1)/2-1,1,-1
Cdelx(ii)=Cdelx(ii+1)*scale_par Cdelx(ii)=Cdelx(ii+1)*scale_par
if(Cdelx(ii).gt.GridSize_MAX)then if(Cdelx(ii).gt.GridSize_MAX)then
Cdelx(ii)=GridSize_MAX Cdelx(ii)=GridSize_MAX
end if end if
end do end do
do ii=nxs+(SourceLength/GridSize-1)/2+1,nx,1 do ii=nxs+(SourceGridNum-1)/2+1,nx,1
Cdelx(ii)=Cdelx(ii-1)*scale_par Cdelx(ii)=Cdelx(ii-1)*scale_par
if(Cdelx(ii).gt.GridSize_MAX)then if(Cdelx(ii).gt.GridSize_MAX)then
Cdelx(ii)=GridSize_MAX Cdelx(ii)=GridSize_MAX
@@ -64,17 +64,17 @@ SUBROUTINE GET_NON_UNIFORMGRID
end do end do
ENDIF ENDIF
ELSE !The number of grids occupied by the source is even ELSE !The number of grids occupied by the source is even
if(SourceLength/GridSize.gt.51)then if(SourceGridNum.gt.51)then
do ii=nxs-(SourceLength/GridSize-1)/2,nxs+1+(SourceLength/GridSize-1)/2,1 do ii=nxs-(SourceGridNum-1)/2,nxs+1+(SourceGridNum-1)/2,1
Cdelx(ii)=GridSize Cdelx(ii)=GridSize
end do end do
do ii=nxs-(SourceLength/GridSize-1)/2-1,1,-1 do ii=nxs-(SourceGridNum-1)/2-1,1,-1
Cdelx(ii)=Cdelx(ii+1)*scale_par Cdelx(ii)=Cdelx(ii+1)*scale_par
if(Cdelx(ii).gt.GridSize_MAX)then if(Cdelx(ii).gt.GridSize_MAX)then
Cdelx(ii)=GridSize_MAX Cdelx(ii)=GridSize_MAX
end if end if
end do end do
do ii=nxs+(SourceLength/GridSize-1)/2+2,nx,1 do ii=nxs+(SourceGridNum-1)/2+2,nx,1
Cdelx(ii)=Cdelx(ii-1)*scale_par Cdelx(ii)=Cdelx(ii-1)*scale_par
if(Cdelx(ii).gt.GridSize_MAX)then if(Cdelx(ii).gt.GridSize_MAX)then
Cdelx(ii)=GridSize_MAX Cdelx(ii)=GridSize_MAX
@@ -101,17 +101,17 @@ SUBROUTINE GET_NON_UNIFORMGRID
! -----------------------------end of mesh------------------------------------! ! -----------------------------end of mesh------------------------------------!
! --------------------------------mesh y----------------------------------------! ! --------------------------------mesh y----------------------------------------!
IF(Logi_Sourcelenth) THEN !The number of grids occupied by the source is odd IF(Logi_Sourcelenth) THEN !The number of grids occupied by the source is odd
IF(SourceLength/GridSize.gt.51)then IF(SourceGridNum.gt.51)then
do ii=nys-(SourceLength/GridSize-1)/2,nys+(SourceLength/GridSize-1)/2,1 do ii=nys-(SourceGridNum-1)/2,nys+(SourceGridNum-1)/2,1
Cdely(ii)=GridSize Cdely(ii)=GridSize
enddo enddo
do ii=nys-(SourceLength/GridSize-1)/2-1,1,-1 do ii=nys-(SourceGridNum-1)/2-1,1,-1
Cdely(ii)=Cdely(ii+1)*scale_par Cdely(ii)=Cdely(ii+1)*scale_par
if(Cdely(ii).gt.GridSize_MAX)then if(Cdely(ii).gt.GridSize_MAX)then
Cdely(ii)=GridSize_MAX Cdely(ii)=GridSize_MAX
end if end if
end do end do
do ii=nys+(SourceLength/GridSize-1)/2+1,ny,1 do ii=nys+(SourceGridNum-1)/2+1,ny,1
Cdely(ii)=Cdely(ii-1)*scale_par Cdely(ii)=Cdely(ii-1)*scale_par
if(Cdely(ii).gt.GridSize_MAX)then if(Cdely(ii).gt.GridSize_MAX)then
Cdely(ii)=GridSize_MAX Cdely(ii)=GridSize_MAX
@@ -135,17 +135,17 @@ SUBROUTINE GET_NON_UNIFORMGRID
end do end do
end if end if
ELSE !The number of grids occupied by the source is even ELSE !The number of grids occupied by the source is even
IF(SourceLength/GridSize.gt.51)then IF(SourceGridNum.gt.51)then
do ii=nys-(SourceLength/GridSize-1)/2,nys+1+(SourceLength/GridSize-1)/2,1 do ii=nys-(SourceGridNum-1)/2,nys+1+(SourceGridNum-1)/2,1
Cdely(ii)=GridSize Cdely(ii)=GridSize
enddo enddo
do ii=nys-(SourceLength/GridSize-1)/2-1,1,-1 do ii=nys-(SourceGridNum-1)/2-1,1,-1
Cdely(ii)=Cdely(ii+1)*scale_par Cdely(ii)=Cdely(ii+1)*scale_par
if(Cdely(ii).gt.GridSize_MAX)then if(Cdely(ii).gt.GridSize_MAX)then
Cdely(ii)=GridSize_MAX Cdely(ii)=GridSize_MAX
end if end if
end do end do
do ii=nys+(SourceLength/GridSize-1)/2+2,ny,1 do ii=nys+(SourceGridNum-1)/2+2,ny,1
Cdely(ii)=Cdely(ii-1)*scale_par Cdely(ii)=Cdely(ii-1)*scale_par
if(Cdely(ii).gt.GridSize_MAX)then if(Cdely(ii).gt.GridSize_MAX)then
Cdely(ii)=GridSize_MAX Cdely(ii)=GridSize_MAX
+1 -1
查看文件
@@ -62,7 +62,7 @@ SUBROUTINE TIME_SERIOUS
WRITE(10005,*)'The number of iteration steps exceeds the range given in the input.dat, please change it. now the Nstop value is determined by Max_off_time.' WRITE(10005,*)'The number of iteration steps exceeds the range given in the input.dat, please change it. now the Nstop value is determined by Max_off_time.'
print*,'The number of iteration steps exceeds the range given in the input.dat, please change it. now the Nstop value is determined by Max_off_time.' print*,'The number of iteration steps exceeds the range given in the input.dat, please change it. now the Nstop value is determined by Max_off_time.'
print*,'I give you a pause here, you should decide to continue or to quit' print*,'I give you a pause here, you should decide to continue or to quit'
pause READ(*,*)
Nstop=Nstop_temp Nstop=Nstop_temp
ENDIF ENDIF
RETURN RETURN