51 INTEGER,
PARAMETER :: ERR_NONE = 0, &
52 ERR_REGISTER_FUN = 1, &
53 ERR_REACHED_DEFAULT = 2, &
54 ERR_PREVIOUS_ERRORS = 3, &
55 ERR_EXTERNAL_FUNCT = 4, &
56 ERR_EXCEEDS_DECL_MEM = 5, &
57 ERR_UNKNOWN_OPTION = 6, &
58 ERR_ILLEGAL_VALUE = 7, &
59 ERR_SYSTEM_COMMAND = 8, &
60 ERR_COMPILE_OPTION = 9
62 INTEGER,
PARAMETER :: ERR_ALLOCATE = 10, &
63 ERR_DEALLOCATE = 11, &
64 ERR_ASSOCIATED = 12, &
67 INTEGER,
PARAMETER :: ERR_DEPENDENT_INPUT = 15
69 INTEGER,
PARAMETER :: ERR_FILE_OPEN = 20, &
70 ERR_FILE_CLOSE = 21, &
72 ERR_FILE_WRITE = 23, &
73 ERR_FILE_EXIST = 24, &
74 ERR_UNKNOWN_FORMAT = 25, &
75 ERR_PROBE_LOCATION = 26, &
76 ERR_PROBE_SPECIFIED = 27, &
77 ERR_VAL_UNDEFINED = 28, &
78 ERR_STOPFILE_FOUND = 29
80 INTEGER,
PARAMETER :: ERR_UNKNOWN_BC = 30, &
81 ERR_NO_BCSPECIFIED = 31, &
82 ERR_BCVAL_MISSING = 32, &
83 ERR_NO_BCSWITCH = 33, &
84 ERR_VAL_BCSWITCH = 34, &
85 ERR_PATCH_RANGE = 35, &
86 ERR_BC_VARNAME = 36, &
88 ERR_TBC_NONINIT = 38, &
91 INTEGER,
PARAMETER :: ERR_TIME_GRID = 40, &
92 ERR_TIME_SOLUTION = 41, &
93 ERR_TIME_GLOBAL = 42, &
94 ERR_DTIME_NEGATIVE = 43, &
95 ERR_DITER_NEGATIVE = 44, &
98 INTEGER,
PARAMETER :: ERR_MPI_TROUBLE = 50, &
99 ERR_NO_PROCMAP = 51, &
100 ERR_NO_PROCMATCH = 52, &
101 ERR_PATCH_OFFSET = 53, &
102 ERR_PROC_MISMATCH = 54
104 INTEGER,
PARAMETER :: ERR_GRID_LEVEL = 60
106 INTEGER,
PARAMETER :: ERR_GRAD_INDEX = 65
108 INTEGER,
PARAMETER :: ERR_FACEVEC_SUM = 70, &
109 ERR_VOLUME_SIZE = 71, &
110 ERR_FACE_SPLIT = 72, &
111 ERR_FACE_INVERTED = 73
114 INTEGER,
PARAMETER :: ERR_STATS_INPUT = 75, &
115 ERR_STATS_RESTART = 76, &
116 ERR_STATS_INDEXING = 77, &
117 ERR_STATS_TECPLOT = 78
120 INTEGER,
PARAMETER :: ERR_OPTION_TYPE = 80
122 INTEGER,
PARAMETER :: ERR_MERGE_SORTED = 90, &
123 ERR_BINARY_SEARCH = 91
125 INTEGER,
PARAMETER :: ERR_GRAD_MISMATCH = 100
127 INTEGER,
PARAMETER :: ERR_NEGATIVE_POSDEF = 200, &
128 ERR_INVALID_VALUE = 201
130 INTEGER,
PARAMETER :: ERR_SEC_READ_TWICE = 240
132 INTEGER,
PARAMETER :: ERR_MP_ALLORNONE = 250
134 INTEGER,
PARAMETER :: ERR_MISSING_VALUE = 260
136 INTEGER,
PARAMETER :: ERR_UNKNOWN_VISCMODEL = 300, &
137 ERR_RK_SCHEME_INVALID = 301
139 INTEGER,
PARAMETER :: ERR_RAND_SEED_TYPE_INVALID = 400
145 INTEGER,
PARAMETER :: ERR_REGION_RANGE = 500, &
146 ERR_PATCH_2ALIGN = 501, &
147 ERR_PATCH_NOALIGN = 502, &
148 ERR_PATCH_NOSOURCE = 503, &
149 ERR_PATCH_DIMENS = 504, &
150 ERR_PATCH_NOTCOVERED = 505, &
151 ERR_WRONG_REGIONFACE = 506, &
152 ERR_PATCH_OVERLAP = 507, &
153 ERR_PATCH_OVERSPEC = 508, &
154 ERR_GRID_DIMENSIONS = 509, &
155 ERR_GRID_DUMCELLS = 510, &
156 ERR_SRCREGION_OFF = 511, &
157 ERR_NUMBER_CELLS = 512, &
158 ERR_REGION_NUMBER = 513, &
159 ERR_PATCH_NUMBER = 514
161 INTEGER,
PARAMETER :: ERR_VOLUME_EDGES = 900, &
162 ERR_VOLUME_CORNERS = 901
168 INTEGER,
PARAMETER :: LIMIT_INFINITE_LOOP = 1E6
170 INTEGER,
PARAMETER :: ERR_VERTEX_NUMBER = 1000, &
171 ERR_NBFACES_WRONG = 1001, &
172 ERR_PATCH_NUMBERING = 1002, &
173 ERR_CELL_TYPE = 1003, &
174 ERR_HASHTABLE = 1004, &
175 ERR_NFACES_WRONG = 1005, &
176 ERR_NEDGES_ESTIMATE = 1006, &
177 ERR_NFACES_ESTIMATE = 1007, &
178 ERR_NCELLS_WRONG = 1008, &
179 ERR_VOLUME_DIFF = 1009, &
180 ERR_VOLUME_NEGATIVE = 1010, &
181 ERR_FACESUM = 1011, &
182 ERR_NBVERT_ESTIMATE = 1012, &
183 ERR_NBVERT_EXTREMA = 1013, &
184 ERR_BFACE_LIST_EXTREMA = 1014, &
185 ERR_FACELIST_INVALID = 1015, &
186 ERR_DIMENS_INVALID = 1016, &
187 ERR_MOVEPATCH_BC_INVALID = 1017, &
188 ERR_NEDGES_WRONG = 1018, &
189 ERR_CELL_KIND_CHECK = 1019, &
190 ERR_FACE_NVERT_INVALID = 1020, &
191 ERR_PATCH_RENUMFLAG = 1021, &
192 ERR_BVERT_LIST_INVALID = 1022, &
193 ERR_EDGELIST_INVALID = 1023, &
194 ERR_SVERT_LIST_INVALID = 1024, &
195 ERR_MOVEPATCH_BC_NOTSET = 1025, &
196 ERR_NCELLS_SPECIAL_MAX = 1026, &
197 ERR_NFACES_SPECIAL_MAX = 1027, &
198 ERR_C2FLIST_INVALID = 1028, &
199 ERR_FACE_KIND = 1029, &
200 ERR_BFACEMEMBS_INVALID = 1030, &
201 ERR_CELLGRAD_UNAVAILABLE = 1031, &
202 ERR_BF2BG_INCONSISTENT = 1032, &
203 ERR_C2CSKEY_INCONSISTENT = 1033, &
204 ERR_DISTRIB_INVALID = 1034, &
205 ERR_BCDATA_VALUE_INVALID = 1035, &
206 ERR_INDMFMIXT_INVALID = 1036, &
207 ERR_DENUMBER_LIST = 1037, &
208 ERR_PROC2REG_MAPPING = 1038, &
209 ERR_OPTIONAL_MISSING = 1039, &
210 ERR_NVERT_ESTIMATE = 1040, &
211 ERR_NFACESCUT_INVALID = 1041, &
212 ERR_CELL_NOT_FOUND = 1042, &
213 ERR_VERTEX_NOT_FOUND = 1043, &
214 ERR_NBORDERS_INVALID = 1044, &
215 ERR_REGION_IDS_INVALID = 1045, &
216 ERR_CELL_KIND_INVALID = 1046, &
217 ERR_CELL_TYPE_INVALID = 1047, &
218 ERR_VERTEX_KIND_INVALID = 1048, &
219 ERR_PARTITION_INVALID = 1049, &
220 ERR_DATADIM_MISMATCH = 1050, &
221 ERR_BUFFERDIM_MISMATCH = 1051, &
222 ERR_NREGIONS_MISMATCH = 1052, &
223 ERR_NPROCS_MISMATCH = 1053, &
224 ERR_NUM_BC_VIRTUAL = 1054, &
225 ERR_NVERTSHARED_MISMATCH = 1055, &
226 ERR_LUBOUND_MISMATCH = 1056, &
227 ERR_ALLOCATE_ADAPTIVE = 1057, &
228 ERR_RECONST_INVALID = 1058, &
229 ERR_DISCR_INVALID = 1059, &
230 ERR_ORDER_INVALID = 1060, &
231 ERR_SOLVER_TYPE_INVALID = 1061, &
232 ERR_BF2CSORTED_INVALID = 1062, &
233 ERR_CONSTR_INVALID = 1063, &
234 ERR_GASMODEL_INVALID = 1064, &
235 ERR_GASMODEL_DISCR_MISMATCH = 1065, &
236 ERR_FACE_NORMAL_INVALID = 1066, &
237 ERR_TOLERICT_INVALID = 1067, &
238 ERR_STENCILDIMENS_INVALID = 1068, &
239 ERR_STENCILMEMBER_INVALID = 1069, &
240 ERR_BC_INVALID = 1070, &
241 ERR_PATCH_BC_INCONSISTENT = 1071, &
242 ERR_REGION_ID_INVALID = 1072, &
243 ERR_FLATFLAG_INCONSISTENT = 1073, &
244 ERR_VERTEX_MATCH_FAILED = 1074, &
245 ERR_BORDER_INDEX_INVALID = 1075, &
246 ERR_REGION_ID_NOT_FOUND = 1076, &
247 ERR_PATCH_NOT_FLAT = 1077, &
248 ERR_PATCH_NOT_ALIGNED = 1078, &
249 ERR_VIRTUALCELLS_NOTDB2 = 1079, &
250 ERR_BCVAR_VALUE_INVALID = 1080
252 INTEGER,
PARAMETER :: ERR_INVALID_MARKER = 1100, &
253 ERR_INVALID_NCELLS = 1101, &
254 ERR_INVALID_NVARS = 1102
256 INTEGER,
PARAMETER :: ERR_OLES_STENCIL = 1200, &
257 ERR_OLES_FLOWMODEL = 1201
260 INTEGER,
PARAMETER :: ERR_BCCOUPLED_NONE = 1300, &
261 ERR_MDOT_NEGATIVE = 1301, &
262 ERR_TFLM_NEGATIVE = 1302, &
263 ERR_TB_NEGATIVE = 1303
266 INTEGER,
PARAMETER :: ERR_NDIMENS_INVALID = 1400, &
267 ERR_NZONES_INVALID = 1401, &
268 ERR_FACETYPE_INVALID = 1402, &
269 ERR_C2VLIST_INVALID = 1403, &
270 ERR_FACE_ORIENT = 1404, &
271 ERR_STRING_INVALID = 1405, &
272 ERR_NTYPE_INVALID = 1406, &
273 ERR_NDP_INVALID = 1407
275 INTEGER,
PARAMETER :: ERR_LAPACK_OUTPUT = 1500, &
276 ERR_DCUHRE_OUTPUT = 1510, &
277 ERR_TECPLOT_OUTPUT = 1520, &
278 ERR_TECPLOT_FILECNTR = 1521, &
279 ERR_PETSC_OUTPUT = 1530, &
280 ERR_MPI_OUTPUT = 1540, &
281 ERR_MPI_TAGMAX = 1541
283 INTEGER,
PARAMETER :: ERR_INFINITE_LOOP = 1900, &
284 ERR_PREC_RANGE = 1901, &
285 ERR_CV_STATE_INVALID = 1902, &
286 ERR_FILEDEST_INVALID = 1903, &
287 ERR_POST_OUTPUT_FORMAT_INVALID = 1904, &
288 ERR_POST_NSERVERS_INVALID = 1905, &
289 ERR_EXCEED_DIMENS = 1906, &
290 ERR_STRING_READ = 1907
296 INTEGER,
PARAMETER :: ERR_TURB_MODULE = 2001
299 INTEGER,
PARAMETER :: ERR_TURB_MODEL = 2005, &
300 ERR_TURB_FIXPARAM = 2006, &
301 ERR_TURB_INPUT = 2007, &
302 ERR_TURB_STATSINPUT = 2008, &
303 ERR_TURB_LESINPUT = 2009, &
304 ERR_TURB_RANSINPUT = 2010, &
305 ERR_TURB_DESINPUT = 2011, &
306 ERR_TURB_WLMINPUT = 2012, &
307 ERR_TURB_WLMMETRIC = 2013
309 INTEGER,
PARAMETER :: ERR_TURB_REGION = 2020
311 INTEGER,
PARAMETER :: ERR_TURB_WORKSPACE = 2100
319 INTEGER,
PARAMETER :: ERR_PERI_INPUT = 2501, &
320 ERR_PERI_CPRBC = 2502, &
321 ERR_PERI_GEO = 2503, &
322 ERR_PERI_FIXPARAM = 2504, &
323 ERR_PERI_PHYSPARAM = 2505, &
326 INTEGER,
PARAMETER :: ERR_PERI_LAST = 2600
334 INTEGER,
PARAMETER :: ERR_RADI_INPUT = 2601, &
335 ERR_RADI_BC = 2602, &
336 ERR_RADI_FIXPARAM = 2603, &
337 ERR_RADI_METRIC = 2604, &
338 ERR_RADI_MULPHASE = 2605, &
339 ERR_RADI_FLDINPUT = 2606, &
340 ERR_RADI_REGION = 2610
342 INTEGER,
PARAMETER :: ERR_RADI_LAST = 2700
349 INTEGER,
PARAMETER :: ERR_PLAG_MODULE = 3001
352 INTEGER,
PARAMETER :: ERR_PLAG_INTRPLMODEL = 3007, &
353 ERR_PLAG_CELLINDEX = 3008, &
354 ERR_PLAG_TILESIZE = 3009, &
355 ERR_PLAG_BREAKUPMODEL = 3010, &
356 ERR_PLAG_BREAKUPFAC = 3011, &
357 ERR_PLAG_BREAKUPWEBSWI = 3012, &
358 ERR_PLAG_INJCDIAMDIST = 3013, &
359 ERR_PLAG_INJCDIAM = 3014, &
360 ERR_PLAG_INVALID_NPCLS = 3015, &
361 ERR_PLAG_PCL_NOT_FOUND = 3016, &
362 ERR_PLAG_NCONT_INVALID = 3017, &
363 ERR_PLAG_EJECMODEL = 3018, &
364 ERR_PLAG_MEMOVERFLOW = 3019, &
365 ERR_PLAG_FINDPCL = 3020, &
366 ERR_PLAG_IPCLSEND_OVERFLOW = 3021, &
367 ERR_PLAG_DSTR_INVALID = 3022
374 INTEGER,
PARAMETER :: ERR_PEUL_MODULE = 4001
377 INTEGER,
PARAMETER :: ERR_PEUL_NPTYPES = 4010, &
378 ERR_PEUL_PTYPE = 4011, &
379 ERR_PEUL_BADVAL = 4013, &
380 ERR_PEUL_NPMISMATCH = 4020, &
381 ERR_PEUL_BCVAL_EXTRA = 4030, &
382 ERR_PEUL_EXTERNAL = 4900, &
383 ERR_PEUL_DISTRIB = 4901, &
384 ERR_PEUL_MOVEGRID = 4902
391 INTEGER,
PARAMETER :: ERR_INRT_MODULE = 5001
394 INTEGER,
PARAMETER :: ERR_INRT_DEFREAD = 5010, &
395 ERR_INRT_DEFUNREAD = 5011, &
396 ERR_INRT_READ = 5015, &
397 ERR_INRT_MULTPLAGMAT = 5020, &
398 ERR_INRT_MISSPLAGMAT = 5021, &
399 ERR_INRT_MISSINGMAT = 5025, &
400 ERR_INRT_ALLOCRANGE = 5030, &
401 ERR_INRT_INDEXRANGE = 5031, &
402 ERR_INRT_BADSWITCH = 5040, &
403 ERR_INRT_BADACTV = 5041, &
404 ERR_INRT_BADPERM = 5042, &
405 ERR_INRT_BADVAL = 5043, &
406 ERR_INRT_BADMAT = 5044, &
407 ERR_INRT_MISSINGVAL = 5045, &
408 ERR_INRT_ACTVPLAG = 5050, &
409 ERR_INRT_ACTVSMOKE = 5055, &
410 ERR_INRT_ACTVDSMOKE = 5056, &
411 ERR_INRT_PARAMETER = 5060, &
412 ERR_INRT_NINTL = 5070, &
413 ERR_INRT_NINPUTEDGES = 5071, &
414 ERR_INRT_CONNECTINTL = 5072, &
415 ERR_INRT_PERMINTL = 5073, &
416 ERR_INRT_PERMLEVINTL = 5074, &
417 ERR_INRT_BURNING1 = 5080, &
418 ERR_INRT_ONLY1 = 5081, &
419 ERR_INRT_OX_ACTV = 5082, &
420 ERR_INRT_BOIL_ACTV = 5083, &
421 ERR_INRT_BOIL_SAME = 5084, &
422 ERR_INRT_NPCLS = 5090, &
423 ERR_INRT_ENERVAPOR = 5100, &
424 ERR_INRT_NOINRT = 5900
432 INTEGER,
PARAMETER :: ERR_SPEC_MODULE = 6001, &
433 ERR_SPEC_NTYPES = 6002, &
434 ERR_SPEC_MAXEQN = 6003, &
435 ERR_SPEC_PROPS_INVALID = 6004, &
436 ERR_SPEC_NSPEC_INVALID = 6005, &
437 ERR_SPEC_SOURCE_TYPE_INVALID = 6006
452 CHARACTER(*) :: funname, filename
454 IF (global%nFunTree<0 .OR. &
455 global%nFunTree>=ubound(global%functionTree,2))
THEN
456 CALL
errorstop( global,err_register_fun,__line__ )
459 global%nFunTree = global%nFunTree + 1
461 global%functionTree(1,global%nFunTree) = funname
462 global%functionTree(2,global%nFunTree) = filename
473 global%functionTree(1,global%nFunTree) =
''
474 global%functionTree(2,global%nFunTree) =
''
476 global%nFunTree = global%nFunTree - 1
483 SUBROUTINE errorstop( global,errorCode,errorLine,addMessage )
490 INTEGER :: errorcode,errorcode2,errorflag,errorline
492 CHARACTER(*),
OPTIONAL :: addmessage
493 CHARACTER(2*CHRLEN) :: message
498 SELECT CASE (errorcode)
504 CASE (err_register_fun)
505 message =
'dimension of <global%functionTree> out of bounds.'
506 CASE (err_reached_default)
507 message =
'reached default statement in select construct.'
508 CASE (err_previous_errors)
509 message =
'aborting due to previous errors.'
510 CASE (err_external_funct)
511 message =
'you have to link to an external function.'
512 CASE (err_exceeds_decl_mem)
513 message =
'array index or size exceeds declared memory.'
514 CASE (err_unknown_option)
515 message =
'option unknown or not yet implemented.'
516 CASE (err_illegal_value)
517 message =
'variable has illegal value.'
518 CASE (err_system_command)
519 message =
'fail to execute system command:'
520 CASE (err_compile_option)
521 message =
'incorrect compilation option.'
528 message =
'cannot allocate memory.'
529 CASE (err_deallocate)
530 message =
'cannot deallocate memory.'
531 CASE (err_associated)
532 message =
'pointer not associated.'
534 message =
'variable already allocated.'
540 CASE (err_dependent_input)
541 message =
'inconsistent dependent input.'
548 message =
'cannot open file:'
549 CASE (err_file_close)
550 message =
'cannot close file:'
552 message =
'cannot read from file:'
553 CASE (err_file_write)
554 message =
'cannot write to file:'
555 CASE (err_file_exist)
556 message =
'file does not exist:'
557 CASE (err_unknown_format)
558 message =
'unknown file format.'
559 CASE (err_probe_location)
560 message =
'probe located outside the flow domain.'
561 CASE (err_probe_specified)
562 message =
'probe(s) already specified.'
563 CASE (err_val_undefined)
564 message =
'value undefined:'
565 CASE (err_stopfile_found)
566 message =
'File STOP found. Delete and restart run.'
572 CASE (err_unknown_bc)
573 message =
'unknown type of boundary condition.'
574 CASE (err_no_bcspecified)
575 message =
'boundary condition not specified.'
576 CASE (err_bcval_missing)
577 message =
'boundary value(s) missing.'
578 CASE (err_no_bcswitch)
579 message =
'BC switch not specified.'
580 CASE (err_val_bcswitch)
581 message =
'BC switch value is not valid.'
582 CASE (err_patch_range)
583 message =
'patch indices outside of region`s dimensions.'
584 CASE (err_bc_varname)
585 message =
'invalid variable name for BC type:'
587 message =
'BC value is not valid.'
588 CASE (err_tbc_noninit)
589 message =
'TBC not initialized.'
596 message =
'wrong physical time in grid file.'
597 CASE (err_time_solution)
598 message =
'wrong physical time in solution file.'
599 CASE (err_time_global)
600 message =
'physical time differs between processors.'
601 CASE (err_dtime_negative)
602 message =
'current time is later than the max. simulation time.'
603 CASE (err_diter_negative)
604 message =
'iteration number is higher than the max. allowed one.'
606 message =
'steady flow not allowed.'
612 CASE (err_mpi_trouble)
613 message =
'MPI does not work.'
614 CASE (err_no_procmap)
615 message =
'no mapping to processors.'
616 CASE (err_no_procmatch)
617 message =
'no. of regions does not match no. of processors.'
618 CASE (err_patch_offset)
619 message =
'no. of regions on processor > MPI_PATCHOFF.'
620 CASE (err_proc_mismatch)
621 message =
'no. of procs does not match specified no. of procs.'
627 CASE (err_grid_level)
628 message =
'no such grid level possible.'
634 CASE (err_grad_index)
635 message =
'inconsistent velocity/temperature gradient indexing.'
641 CASE (err_facevec_sum)
642 message =
'sum of face vectors > 0.'
643 CASE (err_volume_size)
644 message =
'volume size below threshold or negative.'
645 CASE (err_face_split)
646 message =
'face splitting detected negative dotproduct of split face vectors.'
647 CASE (err_face_inverted)
648 message =
'inverted cell-face detected.'
655 CASE (err_stats_input)
656 message =
'required statistics input parameter not found:'
657 CASE (err_stats_restart)
658 message =
'inconsistent statistics restart parameters.'
659 CASE (err_stats_indexing)
660 message =
'inconsistent statistics indexing.'
661 CASE (err_stats_tecplot)
662 message =
'violation of fixed nStat and/or statId for tecplot.'
668 CASE (err_option_type)
669 message =
'unknown or unimplemented option.'
675 CASE (err_merge_sorted)
676 message =
'Error in merging sorted lists.'
677 CASE (err_binary_search)
678 message =
'Error in binary search.'
684 CASE (err_grad_mismatch)
685 message =
'mismatch of no of variables and gradients'
691 CASE (err_negative_posdef)
692 message =
'Negative positive-definite quantity detected.'
693 CASE (err_invalid_value)
694 message =
'Invalid quantity detected.'
700 CASE (err_sec_read_twice)
701 message =
'Attempted two different input sections for same region.'
702 CASE (err_missing_value)
703 message =
'Value expected in input but found missing.'
709 CASE (err_mp_allornone)
710 message =
'MP modules must be used in all regions or in none.'
716 CASE (err_unknown_viscmodel)
717 message =
'Unknown or unimplemented viscosity model.'
718 CASE (err_rk_scheme_invalid)
719 message =
'Chosen RK scheme invalid.'
720 CASE (err_rand_seed_type_invalid)
721 message =
'Chosen random seed type invalid.'
729 CASE (err_region_range)
730 message =
'number of source region out of range.'
731 CASE (err_patch_2align)
732 message =
'both patch coordinates aligned.'
733 CASE (err_patch_noalign)
734 message =
'none of patch coordinates aligned.'
735 CASE (err_patch_nosource)
736 message =
'cannot find matching source patch.'
737 CASE (err_patch_dimens)
738 message =
'patch dimension does not match distribution.'
739 CASE (err_patch_notcovered)
740 message =
'no boundary condition for some faces of a patch.'
741 CASE (err_wrong_regionface)
742 message =
'face number for a region outside 1-6'
743 CASE (err_patch_overlap)
744 message =
'boundary patches do overlap.'
745 CASE (err_patch_overspec)
746 message =
'boundary conditions already defined for this patch.'
747 CASE (err_grid_dimensions)
748 message =
'grid dimensions not the same as in topology file.'
749 CASE (err_grid_dumcells)
750 message =
'solution file contains different number of dummy cells.'
751 CASE (err_srcregion_off)
752 message =
'source region is inactive.'
753 CASE (err_number_cells)
754 message =
'not enough cells to contain dummy cells of adjacent region.'
755 CASE (err_region_number)
756 message =
'got different region number from file.'
757 CASE (err_patch_number)
758 message =
'got different patch number from file.'
762 CASE (err_volume_edges)
763 message =
'number of edges out of range (1-12).'
764 CASE (err_volume_corners)
765 message =
'number of corners out of range (1-8).'
771 CASE (err_vertex_number)
772 message =
'invalid vertex number in array.'
773 CASE (err_nbfaces_wrong)
774 message =
'computed number of boundary faces inconsistent.'
775 CASE (err_patch_numbering)
776 message =
'patch numbering inconsistent.'
778 message =
'invalid cell type:'
780 message =
'internal inconsistency in hash table.'
781 CASE (err_nfaces_wrong)
782 message =
'computed number of internal faces inconsistent.'
783 CASE (err_nedges_estimate)
784 message =
'Estimate of number of edges too low.'
785 CASE (err_nfaces_estimate)
786 message =
'Estimate of number of faces too low.'
787 CASE (err_ncells_wrong)
788 message =
'computed number of cells inconsistent.'
789 CASE (err_volume_diff)
790 message =
'absolute difference in volumes larger than specified '// &
792 CASE (err_volume_negative)
793 message =
'Negative volume(s) detected.'
795 message =
'face sum greater than minimum face area.'
796 CASE (err_nbvert_estimate)
797 message =
'Estimate of number of boundary vertices too low.'
798 CASE (err_nbvert_extrema)
799 message =
'Boundary vertex list has invalid extrema.'
800 CASE (err_bface_list_extrema)
801 message =
'Locally-numbered boundary-face list has invalid extrema.'
802 CASE (err_facelist_invalid)
803 message =
'Face list is invalid.'
804 CASE (err_dimens_invalid)
805 message =
'Dimension invalid'
806 CASE (err_movepatch_bc_invalid)
807 message =
'Invalid patch-motion boundary condition.'
808 CASE (err_nedges_wrong)
809 message =
'Computed number of edges inconsistent.'
810 CASE (err_cell_kind_check)
811 message =
'Actual cell touches at least one virtual vertex.'
812 CASE (err_face_nvert_invalid)
813 message =
'Number of vertices in face inconsistent.'
814 CASE (err_patch_renumflag)
815 message =
'Patch vertex renumbering flag is invalid.'
816 CASE (err_bvert_list_invalid)
817 message =
'Patch vertex list is invalid.'
818 CASE (err_edgelist_invalid)
819 message =
'Edge list is invalid.'
820 CASE (err_svert_list_invalid)
821 message =
'Special vertex list is invalid.'
822 CASE (err_movepatch_bc_notset)
823 message =
'One or more patches without boundary grid-motion bc.'
824 CASE (err_ncells_special_max)
825 message =
'Exceeded maximum allowed number of special cells.'
826 CASE (err_nfaces_special_max)
827 message =
'Exceeded maximum allowed number of special faces.'
828 CASE (err_c2flist_invalid)
829 message =
'Cell-to-face list is invalid.'
831 message =
'Invalid face kind:'
832 CASE (err_bfacemembs_invalid)
833 message =
'List of boundary faces for boundary gradients invalid.'
834 CASE (err_cellgrad_unavailable)
835 message =
'Cell-gradients not available.'
836 CASE (err_bf2bg_inconsistent)
837 message =
'Boundary-face gradient-access list inconsistent.'
838 CASE (err_c2cskey_inconsistent)
839 message =
'Cell-to-cell stencil access list inconsistent.'
840 CASE (err_distrib_invalid)
841 message =
'Distribution parameter invalid:'
842 CASE (err_bcdata_value_invalid)
843 message =
'Invalid value read:'
844 CASE (err_bcvar_value_invalid)
845 message =
'Invalid value read for boundary variables:'
846 CASE (err_indmfmixt_invalid)
847 message =
'Invalid value for indMfMixt.'
848 CASE (err_denumber_list)
849 message =
'Denumbering index invalid.'
850 CASE (err_proc2reg_mapping)
851 message =
'Process-to-region mapping invalid.'
852 CASE (err_optional_missing)
853 message =
'Optional argument missing.'
854 CASE (err_nvert_estimate)
855 message =
'Estimate of number of vertices too low.'
856 CASE (err_nfacescut_invalid)
857 message =
'Computed number of cut faces invalid:'
858 CASE (err_cell_not_found)
859 message =
'Cell not found during search.'
860 CASE (err_vertex_not_found)
861 message =
'Vertex not found during search.'
862 CASE (err_nborders_invalid)
863 message =
'Computed number of borders invalid:'
864 CASE (err_region_ids_invalid)
865 message =
'Region indices invalid:'
866 CASE (err_cell_kind_invalid)
867 message =
'Cell kind invalid.'
868 CASE (err_cell_type_invalid)
869 message =
'Cell type invalid:'
870 CASE (err_vertex_kind_invalid)
871 message =
'Vertex kind invalid.'
872 CASE (err_partition_invalid)
873 message =
'Partitioning invalid.'
874 CASE (err_datadim_mismatch)
875 message =
'Data dimensions mismatch.'
876 CASE (err_bufferdim_mismatch)
877 message =
'Data dimensions mismatch.'
878 CASE (err_nregions_mismatch)
879 message =
'Numbers of regions do not match.'
880 CASE (err_nprocs_mismatch)
881 message =
'Numbers of processors do not match.'
882 CASE (err_num_bc_virtual)
883 message =
'Number of virtual boundaries incorrect.'
884 CASE (err_nvertshared_mismatch)
885 message =
'Number of shared vertices does not match.'
886 CASE (err_lubound_mismatch)
887 message =
'Lower and/or upper bounds do not match.'
888 CASE (err_allocate_adaptive)
889 message =
'Adaptive memory allocation failed.'
890 CASE (err_reconst_invalid)
891 message =
'Reconstruction method invalid.'
892 CASE (err_discr_invalid)
893 message =
'Discretization method invalid.'
894 CASE (err_order_invalid)
895 message =
'Order invalid.'
896 CASE (err_solver_type_invalid)
897 message =
'Invalid solver type.'
898 CASE (err_bf2csorted_invalid)
899 message =
'Boundary-face-to-cell list invalid.'
900 CASE (err_constr_invalid)
901 message =
'Constraint method invalid.'
902 CASE (err_gasmodel_invalid)
903 message =
'Gas model invalid:'
904 CASE (err_gasmodel_discr_mismatch)
905 message =
'Gas model and discretization method do not match.'
906 CASE (err_face_normal_invalid)
907 message =
'Face normal invalid.'
908 CASE (err_tolerict_invalid)
909 message =
'In-cell test tolerance invalid.'
910 CASE (err_stencildimens_invalid)
911 message =
'Stencil dimensionality invalid.'
912 CASE (err_stencilmember_invalid)
913 message =
'Stencil member invalid.'
914 CASE (err_bc_invalid)
915 message =
'Invalid boundary condition.'
916 CASE (err_patch_bc_inconsistent)
917 message =
'Boundary condition inconsistent with patch geometry.'
918 CASE (err_region_id_invalid)
919 message =
'Region index invalid.'
920 CASE (err_flatflag_inconsistent)
921 message =
'Patch flatness flags inconsistent.'
922 CASE (err_vertex_match_failed)
923 message =
'Vertex matching failed.'
924 CASE (err_border_index_invalid)
925 message =
'Border index invalid.'
926 CASE (err_region_id_not_found)
927 message =
'Region index not found.'
928 CASE (err_patch_not_flat)
929 message =
'Patch not flat.'
930 CASE (err_patch_not_aligned)
931 message =
'Patch not aligned with coordinate axes.'
932 CASE (err_virtualcells_notdb2)
933 message =
'Virtual cells not divisible by 2.'
935 CASE (err_invalid_marker)
936 message =
'invalid section marker:'
937 CASE (err_invalid_ncells)
938 message =
'number of cells invalid.'
939 CASE (err_invalid_nvars)
940 message =
'number of variables invalid.'
942 CASE (err_oles_stencil)
943 message =
'inconsistency in stencil construction.'
944 CASE (err_oles_flowmodel)
945 message =
'Optimal LES approach needs Navier-Stokes flow model.'
948 CASE (err_bccoupled_none)
949 message =
'No coupled boundaries defined.'
950 CASE (err_mdot_negative)
951 message =
'Received negative mass flux on burning patch.'
952 CASE (err_tflm_negative)
953 message =
'Received negative flame temperature on burning patch.'
954 CASE (err_tb_negative)
955 message =
'Received negative temperature on non-burning patch.'
958 CASE (err_ndimens_invalid)
959 message =
'Number of dimensions invalid.'
960 CASE (err_nzones_invalid)
961 message =
'Number of zones invalid.'
962 CASE (err_facetype_invalid)
963 message =
'Face type invalid.'
964 CASE (err_c2vlist_invalid)
965 message =
'Cell-to-vertex list is invalid.'
966 CASE (err_face_orient)
967 message =
'Face-orientation check failed.'
968 CASE (err_string_invalid)
969 message =
'Section string invalid.'
970 CASE (err_ntype_invalid)
971 message =
'Element type invalid.'
972 CASE (err_ndp_invalid)
973 message =
'Number of nodes invalid for given element type.'
975 CASE (err_lapack_output)
976 message =
'LAPACK routine returned non-zero info variable.'
977 CASE (err_dcuhre_output)
978 message =
'DCUHRE routine returned non-zero error variable.'
979 CASE (err_tecplot_output)
980 message =
'TECPLOT routine returned non-zero error variable.'
981 CASE (err_tecplot_filecntr)
982 message =
'TECPLOT file counter exceeds maximum.'
983 CASE (err_petsc_output)
984 message =
'PETSc routine returned non-zero error variable.'
985 CASE (err_mpi_output)
986 message =
'MPI routine returned non-zero error variable.'
987 CASE (err_mpi_tagmax)
988 message =
'Exceeded maximum tag value allowed by MPI.'
990 CASE (err_infinite_loop)
991 message =
'detected what appears to be an infinite loop.'
992 CASE (err_prec_range)
993 message =
'incompatible precision and range of file data.'
994 CASE (err_cv_state_invalid)
995 message =
'State of solution vector invalid.'
996 CASE (err_filedest_invalid)
997 message =
'File destination invalid.'
998 CASE (err_post_output_format_invalid)
999 message =
'Postprocessing output format invalid.'
1000 CASE (err_post_nservers_invalid)
1001 message =
'Number of servers invalid.'
1002 CASE (err_exceed_dimens)
1003 message =
'Exceeding dimensions of array:'
1004 CASE (err_string_read)
1005 message =
'Cannot read string.'
1011 CASE (err_turb_module)
1012 message =
'inconsistency of flow model and Rocturb module.'
1014 CASE (err_turb_model)
1015 message =
'undefined turbulence model selected.'
1016 CASE (err_turb_fixparam)
1017 message =
'incorrect fixed parameters setting.'
1018 CASE (err_turb_input)
1019 message =
'violation in general turbulence input:'
1020 CASE (err_turb_statsinput)
1021 message =
'violation in turbulence statistics input:'
1022 CASE (err_turb_lesinput)
1023 message =
'violation of LES input-options:'
1024 CASE (err_turb_ransinput)
1025 message =
'violation of RANS input-options:'
1026 CASE (err_turb_desinput)
1027 message =
'violation of DES input-options:'
1028 CASE (err_turb_wlminput)
1029 message =
'violation of WLM input-options:'
1030 CASE (err_turb_wlmmetric)
1031 message =
'violation of WLM metric values:'
1032 CASE (err_turb_region)
1033 message =
'turbulence model is not active in this region.'
1034 CASE (err_turb_workspace)
1035 message =
'reserved workspace being used.'
1043 CASE (err_peri_input)
1044 message =
'inconsistency in PERI input parameters.'
1045 CASE (err_peri_cprbc)
1046 message =
'inconsistency in CPR boundary conditions.'
1048 message =
'inconsistency in PERI geometry.'
1049 CASE (err_peri_fixparam)
1050 message =
'inconsistency in PERI fixed parameters.'
1051 CASE (err_peri_physparam)
1052 message =
'inconsistency in PERI physical parameters.'
1054 message =
'MPI related error.'
1062 CASE (err_radi_input)
1063 message =
'violation of radiation input-options:'
1065 message =
'inconsistency in radiation bc:'
1066 CASE (err_radi_fixparam)
1067 message =
'incorrect fixed parameters setting.'
1068 CASE (err_radi_metric)
1069 message =
'inconsistency in radiation metric:'
1070 CASE (err_radi_mulphase)
1071 message =
'multiphase inconsistency from other physics modules:'
1072 CASE (err_radi_fldinput)
1073 message =
'violation of FLD radiation input-options:'
1074 CASE (err_radi_region)
1075 message =
'radiation model is not active in this region.'
1082 CASE (err_plag_module)
1083 message =
'inconsistency of flow model and RocPart module.'
1085 CASE (err_plag_intrplmodel)
1086 message =
'undefined interpolation mixture model selected.'
1087 CASE (err_plag_cellindex)
1088 message =
'unable to locate particle in cell.'
1089 CASE (err_plag_tilesize)
1090 message =
'got different tile size from file.'
1091 CASE (err_plag_breakupmodel)
1092 message =
'undefined breakup model selected.'
1093 CASE (err_plag_breakupfac)
1094 message =
'inconsistent breakup factor selected.'
1095 CASE (err_plag_breakupwebswi)
1096 message =
'inconsistent breakup Weber switch selected.'
1097 CASE (err_plag_injcdiamdist)
1098 message =
'undefined injection diameter distribution model selected.'
1099 CASE (err_plag_injcdiam)
1100 message =
'inconsistent injection diameters selected.'
1101 CASE (err_plag_invalid_npcls)
1102 message =
'number of particles invalid:'
1103 CASE (err_plag_pcl_not_found)
1104 message =
'Could not find particle:'
1105 CASE (err_plag_ncont_invalid)
1106 message =
'Number of constituents invalid.'
1107 CASE (err_plag_ejecmodel)
1108 message =
'undefined ejection model selected.'
1109 CASE (err_plag_memoverflow)
1110 message =
'Maximum dimension exceeded.'
1111 CASE (err_plag_findpcl)
1112 message =
'undefined find particle cell method selected.'
1113 CASE (err_plag_ipclsend_overflow)
1114 message =
'Maximum dimension of pBorder%iPclSend exceeded.'
1115 CASE (err_plag_dstr_invalid)
1116 message =
'Data structure invalid.'
1123 CASE (err_peul_module)
1124 message =
'inconsistency of flow model and Rocsmoke module.'
1126 CASE (err_peul_nptypes)
1127 message =
'number of Eulerian particle types not constant.'
1128 CASE (err_peul_ptype)
1129 message =
'a CONPART_PTYPE section occurs before any CONPART.'
1130 CASE (err_peul_badval)
1131 message =
'invalid input value for Eulerian particles.'
1132 CASE (err_peul_npmismatch)
1133 message =
'number of particle types not equal to nCv.'
1134 CASE (err_peul_bcval_extra)
1135 message =
'boundary value specified for non-existent smoke type.'
1136 CASE (err_peul_external)
1137 message =
'external boundaries not yet implemented for PEUL.'
1138 CASE (err_peul_distrib)
1139 message =
'distribution boundaries not yet implemented for PEUL.'
1140 CASE (err_peul_movegrid)
1141 message =
'moving grids not yet implemented for PEUL.'
1148 CASE (err_inrt_module)
1149 message =
'inconsistency of flow model and Rocinteract module.'
1151 CASE (err_inrt_defread)
1152 message =
'cannot read INRT_DEFAULT section twice for a region.'
1153 CASE (err_inrt_defunread)
1154 message =
'cannot read an interaction without an INRT_DEFAULT.'
1155 CASE (err_inrt_read)
1156 message =
'cannot read an interaction section twice for a region.'
1157 CASE (err_inrt_multplagmat)
1158 message =
'two distinct PLAG constituents are the same material.'
1159 CASE (err_inrt_missplagmat)
1160 message =
'material name read does not match any PLAG material.'
1161 CASE (err_inrt_missingmat)
1162 message =
'missing material name in input deck.'
1163 CASE (err_inrt_allocrange)
1164 message =
'array allocated to the wrong size.'
1165 CASE (err_inrt_indexrange)
1166 message =
'index out of range.'
1167 CASE (err_inrt_badswitch)
1168 message =
'invalid input value for an interaction switch.'
1169 CASE (err_inrt_badactv)
1170 message =
'invalid value for Activeness.'
1171 CASE (err_inrt_badperm)
1172 message =
'invalid value for Permission level.'
1173 CASE (err_inrt_badval)
1174 message =
'invalid input value for an interaction.'
1175 CASE (err_inrt_badmat)
1176 message =
'invalid input name for a material.'
1177 CASE (err_inrt_missingval)
1178 message =
'missing input data for an interaction.'
1179 CASE (err_inrt_actvplag)
1180 message =
'Lagrangian particle constituents differ in Activeness.'
1181 CASE (err_inrt_actvsmoke)
1182 message =
'Smoke type cannot be more active than Gas.'
1183 CASE (err_inrt_actvdsmoke)
1184 message =
'whether is as active as Gas was altered for interaction.'
1185 CASE (err_inrt_parameter)
1186 message =
'inconsistent values assigned to parameters.'
1187 CASE (err_inrt_nintl)
1188 message =
'number of Internal Nodes must be 0 or 1.'
1189 CASE (err_inrt_ninputedges)
1190 message =
'Internal Node needs least one input and one output Edge.'
1191 CASE (err_inrt_connectintl)
1192 message =
'Node is misconnected to Internal Node.'
1193 CASE (err_inrt_permintl)
1194 message =
'invalid Permission token on Internal Node.'
1195 CASE (err_inrt_permlevintl)
1196 message =
'invalid Permission Level for Internal Node.'
1197 CASE (err_inrt_burning1)
1198 message =
'inconsistency in Activeness for Burning interaction.'
1199 CASE (err_inrt_only1)
1200 message =
'only one oxidizer or boiling product smoke type allowed.'
1201 CASE (err_inrt_ox_actv)
1202 message =
'oxidizer smoke type cannot be active.'
1203 CASE (err_inrt_boil_actv)
1204 message =
'boiling product smoke type must be active.'
1205 CASE (err_inrt_boil_same)
1206 message =
'boiling input and output need same physical properties.'
1207 CASE (err_inrt_npcls)
1208 message =
'interactions with particles exist, but not particles.'
1209 CASE (err_inrt_enervapor)
1210 message =
'vapor energy positive, but nothing should be creating it.'
1211 CASE (err_inrt_noinrt)
1212 message =
'interaction not implemented.'
1219 CASE (err_spec_module)
1220 message =
'Inconsistency of flow model and Rocspecies module.'
1221 CASE (err_spec_ntypes)
1222 message =
'Number of SPECIES_TYPE sections unequal to NSPECIES'
1223 CASE (err_spec_maxeqn)
1224 message =
'NSPECIES inconsistent with MAXEQN:'
1225 CASE (err_spec_props_invalid)
1226 message =
'MOLW and SPHT invalid: gamma out of bounds'
1227 CASE (err_spec_nspec_invalid)
1228 message =
'Number of species invalid:'
1229 CASE (err_spec_source_type_invalid)
1230 message =
'Source type invalid.'
1237 message =
'reason unknown.'
1244 IF (present(addmessage))
THEN
1245 message = trim(message)//
' '//trim(addmessage)
1248 WRITE(stderr,
'(A)') solver_name
1249 WRITE(stderr,
'(A,1X,A,I5.5,A,A)') solver_name,
'ERROR (proc. ', &
1250 global%myProcid,
') - ',trim(message)
1252 WRITE(stderr,
'(A,1X,5(A),I4)') &
1253 solver_name,
'Function: ',trim(global%functionTree(1,global%nFunTree)), &
1254 ', file: ',trim(global%functionTree(2,global%nFunTree)), &
1255 ', line: ',errorline
1257 DO i=global%nFunTree-1,1,-1
1258 WRITE(stderr,
'(A,1X,4(A))') &
1259 solver_name,
'Called from: ',trim(global%functionTree(1,
i)), &
1260 ', file: ',trim(global%functionTree(2,
i))
1263 WRITE(stderr,
'(A)') solver_name
1270 CALL mpi_initialized(flag,errorflag)
1272 IF ( flag .EQV. .true. )
THEN
1273 IF ( global%nProcAlloc == 1 )
THEN
1274 CALL mpi_finalize(errorflag)
1276 CALL mpi_abort(global%mpiComm,errorcode2,errorflag)
1285 IF (global%nProcAlloc == 1)
THEN
1286 CALL mpi_finalize(
error )
1288 CALL mpi_abort(
error )
subroutine registerfunction(global, funName, fileName)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine deregisterfunction(global)