From: David Knezevic <david.knezevic@ba...>  20080122 22:53:32

I'd like to implement the following boundary condition for the outflow of a channel: du/dn  n*p = 0, where n is the outward normal and p is the pressure. It seems to me that this BC would result in an extra boundary term $\int_{\partial\Omega} n p \ds$ being added to the momentum equations? In my case the outward normal on the outflow boundary is n = (1,0). I tried to implement this BC using the following code in side_constraint: if (boundary_id == outflow_id) Fu(i) = JxW_side[qp] * p * phi_side[i][qp]; if (boundary_id != outflow_id) Fv(i) += JxW_side[qp] * penalty * (v  v_value) * phi_side[i][qp]; if (boundary_id != outflow_id) Kuu(i,j) += JxW_side[qp] * penalty * phi_side[i][qp] * phi_side[j][qp]; if (boundary_id != outflow_id) Kvv(i,j) += JxW_side[qp] * penalty * phi_side[i][qp] * phi_side[j][qp]; where p = side_value(p_var, qp), plus there are other BCs not shown here for inflow and noslip. This doesn't appear to work; the Newton convergence fails with these BCs. If anyone can point out how to properly implement this BC, I'd be most appreciative :) Cheers, David 