The main documentation of the Flags Module contains additional explanation of this code listing.
! ! Author: Michael L. Hall ! P.O. Box 1663, MS-D413, LANL ! Los Alamos, NM 87545 ! ph: 505-665-4312 ! email: Hall@LANL.gov ! ! Created on: 1/15/99 ! CVS Info: $Id: flags.F90,v 1.4 2008/09/26 00:04:27 hall Exp $ module Caesar_Flags_Module ! Start up with everything untyped and public. ! Note: this module contains no private information. implicit none public ! Initialization and finalization flags, used to set initial and ! final values for intrinsics. type(integer), parameter :: initialize_integer_flag=0, & finalize_integer_flag=6622130 type(real), parameter :: initialize_real_flag=0.d0, & finalize_real_flag=662.2130d0 type(logical), parameter :: initialize_logical_flag=.false., & finalize_logical_flag=.false. type(character,9), parameter :: initialize_character_flag='Undefined', & finalize_character_flag='Finalized' ! Initialization flags, used to indicate when a derived type has ! been initialized. type(integer), parameter :: uninitialized_flag=0, & initialized_flag=6622130 ! Boundary condition face flags. type(integer), parameter :: Internal_or_Periodic_BC=0, & Dirichlet_BC=1, Homogeneous_BC=-1, & Neumann_BC=2, Reflective_BC=-2, & Source_BC=3, Vacuum_BC=-3 ! AMR flags to indicate large and small cells at a level-jump interface. ! These should not conflict with the boundary condition face flags. type(integer), parameter :: AMR_Large_Cell_BC=4, & AMR_Small_Cell_BC=-4 end module Caesar_Flags_Module