1 0 GfsPoisson GfsBox GfsGEdge {} { Time { iend = 1 } Refine LEVEL Solid ({ double theta = atan2 (y, x); double radius = 0.30 + 0.15*cos (6.*theta); return radius*radius - x*x - y*y; }) SurfaceBc P Dirichlet { double theta = atan2 (y, x); double r2 = x*x + y*y; return r2*r2*cos (3.*theta); } GModule hypre ApproxProjectionParams { tolerance = 1e-30 erelax = 2 nitermin = CYCLE nitermax = CYCLE } Init {} { Div = { double theta = atan2 (y, x); double r2 = x*x + y*y; return 7.*r2*cos (3.*theta); } } OutputTime { istep = 1 } { awk '{if ($2 == 1) print CYCLE, $8;}' >> time } OutputProjectionStats { start = end } { awk '{if ($1 == "residual.infty:") print CYCLE, $3, $4;}' >> proj } OutputErrorNorm { start = end } { awk '{print LEVEL, $5, $7, $9}' >> error } { v = P } { s = { double theta = atan2 (y, x); double r2 = x*x + y*y; return r2*r2*cos (3.*theta); } } OutputSimulation { start = end } end-SOLVER.gfs } GfsBox {}