|
[Sponsors] |
October 2, 2019, 05:37 |
Parallel dual mesh interpolation
|
#1 |
New Member
Erik
Join Date: Sep 2019
Posts: 4
Rep Power: 7 |
Hi everyone,
I am currently trying to transfer fields between two coexisting regions within one case. The two regions overlap perfectly and have the same resolution. I am using MeshToMesh to map the desired fields back and forth. When I initialize with Code:
// create interpolation object for charge density mapping meshToMesh interpolatorObj_(electricRegion, fluidRegion, meshToMesh::imDirect, false); Code:
[1] [4] #0 Foam::error::printStack(Foam::Ostream&)[5] #0 Foam::error::printStack(Foam::Ostream&)#0[3] #0 Foam::error::printStack(Foam::Ostream&) Foam::error::printStack(Foam::Ostream&)[6] #0 Foam::error::printStack(Foam::Ostream&)[0] #0 Foam::error::printStack(Foam::Ostream&)[7] #0 Foam::error::printStack(Foam::Ostream&)[2] #0 Foam::error::printStack(Foam::Ostream&) at ??:? [1] #1 Foam::sigSegv::sigHandler(int) at ??:? at ??:? [4] #1 Foam::sigSegv::sigHandler(int)[5] #1 Foam::sigSegv::sigHandler(int) at ??:? [0] #1 Foam::sigSegv::sigHandler(int) at ??:? [3] #1 Foam::sigSegv::sigHandler(int) at ??:? at ??:? [2] #1 Foam::sigSegv::sigHandler(int)[7] #1 Foam::sigSegv::sigHandler(int) at ??:? [6] #1 Foam::sigSegv::sigHandler(int) at ??:? [1] #2 ? at ??:? [0] #2 ? at ??:? [4] #2 ? at ??:? at ??:? [5] #2 ?[3] #2 ? at ??:? [2] #2 ? in "/lib/x86_64-linux-gnu/libc.so.6" [1] #3 cfree in "/lib/x86_64-linux-gnu/libc.so.6" [0] #3 cfree at ??:? [7] #2 ? at ??:? [6] #2 ? in "/lib/x86_64-linux-gnu/libc.so.6" [5] #3 cfree in "/lib/x86_64-linux-gnu/libc.so.6" [4] #3 cfree in "/lib/x86_64-linux-gnu/libc.so.6" [2] #3 cfree in "/lib/x86_64-linux-gnu/libc.so.6" [1] #4 Foam::meshToMesh::distributeAndMergeCells(Foam::mapDistribute const&, Foam::polyMesh const&, Foam::globalIndex const&, Foam::Field<Foam::Vector<double> >&, Foam::List<Foam::face>&, Foam::List<int>&, Foam::List<int>&, Foam::List<int>&) const in "/lib/x86_64-linux-gnu/libc.so.6" [3] #3 cfree in "/lib/x86_64-linux-gnu/libc.so.6" [0] #4 Foam::meshToMesh::distributeAndMergeCells(Foam::mapDistribute const&, Foam::polyMesh const&, Foam::globalIndex const&, Foam::Field<Foam::Vector<double> >&, Foam::List<Foam::face>&, Foam::List<int>&, Foam::List<int>&, Foam::List<int>&) const in "/lib/x86_64-linux-gnu/libc.so.6" [7] #3 cfree in "/lib/x86_64-linux-gnu/libc.so.6" [6] #3 cfree in "/lib/x86_64-linux-gnu/libc.so.6" [5] #4 Foam::meshToMesh::distributeAndMergeCells(Foam::mapDistribute const&, Foam::polyMesh const&, Foam::globalIndex const&, Foam::Field<Foam::Vector<double> >&, Foam::List<Foam::face>&, Foam::List<int>&, Foam::List<int>&, Foam::List<int>&) const in "/lib/x86_64-linux-gnu/libc.so.6" [4] #4 Foam::meshToMesh::distributeAndMergeCells(Foam::mapDistribute const&, Foam::polyMesh const&, Foam::globalIndex const&, Foam::Field<Foam::Vector<double> >&, Foam::List<Foam::face>&, Foam::List<int>&, Foam::List<int>&, Foam::List<int>&) const in "/lib/x86_64-linux-gn at ??:? [1] #5 Foam::meshToMesh::calculate(Foam::word const&)u/l in "/lib/xibc.so.6"86_64-linux-gnu /libc.so.6" [2] #4 Foam::meshToMesh::distributeAndMergeCells(Foam::mapDistribute const&, Foam::polyMesh const&, Foam::globalIndex const&, Foam::Field<Foam::Vector<double> >&, Foam::List<Foam::face>&, Foam::List<int>&, Foam::List<int>&, Foam::List<int>&) const[7] #4 Foam::meshToMesh::distributeAndMergeCells(Foam::mapDistribute const&, Foam::polyMesh const&, Foam::globalIndex const&, Foam::Field<Foam::Vector<double> >&, Foam::List<Foam::face>&, Foam::List<int>&, Foam::List<int>&, Foam::List<int>&) const in "/lib/x86_64-linux-gnu/libc.so.6" [3] #4 Foam::meshToMesh::distributeAndMergeCells(Foam::mapDistribute const&, Foam::polyMesh const&, Foam::globalIndex const&, Foam::Field<Foam::Vector<double> >&, Foam::List<Foam::face>&, Foam::List<int>&, Foam::List<int>&, Foam::List<int>&) const in "/lib/x86_64-linux-gnu/libc.so.6" [6] #4 Foam::meshToMesh::distributeAndMergeCells(Foam::mapDistribute const&, Foam::polyMesh const&, Foam::globalIndex const&, Foam::Field<Foam::Vector<double> >&, Foam::List<Foam::face>&, Foam::List<int>&, Foam::List<int>&, Foam::List<int>&) const at ??:? [0] #5 Foam::meshToMesh::calculate(Foam::word const&) at ??:? [4] #5 Foam::meshToMesh::calculate(Foam::word const&) at ??:? [5] #5 Foam::meshToMesh::calculate(Foam::word const&) at ??:? [1] #6 Foam::meshToMesh::constructNoCuttingPatches(Foam::word const&, Foam::word const&, bool) at ??:? [2] #5 Foam::meshToMesh::calculate(Foam::word const&) at ??:? [7] #5 Foam::meshToMesh::calculate(Foam::word const&) at ??:? [6] #5 Foam::meshToMesh::calculate(Foam::word const&) at ??:? [3] #5 Foam::meshToMesh::calculate(Foam::word const&) at ??:? [0] #6 Foam::meshToMesh::constructNoCuttingPatches(Foam::word const&, Foam::word const&, bool) at ??:? [4] #6 Foam::meshToMesh::constructNoCuttingPatches(Foam::word const&, Foam::word const&, bool) at ??:? [2] #6 Foam::meshToMesh::constructNoCuttingPatches(Foam::word const&, Foam::word const&, bool) at ??:? [1] #7 Foam::meshToMesh::meshToMesh(Foam::polyMesh const&, Foam::polyMesh const&, Foam::meshToMesh::interpolationMethod const&, bool) at ??:? [7] #6 Foam::meshToMesh::constructNoCuttingPatches(Foam::word const&, Foam::word const&, bool) at ??:? [6] #6 Foam::meshToMesh::constructNoCuttingPatches(Foam::word const&, Foam::word const&, bool) at ??:? [3] #6 Foam::meshToMesh::constructNoCuttingPatches(Foam::word const&, Foam::word const&, bool) at ??:? [5] #6 Foam::meshToMesh::constructNoCuttingPatches(Foam::word const&, Foam::word const&, bool) at ??:? [4] #7 Foam::meshToMesh::meshToMesh(Foam::polyMesh const&, Foam::polyMesh const&, Foam::meshToMesh::interpolationMethod const&, bool) at ??:? [0] #7 Foam::meshToMesh::meshToMesh(Foam::polyMesh const&, Foam::polyMesh const&, Foam::meshToMesh::interpolationMethod const&, bool) at ??:? [2] #7 Foam::meshToMesh::meshToMesh(Foam::polyMesh const&, Foam::polyMesh const&, Foam::meshToMesh::interpolationMethod const&, bool) at ??:? [1] #8 at ??:? [5] #7 Foam::meshToMesh::meshToMesh(Foam::polyMesh const&, Foam::polyMesh const&, Foam::meshToMesh::interpolationMethod const&, bool) at ??:? [7] #7 Foam::meshToMesh::meshToMesh(Foam::polyMesh const&, Foam::polyMesh const&, Foam::meshToMesh::interpolationMethod const&, bool) at ??:? [3] #7 Foam::meshToMesh::meshToMesh(Foam::polyMesh const&, Foam::polyMesh const&, Foam::meshToMesh::interpolationMethod const&, bool) at ??:? [6] #7 Foam::meshToMesh::meshToMesh(Foam::polyMesh const&, Foam::polyMesh const&, Foam::meshToMesh::interpolationMethod const&, bool)? at ??:?
Thanks! |
|
October 7, 2019, 09:21 |
|
#2 |
New Member
Erik
Join Date: Sep 2019
Posts: 4
Rep Power: 7 |
In case someone has the same issue in the future:
I was able to work around this issue by declaring preservePatches() for all the boundary patches in the decomposeParDict file. |
|
Tags |
dual mesh, mapping, meshtomesh, parallel, region |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[snappyHexMesh] Help with Snappy: no layers growing | GianF | OpenFOAM Meshing & Mesh Conversion | 2 | September 23, 2020 09:26 |
simpleFoam parallel | AndrewMortimer | OpenFOAM Running, Solving & CFD | 12 | August 7, 2015 19:45 |
Mesh gets out of sync during parallel 2D adaptive mesh refinement | pjohannes183 | OpenFOAM Programming & Development | 0 | November 14, 2013 05:31 |
Icemcfd 11: Loss of mesh from surface mesh option? | Joe | CFX | 2 | March 26, 2007 19:10 |
Automatic Mesh Motion solver | michele | OpenFOAM Running, Solving & CFD | 10 | September 26, 2005 09:21 |