Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

NACA Regression Tests

Section
Column
width50%
Panel
titleBackground:

Let's test some of the ProjectX solvers for the case of a NACA0012 airfoil in compressible, inviscid flow.

Each test case starts with an initial primal solution (sample x-momentum shown below). After reading the input, ProjectX runs a particular test case. Subsequently, the results for various nonlinear solvers and linear preconditioners are then compared with previously obtained data to ensure the solvers function correctlyall numerical data stored in the history (.hist) files are compared with a "true" history file.

In some cases, the solvers are also run in parallel using MPI and compared with the solvers run in serial. The drag and lift coefficients along with residual convergence are given.

For more information, please consult the .job and .hist files located in the corner of each panel.

Column
width50%
Panel
titleInputs:
  • Common flow parameters:
    • Equation set: Compressible 2D Euler
    • Freestream Mach number: M = 0.5
    • Angle of attack: α = 0 °
    • Total pressure: Pt =
    • Total temperature: Tt =
    • Static temperature:
    • CFL: 1030
  • Common solver parameters:
    • Preconditioning:
      • Outer GMRES iterations (no. restarts): 20
      • Inner GMRES iterations (no. Krylov vectors): 200
    • Solution order: 2
    • PSequencing: False
Section
Column
width50%
Panel
titleBoundary conditions:

Image Modified

Column
width50%
Panel
titleInput Primal X-Momentum:

...

Linear solver tests:
Section
Column
width50%





Panel
titleWhat is being tested?

Listed below are the tolerances for the relevant data compared in the history files:

  • Solution update fraction: 0.1
  • Residaul norm: 10-10
  • Drag coefficient: 10-12
  • Lift coefficient: 10-12
Column
width50%
Panel
titleResidual convergence comparison:

Image Added

Section
Column
width50%
Panel
titleNewton-Jacobi (Left):
  • Nonlinear solver:
    • Newton
  • PreconditionerLinear solver:
    • Proconditioner: Block Jacobi (left)
    • Side: Left
  • Serial results:
    • Residual norm converges to 4.3571·10^3571·10-13^ 13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
Column
width50%
Panel
titleNewton-Jacobi (Right):
  • Nonlinear solver:
    • Newton
  • Linear solver:
    • Preconditioner:
    • Block Jacobi (right)
    • Side: Right
  • Results:
    • Residual norm converges to 4.3532·10^3532·10-13^ 13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
