Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rflump.F90
Go to the documentation of this file.
1 ! *********************************************************************
2 ! * Rocstar Simulation Suite *
3 ! * Copyright@2015, Illinois Rocstar LLC. All rights reserved. *
4 ! * *
5 ! * Illinois Rocstar LLC *
6 ! * Champaign, IL *
7 ! * www.illinoisrocstar.com *
8 ! * sales@illinoisrocstar.com *
9 ! * *
10 ! * License: See LICENSE file in top level of distribution package or *
11 ! * http://opensource.org/licenses/NCSA *
12 ! *********************************************************************
13 ! *********************************************************************
14 ! * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, *
15 ! * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES *
16 ! * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND *
17 ! * NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR *
18 ! * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER *
19 ! * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, *
20 ! * Arising FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE *
21 ! * USE OR OTHER DEALINGS WITH THE SOFTWARE. *
22 ! *********************************************************************
23 ! ******************************************************************************
24 !
25 ! Purpose: Main driver of ROCFLU-MP.
26 !
27 ! Description: None.
28 !
29 ! Input:
30 ! casename Case name
31 ! verbLevel Verbosity
32 !
33 ! Output: None.
34 !
35 ! Notes: None.
36 !
37 ! ******************************************************************************
38 !
39 ! $Id: rflump.F90,v 1.7 2008/12/06 08:44:45 mtcampbe Exp $
40 !
41 ! Copyright: (c) 2005 by the University of Illinois
42 !
43 ! ******************************************************************************
44 
45 SUBROUTINE rflump(caseString,verbLevel)
46 
47  USE moddatatypes
48  USE moderror
49  USE modglobal, ONLY: t_global
50  USE moddatastruct, ONLY: t_level,t_region
51  USE modparameters
52 
53  USE modinterfaces, ONLY: rflu_endflowsolver, &
54  rflu_flowsolver, &
56 
57  IMPLICIT NONE
58 
59 ! ******************************************************************************
60 ! Definitions and declarations
61 ! ******************************************************************************
62 
63 ! ==============================================================================
64 ! Arguments
65 ! ==============================================================================
66 
67  CHARACTER(*) :: casestring
68  INTEGER, INTENT(IN) :: verblevel
69 
70 ! ==============================================================================
71 ! Locals
72 ! ==============================================================================
73 
74  CHARACTER(CHRLEN) :: casename
75  INTEGER :: ditersystem,errorflag
76  REAL(RFREAL) :: dtimesystem
77  TYPE(t_level), POINTER :: levels(:)
78  TYPE(t_global), POINTER :: global
79 
80 ! ******************************************************************************
81 ! Start, allocate global pointer
82 ! ******************************************************************************
83 
84  ALLOCATE(global,stat=errorflag)
85  IF ( errorflag /= err_none ) THEN
86  WRITE(stderr,'(A)') solver_name//' ERROR - pointer allocation failed.'
87  stop
88  END IF ! global
89 
90  casename = casestring(1:len(casestring))
91 
92 ! ******************************************************************************
93 ! Call initialization, solver, and finalization
94 ! ******************************************************************************
95 
96  CALL rflu_initflowsolver(casename,verblevel,global,levels)
97 
98  dtimesystem = global%maxTime - global%currentTime
99  ditersystem = global%MaxIter - global%currentIter
100 
101  CALL rflu_flowsolver(dtimesystem,ditersystem,levels)
102 
103  CALL rflu_endflowsolver(levels)
104 
105 ! ******************************************************************************
106 ! Deallocate global pointer
107 ! ******************************************************************************
108 
109  DEALLOCATE(global,stat=errorflag)
110  IF ( errorflag /= err_none ) THEN
111  WRITE(stderr,'(A)') solver_name//' ERROR - pointer deallocation failed.'
112  stop
113  END IF ! global
114 
115 ! ******************************************************************************
116 ! End
117 ! ******************************************************************************
118 
119 END SUBROUTINE rflump
120 
121 ! ******************************************************************************
122 !
123 ! RCS Revision history:
124 !
125 ! $Log: rflump.F90,v $
126 ! Revision 1.7 2008/12/06 08:44:45 mtcampbe
127 ! Updated license.
128 !
129 ! Revision 1.6 2008/11/19 22:17:57 mtcampbe
130 ! Added Illinois Open Source License/Copyright
131 !
132 ! Revision 1.5 2006/04/07 15:19:25 haselbac
133 ! Removed tabs
134 !
135 ! Revision 1.4 2005/09/14 15:59:33 haselbac
136 ! Minor clean-up
137 !
138 ! Revision 1.3 2005/09/13 20:46:01 mtcampbe
139 ! Moved profiling calls to (Init)(End)Flowsolver
140 !
141 ! Revision 1.2 2005/07/07 22:45:14 haselbac
142 ! Added profiling calls
143 !
144 ! Revision 1.1 2005/05/03 02:55:45 haselbac
145 ! Initial revision
146 !
147 ! ******************************************************************************
148 
149 
150 
151 
152 
153 
subroutine rflu_flowsolver(dTimeSystem, dIterSystem, levels)
subroutine rflump(caseString, verbLevel)
Definition: rflump.F90:45
subroutine rflu_endflowsolver(levels)
subroutine rflu_initflowsolver(casename, verbLevel, global, levels)