template<class W, class U, class V>
form inertia (W w, U u, V v, 
  quadrature_option_type qopt = quadrature_option_type())
{
  return
    integrate (dot(grad_h(u)*w,v) + 0.5*div_h(w)*dot(u,v), qopt)
  + integrate ("boundary", - 0.5*dot(w,normal())*dot(u,v), qopt)
  + integrate ("internal_sides",
     - dot(average(w),normal())*dot(jump(u),average(v))
     - 0.5*dot(jump(w),normal())
          *(dot(average(u),average(v)) + 0.25*dot(jump(u),jump(v))), qopt);
}
field inertia_fix_rhs (test v, 
  quadrature_option_type qopt = quadrature_option_type())
{
  return integrate("boundary", - 0.5*dot(g(),normal())*dot(g(),v), qopt);
}
