Hello,
I have no experience with freefem whatsoever and wanted to
quickly test a simple flow scenario, such as a channel flow
in a unit square.

Flow scenario:
==============
// Navier Stokes Poiseuille flow on the unit square ([0-1]x[0-1])
//
//                           v1,v2=0
//                       --------------
// Parapolic          ->|              |
// velocity          -->|              |
// profile          --->|              | Velo nodes on the outflow boundary
are treated as inner nodes ("do nothing").
// Umax=1            -->|              | Pressure nodes on the outflow
boundary are forced to have a zero pressure value at the end
//                    ->|              |
//                       --------------
//                           v1,v2=0
//
// Analytical solution of the Poiseuille Flow given by:
//   Parapolic velocity profile:
//     v1 = 4 * Umax * y * (H - y) / H^2 = 4 * Umax * y * (1 - y)   (with
height H = 1)
//     v2 = 0
//     p  = (8 - 8x) * nu             (with nu = 1)


For the above test, I have
  1) exchanged the geometry of example
     'ff++/examples++-chapt3/NSNewton.edp' with the unit square,
  2) modified the initial guess for velocity to reflect the parabolic
profile,
  3) modified the essential boundary conditions to
      + on( inflow,  du1 = v1Inflow( x, y, 0 ), du2 = 0 )
      + on( outflow, dp = 0 )
      + on( noflow,  du1 = 0, du2 = 0 )  and
  4) removed the modification of the viscosity and hard coded a fixed
viscosity.

Now, something seems to be wrong, since the convergence of
the nonlinear iteration is very poor:
Number of DOFs: 2502
Nonlinear iteration 0: err = 3.752999689e+14 eps = 0.05
Nonlinear iteration 1: err = 2.999999938 eps = 0.05
Nonlinear iteration 2: err = 1.515290196 eps = 0.05
Nonlinear iteration 3: err = 1.017809712 eps = 0.05
Nonlinear iteration 4: err = 0.768919228 eps = 0.05


For the same flow scenario I obtain the following convergence rate
with an alternative fem package:
ndofs: 59
Nonlinear iteration 0: r (abs)=6.2970e-01 (tol=1.00e-10)  r
(rel)=1.0000e+00 (tol=1.00e-03)
Starting nonlinear iteration
Nonlinear iteration 1: r (abs)=7.2845e-02 (tol=1.00e-10)  r
(rel)=1.1568e-01 (tol=1.00e-03)
Nonlinear iteration 2: r (abs)=1.0712e-06 (tol=1.00e-10)  r
(rel)=1.7011e-06 (tol=1.00e-03)
Nonlinear iteration 3: r (abs)=1.4101e-15 (tol=1.00e-10)  r
(rel)=2.2393e-15 (tol=1.00e-03)
Above, r (abs) corresponds to the l2 norm of F
in newton iteration: (J delU = -F; u += delU),
where F( = NS * u - b) is the residual of the system.


Moreover, the results produced by
freefem *with my current scripting* of the problem are totally wrong.

I will attach my freefem script and a picture of the
correct velocity and pressure profiles to this mail for comparison.

Any hints are welcome.
Thanks in advance.

p.s.:
The installed version is:
-- FreeFem++ v  3.570001 (date Wed Jan 10 13:15:59 CET 2018)

Babak S. Hosseini


--

Kind regards
Babak S. Hosseini

Attachment: navsto_newton.edp
Description: Binary data

Attachment: colormapHSVjet.edp
Description: Binary data

_______________________________________________
pmwiki-users-fr mailing list
pmwiki-users-fr@pmichaud.com
http://www.pmichaud.com/mailman/listinfo/pmwiki-users-fr

Répondre à