Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PLAG_DerivedInputValues.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: Set values derived from user input.
26 !
27 ! Description: None.
28 !
29 ! Input:
30 ! regions Data for regions
31 !
32 ! Output: None.
33 !
34 ! Notes: None.
35 !
36 !******************************************************************************
37 !
38 ! $Id: PLAG_DerivedInputValues.F90,v 1.4 2008/12/06 08:44:33 mtcampbe Exp $
39 !
40 ! Copyright: (c) 2004 by the University of Illinois
41 !
42 !******************************************************************************
43 
44 SUBROUTINE plag_derivedinputvalues(regions)
45 
46  USE moddatatypes
47  USE moderror
48  USE modparameters
49  USE modglobal, ONLY: t_global
50  USE moddatastruct, ONLY: t_region
51  USE modmpi
52 
54 
55  IMPLICIT NONE
56 
57 ! *****************************************************************************
58 ! Declarations and definitions
59 ! *****************************************************************************
60 
61 ! =============================================================================
62 ! Arguments
63 ! =============================================================================
64 
65  TYPE(t_region), DIMENSION(:), POINTER :: regions
66 
67 ! =============================================================================
68 ! Locals
69 ! =============================================================================
70 
71  CHARACTER(CHRLEN) :: rcsidentstring
72  INTEGER :: ireg,ncont
73 #ifdef RFLO
74  INTEGER :: ilev
75 #endif
76  TYPE(t_global), POINTER :: global
77 
78 ! *****************************************************************************
79 ! Start
80 ! *****************************************************************************
81 
82  rcsidentstring = '$RCSfile: PLAG_DerivedInputValues.F90,v $ $Revision: 1.4 $'
83 
84  global => regions(1)%global
85 
86  CALL registerfunction(global,'PLAG_DerivedInputValues',&
87  'PLAG_DerivedInputValues.F90')
88 
89  IF ( global%myProcid == masterproc .AND. &
90  global%verbLevel > verbose_none ) THEN
91  WRITE(stdout,'(A,1X,A)') solver_name, &
92  'Setting derived input variables for particles...'
93  END IF ! global%verbLevel
94 
95 ! ******************************************************************************
96 ! Set derived input values
97 ! ******************************************************************************
98 
99 #ifdef RFLO
100  DO ireg = 1,global%nRegions
101 
102  regions(ireg)%mixtInput%computeTv = .true.
103  ncont = regions(ireg)%plagInput%nCont
104 
105  DO ilev = 1,regions(ireg)%nGridLevels
106 
107  IF (regions(ireg)%levels(ilev)%mixt%nTv < 2) THEN
108  regions(ireg)%levels(ilev)%mixt%nTv = 2
109  END IF ! nTv
110 
111  regions(ireg)%levels(ilev)%plag%nCv = cv_plag_last + ncont
112  regions(ireg)%levels(ilev)%plag%nDv = dv_plag_last + ncont
113  regions(ireg)%levels(ilev)%plag%nTv = tv_plag_last
114  regions(ireg)%levels(ilev)%plag%nAiv = aiv_plag_last
115  regions(ireg)%levels(ilev)%plag%nArv = arv_plag_last
116  regions(ireg)%levels(ilev)%plag%nEv = ev_plag_last + ncont
117  END DO ! iLev
118  END DO ! iReg
119 #endif
120 
121 #ifdef RFLU
122  DO ireg = lbound(regions,1),ubound(regions,1)
123 
124  regions(ireg)%mixtInput%computeTv = .true.
125  ncont = regions(ireg)%plagInput%nCont
126 
127  IF (regions(ireg)%mixtInput%nTv < 2) THEN
128  regions(ireg)%mixtInput%nTv = 2
129  END IF ! nTv
130 
131  regions(ireg)%plag%nCv = cv_plag_last + ncont
132  regions(ireg)%plag%nDv = dv_plag_last + ncont
133  regions(ireg)%plag%nTv = tv_plag_last
134  regions(ireg)%plag%nAiv = aiv_plag_last
135  regions(ireg)%plag%nArv = arv_plag_last
136  regions(ireg)%plag%nEv = ev_plag_last + ncont
137  END DO ! iReg
138 #endif
139 
140 ! ******************************************************************************
141 ! End
142 ! ******************************************************************************
143 
144  IF ( global%myProcid == masterproc .AND. &
145  global%verbLevel > verbose_none ) THEN
146  WRITE(stdout,'(A,1X,A)') solver_name, &
147  'Setting derived input variables for particles done.'
148  END IF ! global%verbLevel
149 
150  CALL deregisterfunction(global)
151 
152 END SUBROUTINE plag_derivedinputvalues
153 
154 !******************************************************************************
155 !
156 ! RCS Revision history:
157 !
158 ! $Log: PLAG_DerivedInputValues.F90,v $
159 ! Revision 1.4 2008/12/06 08:44:33 mtcampbe
160 ! Updated license.
161 !
162 ! Revision 1.3 2008/11/19 22:17:46 mtcampbe
163 ! Added Illinois Open Source License/Copyright
164 !
165 ! Revision 1.2 2005/01/08 20:39:54 fnajjar
166 ! Added nEv definition for Eulerian-based field
167 !
168 ! Revision 1.1 2004/12/01 20:57:30 fnajjar
169 ! Initial revision after changing case
170 !
171 ! Revision 1.3 2004/03/05 22:09:03 jferry
172 ! created global variables for peul, plag, and inrt use
173 !
174 ! Revision 1.2 2004/02/27 16:01:57 haselbac
175 ! Fixed bug for RFLO
176 !
177 ! Revision 1.1 2004/02/26 21:00:53 haselbac
178 ! Initial revision
179 !
180 !******************************************************************************
181 
182 
183 
184 
185 
186 
187 
subroutine registerfunction(global, funName, fileName)
Definition: ModError.F90:449
subroutine plag_derivedinputvalues(regions)
subroutine deregisterfunction(global)
Definition: ModError.F90:469