def_boco_vortex.f90

来自「国外大名顶顶的“台风”并行计算流体力学CFD软件的早期版本的源代码」· F90 代码 · 共 99 行

F90
99
字号
!------------------------------------------------------------------------------!! Procedure : def_boco_vortex             Auteur : J. Gressier!                                         Date   : Fevrier 2004! Fonction                                Modif  : (cf historique)!   Traitement des parametres du fichier menu principal!   Parametres de definitions des conditions limites!! Defauts/Limitations/Divers :!!------------------------------------------------------------------------------!subroutine def_boco_vortex(block, type, boco, unif)use RPMuse TYPHMAKEuse VARCOMuse OUTPUTuse MENU_VORTEXuse MENU_BOCOuse PAN2D_LINimplicit none! -- Declaration des entrees --type(rpmblock), target :: block    ! bloc RPM contenant les definitionsinteger                :: type     ! type de condition aux limitesinteger                :: unif     ! uniformite de la condition limite! -- Declaration des sorties --type(st_boco_vort) :: boco! -- Declaration des variables internes --type(rpmblock), pointer  :: pblock, pcour  ! pointeur de bloc RPMinteger                  :: ib, nkey, i, infocharacter(len=dimrpmlig) :: str            ! chaine RPM intermediaire! -- Debut de la procedure --pblock => blockselect case(type)case(bc_farfield)    call rpmgetkeyvalstr(pblock, "VELOCITY", str)  boco%vect = v3d_of(str, info)   if (info /= 0) then    call erreur("lecture de menu","probleme a la lecture du vecteur VELOCITY")   endifcase(bc_wall)    call rpmgetkeyvalstr(pblock, "ELEMENT", str, "VORTEX_LIN")  boco%element = inull  if (samestring(str, "VORTEX_LIN" )) boco%element = sng_vortexlin  select case(boco%element)  case(sng_vortexlin)    call print_info(10,"      panneau de vorticite, distribution lineaire")  case default    call erreur("lecture de menu","type de singularite inconnu")   endselectcase(bc_kutta)    call rpmgetkeyvalstr(pblock, "MODE", str, "EQUILIBRIUM")  boco%mode = cnull  if (samestring(str, "EQUILIBRIUM" )) boco%mode = kt_equilibrium  if (samestring(str, "SHEDDING" ))    boco%mode = kt_shedding  select case(boco%mode)  case(kt_equilibrium)  case(kt_shedding)    call erreur("developpement","mode de calcul de condition KUTTA en developpement")   case default    call erreur("lecture de menu","mode de calcul de condition KUTTA inconnu")   endselectcase default  call erreur("Lecture de menu","type de conditions aux limites non reconnu&              & pour le solveur VORTEX")endselectendsubroutine def_boco_vortex!------------------------------------------------------------------------------!! Historique des modifications!! fev  2004 : creation de la routine! mars 2004 : lecture de champ infini uniforme!------------------------------------------------------------------------------!

⌨️ 快捷键说明

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