Basilisk CFD
Adaptive Cartesian mesh PDE framework
Loading...
Searching...
No Matches
vtk.h
Go to the documentation of this file.
1/** @file vtk.h
2 */
3void output_vtk (scalar * list, int n, FILE * fp, bool linear)
4{
5 fputs ("# vtk DataFile Version 2.0\n"
6 "Basilisk\n"
7 "ASCII\n"
8 "DATASET STRUCTURED_GRID\n", fp);
9 fprintf (fp, "DIMENSIONS %d %d 1\n", n, n);
10 fprintf (fp, "POINTS %d double\n", n*n);
11
12 double fn = n;
13 double Delta = L0/fn;
14 for (int i = 0; i < n; i++) {
15 double x = Delta*i + X0 + Delta/2.;
16 for (int j = 0; j < n; j++) {
17 double y = Delta*j + Y0 + Delta/2.;
18 fprintf (fp, "%g %g 0\n", x, y);
19 }
20 }
21 fprintf (fp, "POINT_DATA %d\n", n*n);
22 for (int _s = 0; _s < 1; _s++) /* scalar in list */ {
23 fprintf (fp, "SCALARS %s double\n", s.name);
24 fputs ("LOOKUP_TABLE default\n", fp);
25 double fn = n;
26 double Delta = L0/fn;
27 for (int i = 0; i < n; i++) {
28 double x = Delta*i + X0 + Delta/2.;
29 for (int j = 0; j < n; j++) {
30 double y = Delta*j + Y0 + Delta/2.;
31 fprintf (fp, "%g\n", interpolate (s, x, y, linear = linear));
32 }
33 }
34 }
35 fflush (fp);
36}
trace double interpolate(scalar v, double xp=0., double yp=0., double zp=0., bool linear=true)
define VT _attribute[s.i] v y scalar * list
Definition cartesian.h:276
int y
Definition common.h:76
int x
Definition common.h:76
double L0
Definition common.h:36
double X0
Definition common.h:34
double Y0
Definition common.h:34
else return n
Definition curvature.h:101
scalar s
Definition embed-tree.h:56
*cs[i, 0, 0] a *[i -1, 0, 0] j
Definition embed.h:88
scalar int i
Definition embed.h:74
FILE * fp
Definition mtrace.h:7
src vof fflush(ferr)
void output_vtk(scalar *list, int n, FILE *fp, bool linear)
Definition vtk.h:3