1 0 GfsSimulation GfsBox GfsGEdge { x = 0.5 y = -0.5 } {
    Time { dtmax = 1 }
    Refine LEVEL
    AdvectionParams { scheme = none }
    Solid (-difference(ellipse(0,0,0.7,0.7), ellipse(0,0,0.3,0.3)))
    SourceCoriolis 0 1
    EventStop { istep = 1 } U 1e-9

    EventList { start = end } {
	OutputErrorNorm {} { awk '{print LEVEL, $5, $7, $9}' >> p } { v = P } {
	    s = atan2 (y, x)
	}
	OutputErrorNorm {} { awk '{print LEVEL, $5, $7, $9}' >> U } { v = U } {
	    s = y / (x*x + y*y)
	}
	OutputErrorNorm {} { awk '{print LEVEL, $5, $7, $9}' >> V } { v = V } {
	    s = -x / (x*x + y*y)
	}
	OutputSimulation solution.gfs
    }
}
Box { 
    top = Boundary {
	BcDirichlet P 0
	BcDirichlet U 0
	BcNeumann V 0
    } 
    left = Boundary {
	BcDirichlet P -M_PI/2
	BcNeumann U 0
	BcDirichlet V 0
    }
}