Defining Dirichlet BCs in parallel
I'm attempting to solve a set of three equations in parallel. The first is a horizontal approximation of the Stokes' equations, the second is conservation of mass in order to get vertical velocity, and the third is a heat equation. The first uses only natural boundary conditions, the second can use Dirichlet or Neumann, depending on whether integration by parts is used, and the third requires a Dirichlet condition on one of its boundaries (the imposition of a specific temperature).
All three work well in serial, but upon parallelization I run into some issues. For the heat equation, there are erroneous very high values along linear features in the solution, which seem to propogate out from the boundary. I assume that the location is at a divisions between mesh partitions. The conservation of mass equations exhibits the same issues when the Dirichlet BCs are used, but not when posed with essential boundary conditions. The first set, which also use only natural BCs, also work fine. My code is too long to analyze here, so I won't post it, but it seems as though the issue stems from the use of a MeshFunction to define the Dirichlet BCs. I read a similar post from a year ago which indicated that there were issues with using mesh functions to define a boundary in parallel.
https:/
However, I don't get any errors, as in the above post.
Does anyone have any insight into whether this is still unsupported? And if so, are there any workarounds I might try?
Question information
- Language:
- English Edit question
- Status:
- Answered
- For:
- DOLFIN Edit question
- Assignee:
- No assignee Edit question
- Last query:
- Last reply:
Can you help with this problem?
Provide an answer of your own, or ask Douglas Brinkerhoff for more information if necessary.