📄 post.c
字号:
fprintf (fp, ")"); fprintf (fp, "{"); for (j = 0; j < elements[element].nbnodes; j++) { sd = se[element]; fprintf (fp, " %f", sd); if (j != elements[element].nbnodes - 1) fprintf (fp, ","); } fprintf (fp, "};\n"); } fprintf (fp, "};\n"); } free (se); free (sf);}voidPrintAsciiHeaderScalarFace (FILE * fp, char *label){ fprintf (fp, "%s %d\n", label, 1); fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-points nb-vector-points nb-tensor-points fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-lines nb-vector-lines nb-tensor-lines fprintf (fp, "%d %d %d\n", nbtris, 0, 0); //nb-scalar-triangles nb-vector-triangles nb-tensor-triangles fprintf (fp, "%d %d %d\n", nbquads, 0, 0); //nb-scalar-quadrangles nb-vector-quadrangles nb-tensor-quadrangles fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-tetrahedra nb-vector-tetrahedra nb-tensor-tetrahedra fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-hexahedra nb-vector-hexahedra nb-tensor-hexahedra fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-prisms nb-vector-prisms nb-tensor-prisms fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-pyramids nb-vector-pyramids nb-tensor-pyramids fprintf (fp, "%d %d %d %d\n", 0, 0, 0, 0); //nb-text2d nb-text2d-chars nb-text3d nb-text3d-chars}voidPrintAsciiHeaderScalarElement (FILE * fp, char *label){ fprintf (fp, "%s %d\n", label, 1); fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-points nb-vector-points nb-tensor-points fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-lines nb-vector-lines nb-tensor-lines fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-triangles nb-vector-triangles nb-tensor-triangles fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-quadrangles nb-vector-quadrangles nb-tensor-quadrangles fprintf (fp, "%d %d %d\n", nbtetras, 0, 0); //nb-scalar-tetrahedra nb-vector-tetrahedra nb-tensor-tetrahedra fprintf (fp, "%d %d %d\n", nbhexas, 0, 0); //nb-scalar-hexahedra nb-vector-hexahedra nb-tensor-hexahedra fprintf (fp, "%d %d %d\n", nbprisms, 0, 0); //nb-scalar-prisms nb-vector-prisms nb-tensor-prisms fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-pyramids nb-vector-pyramids nb-tensor-pyramids fprintf (fp, "%d %d %d %d\n", 0, 0, 0, 0); //nb-text2d nb-text2d-chars nb-text3d nb-text3d-chars}voidPrintAsciiHeaderVectorElement (FILE * fp, char *label){ fprintf (fp, "%s %d\n", label, 1); fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-points nb-vector-points nb-tensor-points fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-lines nb-vector-lines nb-tensor-lines fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-triangles nb-vector-triangles nb-tensor-triangles fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-quadrangles nb-vector-quadrangles nb-tensor-quadrangles fprintf (fp, "%d %d %d\n", 0, nbtetras, 0); //nb-scalar-tetrahedra nb-vector-tetrahedra nb-tensor-tetrahedra fprintf (fp, "%d %d %d\n", 0, nbhexas, 0); //nb-scalar-hexahedra nb-vector-hexahedra nb-tensor-hexahedra fprintf (fp, "%d %d %d\n", 0, nbprisms, 0); //nb-scalar-prisms nb-vector-prisms nb-tensor-prisms fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-pyramids nb-vector-pyramids nb-tensor-pyramids fprintf (fp, "%d %d %d %d\n", 0, 0, 0, 0); //nb-text2d nb-text2d-chars nb-text3d nb-text3d-chars}voidPrintAsciiHeaderVectorFace (FILE * fp, char *label){ fprintf (fp, "%s %d\n", label, 1); fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-points nb-vector-points nb-tensor-points fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-lines nb-vector-lines nb-tensor-lines fprintf (fp, "%d %d %d\n", 0, nbtris, 0); //nb-scalar-triangles nb-vector-triangles nb-tensor-triangles fprintf (fp, "%d %d %d\n", 0, nbquads, 0); //nb-scalar-quadrangles nb-vector-quadrangles nb-tensor-quadrangles fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-tetrahedra nb-vector-tetrahedra nb-tensor-tetrahedra fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-hexahedra nb-vector-hexahedra nb-tensor-hexahedra fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-prisms nb-vector-prisms nb-tensor-prisms fprintf (fp, "%d %d %d\n", 0, 0, 0); //nb-scalar-pyramids nb-vector-pyramids nb-tensor-pyramids fprintf (fp, "%d %d %d %d\n", 0, 0, 0, 0); //nb-text2d nb-text2d-chars nb-text3d nb-text3d-chars}voidPrintBinaryHeaderScalarFace (FILE * fp, char *label){ int one = 1; fprintf (fp, "%s %d ", label, 1); //view-name nb-time-steps, fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-points nb-vector-points nb-tensor-points fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-lines nb-vector-lines nb-tensor-lines fprintf (fp, "%d %d %d ", nbtris, 0, 0); //nb-scalar-triangles nb-vector-triangles nb-tensor-triangles fprintf (fp, "%d %d %d ", nbquads, 0, 0); //nb-scalar-quadrangles nb-vector-quadrangles nb-tensor-quadrangles fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-tetrahedra nb-vector-tetrahedra nb-tensor-tetrahedra fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-hexahedra nb-vector-hexahedra nb-tensor-hexahedra fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-prisms nb-vector-prisms nb-tensor-prisms fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-pyramids nb-vector-pyramids nb-tensor-pyramids fprintf (fp, "%d %d %d %d\n", 0, 0, 0, 0); //nb-text2d nb-text2d-chars nb-text3d nb-text3d-chars fwrite (&one, sizeof (int), 1, fp);}voidPrintBinaryHeaderScalarElement (FILE * fp, char *label){ int one = 1; fprintf (fp, "%s %d ", label, 1); //view-name nb-time-steps, fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-points nb-vector-points nb-tensor-points fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-lines nb-vector-lines nb-tensor-lines fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-triangles nb-vector-triangles nb-tensor-triangles fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-quadrangles nb-vector-quadrangles nb-tensor-quadrangles fprintf (fp, "%d %d %d ", nbtetras, 0, 0); //nb-scalar-tetrahedra nb-vector-tetrahedra nb-tensor-tetrahedra fprintf (fp, "%d %d %d ", nbhexas, 0, 0); //nb-scalar-hexahedra nb-vector-hexahedra nb-tensor-hexahedra fprintf (fp, "%d %d %d ", nbprisms, 0, 0); //nb-scalar-prisms nb-vector-prisms nb-tensor-prisms fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-pyramids nb-vector-pyramids nb-tensor-pyramids fprintf (fp, "%d %d %d %d\n", 0, 0, 0, 0); //nb-text2d nb-text2d-chars nb-text3d nb-text3d-chars fwrite (&one, sizeof (int), 1, fp);}voidPrintBinaryHeaderVectorElement (FILE * fp, char *label){ int one = 1; fprintf (fp, "%s %d ", label, 1); //view-name nb-time-steps, fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-points nb-vector-points nb-tensor-points fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-lines nb-vector-lines nb-tensor-lines fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-triangles nb-vector-triangles nb-tensor-triangles fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-quadrangles nb-vector-quadrangles nb-tensor-quadrangles fprintf (fp, "%d %d %d ", 0, nbtetras, 0); //nb-scalar-tetrahedra nb-vector-tetrahedra nb-tensor-tetrahedra fprintf (fp, "%d %d %d ", 0, nbhexas, 0); //nb-scalar-hexahedra nb-vector-hexahedra nb-tensor-hexahedra fprintf (fp, "%d %d %d ", 0, nbprisms, 0); //nb-scalar-prisms nb-vector-prisms nb-tensor-prisms fprintf (fp, "%d %d %d ", 0, 0, 0); //nb-scalar-pyramids nb-vector-pyramids nb-tensor-pyramids fprintf (fp, "%d %d %d %d\n", 0, 0, 0, 0); //nb-text2d nb-text2d-chars nb-text3d nb-text3d-chars fwrite (&one, sizeof (int), 1, fp);}voidPrintAsciiTime (FILE * fp, double curtime){ fprintf (fp, "%E\n", curtime);}voidPrintBinaryTime (FILE * fp, double curtime){ double *times; times = calloc (1, sizeof (double)); times[0] = curtime; fwrite (times, sizeof (double), 1, fp); free (times);}voidPrintAsciiScalarNode (FILE * fp, double *sn){ int i, j; int element; double sd; for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != TETRAHEDRON) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].z); } for (j = 0; j < elements[element].nbnodes; j++) { sd = sn[elements[element].node[j]]; fprintf (fp, " %E", sd); } fprintf (fp, "\n"); } for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != HEXAHEDRON) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].z); } for (j = 0; j < elements[element].nbnodes; j++) { sd = sn[elements[element].node[j]]; fprintf (fp, " %E", sd); } fprintf (fp, "\n"); } for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != PRISM) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].z); } for (j = 0; j < elements[element].nbnodes; j++) { sd = sn[elements[element].node[j]]; fprintf (fp, " %E", sd); } fprintf (fp, "\n"); }}voidPrintAsciiScalarElement (FILE * fp, double *se){ int i, j; int element; double sd; for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != TETRAHEDRON) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].z); } for (j = 0; j < elements[element].nbnodes; j++) { sd = se[element]; fprintf (fp, " %E", sd); } fprintf (fp, "\n"); } for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != HEXAHEDRON) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].z); } for (j = 0; j < elements[element].nbnodes; j++) { sd = se[element]; fprintf (fp, " %E", sd); } fprintf (fp, "\n"); } for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != PRISM) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].z); } for (j = 0; j < elements[element].nbnodes; j++) { sd = se[element]; fprintf (fp, " %E", sd); } fprintf (fp, "\n"); }}voidPrintAsciiVectorElement (FILE * fp, int iphix, int iphiy, int iphiz){ int i, j; int element; double vx, vy, vz; vx = 0.0; vy = 0.0; vz = 0.0; for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != TETRAHEDRON) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].z); } if (iphix == 0) vx = V_GetCmp (&xu, element + 1); if (iphix == 1) vx = V_GetCmp (&xv, element + 1); if (iphix == 2) vx = V_GetCmp (&xw, element + 1); if (iphix == 3) vx = V_GetCmp (&xp, element + 1); if (iphix == 4) vx = V_GetCmp (&xT, element + 1); if (iphix == 5) vx = V_GetCmp (&xs, element + 1); if (iphiy == 0) vy = V_GetCmp (&xu, element + 1); if (iphiy == 1) vy = V_GetCmp (&xv, element + 1); if (iphiy == 2) vy = V_GetCmp (&xw, element + 1); if (iphiy == 3) vy = V_GetCmp (&xp, element + 1); if (iphiy == 4) vy = V_GetCmp (&xT, element + 1); if (iphiy == 5) vy = V_GetCmp (&xs, element + 1); if (iphiz == 0) vz = V_GetCmp (&xu, element + 1); if (iphiz == 1) vz = V_GetCmp (&xv, element + 1); if (iphiz == 2) vz = V_GetCmp (&xw, element + 1); if (iphiz == 3) vz = V_GetCmp (&xp, element + 1); if (iphiz == 4) vz = V_GetCmp (&xT, element + 1); if (iphiz == 5) vz = V_GetCmp (&xs, element + 1); for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E %E %E", vx, vy, vz); } fprintf (fp, "\n"); } for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != HEXAHEDRON) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].z); } if (iphix == 0) vx = V_GetCmp (&xu, element + 1); if (iphix == 1) vx = V_GetCmp (&xv, element + 1); if (iphix == 2) vx = V_GetCmp (&xw, element + 1); if (iphix == 3) vx = V_GetCmp (&xp, element + 1); if (iphix == 4) vx = V_GetCmp (&xT, element + 1); if (iphix == 5) vx = V_GetCmp (&xs, element + 1); if (iphiy == 0) vy = V_GetCmp (&xu, element + 1); if (iphiy == 1) vy = V_GetCmp (&xv, element + 1); if (iphiy == 2) vy = V_GetCmp (&xw, element + 1); if (iphiy == 3) vy = V_GetCmp (&xp, element + 1); if (iphiy == 4) vy = V_GetCmp (&xT, element + 1); if (iphiy == 5) vy = V_GetCmp (&xs, element + 1); if (iphiz == 0) vz = V_GetCmp (&xu, element + 1); if (iphiz == 1) vz = V_GetCmp (&xv, element + 1); if (iphiz == 2) vz = V_GetCmp (&xw, element + 1); if (iphiz == 3) vz = V_GetCmp (&xp, element + 1); if (iphiz == 4) vz = V_GetCmp (&xT, element + 1); if (iphiz == 5) vz = V_GetCmp (&xs, element + 1); for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E %E %E", vx, vy, vz); } fprintf (fp, "\n"); } for (i = 0; i < nbelements; i++) { element = i; if (elements[element].type != PRISM) continue; for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].x); } for (j = 0; j < elements[element].nbnodes; j++) { fprintf (fp, " %E", nodes[elements[element].node[j]].y); }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -