⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 strain.f90

📁 1D有限差分波动方程模拟
💻 F90
字号:
!=======================================================================SUBROUTINE  STRAIN (D)  USE PRECISION   , ONLY:                                              &                          WP       USE CONTROL_DATA, ONLY:                                              &                          KTTO, MZ  USE AUXIL       , ONLY:                                              &                          AH, BH, CH  USE WAVEFIELD   , ONLY:                                              &                          E!-----------------------------------------------------------------------  IMPLICIT NONE  INTEGER :: L    REAL(WP), DIMENSION(0:MZ), INTENT(INOUT) :: D!-----------------------------------------------------------------------  IF      ( KTTO < 0 ) THEN   ! top boundary is free surface: use AFDA    E (0) = CH*( - 11._WP/12._WP * D (0)                               &                 + 17._WP/24._WP * D (1)                               &                 +  3._WP/ 8._WP * D (2)                               &                 -  5._WP/24._WP * D (3)                               &                 +  1._WP/24._WP * D (4) )  ELSE IF ( KTTO == 0 ) THEN  ! top boundary is plane of symmetry: use symmetric imaging    E (0) = AH*( D (2) - D (1) )                                       &          + BH*( D (1) - D (0) )  ELSE                        ! top boundary is 'non-reflecting': use 2nd order FDA      E (0) = CH*( D (1) - D (0) )  END IF        DO  L = 1, MZ-2             ! interior FD scheme    E (L) = AH*( D (L+2) - D (L-1) )                                   &          + BH*( D (L+1) - D (L  ) )  END DO                              ! bottom boundary is 'non-reflecting': use 2nd order FDA  L = MZ-1    E (L) = CH*( D (L+1) - D (L  ) )END  SUBROUTINE  STRAIN

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -