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

📄 varcom.f90

📁 国外大名顶顶的“台风”并行计算流体力学CFD软件的早期版本的源代码
💻 F90
字号:
!----------------------------------------------------------------------------------------! MODULE : VARCOM                         Auteur : J. Gressier!                                         Date   : Octobre 2002! Fonction                                Modif  : (cf historique)!   Variables globales du code TYPHON!! Defauts/Limitations/Divers :!!----------------------------------------------------------------------------------------module VARCOM use TYPHMAKE   ! machine accuracy definition! -- Variables globales du module -------------------------------------------character(len=6), parameter :: version = "0.1.6"logical        :: mpi_run              ! calcul parallele MPI ou noncharacter      :: memory_mode          ! mode d'economie memoirecharacter      :: model_mode           ! mode de modelisation physiqueinteger        :: taille_buffer        ! taille de buffer pour la distribution des calculs! -- CONSTANTES globales du module -------------------------------------------! -- Definition des fonctionnaliteslogical, parameter :: pass_kdif  = .true.logical, parameter :: pass_ns    = .true.logical, parameter :: pass_vort  = .true.logical, parameter :: pass_mpi   = .false.logical, parameter :: pass_amr   = .false.logical, parameter :: pass_coupl_int = .true.logical, parameter :: pass_coupl_ext = .false.! -- Constantes "erreurs"character, parameter :: cnull = ' 'integer,   parameter :: inull = 0! -- Constantes de definition du mode de calcul cpu/memoire --character, parameter :: mode_normal = 'N' ! mode economie : normalcharacter, parameter :: save_mem    = 'M' ! mode economie : memoire  minimale (recalcul)character, parameter :: save_cpu    = 'C' ! mode economie : cpu time minimal  (mise en memoire)! -- Constantes de definition du type de modelisation (qualite/hypothese) --character, parameter :: model_max = 'X'   ! mode modelisation : strict (hypotheses minimales)character, parameter :: model_hyp = 'H'   ! mode modelisation : avec hypotheses classiquescharacter, parameter :: model_sim = 'S'   ! mode modelisation : simpliste! -- Constantes de definition du type de maillage --character, parameter :: mshSTR = 'S'      ! maillage structurecharacter, parameter :: mshUST = 'U'      ! maillage non structurecharacter, parameter :: mshHYB = 'H'      ! maillage hybride! -- Constantes de definition du type de solveur --integer, parameter   :: solNS     = 10    ! Equations de Navier-Stokes (EQNS)integer, parameter   :: solKDIF   = 20    ! Equation  de la chaleur    (EQKDIF)integer, parameter   :: solVORTEX = 30    ! Methode integrale et lagrangienne VORTEX!definitino de solVORTEX dans MENU_SOLVER! -- Constantes pour le choix du parametre "temps" (mnu_project)character, parameter :: stationnaire   = 'S'character, parameter :: instationnaire = 'I'character, parameter :: periodique     = 'P'! -- Constantes pour le choix du parametre "typ_coord" (mnu_projMODCOM/VARCOM.f90ect)character, parameter :: c2dplan  = 'P'character, parameter :: c2daxi   = 'X'character, parameter :: c3dgen   = 'G'! -- Constantes de definition du format de maillage --character, parameter   :: fmt_CGNS    = 'C'   ! format CGNScharacter, parameter   :: fmt_TYPHMSH = 'M'   ! format CGNScharacter, parameter   :: fmt_TECPLOT = 'T'   ! format TECPLOT (ascii)character, parameter   :: fmt_VIGIE   = 'V'   ! format VIGIEcharacter, parameter   :: fmt_VTK     = 'K'   ! format VTK! -- Constantes pour le choix du type de sortie des donnees (centres ou noeuds)integer, parameter :: outp_NODE         = 01integer, parameter :: outp_CENTER       = 02integer, parameter :: outp_COR          = 03 !DEV2602integer, parameter :: outp_FLUX         = 04 !DEV2602integer, parameter :: outp_TEMPINTER    = 05 !DEV1404! -- Constantes pour l'etat d'avancement du calculinteger, parameter :: end_calc          = 01 !DEV2602integer, parameter :: in_cycle          = 02 !DEV2602! -- Constantes de definition des conditions aux limites (physique) --integer, parameter :: bc_connection     = 01integer, parameter :: bc_coupling       = 02integer, parameter :: bc_geo_sym        = 10integer, parameter :: bc_geo_period     = 11integer, parameter :: bc_geo_periodx    = 12integer, parameter :: bc_geo_extrapol   = 13integer, parameter :: bc_wall_adiab     = 20integer, parameter :: bc_wall_isoth     = 21integer, parameter :: bc_wall_flux      = 22integer, parameter :: bc_wall_hconv     = 23integer, parameter :: bc_inlet_sub      = 30integer, parameter :: bc_inlet_sup      = 31integer, parameter :: bc_outlet_sub     = 35integer, parameter :: bc_outlet_sup     = 36integer, parameter :: bc_farfield       = 90integer, parameter :: bc_wall           = 92integer, parameter :: bc_kutta          = 95! -- Constantes de definition des conditions aux limites (calcul) --integer, parameter :: bc_calc_ghostcell = 01   ! calcul par cellule fictiveinteger, parameter :: bc_calc_ghostface = 02   ! calcul par cellule fictive sur la faceinteger, parameter :: bc_calc_flux      = 03   ! calcul par flux, pas de point fictifinteger, parameter :: bc_calc_singpanel = 10   ! calcul implicite de singularitesinteger, parameter :: bc_calc_kutta     = 15   ! calcul de condition kutta-joukowskiinteger, parameter :: bc_calc_farfield  = 16   ! calcul de condition champ lointain! -- Constantes de definition des parametres de conditions aux limites --integer, parameter :: extrap_quantity   = 1integer, parameter :: extrap_gradient   = 2! -- Constantes pour les types de connections ou couplages --!    au niveau des faces communes du maillageinteger, parameter  :: mesh_match    = 01integer, parameter  :: mesh_nonmatch = 03integer, parameter  :: mesh_slide    = 04! -- Constantes pour le choix du parametre "typecalcul" (coupling)integer, parameter  :: compact    = 01integer, parameter  :: consistant = 02integer, parameter  :: threed     = 03! -- Constantes pour le choix du parametre "mode" (coupling)integer, parameter  :: fixed  = 01integer, parameter  :: sensor = 02! -- Constantes pour le choix du parametre "boco" (coupling)integer, parameter  :: couplingboco_TT  = 01integer, parameter  :: couplingboco_CC  = 02integer, parameter  :: couplingboco_CT  = 03integer, parameter  :: couplingboco_TC  = 04! -- Constantes pour le choix du parametre "solvercoupling" (zonecoupling)integer, parameter  :: kdif_kdif = 01integer, parameter  :: kdif_ns   = 02integer, parameter  :: ns_ns     = 03! -- Constantes pour le choix du parametre typ_cor (MENU_ZONECOUPLING) : type de correctioninteger, parameter  :: sans       = 01integer, parameter  :: avant      = 02integer, parameter  :: apres      = 03integer, parameter  :: auto       = 04integer, parameter  :: repart_reg = 05integer, parameter  :: repart_geo = 06integer, parameter  :: partiel    = 07integer, parameter  :: bocoT      = 08integer, parameter  :: bocoT2     = 09 !DEV1603! -- Constantes pour le choix du parametre "activite" (senseur)!!integer, parameter  :: fluxcomp = 1!integer, parameter  :: tempevol = 2! -- DECLARATIONS -----------------------------------------------------------contains!----------------------------------------------------------------------------------------subroutine init_varcom()  ! parametres par defaut  mpi_run       = .false.  memory_mode   = mode_normal  model_mode    = model_max  taille_buffer = 64   ! 1024 ?   ! constantesendsubroutine init_varcom!----------------------------------------------------------------------------------------endmodule VARCOM!------------------------------------------------------------------------------!! Historique des modifications!! Oct  2002 : creation du module!------------------------------------------------------------------------------!

⌨️ 快捷键说明

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