Section
Column
width50%
Panel
titleNewton-ILU:
  • Nonlinear solver:
    • Newton
  • Linear solver:
    • Preconditioner:
    • Incomplete LU (0) (left
    • Reordering type: Minimum discarded fill
    • Side: Left
  • Serial results:
    • Residual norm converges to 4.3566·10-13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
  • Parallel results:
    • Residual norm converges to 4.3501·10-13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
Column
width50%
Panel
titleNewton-ILUT:
  • Nonlinear solver:
    • Newton
  • Linear solver:
    • Preconditioner:Threshold-based Incomplete LU (ILUT)
    • Reordering type: Minimum discarded fill
    • Side: Left: Right
    • Drop threshold: 10-3
  • Serial results:
    • Residual norm converges to 4.3566·10^3538·10-13^ 13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
  • Parallel results:
    • Residual norm converges to 4.3501·10^3539·10-13^ 13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
Section
Column
width50%
Panel
titleNewton-ILUKILU Multigrid:
  • Nonlinear solver:
    • Newton
  • PreconditionerLinear solver:
      ** ??
      • Incomplete LU (0) (
      ILUK
      • left) preconditioner
        • Reordering type: Minimum discarded fill
        • Side:
        Left
        • Right
      • P = 0 linear multigrid for coarse correction
    • Serial results:
      • Residual norm converges to 3.8091·10-13 after 5 iterations
      • Drag coefficient: CD = .5318 counts
      • Lift coefficient: CL = .9638 counts
    • Parallel Serial results:
      • Residual norm converges to 4.??·10^3501·10-13^ 13 after 5 iterations
      • Drag coefficient: CD = .53 5318 counts
      • Lift coefficient: CL = .96 counts9638 counts
Column
width50%
Panel
titleNewton-ILU-ASM (with/without multigrid):
  • Nonlinear solver:
    • Newton
  • Linear solver:
    • Preconditioner: Incomplete LU (ILU)
    • Parallel preconditioner: Additive Schwarz Method (ASM)
    • Side: Right
    • Reordering type: Minimum discarded fill
    • Outer GMRES iterations: 2
    • Inner GMRES iterations: 20
  • Parallel results (without multigrid)Parallel results:
    • Residual norm converges to 4.3545·10^-13^ .3736·10-13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
  • Parallel results (with multigrid):
    • Residual norm converges to 3.8106·10-13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
Section
Column
width50%
Panel
titleNewton-UMFPACK:
  • Nonlinear solver:
    • Newton
  • Linear solver:
    • Preconditioner:
    • Threshold-based Incomplete LU
    • Side: Right
    • Reordering type: Minimum discarded fill
  • Serial results:
    • Residual norm converges to 4.3559·10^3559·10-13^ 13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
  • Parallel results:
    • Residual norm converges to 4.3506·10^3506·10-13^ 13 after 5 iterations
    • Drag coefficient: CD = .5318 counts
    • Lift coefficient: CL = .9638 counts
Column
width50%
Panel
titleLean Jacobi:
  • Nonlinear solver:
    • Lean Jacobi
  • Linear solver:
    • Preconditioner:
    • None
  • Serial results:
    • Residual norm converges to 4.7345·10^7345·10-4^ 4 after 200 iterations
    • Drag coefficient: CD = .5098 counts
    • Lift coefficient: CL = .9478 counts
  • Parallel results:
    • Residual norm converges to 4.7345·10^7345·10-4^ 4 after 200 iterations
    • Drag coefficient: CD = .5098 counts
    • Lift coefficient: CL = .9478 counts
Section
Column
width50%
Panel
titleNewton-Osher:
  • Nonlinear solver:
    • Newton
  • Linear solver:
    • Preconditioner: Threshold-based Incomplete LU
    • Side: Left
    • Reordering type: Minimum discarded fill
  • Serial results:
    • Residual norm converges to 5.6482·10-14 after 38 iterations
    • Drag coefficient: CD = .5319 counts
    • Lift coefficient: CL = .9653 counts
Column
width50%

...

Adjoint solver tests:
Section
Column
width55%
Panel
titleWhat is being tested?

Listed below are the tolerances for the relevant data compared in the history files:

  • Adjoint residual: 10-12
Panel
titleAdjoint solution:

For the primal solution, please refer to the Newton-ILU case above.

  • Adjoint parameters:
    • Adjoint solution computed using drag as output
    • Sensitivity parameter: Angle of attack
    • Forward sensitivities are computed (i.e. dCD/dα with a tangent linearization)
  • Serial results:
    • Adjoint residual norm converges to 1.8574·10-15 after 2 iterations
    • dCD/dα (forward sensitivity): 1.6544·10-3
    • dCD/dα (adjoint): 1.6544·10-3
Column
width45%
Panel
titleDual X-momentum:

Image Added

...

Adaptation tests:
Section
Column
width50%
Panel
titleWhat is being tested?

Listed below are the tolerances for the relevant data compared in the history files:

  • Number of degrees of freedom on adapted meshes: 1
  • Error indicator: 10-12
  • Error estimate: 10-12
  • Drag: 10-12
Panel
titleAdaptation Test (boundary-curved):

For the primal solution, please refer to the Newton-ILU case above (with Nonlinear solver iterations limited to 50)

  • Adjoint parameters:
    • Adjoint output: Drag
    • Patch Reconstruction H1: False
    • Hessian Scalar Type: -1
      (Mach number for Hessian evaluation)
    • Nonlinear Smoother: Newton (solved to 10-6)
    • Adjoint Smoother residual converged to 10-6
    • Primal truth surrogate not fully converged
    • Adjoint truth fully converged
  • Adaptation parameters:
    • Output Adapted: Drag
    • Anisotropy method: Hessian
    • Curved re-meshing method: Boundary-curved
    • Number of adaptation iterations: 2
    • hp adaptation space
    • Adaptation algorithm: Fixed-Fraction marking
      • 30% refining and 20% coarsening fractions
      • Target degree-of-freedom increase factor: 1.0 (constant DOF)
    • Forward sensitivities are computed
      (i.e. dCD/dα with a tangent linearization)
  • Serial results:
    • Initial mesh:
      • DOF = 990
      • Error estimate = 3.9138·10-4
      • Drag = 5.3180·10-4
    • First adaptation:
      • DOF = 1008
      • Error estimate = 1.9066·10-4
      • Drag = 2.6942·10-4
    • Second adaptation:
      • DOF = 1026
      • Error estimate = 1.3617·10-4
      • Drag = 2.0600·10-4
Column
width50%
Panel
titleAdaptation Test (elasticity):
  • Almost all parameters are identical to the boundary-curved adaptation test. The only differing parameters are:
    • Target degree-of-freedom increase factor: 1.25
    • Curved re-meshing type: Elasticity
  • Serial results:
    • Initial mesh:
      • DOF = 990
      • Error estimate = 3.9138·10-4
      • Drag = 5.3180·10-4
    • First adaptation:
      • DOF = 1008
      • Error estimate = 1.8590·10-4
      • Drag = 2.6109·10-4
    • Second adaptation:
      • DOF = 1278
      • Error estimate = 8.5377·10-5
      • Drag = 1.3336·10-4





Panel
titlePrimal X-momentum after two adaptation iterations (elasticity):

Image Added

Section
Column
width50%
Panel
titleError estimate and drag over two adaptations (boundary-curved):

Image Added

Column
width50%
Panel
titleError estimate and drag over two adaptations (elasticity):

Image Added