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

📄 init_boco_kdif.f90

📁 国外大名顶顶的“台风”并行计算流体力学CFD软件的早期版本的源代码
💻 F90
字号:
!------------------------------------------------------------------------------!! Procedure : init_boco_kdif              Auteur : J. Gressier/E. Radenac!                                         Date   : Nov 2003! Fonction                                Modif  : !   Traitement des parametres du fichier menu principal!   Initialisation des conditions limites!! Defauts/Limitations/Divers :!!------------------------------------------------------------------------------!subroutine init_boco_kdif(defsolver, ustdom)use TYPHMAKEuse DEFFIELDuse MENU_KDIFuse USTMESHuse MENU_SOLVERuse VARCOMimplicit none! -- Declaration des entrees --type(st_ustmesh)  :: ustdom! -- Declaration des entrees/sorties --type(mnu_solver)  :: defsolver! -- Declaration des variables internes --integer :: iboco,i! -- Debut de la procedure --! On parcourt toutes les conditions limites du domainedo iboco = 1, ustdom%nboco   ! Condition de Dirichlet !  ! Cas d'existence d'un tableau de temperatures  if(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%alloctemp) then    allocate(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%temp(ustdom%boco(iboco)%nface))    ! Cas d'existence d'un fichier de temperatures limites :    if(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%tempfile .ne. cnull) then      open(unit=1002, file = trim(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%tempfile), form="formatted")      read(1002,*)  (defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%temp(i),i = 1, ustdom%boco(iboco)%nface)       close(1002)    endif  endif  ! Condition de Von Neumann  ! Cas d'existence d'un tableau de flux  if(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%allocflux) then    allocate(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%flux_nunif(ustdom%boco(iboco)%nface))    ! Cas d'existence d'un fichier de flux limites :    if(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%fluxfile .ne. cnull) then      open(unit=1002, file = trim(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%fluxfile), form="formatted")      read(1002,*)  (defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%flux_nunif(i),i = 1, ustdom%boco(iboco)%nface)       close(1002)      ! convention de flux sortant dans le code / CL : flux entrant pour l'utilisateur      defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%flux_nunif(:) = &        - defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%flux_nunif(:)    endif  endif  ! Condition de convection  ! Cas d'existence de tableaux de coefficients et temperatures de convection  if(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%allochconv) then    allocate(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%h_nunif(ustdom%boco(iboco)%nface))    allocate(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%tconv_nunif(ustdom%boco(iboco)%nface))    ! Cas d'existence de fichiers de coefficients et temperatures :    if(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%hfile .ne. cnull) then      open(unit=1002, file = trim(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%hfile), form="formatted")      read(1002,*)  (defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%h_nunif(i),i = 1, ustdom%boco(iboco)%nface)       close(1002)      !do i=1,ustdom%boco(iboco)%nface      ! convention de flux sortant dans le code / CL : flux entrant pour l'utilisateur      !defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%h_nunif(:) = &      !  - defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%h_nunif(:)      !enddo    endif    if(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%tconvfile .ne. cnull) then      open(unit=1002, file = trim(defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%tconvfile), form="formatted")      read(1002,*)  (defsolver%boco(ustdom%boco(iboco)%idefboco)%boco_kdif%tconv_nunif(i),i = 1, ustdom%boco(iboco)%nface)       close(1002)    endif  endifenddoendsubroutine init_boco_kdif!------------------------------------------------------------------------------!! Historique des modifications!! nov 2003 (v0.1.2) : creation de la routine! juin 2004 : conditions limites non uniformes de Neumann et convection!------------------------------------------------------------------------------!

⌨️ 快捷键说明

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