亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? fdtd3d_cpml.f90

?? 基于matlab的三維時(shí)域有限差分程序(pec邊界條件)
?? F90
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
!***********************************************************************
!     3-D FDTD code with CPML absorbing boundary conditions
!***********************************************************************
!
!     Program author: Jamesina J. Simpson, Ph.D. Graduate Student
!                     National Science Foundation Fellow
!                     NU Computational Electromagnetics Laboratory
!                     Director: Allen Taflove
!                     Department of Electrical Engineering and 
!                                                      Computer Science
!                     Northwestern University
!                     2145 Sheridan Road
!                     Evanston, IL 60208
!                     j-simpson@northwestern.edu
!
!     Copyright 2005
!
!     This FORTRAN 90 code implements the finite-difference time-domain
!     solution of Maxwell's curl equations over a three-dimensional
!     Cartesian space lattice.  The grid is terminated by CPML absorbing
!     boundary conditions.  However, in a straightforward manner it can
!     be altered to have PEC planes at any of the outer grid boundaries.  
!     Also, the number of grid cells as well as the thickness of 
!     the PML in each Cartesian direction can be varied independently.
!
!     For illustrative purposes, the code supplied here models the PML 
!     numerical experiment described in Section 7.11.2.  Three output 
!     files are generated having the following data:
!
!       (1) Ez at the source for each time step;
!       (2) Ey at the probe point for each time step;  and
!       (3) The plane of Ez values 1 mm above the source in the k-
!           direction recorded at the time step, "record_grid".  This 
!           data can be viewed in Matlab using the following commands:
!
!             >>  load view_grid.dat
!             >>  for j = 1:Jmax
!             >>      image(1:Imax,j) = view_grid(1+(j-1)*Imax:j*Imax);
!             >>  end
!             >>  pcolor(image'); shading flat
!
!     The relative error (equation 7.135) graphed in Fig. 7.6 on 
!     page 318 can be reproduced by comparing the output file 
!     "probe.dat" with that of a much larger benchmark grid having 
!     Imax, Jmax, and Kmax increased to the values mentioned in the text.
!
!     This code has been tested using the Intel Fortran Compiler 8.0 for
!     Linux.  The executable can be created by typing
!     "ifort fdtd3D_CPML.f90" at the command prompt.
!
!     This program is not guaranteed to be free of defects or bugs.
!     Please report any bugs that may exist to:
!                                          j-simpson@northwestern.edu
!
!
!***********************************************************************


   PROGRAM fdtd3D_CPML

   IMPLICIT NONE

!  ..................................
!  Input Fundamental Constants (MKS units)
   REAL, PARAMETER ::                            &
      pi = 3.14159265358979, C = 2.99792458E8, &
      muO = 4.0 * pi * 1.0E-7, epsO = 1.0/(C*C*muO)

!  ..................................
!  Specify Material Relative Permittivity and Conductivity
   REAL, PARAMETER::                      &
      epsR = 1.0, sigM1 = 0.0   ! free space

!  ..................................
!  Specify Number of Time Steps and Grid Size Parameters
   INTEGER, PARAMETER ::                                     &
      nmax = 2100, &  ! total number of time steps
      Imax = 51, Jmax = 126, Kmax = 26  ! grid size corresponding to the
                                        ! number of Ez field components 
!  ..................................
!  Specify Grid Cell Size in Each Direction and Calculate the 
!  Resulting Courant-Stable Time Step
   REAL, PARAMETER ::                                        &
      dx = 1.0E-3, dy = 1.0E-3, dz = 1.0E-3,  &  ! cell size in each direction
      dt = 0.99 / (C*(1.0/dx**2+1.0/dy**2+1.0/dz**2)**0.5)
                                                 ! time step increment

!  ..................................
!  Specify the Impulsive Source (See Equation 7.134)
   REAL, PARAMETER ::                                        &
      tw = 53.0E-12, tO = 4.0*tw  

!  ..................................
!  Specify the Time Step at which the Grid is Recorded for Visualization
   INTEGER, PARAMETER ::                                        &
      record_grid = 300 

!  ..................................
!  Specify the PEC Plate Boundaries and the Source/Recording Points
   INTEGER, PARAMETER ::                                    &
      istart = (Imax-1)/2-11, iend = istart+24, jstart = istart,   &
      jend = jstart + 99, kstart = Kmax/2, kend = kstart,      &
      isource = istart, jsource = jstart, ksource = kend+1,     &
      irecv1 = iend, jrecv1 = jend+1, krecv1 = kend  ! Ey at probe point

!  ..................................
!  Specify the CPML Thickness in Each Direction (Value of Zero 
!  Corresponds to No PML, and the Grid is Terminated with a PEC)
   INTEGER, PARAMETER ::                        &
      ! PML thickness in each direction 
      nxPML_1 = 11, nxPML_2 = nxPML_1, nyPML_1 = nxPML_1,      &
      nyPML_2 = nxPML_1, nzPML_1 = nxPML_1, nzPML_2 = nxPML_2
!  ..................................
!  Specify the CPML Order and Other Parameters
   INTEGER, PARAMETER ::                        & 
      m = 3, ma = 1 
   REAL, PARAMETER  ::                     &
      sig_x_max = 0.75 * (0.8*(m+1)/(dx*(muO/epsO*epsR)**0.5)),   &
      sig_y_max = 0.75 * (0.8*(m+1)/(dy*(muO/epsO*epsR)**0.5)),   &
      sig_z_max = 0.75 * (0.8*(m+1)/(dz*(muO/epsO*epsR)**0.5)),   &
      alpha_x_max = 0.24,   &
      alpha_y_max = alpha_x_max, alpha_z_max = alpha_x_max, &
      kappa_x_max = 15.0, &
      kappa_y_max = kappa_x_max, kappa_z_max = kappa_x_max

   INTEGER ::                                                &
	i,j,ii,jj,k,kk,n

   REAL  ::                                                   &
      source, P1, P2

!     TM components
   REAL,DIMENSION(Imax, Jmax, Kmax)  ::                      &
      Ez, CA, CB, sig, eps

   REAL,DIMENSION(Imax-1, Jmax, Kmax)  ::                      &
      Hy

   REAL,DIMENSION(Imax,Jmax-1, Kmax)  ::                      &
      Hx

   REAL  ::                        &
      DA, DB

!     TE components
   REAL,DIMENSION(Imax-1, Jmax-1, Kmax-1)  ::                      &
      Hz

   REAL,DIMENSION(Imax-1, Jmax, Kmax-1)  ::                      &
      Ex

   REAL,DIMENSION(Imax,Jmax-1, Kmax-1)  ::                      &
      Ey

!  PML
   REAL ,DIMENSION(nxPML_1,Jmax,Kmax) ::                       &
      psi_Ezx_1

   REAL ,DIMENSION(nxPML_2,Jmax,Kmax) ::                       &
      psi_Ezx_2

   REAL ,DIMENSION(nxPML_1-1,Jmax,Kmax) ::                       &
      psi_Hyx_1

   REAL ,DIMENSION(nxPML_2-1,Jmax,Kmax) ::                       &
      psi_Hyx_2

   REAL ,DIMENSION(Imax,nyPML_1,Kmax) ::                       &
      psi_Ezy_1                               

   REAL ,DIMENSION(Imax,nyPML_2,Kmax) ::                       &
      psi_Ezy_2

   REAL ,DIMENSION(Imax,nyPML_1-1,Kmax) ::                       &
      psi_Hxy_1                               

   REAL ,DIMENSION(Imax,nyPML_2-1,Kmax) ::                       &
      psi_Hxy_2

   REAL ,DIMENSION(Imax,Jmax-1,nzPML_1-1) ::                       &
      psi_Hxz_1

   REAL ,DIMENSION(Imax,Jmax-1,nzPML_2-1) ::                       &
      psi_Hxz_2

   REAL ,DIMENSION(Imax-1,Jmax,nzPML_1-1) ::                       &
      psi_Hyz_1

   REAL ,DIMENSION(Imax-1,Jmax,nzPML_2-1) ::                       &
      psi_Hyz_2

   REAL ,DIMENSION(Imax-1,Jmax,nzPML_1) ::                       &
      psi_Exz_1

   REAL ,DIMENSION(Imax-1,Jmax,nzPML_2) ::                       &
      psi_Exz_2

   REAL ,DIMENSION(Imax,Jmax-1,nzPML_1) ::                       &
      psi_Eyz_1

   REAL ,DIMENSION(Imax,Jmax-1,nzPML_2) ::                       &
      psi_Eyz_2

   REAL ,DIMENSION(nxPML_1-1,Jmax-1,Kmax-1) ::                       &
      psi_Hzx_1
   REAL ,DIMENSION(nxPML_1,Jmax-1,Kmax-1) ::                       &
      psi_Eyx_1

   REAL ,DIMENSION(nxPML_2-1,Jmax-1,Kmax-1) ::                       &
      psi_Hzx_2
   REAL ,DIMENSION(nxPML_2,Jmax-1,Kmax-1) ::                       &
      psi_Eyx_2

   REAL ,DIMENSION(Imax-1,nyPML_1-1,Kmax-1) ::                       &
      psi_Hzy_1                               
   REAL ,DIMENSION(Imax-1,nyPML_1,Kmax-1) ::                       &
      psi_Exy_1                               

   REAL ,DIMENSION(Imax-1,nyPML_2-1,Kmax-1) ::                       &
      psi_Hzy_2
   REAL ,DIMENSION(Imax-1,nyPML_2,Kmax-1) ::                       &
      psi_Exy_2

   REAL ,DIMENSION(nxPML_1) ::                       &
      be_x_1, ce_x_1, alphae_x_PML_1, sige_x_PML_1, kappae_x_PML_1
   REAL ,DIMENSION(nxPML_1-1) ::                       &
      bh_x_1, ch_x_1, alphah_x_PML_1, sigh_x_PML_1, kappah_x_PML_1

   REAL ,DIMENSION(nxPML_2) ::                       &
      be_x_2, ce_x_2, alphae_x_PML_2, sige_x_PML_2, kappae_x_PML_2
   REAL ,DIMENSION(nxPML_2-1) ::                       &
      bh_x_2, ch_x_2, alphah_x_PML_2, sigh_x_PML_2, kappah_x_PML_2

   REAL ,DIMENSION(nyPML_1) ::                       &
      be_y_1, ce_y_1, alphae_y_PML_1, sige_y_PML_1, kappae_y_PML_1
   REAL ,DIMENSION(nyPML_1-1) ::                       &
      bh_y_1, ch_y_1, alphah_y_PML_1, sigh_y_PML_1, kappah_y_PML_1

   REAL ,DIMENSION(nyPML_2) ::                       &
      be_y_2, ce_y_2, alphae_y_PML_2, sige_y_PML_2, kappae_y_PML_2
   REAL ,DIMENSION(nyPML_2-1) ::                       &
      bh_y_2, ch_y_2, alphah_y_PML_2, sigh_y_PML_2, kappah_y_PML_2

   REAL ,DIMENSION(nzPML_1) ::                       &
      be_z_1, ce_z_1, alphae_z_PML_1, sige_z_PML_1, kappae_z_PML_1
   REAL ,DIMENSION(nzPML_1-1) ::                       &
      bh_z_1, ch_z_1, alphah_z_PML_1, sigh_z_PML_1, kappah_z_PML_1

   REAL ,DIMENSION(nzPML_2) ::                       &
      be_z_2, ce_z_2, alphae_z_PML_2, sige_z_PML_2, kappae_z_PML_2
   REAL ,DIMENSION(nzPML_2-1) ::                       &
      bh_z_2, ch_z_2, alphah_z_PML_2, sigh_z_PML_2, kappah_z_PML_2

!     denominators for the update equations
   REAL,DIMENSION(Imax-1)  ::                      &
      den_ex, den_hx

   REAL,DIMENSION(Jmax-1)  ::                      &
      den_ey, den_hy

   REAL,DIMENSION(Kmax-1)  ::                      &
      den_ez, den_hz


!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!  OPEN OUTPUT FILES
!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   OPEN (UNIT = 30, FILE = "source.dat")
   OPEN (UNIT = 31, FILE = "probe.dat")
   OPEN (UNIT = 33, FILE = "view_grid.dat")

!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!  INITIALIZE VARIABLES
!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   P1 = 0.0
   P2 = 0.0

   Ez(:,:,:) = 0.0
   Hz(:,:,:) = 0.0
   Ex(:,:,:) = 0.0
   Hx(:,:,:) = 0.0
   Ey(:,:,:) = 0.0
   Hy(:,:,:) = 0.0
   sig(:,:,:) = sigM1
   eps(:,:,:) = epsR*epsO

   psi_Exy_1(:,:,:) = 0.0
   psi_Exy_2(:,:,:) = 0.0
   psi_Exz_1(:,:,:) = 0.0
   psi_Exz_2(:,:,:) = 0.0
   psi_Eyx_1(:,:,:) = 0.0
   psi_Eyx_2(:,:,:) = 0.0
   psi_Eyz_1(:,:,:) = 0.0
   psi_Eyz_2(:,:,:) = 0.0
   psi_Ezy_1(:,:,:) = 0.0
   psi_Ezy_2(:,:,:) = 0.0
   psi_Ezx_1(:,:,:) = 0.0
   psi_Ezx_2(:,:,:) = 0.0
   psi_Hxy_1(:,:,:) = 0.0
   psi_Hxy_2(:,:,:) = 0.0
   psi_Hxz_1(:,:,:) = 0.0
   psi_Hxz_2(:,:,:) = 0.0
   psi_Hyx_1(:,:,:) = 0.0
   psi_Hyx_2(:,:,:) = 0.0
   psi_Hyz_1(:,:,:) = 0.0
   psi_Hyz_2(:,:,:) = 0.0
   psi_Hzy_1(:,:,:) = 0.0
   psi_Hzy_2(:,:,:) = 0.0
   psi_Hzx_1(:,:,:) = 0.0
   psi_Hzx_2(:,:,:) = 0.0

   write(*,*)"Imax: ", Imax
   write(*,*)"Jmax: ", Jmax
   write(*,*)"Kmax: ", Kmax
   write(*,*)"dt: ", dt
   write(*,*)"nmax: ", nmax
   write(*,*)"max time: ", nmax*dt
   write(*,*)"record grid after ", record_grid, "dt"

!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!  SET CPML PARAMETERS IN EACH DIRECTION
!~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   DO i = 1,nxPML_1
      sige_x_PML_1(i) = sig_x_max * ( (nxPML_1 - i) / (nxPML_1 - 1.0) )**m
      alphae_x_PML_1(i) = alpha_x_max*((i-1.0)/(nxPML_1-1.0))**ma
      kappae_x_PML_1(i) = 1.0+(kappa_x_max-1.0)*   &

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
自拍偷拍欧美激情| 亚洲欧美一区二区三区孕妇| 国产v日产∨综合v精品视频| 一区二区三区日本| 久久久久久久综合狠狠综合| 欧美伊人久久久久久午夜久久久久| 国产一区二区美女| 视频一区免费在线观看| 成人欧美一区二区三区黑人麻豆 | 欧美精品一级二级三级| 国产.欧美.日韩| 国内成人精品2018免费看| 亚洲国产视频直播| 国产精品免费视频网站| 精品美女一区二区三区| 欧美日韩高清在线| 欧美伊人久久久久久久久影院 | 成人免费在线播放视频| 久久精品欧美日韩| 欧美一二三四在线| 欧美色欧美亚洲另类二区| 99视频超级精品| 国产不卡高清在线观看视频| 国内精品免费**视频| 老色鬼精品视频在线观看播放| 一个色在线综合| 亚洲最新在线观看| 亚洲日本在线看| 亚洲色图丝袜美腿| 国产精品乱人伦| 国产精品色一区二区三区| 欧美经典三级视频一区二区三区| 精品国产一区二区三区不卡| 日韩一区二区在线看片| 欧美高清性hdvideosex| 欧美精品久久久久久久多人混战 | 91丝袜高跟美女视频| 成人av资源下载| 91在线观看高清| 91免费国产在线| 色94色欧美sute亚洲13| 在线影视一区二区三区| 欧美日韩一区二区三区在线看 | 欧美国产乱子伦 | 亚洲另类色综合网站| 一区二区三区中文字幕电影| 亚洲精品国产第一综合99久久 | 精品99一区二区| 精品国产乱码久久久久久夜甘婷婷| 欧美变态tickling挠脚心| 亚洲精品一区在线观看| 国产免费久久精品| 亚洲美女视频一区| 丝袜国产日韩另类美女| 狠狠色丁香婷综合久久| 国产·精品毛片| 91极品美女在线| 在线播放欧美女士性生活| 精品不卡在线视频| 成人免费一区二区三区在线观看 | 精品系列免费在线观看| 成人中文字幕在线| 色婷婷av一区| 日韩一区二区在线观看| 国产欧美一区二区精品性| 最新日韩av在线| 午夜视频一区二区三区| 精品制服美女丁香| av亚洲精华国产精华| 欧美日韩大陆一区二区| 精品福利视频一区二区三区| 亚洲欧美综合另类在线卡通| 亚洲一区二区三区四区在线观看 | 天堂久久一区二区三区| 久久99精品一区二区三区| 成人看片黄a免费看在线| 欧洲一区二区三区在线| 2020国产成人综合网| 亚洲欧美二区三区| 久久精品噜噜噜成人av农村| 99r精品视频| 日韩女优电影在线观看| 亚洲男人都懂的| 狠狠网亚洲精品| 欧美在线观看禁18| 久久精品一区二区三区av| 亚洲愉拍自拍另类高清精品| 国产麻豆视频精品| 在线播放欧美女士性生活| 国产精品久久久久一区二区三区| 午夜视频一区在线观看| 99久久精品国产精品久久| 欧美一卡二卡三卡| 亚洲女爱视频在线| 国产精品99久久久久久似苏梦涵| 欧美日韩成人一区二区| 中文字幕日韩一区二区| 极品瑜伽女神91| 欧美日韩成人在线| 亚洲美女区一区| 成人高清免费观看| 欧美xxx久久| 视频一区中文字幕| 色婷婷av一区二区三区gif | 亚洲精品高清在线| 成人高清在线视频| 久久久国产综合精品女国产盗摄| 一个色在线综合| 91啪亚洲精品| 中文在线一区二区| 国产在线精品不卡| 欧美一卡二卡在线观看| 亚洲第一激情av| 色美美综合视频| 亚洲色图.com| www.欧美日韩| 国产欧美日韩在线| 国产精品中文欧美| 精品国产在天天线2019| 三级久久三级久久| 欧美日韩久久不卡| 亚洲国产日韩av| 欧洲精品中文字幕| 一区二区三区免费看视频| 99久久综合色| 国产精品初高中害羞小美女文| 国内欧美视频一区二区| 亚洲精品在线免费播放| 极品美女销魂一区二区三区 | 欧美日韩视频第一区| 亚洲精品日韩一| 色国产精品一区在线观看| 一区二区中文字幕在线| 成人黄色在线视频| 日韩一区欧美小说| 91黄色免费看| 亚洲妇熟xx妇色黄| 欧美精品视频www在线观看| 日韩制服丝袜先锋影音| 在线成人高清不卡| 免费在线观看成人| 欧美大黄免费观看| 国产精品911| 中文字幕在线不卡国产视频| 91色九色蝌蚪| 偷窥国产亚洲免费视频| 91精品国产综合久久蜜臀| 理论电影国产精品| 欧美激情在线一区二区| 99久久精品费精品国产一区二区| 亚洲欧美日韩人成在线播放| 在线看日本不卡| 日韩综合小视频| 精品国一区二区三区| 国产成人精品免费看| 中文字幕永久在线不卡| 色999日韩国产欧美一区二区| 亚洲成人激情自拍| 日韩精品在线网站| av不卡免费电影| 五月综合激情网| 久久影院电视剧免费观看| 国产成人h网站| 亚洲综合久久久| 日韩精品一区二| 91丨九色丨蝌蚪富婆spa| 日韩高清一区在线| 久久影院电视剧免费观看| 色综合色综合色综合| 日本少妇一区二区| 欧美激情在线一区二区| 欧美日韩一二三区| 国产剧情一区在线| 亚洲一本大道在线| 国产午夜精品福利| 欧美午夜一区二区三区| 国模冰冰炮一区二区| 樱桃视频在线观看一区| 欧美大黄免费观看| 91国偷自产一区二区三区观看| 秋霞午夜av一区二区三区| 中文字幕av一区二区三区高| 欧美系列在线观看| 高清不卡一区二区在线| 日本视频在线一区| 亚洲三级电影全部在线观看高清| 欧美一区二区三区电影| 91小视频在线观看| 国产中文字幕一区| 午夜精品免费在线观看| 中文字幕第一区第二区| 欧美一区二区三区视频在线观看| 成人免费看视频| 久久精品久久99精品久久| 亚洲已满18点击进入久久| 亚洲国产电影在线观看| 精品欧美一区二区久久 | 色88888久久久久久影院按摩| 国产精品一区二区三区乱码| 五月天丁香久久|