/usr/share/doc/rheolef-doc/examples/stokes_dirichlet_dg.icc is in rheolef-doc 6.5-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | void stokes_dirichlet_dg (const space& Xh, const space& Qh,
form& a, form& b, form& c, form& mp, field& lh, field& kh,
quadrature_option_type qopt = quadrature_option_type())
{
size_t k = Xh.degree();
size_t d = Xh.get_geo().dimension();
Float beta = (k+1)*(k+d)/d;
trial u (Xh), p (Qh);
test v (Xh), q (Qh);
a = integrate (2*ddot(Dh(u),Dh(v)), qopt)
+ integrate ("sides", beta*penalty()*dot(jump(u),jump(v))
- 2*dot(jump(u),average(Dh(v)*normal()))
- 2*dot(jump(v),average(Dh(u)*normal())), qopt);
lh = integrate (dot(f(),v), qopt)
+ integrate ("boundary", beta*penalty()*dot(g(),v)
- 2*dot(g(),Dh(v)*normal()), qopt);
b = integrate (dot(u,grad_h(q)), qopt)
+ integrate ("internal_sides", - dot(average(u),normal())*jump(q), qopt);
kh = integrate ("boundary", dot(g(),normal())*q, qopt);
c = integrate ("internal_sides", h_local()*jump(p)*jump(q), qopt);
mp = integrate (p*q, qopt);
}
|