📄 param.c
字号:
break; case 30200: // Adjust time interval GetLine (fp); fscanf (fp, "%d", ¶meter.adjdt); if (parameter.adjdt == LOGICAL_TRUE) printf ("Adjust time intervals.\n"); else printf ("Do not adjust time intervals.\n"); printf ("\n"); break; case 30201: // Maximum Courant number GetLine (fp); fscanf (fp, "%f", ¶meter.maxCp); printf ("Maximum Courant number: \t\t\t%.3f\n", parameter.maxCp); printf ("\n"); break; case 30400: // Number of saves GetLine (fp); fscanf (fp, "%d", ¶meter.nsav); printf ("Number of saves: \t\t\t\t%d\n", parameter.nsav); printf ("\n"); break; case 30440: // Save face flux GetLine (fp); fscanf (fp, "%d", ¶meter.savflux); printf ("Save flux: \t\t\t\t\t%d\n", parameter.savflux); printf ("\n"); break; case 30450: // Write face scalars (u v w p T s) GetLine (fp); for (j = 0; j < nphi; j++) fscanf (fp, "%d", ¶meter.fsav[j]); printf ("Variable: \t\t\t\t\t[ u v w p T s]\n"); printf ("Save scalars on face: \t\t\t\t["); for (j = 0; j < nphi; j++) printf (" %d", parameter.fsav[j]); printf ("]\n"); printf ("\n"); break; case 30455: //Write face vectors (uvw) GetLine (fp); fscanf (fp, "%d", ¶meter.fvec); if (parameter.fvec == LOGICAL_TRUE) printf ("Save face - vector magnitude: \t\t\t[yes]\n"); else printf ("Save face - vector magnitude: \t\t\t[no]\n"); printf ("\n"); break; case 30460: // Write element scalars (u v w p T s) GetLine (fp); for (j = 0; j < nphi; j++) fscanf (fp, "%d", ¶meter.csav[j]); printf ("Variable: \t\t\t\t\t[ u v w p T s]\n"); printf ("Save scalars in cell: \t\t\t\t["); for (j = 0; j < nphi; j++) printf (" %d", parameter.csav[j]); printf ("]\n"); printf ("\n"); break; case 30465: // Write element vectors (uvw) GetLine (fp); fscanf (fp, "%d", ¶meter.cvec); if (parameter.cvec == LOGICAL_TRUE) printf ("Save cell center - vector: \t\t\t[yes]\n"); else printf ("Save cell center - vector: \t\t\t[no]\n"); printf ("\n"); break; case 30470: // Write vorticity (x y z) GetLine (fp); for (j = 0; j < 3; j++) fscanf (fp, "%d", ¶meter.vortex[j]); printf ("Axis: \t\t\t\t\t\t[ x y z]\n"); printf ("Save vorticity: \t\t\t\t["); for (j = 0; j < 3; j++) printf (" %d", parameter.vortex[j]); printf ("]\n"); printf ("\n"); break; case 30475: // Write stream function (xy) GetLine (fp); fscanf (fp, "%d", ¶meter.streamf); if (parameter.streamf == LOGICAL_TRUE) printf ("Save stream function in xy plane\n"); else printf ("Do not save stream function in xy plane\n"); printf ("\n"); break; case 30485: // Probe (u v w p T s) GetLine (fp); for (j = 0; j < nphi; j++) fscanf (fp, "%d", ¶meter.probe[j]); printf ("Variable: \t\t\t\t\t[ u v w p T s]\n"); printf ("Probe options: \t\t\t\t\t["); for (j = 0; j < nphi; j++) printf (" %d", parameter.probe[j]); printf ("]\n"); printf ("\n"); break; case 30500: // Smooth GetLine (fp); fscanf (fp, "%d", ¶meter.smooth); if (parameter.smooth == LOGICAL_TRUE) printf ("Smooth probe values: \t\t\t\t[yes]\n"); else printf ("Smooth probe values: \t\t\t\t[no]\n"); printf ("\n"); break; case 30550: // Maximum number of non-othorgonal corrections GetLine (fp); fscanf (fp, "%d", ¶meter.northocor); printf ("Maximum number of non-orthogonal corrections: \t%d\n", parameter.northocor); printf ("\n"); break; case 30551: // Orthogonal factor GetLine (fp); fscanf (fp, "%f", ¶meter.orthof); printf ("Orthogonal factor: \t\t\t\t%E\n", parameter.orthof); printf ("\n"); break; case 30600: // Convergence criterion (matrix solution) GetLine (fp); for (j = 0; j < nphi; j++) fscanf (fp, "%f", ¶meter.mtol[j]); printf ("Variable: \t\t\t\t\t[ u v w p T s]\n"); printf ("Matrix solution tolerance: \t\t\t["); for (j = 0; j < nphi; j++) printf (" %+.3E", parameter.mtol[j]); printf ("]\n"); printf ("\n"); break; case 30601: // Maximum number of iterations (matrix solution) GetLine (fp); for (j = 0; j < nphi; j++) fscanf (fp, "%d", ¶meter.miter[j]); printf ("Variable: \t\t\t\t\t[ u v w p T s]\n"); printf ("Matrix solution iterations: \t\t\t["); for (j = 0; j < nphi; j++) printf (" %d", parameter.miter[j]); printf ("]\n"); printf ("\n"); break; case 30650: // Matrix solver (u v w p T s) (0-NONE, 1-JACOBI, 2-SOR, 3-QMR, 4-GMRES, 5-CG, 6-CGN, 7-CGS, 8-BICG, 9-BICGS) GetLine (fp); for (j = 0; j < nphi; j++) fscanf (fp, "%d", ¶meter.msolver[j]); printf ("Variable: \t\t\t\t\t[ u v w p T s]\n"); printf ("Solver: c) \t\t\t\t\t["); for (j = 0; j < nphi; j++) printf (" %d", parameter.msolver[j]); printf ("]\n"); printf ("\n"); break; case 30651: // Matrix preconditioner (0-NONE, 1-JACOBI, 2-SOR, 3-ILU) GetLine (fp); for (j = 0; j < nphi; j++) fscanf (fp, "%d", ¶meter.mprecond[j]); printf ("Variable: \t\t\t\t\t[ u v w p T s]\n"); printf ("Pre-conditioner: d) \t\t\t\t["); for (j = 0; j < nphi; j++) printf (" %d", parameter.mprecond[j]); printf ("]\n"); printf ("\n"); break; case 30800: // Interface scheme factor - CICSAM GetLine (fp); fscanf (fp, "%f", ¶meter.kq); printf ("Interface scheme factor: \t\t\t%.3f\n", parameter.kq); printf ("\n"); break; case 30900: // Maximum number of CICSAM corrections GetLine (fp); fscanf (fp, "%d", ¶meter.ncicsamcor); printf ("Number of CICSAM corrections: \t\t\t%d\n", parameter.ncicsamcor); printf ("\n"); break; case 32000: // Start time GetLine (fp); fscanf (fp, "%f", ¶meter.t0); printf ("Start time: \t\t\t\t\t%+.3E s\n", parameter.t0); printf ("\n"); break; case 32001: // End time GetLine (fp); fscanf (fp, "%f", ¶meter.t1); printf ("End time: \t\t\t\t\t%+.3E s\n", parameter.t1); printf ("\n"); break; case 32002: // Time interval GetLine (fp); fscanf (fp, "%f", ¶meter.dt); printf ("Time interval: \t\t\t\t\t%+.3E s\n", parameter.dt); printf ("\n"); break; case 33050: // Simulate filling GetLine (fp); fscanf (fp, "%d", ¶meter.fill); if (parameter.fill == LOGICAL_TRUE) printf ("Simulate filling: \t\t\t\t[yes]\n"); else printf ("Simulate filling: \t\t\t\t[no]\n"); printf ("\n"); break; case 33051: // Completely filled percentage GetLine (fp); fscanf (fp, "%f", ¶meter.pf); printf ("Stop filling at: \t\t\t\t%.2f%%\n", parameter.pf); printf ("\n"); break; case 34000: // Gravity vector GetLine (fp); fscanf (fp, "%f %f %f", ¶meter.g[0], ¶meter.g[1], ¶meter.g[2]); printf ("Gravity vector (x): \t\t\t\t%+.3E m/s^2\n", parameter.g[0]); printf ("Gravity vector (y): \t\t\t\t%+.3E m/s^2\n", parameter.g[1]); printf ("Gravity vector (z): \t\t\t\t%+.3E m/s^2\n", parameter.g[2]); printf ("\n"); break; default: printf ("\nError: Unknown parameter code (%d).\n", tcode); exit (LOGICAL_ERROR); break; } } } } while (!feof (fp)); fclose (fp); printf ("a) Interpolation scheme list\n"); printf ("%d-UDS\n", UDS); printf ("%d-CDS\n", CDS); printf ("\n"); printf ("b) Time advancement method list\n"); printf ("%d-Explicit Euler\n", EXPLICITEULER); printf ("%d-Implicit Euler\n", IMPLICITEULER); printf ("%d-Crank Nicolson\n", CRANKNICOLSON); printf ("\n"); printf ("c) Solvers list\n"); printf ("%d-Jacobi\n", sJACOBI); printf ("%d-SOR\n", sSOR); printf ("%d-QMR\n", sQMR); printf ("%d-GMRES\n", sGMRES); printf ("%d-CG\n", sCG); printf ("%d-CGN\n", sCGN); printf ("%d-CGS\n", sCGS); printf ("%d-BiCG\n", sBICG); printf ("%d-BiCGSTAB\n", sBICGS); printf ("\n"); printf ("d) Pre-conditioners list\n"); printf ("%d-None\n", pNONE); printf ("%d-Jacobi\n", pJACOBI); printf ("%d-SOR\n", pSOR); printf ("%d-ILU\n", pILU); printf ("\n"); printf ("Done.\n"); return LOGICAL_TRUE;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -