logo

Table of Contents

  • 1. Quick Start
    • 1.1. Introduction to Flow360
    • 1.2. ONERA M6 Wing with WebUI
    • 1.3. ONERA M6 Wing with Python API
    • 1.4. Automated Meshing with WebUI
    • 1.5. Automated Meshing with Python API
    • 1.6. NREL S809 Airfoil
    • 1.7. XV-15 Rotor
  • 2. Capabilities
    • 2.1. Overview
    • 2.2. Feature Compatibility Matrix
    • 2.3. Propeller Models and Sliding Interfaces
    • 2.4. User Defined Dynamics
  • 3. Preprocessing
    • 3.1. Mesh Configuration File
    • 3.2. Engineering Sketch Pad
    • 3.3. Automated Meshing
  • 4. Solver Configuration
  • 5. Python API Reference
  • 6. Case Studies
    • 6.1. NACA 0012 Low Speed Airfoil
    • 6.2. 2D NACA 4412 Airfoil Trailing Edge Separation
    • 6.3. 2D Backward Facing Step
    • 6.4. Transition Modeling
    • 6.5. High Lift Common Research Model (HL-CRM)
    • 6.6. Drag Prediction of Common Research Model
    • 6.7. ONERA M6 Wing
    • 6.8. XV-15 Rotor Blade Analysis using the Blade Element Disk Method
    • 6.9. DTU 10MW Wind Turbine
    • 6.10. Scale-Resolving Simulations Past a Circular Cylinder
  • 7. Tutorials
    • 7.1. Geometry Modeling and Preparation for Automated Meshing: An Example of the ONERA M6 Wing
    • 7.2. Non-Dimensionalization and Integrated Loads Post-Processing in Flow360
    • 7.3. RANS CFD on 2D High-Lift System Configuration Using the Flow360 Python Client
    • 7.4. Blade Element Theory using the XV-15 rotor
    • 7.5. Time-accurate RANS CFD on a propeller using a sliding interface: the XV-15 rotor geometry
    • 7.6. Calculating Dynamic Derivatives using Sliding Interfaces
    • 7.7. Automated Meshing for Internal Flow
    • 7.8. Conjugate Heat Transfer for Cooling Fins
  • 8. Knowledge Base
    • 8.1. Preprocessing
      • 8.1.1. Meshing Recommendations
      • 8.1.2. Nondimensional Inputs
      • 8.1.3. Boundary Conditions
      • 8.1.4. BET Translators
      • 8.1.5. SectionalPolars Best Practices.
    • 8.2. Simulation
      • 8.2.1. timeStepping
      • 8.2.2. BETDisks
      • 8.2.3. actuatorDisks
      • 8.2.4. navierStokesSolver
      • 8.2.5. turbulenceModelSolver
      • 8.2.6. transitionModelSolver
      • 8.2.7. heatEquationSolver
      • 8.2.8. slidingInterfaces
      • 8.2.9. porousMedia
    • 8.3. Postprocessing
    • 8.4. Fixing Divergence Issues
    • 8.5. Frequently Asked Questions
  • 9. Publications
    • 9.1. Webinar
    • 9.2. Papers
  • 10. Release Notes
Theme by the Executable Book Project
  • .rst
Contents
  • 8.2.4.1. absoluteTolerance
  • 8.2.4.2. relativeTolerance
  • 8.2.4.3. kappaMUSCL
  • 8.2.4.4. orderOfAccuracy
  • 8.2.4.5. Limiters
  • 8.2.4.6. linearSolverConfig
  • 8.2.4.7. updateJacobianFrequency
  • 8.2.4.8. equationEvalFrequency

navierStokesSolver

Contents

  • 8.2.4.1. absoluteTolerance
  • 8.2.4.2. relativeTolerance
  • 8.2.4.3. kappaMUSCL
  • 8.2.4.4. orderOfAccuracy
  • 8.2.4.5. Limiters
  • 8.2.4.6. linearSolverConfig
  • 8.2.4.7. updateJacobianFrequency
  • 8.2.4.8. equationEvalFrequency

8.2.4. navierStokesSolver#

8.2.4.1. absoluteTolerance#

The absoluteTolerance is the primary convergence metric for steady cases. At least 5 orders of magnitude reduction is recommended for all residual values. The absoluteTolerance can also be used for unsteady cases, but is less meaningful than the relativeTolerance, as the initial residual values change between different physical steps.

8.2.4.2. relativeTolerance#

The relative residual is defined as the ratio of the current pseudoStep’s residual to the maximum residual present in the first 10 pseudoSteps within the current physicalStep. When running unsteady cases, the relativeTolerance is typically set to 1e-2 or 1e-3. Once the nonlinear residuals drop by 2 or 3 orders of magnitude, the solver will continue to the next physicalStep. The relativeTolerance is ignored for steady cases.

8.2.4.3. kappaMUSCL#

The default value of -1 leads to a second-order upwind scheme, which is the most stable. A value of 0.33 leads to a blended upwind/central scheme, which is recommended for low subsonic flows to reduce dissipation. Values greater than 0.33 are not recommended and a value of 1 leads to an unstable scheme.

8.2.4.4. orderOfAccuracy#

The orderOfAccuracy determines whether the solver will use 1st or 2nd order spatial discretization. The 1st order solver is faster, cheaper and most importantly, it is more dissipative, making it less likely to diverge. However, such numerical dissipation may also significantly impact the accuracy of the solution.

When initializing the flow field for unsteady cases with rotating components, such as simulating a rotor enclosed in a sliding interface, the user may need to run the 1st-order solver for around 1 or 2 revolutions. Once the flow field has been initialized, the user can fork the first-order case and switch orderOfAccuracy from 1 to 2 for the child cases.

While adjusting the orderOfAccuracy for the navierStokesSolver, the turbulenceModelSolver should also be adjusted.

The recommended timeStepping is slightly different for the 1st and 2nd order cases. For more details, see Rotational Angle per Step, maxPseudoSteps and CFL

8.2.4.5. Limiters#

If the case is transonic or supersonic, the user should set limitVelocity and limitPressureDensity as TRUE in the Navier Stokes solver parameters section of their input file.

8.2.4.6. linearSolverConfig#

linearSolverConfig controls the configuration for the linear solver. It includes information maxIterations which specifies the number of linear iteration performed in each pseudo-step. Typically, maxIterations is set to 25~35 for the NS solver. The user might need to increase it to 50-55 if the linear residual reduction ratio after linear solver is not enough. The default maxIterations for NS solver is 30.

8.2.4.7. updateJacobianFrequency#

The default value for updateJacobianFrequency is 4, which means that the Jacobian for evaluating the NS equation is updated every 4 pseudo-steps. For some challenging cases, reducing updateJacobianFrequency from 4 to 1 may help, however, this may slow the NS solver by up to approximately 30%.

8.2.4.8. equationEvalFrequency#

The default value for equationEvalFrequency is 1, which means that the Navier-Stokes solution is updated every pseudo-step. For loosely-coupled simulations, the equationEvalFrequency value can be changed to introduce a solution update at a different frequency than the turbulence/transition model solvers. The recommended value for this parameter is 1 for a large majority of simulations.

previous

8.2.3. actuatorDisks

next

8.2.5. turbulenceModelSolver

By Flexcompute Inc
© Copyright 2023, Flexcompute Inc.