Is it possible to use periodic boundary conditions for adaptive navier stokes solover?

Asked by Sergey Alyaev

I tryed inserting periodic boundary conditions to a slightly modified demo of auto adaptive navier stokes and it does not work.
In the end of the message I inserted the console output.
I wonder what is the reason of failure:
1. I do not implement BC corectly, in that case I would like to see an example of doing so.
2. It is not supported by this part of FEniCS, then :(
3. It is a bug, then I should probably post a bug report instead.

It says:

  Solving nonlinear variational problem.
    *** Warning: GenericVector::get is redirected to GenericVector::get_local. Use GenericVector::gather for get off-process entries. GenericVector::get will be removed.
<many lines with this message>

Finally giving:

Stage 0.1: Computing error estimate...
  Solving dual problem.
  Solving linear variational problem.
  Extrapolating dual solution.
python: /home/sergey/work/FEniCS/src/dolfin/dolfin/adaptivity/ErrorControl.cpp:402: void dolfin::ErrorControl::apply_bcs_to_extrapolation(std::vector<boost::shared_ptr<const dolfin::BoundaryCondition>, std::allocator<boost::shared_ptr<const dolfin::BoundaryCondition> > >): Assertion `bc' failed.
[sergey-desktop:29677] *** Process received signal ***
[sergey-desktop:29677] Signal: Aborted (6)
[sergey-desktop:29677] Signal code: (-6)
[sergey-desktop:29677] [ 0] /lib/libpthread.so.0(+0xf8f0) [0x7fcf907528f0]
[sergey-desktop:29677] [ 1] /lib/libc.so.6(gsignal+0x35) [0x7fcf8f570a75]
[sergey-desktop:29677] [ 2] /lib/libc.so.6(abort+0x180) [0x7fcf8f5745c0]
[sergey-desktop:29677] [ 3] /lib/libc.so.6(__assert_fail+0xf1) [0x7fcf8f569941]
[sergey-desktop:29677] [ 4] /home/sergey/work/FEniCS/lib/libdolfin.so.1.0(_ZN6dolfin12ErrorControl26apply_bcs_to_extrapolationESt6vectorIN5boost10shared_ptrIKNS_17BoundaryConditionEEESaIS6_EE+0x6f1) [0x7fcf8da054f1]
[sergey-desktop:29677] [ 5] /home/sergey/work/FEniCS/lib/libdolfin.so.1.0(_ZN6dolfin12ErrorControl21compute_extrapolationERKNS_8FunctionESt6vectorIN5boost10shared_ptrIKNS_17BoundaryConditionEEESaIS9_EE+0x219) [0x7fcf8da06279]
[sergey-desktop:29677] [ 6] /home/sergey/work/FEniCS/lib/libdolfin.so.1.0(_ZN6dolfin12ErrorControl14estimate_errorERKNS_8FunctionESt6vectorIN5boost10shared_ptrIKNS_17BoundaryConditionEEESaIS9_EE+0x267) [0x7fcf8da06637]
[sergey-desktop:29677] [ 7] /home/sergey/work/FEniCS/lib/libdolfin.so.1.0(_ZN6dolfin32GenericAdaptiveVariationalSolver5solveEdRNS_4FormERNS_12ErrorControlE+0xa8d) [0x7fcf8d9dd2cd]
[sergey-desktop:29677] [ 8] /home/sergey/work/FEniCS/lib/python2.6/site-packages/dolfin/_cpp.so(+0x10474c) [0x7fcf8e07774c]
[sergey-desktop:29677] [ 9] python(PyObject_Call+0x47) [0x41f0c7]
[sergey-desktop:29677] [10] python() [0x427dff]
[sergey-desktop:29677] [11] python(PyObject_Call+0x47) [0x41f0c7]
[sergey-desktop:29677] [12] python(PyEval_EvalFrameEx+0x4888) [0x4a7378]
[sergey-desktop:29677] [13] python(PyEval_EvalFrameEx+0x5a60) [0x4a8550]
[sergey-desktop:29677] *** End of error message ***
Aborted

Question information

Language:
English Edit question
Status:
Answered
For:
DOLFIN Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Marie Rognes (meg-simula) said :
#1

It is not supported by the adaptive solve. I'll add a better error check and message.

--
Marie

On 2. nov. 2011, at 20:10, Sergey Alyaev <email address hidden> wrote:

> New question #177315 on DOLFIN:
> https://answers.launchpad.net/dolfin/+question/177315
>
> I tryed inserting periodic boundary conditions to a slightly modified demo of auto adaptive navier stokes and it does not work.
> In the end of the message I inserted the console output.
> I wonder what is the reason of failure:
> 1. I do not implement BC corectly, in that case I would like to see an example of doing so.
> 2. It is not supported by this part of FEniCS, then :(
> 3. It is a bug, then I should probably post a bug report instead.
>
> It says:
>
> Solving nonlinear variational problem.
> *** Warning: GenericVector::get is redirected to GenericVector::get_local. Use GenericVector::gather for get off-process entries. GenericVector::get will be removed.
> <many lines with this message>
>
> Finally giving:
>
>
> Stage 0.1: Computing error estimate...
> Solving dual problem.
> Solving linear variational problem.
> Extrapolating dual solution.
> python: /home/sergey/work/FEniCS/src/dolfin/dolfin/adaptivity/ErrorControl.cpp:402: void dolfin::ErrorControl::apply_bcs_to_extrapolation(std::vector<boost::shared_ptr<const dolfin::BoundaryCondition>, std::allocator<boost::shared_ptr<const dolfin::BoundaryCondition> > >): Assertion `bc' failed.
> [sergey-desktop:29677] *** Process received signal ***
> [sergey-desktop:29677] Signal: Aborted (6)
> [sergey-desktop:29677] Signal code: (-6)
> [sergey-desktop:29677] [ 0] /lib/libpthread.so.0(+0xf8f0) [0x7fcf907528f0]
> [sergey-desktop:29677] [ 1] /lib/libc.so.6(gsignal+0x35) [0x7fcf8f570a75]
> [sergey-desktop:29677] [ 2] /lib/libc.so.6(abort+0x180) [0x7fcf8f5745c0]
> [sergey-desktop:29677] [ 3] /lib/libc.so.6(__assert_fail+0xf1) [0x7fcf8f569941]
> [sergey-desktop:29677] [ 4] /home/sergey/work/FEniCS/lib/libdolfin.so.1.0(_ZN6dolfin12ErrorControl26apply_bcs_to_extrapolationESt6vectorIN5boost10shared_ptrIKNS_17BoundaryConditionEEESaIS6_EE+0x6f1) [0x7fcf8da054f1]
> [sergey-desktop:29677] [ 5] /home/sergey/work/FEniCS/lib/libdolfin.so.1.0(_ZN6dolfin12ErrorControl21compute_extrapolationERKNS_8FunctionESt6vectorIN5boost10shared_ptrIKNS_17BoundaryConditionEEESaIS9_EE+0x219) [0x7fcf8da06279]
> [sergey-desktop:29677] [ 6] /home/sergey/work/FEniCS/lib/libdolfin.so.1.0(_ZN6dolfin12ErrorControl14estimate_errorERKNS_8FunctionESt6vectorIN5boost10shared_ptrIKNS_17BoundaryConditionEEESaIS9_EE+0x267) [0x7fcf8da06637]
> [sergey-desktop:29677] [ 7] /home/sergey/work/FEniCS/lib/libdolfin.so.1.0(_ZN6dolfin32GenericAdaptiveVariationalSolver5solveEdRNS_4FormERNS_12ErrorControlE+0xa8d) [0x7fcf8d9dd2cd]
> [sergey-desktop:29677] [ 8] /home/sergey/work/FEniCS/lib/python2.6/site-packages/dolfin/_cpp.so(+0x10474c) [0x7fcf8e07774c]
> [sergey-desktop:29677] [ 9] python(PyObject_Call+0x47) [0x41f0c7]
> [sergey-desktop:29677] [10] python() [0x427dff]
> [sergey-desktop:29677] [11] python(PyObject_Call+0x47) [0x41f0c7]
> [sergey-desktop:29677] [12] python(PyEval_EvalFrameEx+0x4888) [0x4a7378]
> [sergey-desktop:29677] [13] python(PyEval_EvalFrameEx+0x5a60) [0x4a8550]
> [sergey-desktop:29677] *** End of error message ***
> Aborted
>
>
> --
> You received this question notification because you are a member of
> DOLFIN Team, which is an answer contact for DOLFIN.

Can you help with this problem?

Provide an answer of your own, or ask Sergey Alyaev for more information if necessary.

To post a message you must log in.