54 TYPE(t_region
),
POINTER :: regions(:)
68 global => regions(1)%global
71 'RFLO_CheckUserInput.F90' )
79 IF (((dv_mixt_vvel - dv_mixt_uvel)/=1).OR. &
80 ((dv_mixt_wvel - dv_mixt_vvel)/=1).OR. &
81 ((dv_mixt_temp - dv_mixt_wvel)/=1)) istop = 1
82 IF (((gr_mixt_vx - gr_mixt_ux)/=1).OR.((gr_mixt_wx - gr_mixt_vx)/=1).OR. &
83 ((gr_mixt_tx - gr_mixt_wx)/=1).OR.((gr_mixt_uy - gr_mixt_tx)/=1).OR. &
84 ((gr_mixt_vy - gr_mixt_uy)/=1).OR.((gr_mixt_wy - gr_mixt_vy)/=1).OR. &
85 ((gr_mixt_ty - gr_mixt_wy)/=1).OR.((gr_mixt_uz - gr_mixt_ty)/=1).OR. &
86 ((gr_mixt_vz - gr_mixt_uz)/=1).OR.((gr_mixt_wz - gr_mixt_vz)/=1).OR. &
87 ((gr_mixt_tz - gr_mixt_wz)/=1) ) istop = 1
89 IF (istop == 1) CALL
errorstop( global,err_grad_index,__line__ )
95 IF (global%nRegionsProc < 0)
THEN
96 CALL
errorstop( global,err_no_procmap,__line__ )
97 ELSE IF (global%nRegionsProc > 0)
THEN
98 IF (global%nProcAlloc*global%nRegionsProc /= global%nRegions) &
99 CALL
errorstop( global,err_no_procmatch,__line__ )
105 IF (global%flowType == flow_unsteady .AND. &
106 global%solverType == solv_implicit)
THEN
107 IF (global%predictSol.eqv..true.)
THEN
108 CALL
errorstop( global,err_illegal_value,__line__, &
109 'for Rocstar, safer to use PREDICTSOL=0' )
116 IF (global%moveGridScheme == movegrid_frame .OR. &
117 global%moveGridScheme == movegrid_foms)
THEN
118 IF (global%nRegions < 8)
THEN
119 CALL
errorstop( global,err_illegal_value,__line__, &
120 'Selected grid motion type only applicable for cases with >= 8 regions' )
122 IF (global%moveGridNbour > (26 + (global%nRegions-8)*2))
THEN
123 CALL
errorstop( global,err_illegal_value,__line__, &
124 'Maximum number of NEIGHBOR in type 2 grid motion is 26+2*(nReg-8)' )
126 IF (global%moveGridNbour < 2)
THEN
127 CALL
errorstop( global,err_illegal_value,__line__, &
128 'Minimum number of NEIGHBOR in type 2 grid motion is 2' )
130 IF (global%moveGridNsmatch < 2)
THEN
131 CALL
errorstop( global,err_illegal_value,__line__, &
132 'Minimum number NSURFMATCH in type 2 grid motion is 2' )
138 IF ( global%randSeedType < rand_seed_type_fixed .OR. &
139 global%randSeedType > rand_seed_type_clock )
THEN
140 CALL
errorstop(global,err_rand_seed_type_invalid,__line__)
145 IF ( global%aeroCoeffs==active .AND. global%nProbes==0)
THEN
146 CALL
errorstop(global,err_dependent_input,__line__, &
147 'activate Probe section (NUMBER>0) when AEROCOEFFS/=0 in Force section')
152 DO ireg=1,global%nRegions
156 IF (regions(ireg)%mixtInput%spaceDiscr/=discr_cen_scal .AND. &
157 regions(ireg)%mixtInput%spaceDiscr/= discr_upw_roe)
THEN
158 CALL
errorstop(global,err_unknown_option,__line__, &
159 'only central and Roe-upwind implemented')
162 IF (regions(ireg)%mixtInput%spaceOrder < discr_order_1 .OR. &
163 regions(ireg)%mixtInput%spaceOrder > discr_order_2)
THEN
164 CALL
errorstop(global,err_unknown_option,__line__, &
165 'only 1st and 2nd order space discr. implemented')
170 IF (regions(ireg)%mixtInput%spaceOrder <= discr_order_2 .AND. &
171 regions(ireg)%nDumCells < 2)
THEN
172 CALL
errorstop( global,err_grid_dumcells,__line__, &
173 'number of dummy layers should be at least 2' )
178 computetv = regions(ireg)%mixtInput%computeTv
179 viscmodel = regions(ireg)%mixtInput%viscModel
180 IF ((computetv.eqv..true.) .AND. &
181 (viscmodel < visc_suthr .OR. viscmodel > visc_antib )) &
182 CALL
errorstop( global,err_unknown_viscmodel,__line__ )
186 IF (regions(ireg)%mixtInput%moveGrid.eqv..true.)
THEN
187 IF (mod( global%nRegions,global%nProcAlloc )/=0)
THEN
188 CALL
errorstop( global,err_no_procmatch,__line__, &
189 'Sorry, currently gridmotion only allows nRegs multiple of nProcs' )
195 IF (regions(ireg)%localNumber > base_tag_shift)
THEN
196 CALL
errorstop( global,err_mpi_trouble,__line__, &
197 'increase TAG_SHIFTs parameters or reduce maximum nRegions/proc.' )
203 IF (base_tag_shift < 0 .OR. &
204 mod( peul_tag_shift,base_tag_shift ) /= 1 .OR. &
205 mod( turb_tag_shift,base_tag_shift ) /= 1 .OR. &
206 mod( radi_tag_shift,base_tag_shift ) /= 1 .OR. &
207 mod( plag_tag_shift,base_tag_shift ) /= 1)
THEN
208 CALL
errorstop( global,err_mpi_trouble,__line__, &
209 'TAG_SHIFTs should be n*BASE_TAG_SHIFT+1, n>0, BASE_TAG_SHIFT>0' )
subroutine registerfunction(global, funName, fileName)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine deregisterfunction(global)