[Nek5000-users] stokes flow with time-dependent boundary

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Thu Mar 1 14:19:45 CST 2012


Hello, Paul,

thank you for you reply. After making these changes, i still did not get
convergent results. however, i find that if i change NMXH to 1000 in
driver2.f, then at least, ' **ERROR**: Failed in HMHOLTZ' will
disappear, but 'Divergence' message printed by the subroutine uzawa
remains. Another good news is that the resultant flow field looks
reasonable compared to the analytical results, btw, i am calculating a
2d poiseuille flow with  'v O w w' BC.

the divergence message is like 
'20 2.58595E-06 2.05697E-06 2.58595E-01 7.95442E-06       1 Divergence'

i guess the 'Divergence' message is printed by the uzawa subroutine, its
iteration number NMXH is set to 1000 in driver2.f file.

any ideas? thanks in advance.

lailai


> Hi Lailai
> 
> It's not clear that the simulation has broken down (nor that it hasn't).
> In particular, your divergence on the first iteration is relatively small,
> which is good.  My guess is that this will ultimately converge.
> 
> >    1 1.00000E-08 2.67182E-01 2.67182E-01 1.00000E+00       1 Divergence
> 
> I would suggest to set the "divergence" and "helmholtz" parameters in 
> your .rea file to be 0, and set tolrel and tolabs to be 0.01.
> 
> Nek will then try to optimize the tolerance for the iterative solvers
> to give you a good solution with minimal computational overhead.
> 
> Paul
> 
> 
> 
> 
> 
> On Tue, 28 Feb 2012, nek5000-users at lists.mcs.anl.gov wrote:
> 
> > Hello, Paul,
> >
> > thank you for your reply. By following you suggestion, after switching
> > the flag IFNAN to F, i can run unsteady stokes flow, however, if i want
> > to run a single steady stokes flow, i switch the flag IFTRAN to F(i
> > guess i am right here), but the simulation will break down. the first
> > recorded error in the log file looks like
> >
> > 1   100 **ERROR**: Failed in HMHOLTZ: VELX   6.2080E-01   1.7717E+02
> > 1.0000E-08
> >   1.0000000000000000E-008 p22            1           1
> >  1     1 Helmholtz VELY    F:   0.0000E+00   1.0000E-08   1.0000E+00
> > 0.0000E+00
> >          1    Hmholtz VELY:      0   0.0000E+00   0.0000E+00
> > 1.0000E-08
> >    1 1.00000E-08 2.67182E-01 2.67182E-01 1.00000E+00       1 Divergence
> >   1.0000000000000000E-008 p22            1           1
> > New CG1-tolerance (RINIT*epsm) =   5.4238943644626018E-014
> >
> > any ideas on this? thanks in advance.
> >
> > lailai
> >
> >
> >
> >
> > On Wed, 2011-12-21 at 15:17 -0600, nek5000-users at lists.mcs.anl.gov
> > wrote:
> >> Hi Lailai,
> >>
> >> I suggest initially starting with a single run, using steady Stokes.
> >> (Note, steady Stokes works only for Pn-Pn-2, so set lx2,ly2 = lx1-2, etc.)
> >>
> >> Paul
> >>
> >>
> >> On Wed, 21 Dec 2011, nek5000-users at lists.mcs.anl.gov wrote:
> >>
> >>> thank you for your tip, Paul.
> >>>
> >>> i think we are solving a series of Stokes problems linked by a time-dependent
> >>> boundary condition.
> >>> The time-derivative term is zero and we are not solving an unsteady Stokes
> >>> problem.  I think we are not clear how to solve a series of Stokes problems.
> >>>
> >>> lailai
> >>>
> >>>
> >>>
> >>>
> >>>
> >>> On 12/21/2011 06:47 PM, nek5000-users at lists.mcs.anl.gov wrote:
> >>>> Hi Lailai,
> >>>>
> >>>> To switch to unsteady Stokes, you simply set the flag
> >>>> IFNAV to "F" in the .rea file, which turns off the convective
> >>>> term and simultaneously eliminates the CFL timestep constraint.
> >>>>
> >>>> [  Set:
> >>>>
> >>>>   T F F F F F F F F F F IFNAV & IFADVC (convection in P.S. fields)
> >>>>
> >>>> to
> >>>>
> >>>>   F F F F F F F F F F F IFNAV & IFADVC (convection in P.S. fields)
> >>>>
> >>>> .]
> >>>>
> >>>> It's still not clear to me if you are solving an unsteady
> >>>> Stokes problem, or a series of steady Stokes problems.
> >>>> (There is a difference...)
> >>>>
> >>>> Nek can handle either case with equal ease.
> >>>>
> >>>> I hope this helps.
> >>>>
> >>>> Paul
> >>>>
> >>>>
> >>>> On Wed, 21 Dec 2011, nek5000-users at lists.mcs.anl.gov wrote:
> >>>>
> >>>>> On 12/19/2011 06:17 PM, nek5000-users at lists.mcs.anl.gov wrote:
> >>>>>>
> >>>>>> Hi Lailai,
> >>>>>>
> >>>>>> I have used the approach you proposed for solving multiple
> >>>>>> steady stokes problems... you use an artificially large
> >>>>>> timestep.  That works.
> >>>>>>
> >>>>>
> >>>>> thank for your reply, if understand correctly, here you are talking about
> >>>>> the second approach i proposed. For each time step, we solve a transient
> >>>>> problem with very large internal timestep to quickly get to the
> >>>>> steady-state solution.
> >>>>> since i am very new to nek5000, thus  i am not sure how to implement this
> >>>>> method which seems not trivial.
> >>>>>
> >>>>> On the other hand, i started from the first example of the Kovasznay
> >>>>> problem. I remove the time-derivative and convection term by setting the
> >>>>> density in .rea file to zero, the numerical results agree very well with
> >>>>> the analytical solution with zero Re number. I guess here the solver is
> >>>>> just inverting a matrix which seems feasible for a 2D problem but might be
> >>>>> too expensive or inefficient for a 3D problem.
> >>>>>
> >>>>>
> >>>>>> If you really have a time-dependent boundary condition, there
> >>>>>> is no reason you can't just use the unsteady Stokes solver
> >>>>>> with whatever timestep is required to accurately resolve your
> >>>>>> temporal bcs.   Note that, in this case, you would indeed have
> >>>>>> the inertial term rho du/dt present in the physics.
> >>>>>>
> >>>>>
> >>>>>
> >>>>>> Paul
> >>>>>>
> >>>>>>
> >>>>>> On Mon, 19 Dec 2011, nek5000-users at lists.mcs.anl.gov wrote:
> >>>>>>
> >>>>>>> Hello, guys,
> >>>>>>>
> >>>>>>> i am a new guy to Nek5000, i saw the manual of nek5000 that it can solve
> >>>>>>> the steady stokes flow.
> >>>>>>> i guess when i solve such a flow, do i need to set it as a transient
> >>>>>>> simulation with time-derivative term included to get  a steady-state
> >>>>>>> solution? or, i can solve it by a direct solver method to get the
> >>>>>>> solution immediately?
> >>>>>>>
> >>>>>>> since i want to add some time-dependent boundary condition for the
> >>>>>>> steady stokes flow, so it will be pretty nice if i can solve it using
> >>>>>>> the direct solver, for each time step, i solve one stokes flow; if
> >>>>>>> nek5000 cannot solve it in such a way, i guess i have to use the first
> >>>>>>> way; then for each time step i have to solve a transient problem to
> >>>>>>> approach the steady state with some artificial time step used.
> >>>>>>>
> >>>>>>> i am not sure if i have stated my problem clearly. hopefully you guys
> >>>>>>> have some experience on the feasibility of the two ways mentioned above.
> >>>>>>> Thank you in advance.
> >>>>>>>
> >>>>>>> lailai
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>> _______________________________________________
> >>>>>>> Nek5000-users mailing list
> >>>>>>> Nek5000-users at lists.mcs.anl.gov
> >>>>>>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
> >>>>>>>
> >>>>>> _______________________________________________
> >>>>>> Nek5000-users mailing list
> >>>>>> Nek5000-users at lists.mcs.anl.gov
> >>>>>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
> >>>>>
> >>>>> _______________________________________________
> >>>>> Nek5000-users mailing list
> >>>>> Nek5000-users at lists.mcs.anl.gov
> >>>>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
> >>>>>
> >>>> _______________________________________________
> >>>> Nek5000-users mailing list
> >>>> Nek5000-users at lists.mcs.anl.gov
> >>>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
> >>>
> >>> _______________________________________________
> >>> Nek5000-users mailing list
> >>> Nek5000-users at lists.mcs.anl.gov
> >>> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
> >>>
> >> _______________________________________________
> >> Nek5000-users mailing list
> >> Nek5000-users at lists.mcs.anl.gov
> >> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
> >
> >
> > _______________________________________________
> > Nek5000-users mailing list
> > Nek5000-users at lists.mcs.anl.gov
> > https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
> >
> _______________________________________________
> Nek5000-users mailing list
> Nek5000-users at lists.mcs.anl.gov
> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users





More information about the Nek5000-users mailing list