文件
tem3dfdtd-open/tem3dfdtd/lib/triangle-source.f90
T
2026-08-14 20:51:58 +08:00

32 行
980 B
Fortran

!Copyright (c) 2013 by https://git.em3d.cn/ under guide of Xiu Li(lixiu@chd.edu.cn)
!written by Huaifeng Sun(sunhuaifeng@email.sdu.edu.cn) and Xushan Lu(luxushan@gmail.com)
!Code distribution @ https://git.em3d.cn/
SUBROUTINE TRIANGLE_SOURCE
USE CONSTANTPARAMETERS
USE TIME_PARAMETER
USE OMP_LIB
IMPLICIT NONE
integer i,j,k
DELT=1.0D-7
CTIME(1)=0.0D0
SOURCE(1)=0.0D0
DO I=2,NSTOP
CTIME(I)=CTIME(I-1)+DELT(I-1)
IF(CTIME(I) .LT. WAVE/2.0D0)THEN
SOURCE(I)=2*AMP*CTIME(I)/WAVE
ELSEIF (CTIME(I) .GE. WAVE/2.0D0 .AND. CTIME(I) .LE. WAVE) THEN
SOURCE(I)=-2*AMP*CTIME(I)/WAVE+2*AMP
ELSE
SOURCE(I)=0.0D0
ENDIF
ENDDO
OPEN(9,FILE='CTIME_TRIANGLE_SOURCE.DAT',STATUS='UNKNOWN')
DO I=1,NSTOP
WRITE(9,'(3E24.16)')CTIME(I),DELT(I),SOURCE(I)
ENDDO
CLOSE(9)
WRITE(10005,*)'ǷʱѾдļCTIME_TRIANGLE_SOURCE.DAT'
RETURN
ENDSUBROUTINE TRIANGLE_SOURCE