Scrambler  1
processing_declarations.f90
Go to the documentation of this file.
00001 !#########################################################################
00002 !               
00003 !    Copyright (C) 2003-2012 Department of Physics and Astronomy,
00004 !                            University of Rochester,
00005 !                            Rochester, NY
00006 !
00007 !    processing_declarations.f90 is part of AstroBEAR.
00008 !
00009 !    AstroBEAR is free software: you can redistribute it and/or modify    
00010 !    it under the terms of the GNU General Public License as published by 
00011 !    the Free Software Foundation, either version 3 of the License, or    
00012 !    (at your option) any later version.
00013 !
00014 !    AstroBEAR is distributed in the hope that it will be useful, 
00015 !    but WITHOUT ANY WARRANTY; without even the implied warranty of
00016 !    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017 !    GNU General Public License for more details.
00018 !
00019 !    You should have received a copy of the GNU General Public License
00020 !    along with AstroBEAR.  If not, see <http://www.gnu.org/licenses/>.
00021 !
00022 !#########################################################################
00025 
00029 
00032 MODULE ProcessingDeclarations
00033   USE Fields
00034   USE GlobalDeclarations
00035   IMPLICIT NONE
00036   PUBLIC
00037   SAVE
00038 
00039   INTEGER :: NrDiagnosticVars
00040   INTEGER, PARAMETER :: VOLUME=-999, MASS=-998
00041   REAL(KIND=qPREC), PARAMETER :: MINOVERALL=1e30, MAXOVERALL=-1e30
00042   INTEGER :: Processing_mbc = 0 !Number of ghost zones needed for processing...
00043 
00044   TYPE DiagnosticListDef
00045      TYPE(FieldDef) :: Field
00046      TYPE(DiagnosticListDef), POINTER :: next
00047   END type DiagnosticListDef
00048 
00049   TYPE(DiagnosticListDef), POINTER :: FirstDiagnostic=>NULL(), LastDiagnostic=>NULL()
00050   CONTAINS
00051 
00052 
00056   SUBROUTINE AddDiagnosticVar(i, str)
00057      INTEGER :: i
00058      CHARACTER(LEN=*), OPTIONAL :: str
00059      TYPE(DiagnosticListDef), POINTER :: Field
00060      NrDiagnosticVars=NrDiagnosticVars+1
00061      IF (ASSOCIATED(LastDiagnostic)) THEN
00062         ALLOCATE(LastDiagnostic%next)
00063         LastDiagnostic=>LastDiagnostic%next
00064      ELSE
00065         ALLOCATE(LastDiagnostic)
00066         FirstDiagnostic=>LastDiagnostic
00067      END IF
00068      LastDiagnostic%Field%id=i
00069      LastDiagnostic%Field%component=GASCOMP
00070      IF (PRESENT(str)) THEN
00071         LastDiagnostic%Field%Name=str
00072      ELSE
00073         LastDiagnostic%Field%Name=GetName(i)
00074      END IF
00075   END SUBROUTINE AddDiagnosticVar
00076 
00077 END MODULE ProcessingDeclarations
 All Classes Files Functions Variables