So far we have just used DirchletBC. However, our outlet is actually an open pipe into another tank. We need to allow the heat to flow out.

To do this we're going to use the "No BC" boundary condition by Griffiths

The way it works is that we use the boundary term from the weak form:

\left(k \nabla T, \nabla \psi \right ) - \left < k \nabla T \cdot \mathbf{n}, \psi \right >

For a NeumannBC we would normally replace the $$k \nabla T \cdot \mathbf{n}$$\$ with the flux we want to impose. However, for an outflow BC we will actually just keep that term exactly as it is...

step05_heat_conduction/include/bcs/HeatConductionOutflow.h

step05_heat_conduction/src/bcs/HeatConductionOutflow.C

step05_heat_conduction/problems/step5c_outflow.i