menu_amr.f90

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

F90
94
字号
!------------------------------------------------------------------------------!! MODULE : MENU_AMR                       Auteur : J. Gressier!                                         Date   : July 2004! Fonction                                Modif  : (cf Historique)!   Definition des structures pour les entrees du programme TYPHON!   Structures pour la definition des amr!! Defauts/Limitations/Divers :!!------------------------------------------------------------------------------!module MENU_AMRuse TYPHMAKE   ! Definition de la precisionuse GEO3D      ! Definition des vecteurs 3Dimplicit none! -- Variables globales du module -------------------------------------------! -- method of amr --character, parameter :: amr_evolutive   = 'E'  ! full refinement each timecharacter, parameter :: amr_progressive = 'P'  ! progressive refinement (levels)! -- periodicity --character, parameter :: amr_cycle       = 'C'  ! only at each cyclecharacter, parameter :: amr_timestep    = 'T'  ! at each time step inside the cycle! -- type of amr criteria --character, parameter :: crit_sphere   = 'S'    ! geometrical criterioncharacter, parameter :: crit_boundary = 'B'    ! given number of cells from boundariescharacter, parameter :: crit_facediff = 'F'    ! difference of quantities at faces! -- DECLARATIONS -----------------------------------------------------------!------------------------------------------------------------------------------!! structure MNU_AMR : general numerical options !------------------------------------------------------------------------------!type mnu_amr  character             :: method      ! AMR method  character             :: period      ! refinement step periodicity  integer               :: maxlevel    ! max number of levels  integer               :: degree      ! degree of cell refinement  integer               :: nbcriter    ! number of criteria  type(mnu_amrcrit), dimension(:), pointer &                        :: criter      ! criteria arrayendtype mnu_amr!------------------------------------------------------------------------------!! structure MNU_AMRCRIT : numerical options for refinement criteria!------------------------------------------------------------------------------!type mnu_amrcrit  character             :: type        ! AMR criteria  integer               :: level       ! level  integer               :: quantity    ! quantite  type(v3d)             :: center      ! center position (si necessaire)  real(krp)             :: criterion   ! radius / threshold / etcendtype mnu_amrcrit! -- INTERFACES -------------------------------------------------------------interface delete  module procedure delete_mnu_amrendinterface! -- Fonctions et Operateurs ------------------------------------------------! -- IMPLEMENTATION ---------------------------------------------------------contains!------------------------------------------------------------------------------!! Procedure : desallocation d'une structure MNU_SOLVER!------------------------------------------------------------------------------!subroutine delete_mnu_amr(defamr)implicit nonetype(mnu_amr)  :: defamr  if (defamr%nbcriter /= 0) deallocate(defamr%criter)endsubroutine delete_mnu_amrendmodule MENU_AMR!------------------------------------------------------------------------------!! Changes history!! july 2004 : MODULE creation!------------------------------------------------------------------------------!

⌨️ 快捷键说明

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