|
[Sponsors] |
OF 4.1 + Helyx-OS v2.4.0 AMI Simulation blows up after 0.4 seconds |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
July 21, 2018, 11:03 |
OF 4.1 + Helyx-OS v2.4.0 AMI Simulation blows up after 0.4 seconds
|
#1 |
Member
Join Date: Apr 2011
Posts: 56
Rep Power: 15 |
Hello Everyone,
Just for some context, I'm trying to move one of the impellers of a reactor using AMI. I'm using OF4.1 and Helyx-OS v2.4.0. I've read some of the posts regarding convergence issues with sliding mesh (AMI) and I believe I have tackled most of issues that could hinder convergence. I verify the mesh is indeed sliding, however, after some type I get the dreaded error: MI: Creating addressing and weights between 52300 source faces and 54593 target faces [0] [0] [0] --> FOAM FATAL ERROR: [0] Unable to set source and target faces [0] [0] From function void Foam::faceAreaWeightAMI<SourcePatch, TargetPatch>::setNextFaces(Foam::label&, Foam::label&, Foam::label&, const boolList&, Foam::labelList&, const Foam::DynamicList<int>&, bool) const [with SourcePatch = Foam::PrimitivePatch<Foam::face, Foam::SubList, const Foam::Field<Foam::Vector<double> >&>; TargetPatch = Foam::PrimitivePatch<Foam::face, Foam::SubList, const Foam::Field<Foam::Vector<double> >&>; Foam::label = int; Foam::boolList = Foam::List<bool>; Foam::labelList = Foam::List<int>] [0] in file lnInclude/faceAreaWeightAMI.C at line 287. [0] FOAM parallel run aborting [0] [0] #0 Foam::error::printStack(Foam::Ostream&) at ??:? [0] #1 Foam::error::abort() at ??:? [0] #2 Foam::faceAreaWeightAMI<Foam::PrimitivePatch<Foam: :face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::calcAddressing(Foam::List<Foam::DynamicList<int , 0u, 2u, 1u> >&, Foam::List<Foam::DynamicList<double, 0u, 2u, 1u> >&, Foam::List<Foam::DynamicList<int, 0u, 2u, 1u> >&, Foam::List<Foam::DynamicList<double, 0u, 2u, 1u> >&, int, int) at ??:? [0] #3 Foam::faceAreaWeightAMI<Foam::PrimitivePatch<Foam: :face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::calculate(Foam::List<Foam::List<int> >&, Foam::List<Foam::List<double> >&, Foam::List<Foam::List<int> >&, Foam::List<Foam::List<double> >&, int, int) at ??:? [0] #4 Foam::AMIInterpolation<Foam::PrimitivePatch<Foam:: face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::update(Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&) at ??:? [0] #5 Foam::AMIInterpolation<Foam::PrimitivePatch<Foam:: face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::constructFromSurface(Foam::PrimitivePatch<Foam: :face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&, Foam::autoPtr<Foam::searchableSurface> const&) at ??:? [0] #6 Foam::cyclicAMIPolyPatch::resetAMI(Foam::AMIInterp olation<Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::interpolationMethod const&) const at ??:? [0] #7 Foam::cyclicAMIPolyPatch::AMI() const at ??:? [0] #8 Foam::cyclicAMIPolyPatch::applyLowWeightCorrection () const at ??:? [0] #9 Foam::cyclicAMIFvPatchField<Foam::Vector<double> >::patchNeighbourField() const at ??:? [0] #10 Foam::coupledFvPatchField<Foam::Vector<double> >::evaluate(Foam::UPstream::commsTypes) at ??:? [0] #11 Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>::Boundary::evaluate() at ??:? [0] #12 Foam::multiSolidBodyMotionFvMesh::update() at ??:? [0] #13 ? at ??:? [0] #14 __libc_start_main in "/lib64/libc.so.6" [0] #15 ? at /home/abuild/rpmbuild/BUILD/glibc-2.22/csu/../sysdeps/x86_64/start.S:121 -------------------------------------------------------------------------- MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD with errorcode 1. [IMG]file:///home/hovione/Desktop/mesh1.png[/IMG] I understand the mesh could use some fine tuning but could this be the cause? No errors or warnings in checkMesh. This seem odd since I would have gotten the error sooner... I can't seem to understand why the simulation blows up. Can anyone detect any errors or provide some insight? Log Courant Number mean: 0.003791078666 max: 1.967136809 deltaT = 0.0005555555556 Time = 0.401667 AMI: Creating addressing and weights between 52300 source faces and 54593 target faces AMI: Patch source sum(weights) min/max/average = 0, 1.506151533, 1.007932604 AMI: Patch source identified 9 faces with weights less than 0.2 AMI: Patch target sum(weights) min/max/average = 0, 1.455095879, 1.001904928 AMI: Patch target identified 15 faces with weights less than 0.2 GAMG: Solving for pcorr, Initial residual = 1, Final residual = 0.006262864683, No Iterations 72 GAMG: Solving for pcorr, Initial residual = 0.2674973684, Final residual = 0.002601096384, No Iterations 28 time step continuity errors : sum local = 9.684025466e-10, global = 7.955442223e-10, cumulative = -1.610408404e-07 PIMPLE: iteration 1 smoothSolver: Solving for Ux, Initial residual = 0.0004328596307, Final residual = 1.77369777e-05, No Iterations 1 smoothSolver: Solving for Uy, Initial residual = 0.000419783604, Final residual = 1.721121331e-05, No Iterations 1 smoothSolver: Solving for Uz, Initial residual = 0.0002945661384, Final residual = 1.182454377e-05, No Iterations 1 GAMG: Solving for p, Initial residual = 0.4609984327, Final residual = 0.003167119338, No Iterations 3 GAMG: Solving for p, Initial residual = 0.02578119572, Final residual = 0.000247318199, No Iterations 28 time step continuity errors : sum local = 1.803082199e-09, global = -9.57286632e-10, cumulative = -1.619981271e-07 smoothSolver: Solving for epsilon, Initial residual = 0.0003327351328, Final residual = 8.315218439e-06, No Iterations 1 smoothSolver: Solving for k, Initial residual = 0.0007650400529, Final residual = 2.672913661e-05, No Iterations 1 PIMPLE: iteration 2 smoothSolver: Solving for Ux, Initial residual = 0.0003442167062, Final residual = 7.320810545e-07, No Iterations 3 smoothSolver: Solving for Uy, Initial residual = 0.000336613188, Final residual = 7.382960511e-07, No Iterations 3 smoothSolver: Solving for Uz, Initial residual = 0.0002487474601, Final residual = 5.985640355e-07, No Iterations 3 GAMG: Solving for p, Initial residual = 0.4505889049, Final residual = 0.00291997857, No Iterations 3 GAMG: Solving for p, Initial residual = 0.06539827074, Final residual = 7.307976183e-07, No Iterations 98 time step continuity errors : sum local = 9.574142553e-10, global = -9.559433288e-10, cumulative = -1.629540704e-07 smoothSolver: Solving for epsilon, Initial residual = 0.0001625167787, Final residual = 5.564326877e-07, No Iterations 2 smoothSolver: Solving for k, Initial residual = 0.000390723251, Final residual = 6.081068895e-07, No Iterations 3 PIMPLE: not converged within 2 iterations ExecutionTime = 6737.33 s ClockTime = 6758 s Thank is advance. BR. Ruonin |
|
July 23, 2018, 01:59 |
|
#2 |
Senior Member
harshawardhank
Join Date: Mar 2014
Posts: 209
Rep Power: 13 |
[QUOTE=Ruonin;700002]Hello Everyone,
Just for some context, I'm trying to move one of the impellers of a reactor using AMI. I'm using OF4.1 and Helyx-OS v2.4.0. I've read some of the posts regarding convergence issues with sliding mesh (AMI) and I believe I have tackled most of issues that could hinder convergence. I verify the mesh is indeed sliding, however, after some type I get the dreaded error: MI: Creating addressing and weights between 52300 source faces and 54593 target faces [0] [0] [0] --> FOAM FATAL ERROR: [0] Unable to set source and target faces [0] [0] From function void Foam::faceAreaWeightAMI<SourcePatch, TargetPatch>::setNextFaces(Foam::label&, Foam::label&, Foam::label&, const boolList&, Foam::labelList&, const Foam:ynamicList<int>&, bool) const [with SourcePatch = Foam::PrimitivePatch<Foam::face, Foam::SubList, const Foam::Field<Foam::Vector<double> >&>; TargetPatch = Foam::PrimitivePatch<Foam::face, Foam::SubList, const Foam::Field<Foam::Vector<double> >&>; Foam::label = int; Foam::boolList = Foam::List<bool>; Foam::labelList = Foam::List<int>] [0] in file lnInclude/faceAreaWeightAMI.C at line 287. [0] FOAM parallel run aborting [0] [0] #0 Foam::error:rintStack(Foam::Ostream&) at ??:? [0] #1 Foam::error::abort() at ??:? [0] #2 Foam::faceAreaWeightAMI<Foam::PrimitivePatch<Foam: :face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::calcAddressing(Foam::List<Foam:ynamicList<int , 0u, 2u, 1u> >&, Foam::List<Foam:ynamicList<double, 0u, 2u, 1u> >&, Foam::List<Foam:ynamicList<int, 0u, 2u, 1u> >&, Foam::List<Foam:ynamicList<double, 0u, 2u, 1u> >&, int, int) at ??:? [0] #3 Foam::faceAreaWeightAMI<Foam::PrimitivePatch<Foam: :face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::calculate(Foam::List<Foam::List<int> >&, Foam::List<Foam::List<double> >&, Foam::List<Foam::List<int> >&, Foam::List<Foam::List<double> >&, int, int) at ??:? [0] #4 Foam::AMIInterpolation<Foam::PrimitivePatch<Foam:: face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::update(Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&) at ??:? [0] #5 Foam::AMIInterpolation<Foam::PrimitivePatch<Foam:: face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::constructFromSurface(Foam::PrimitivePatch<Foam: :face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > const&, Foam::autoPtr<Foam::searchableSurface> const&) at ??:? [0] #6 Foam::cyclicAMIPolyPatch::resetAMI(Foam::AMIInterp olation<Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> >, Foam::PrimitivePatch<Foam::face, Foam::SubList, Foam::Field<Foam::Vector<double> > const&, Foam::Vector<double> > >::interpolationMethod const&) const at ??:? [0] #7 Foam::cyclicAMIPolyPatch::AMI() const at ??:? [0] #8 Foam::cyclicAMIPolyPatch::applyLowWeightCorrection () const at ??:? [0] #9 Foam::cyclicAMIFvPatchField<Foam::Vector<double> >:atchNeighbourField() const at ??:? [0] #10 Foam::coupledFvPatchField<Foam::Vector<double> >::evaluate(Foam::UPstream::commsTypes) at ??:? [0] #11 Foam::GeometricField<Foam::Vector<double>, Foam::fvPatchField, Foam::volMesh>::Boundary::evaluate() at ??:? [0] #12 Foam::multiSolidBodyMotionFvMesh::update() at ??:? [0] #13 ? at ??:? [0] #14 __libc_start_main in "/lib64/libc.so.6" [0] #15 ? at /home/abuild/rpmbuild/BUILD/glibc-2.22/csu/../sysdeps/x86_64/start.S:121 -------------------------------------------------------------------------- MPI_ABORT was invoked on rank 0 in communicator MPI_COMM_WORLD with errorcode 1. [IMG]file:///home/hovione/Desktop/mesh1.png[/IMG] I understand the mesh could use some fine tuning but could this be the cause? No errors or warnings in checkMesh. This seem odd since I would have gotten the error sooner... I can't seem to understand why the simulation blows up. Can anyone detect any errors or provide some insight? Log Courant Number mean: 0.003791078666 max: 1.967136809 deltaT = 0.0005555555556 Time = 0.401667 AMI: Creating addressing and weights between 52300 source faces and 54593 target faces AMI: Patch source sum(weights) min/max/average = 0, 1.506151533, 1.007932604 AMI: Patch source identified 9 faces with weights less than 0.2 AMI: Patch target sum(weights) min/max/average = 0, 1.455095879, 1.001904928 AMI: Patch target identified 15 faces with weights less than 0.2 GAMG: Solving for pcorr, Initial residual = 1, Final residual = 0.006262864683, No Iterations 72 GAMG: Solving for pcorr, Initial residual = 0.2674973684, Final residual = 0.002601096384, No Iterations 28 time step continuity errors : sum local = 9.684025466e-10, global = 7.955442223e-10, cumulative = -1.610408404e-07 PIMPLE: iteration 1 smoothSolver: Solving for Ux, Initial residual = 0.0004328596307, Final residual = 1.77369777e-05, No Iterations 1 smoothSolver: Solving for Uy, Initial residual = 0.000419783604, Final residual = 1.721121331e-05, No Iterations 1 smoothSolver: Solving for Uz, Initial residual = 0.0002945661384, Final residual = 1.182454377e-05, No Iterations 1 GAMG: Solving for p, Initial residual = 0.4609984327, Final residual = 0.003167119338, No Iterations 3 GAMG: Solving for p, Initial residual = 0.02578119572, Final residual = 0.000247318199, No Iterations 28 time step continuity errors : sum local = 1.803082199e-09, global = -9.57286632e-10, cumulative = -1.619981271e-07 smoothSolver: Solving for epsilon, Initial residual = 0.0003327351328, Final residual = 8.315218439e-06, No Iterations 1 smoothSolver: Solving for k, Initial residual = 0.0007650400529, Final residual = 2.672913661e-05, No Iterations 1 PIMPLE: iteration 2 smoothSolver: Solving for Ux, Initial residual = 0.0003442167062, Final residual = 7.320810545e-07, No Iterations 3 smoothSolver: Solving for Uy, Initial residual = 0.000336613188, Final residual = 7.382960511e-07, No Iterations 3 smoothSolver: Solving for Uz, Initial residual = 0.0002487474601, Final residual = 5.985640355e-07, No Iterations 3 GAMG: Solving for p, Initial residual = 0.4505889049, Final residual = 0.00291997857, No Iterations 3 GAMG: Solving for p, Initial residual = 0.06539827074, Final residual = 7.307976183e-07, No Iterations 98 time step continuity errors : sum local = 9.574142553e-10, global = -9.559433288e-10, cumulative = -1.629540704e-07 smoothSolver: Solving for epsilon, Initial residual = 0.0001625167787, Final residual = 5.564326877e-07, No Iterations 2 smoothSolver: Solving for k, Initial residual = 0.000390723251, Final residual = 6.081068895e-07, No Iterations 3 PIMPLE: not converged within 2 iterations ExecutionTime = 6737.33 s ClockTime = 6758 s Thank is advance. BR. Initialy Try to run it on single core |
|
July 23, 2018, 11:38 |
|
#3 |
Member
Join Date: Apr 2011
Posts: 56
Rep Power: 15 |
Hello harsha_kulkarni,
thanks for the input. I did try running it on a single core and using moveDynamicMesh to get a general sense if there is an issue with the AMI or just the problem physics. Initially the Patch Target Sum weights start to diminish and after a while just go to zero for the minimum. I used a constant time step o 2.0E-4 to get a Co number below 1. Still no luck and the simulations blows up around 0.145 seconds. Any suggestions? Maybe I need to make a coarser mesh? I've seen some suggestions on the forum. Or maybe have the same number of faces for both sides of AMI... I would like to start from scratch rather than using the mapFields from the MRF case. Going further into the future I would like to use 6DOF where I don't know the impeller speed but I'm still stuck in moving mesh convergence. BR. Ruonin. |
|
July 23, 2018, 11:59 |
|
#4 | |
Senior Member
harshawardhank
Join Date: Mar 2014
Posts: 209
Rep Power: 13 |
Quote:
You have used dynamic mesh and single core. Instead if I will suggest to use single core without dynamic Mesh |
||
July 23, 2018, 13:49 |
|
#5 |
Member
Join Date: Apr 2011
Posts: 56
Rep Power: 15 |
Thanks for the reply, harsha_kulkarni.
I've already solved this case using MRF and multiple cores. Now, I'm trying to use dynamic mesh and AMI to perform a mixing time study. So, I'll need the movement enforced by dynamic mesh. So, in essence, I suppose my issue is how to set up my dynamic mesh properly. I see the mesh moves, so I assume the patches and interfaces are well defined. Probably, is just my meshing strategy that need some fine tuning. Any thoughts? BR. Ruonin |
|
Tags |
ami, helyx-os, openfoam 4.1, sliding mesh |
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Compressor Simulation using rhoPimpleDyMFoam | Jetfire | OpenFOAM Running, Solving & CFD | 107 | December 9, 2014 14:38 |
AMI simulation unstable within first few timesteps | craig0a | OpenFOAM Running, Solving & CFD | 0 | February 24, 2014 13:09 |
AMI simulation with VOF | Ya_Squall2010 | OpenFOAM Running, Solving & CFD | 29 | May 13, 2013 04:19 |
rhoPorousMRFSimpleFoam/compressor simulation blows up | mpat | OpenFOAM Running, Solving & CFD | 2 | August 10, 2012 10:52 |
Overflow problem in steady simulation | ReeKo | CFX | 11 | October 8, 2008 18:57 |