Skip to content

Commit 4c6ed26

Browse files
authored
Merge pull request #131 from aeroamit/patch-1
Update Slope-Limiters-and-Shock-Resolution.md
2 parents 7ef9283 + 75d38c5 commit 4c6ed26

File tree

7 files changed

+426
-5
lines changed

7 files changed

+426
-5
lines changed

_data/docs_v7.yml

+1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
docs_v7:
3131
- Theory
3232
- Streamwise-Periodicity
33+
- Thermochemical-Nonequilibrium
3334

3435
- title: Users Guide
3536
docs_v7:

_docs_v7/Custom-Output.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,7 @@ The available types are:
218218
- `Function`: Introduces a new scalar output that is a function of other scalar outputs, it cannot reference fields (e.g. velocity).
219219
- `AreaAvg` and `AreaInt`: Computes an area average or integral of a field (the expression) over the list of markers.
220220
- `MassFlowAvg` and `MassFlowInt`: Computes a mass flow average or integral.
221+
- `Probe`: Evaluates the expression using the values of the mesh point closest to the coordinates specified inside "[]", [x, y] or [x, y, z] (2 or 3D).
221222

222223
**Note:** Each custom output can only use one type, e.g. it is not possible to write `p_drop : AreaAvg{PRESSURE}[inlet] - AreaAvg{PRESSURE}[outlet]`. This would need to be separated into two `AreaAvg` outputs and one `Function` to compute their difference.
223224

@@ -226,7 +227,8 @@ The available types are:
226227
CUSTOM_OUTPUTS= 'velocity : Macro{sqrt(pow(VELOCITY_X, 2) + pow(VELOCITY_Y, 2) + pow(VELOCITY_Z, 2))};\
227228
avg_vel : AreaAvg{$velocity}[z_minus, z_plus];\
228229
var_vel : AreaAvg{pow($velocity - avg_vel, 2)}[z_minus, z_plus];\
229-
dev_vel : Function{sqrt(var_vel) / avg_vel}'
230+
dev_vel : Function{sqrt(var_vel) / avg_vel};\
231+
probe1 : Probe{$velocity}[0.005, 0.005, 0.05]'
230232
```
231233

232234
To obtain the list of solver variables that can be used, write an invalid expression (e.g. 'x : AreaAvg{INVALID}[]') and run SU2.

_docs_v7/Physical-Definition.md

+13
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ SU2 offers different ways of setting and computing this definition. This documen
1919
- [Free-Stream Definition (Thermochemical Nonequilibrium)](#free-stream-definition-thermochemical-nonequilibrium)
2020
- [Free-Stream Temperatures](#free-stream-temperatures)
2121
- [Chemical Composition and Mass Fractions](#chemical-composition-and-mass-fractions)
22+
- [Transport Coefficient Model (Thermochemical Nonequilibrium)](#transport-coefficient-model-thermochemical-nonequilibrium)
2223
- [Flow Condition (Incompressible)](#flow-condition-incompressible)
2324
- [Thermodynamic and Gauge Pressure](#thermodynamic-and-gauge-pressure)
2425
- [Initial State and Non-Dimensionalization](#initial-state-and-non-dimensionalization)
@@ -128,6 +129,18 @@ A chemistry model, consisting of a set of flow species, thermochemical propertie
128129

129130
Free-stream mass fractions must also be specified in list using the option `GAS_COMPOSITION`. The mass fractions are specified as decimal values in the order of the species in the gas model. For example, an AIR-5 mixture of 77% oxygen and 23% nitrogen would be expressed as (0.77, 0.23, 0.00, 0.00, 0.00).
130131

132+
## Transport Coefficient Model (Thermochemical Nonequilibrium) ##
133+
134+
| Solver | Version |
135+
| --- | --- |
136+
| `NEMO_NAVIER_STOKES` | 7.0.0 |
137+
138+
A transport coefficient model must be specified for viscous simulations with the NEMO solver, using the `TRANSPORT_COEFF_MODEL` config option. Available options when using the SU2TCLib thermochemical library are the Wilkes-Blottner-Eucken, Gupta-Yos, and Sutherland viscosity models, specified by `WILKE`, `GUPTA-YOS`, and `SUTHERLAND`, respectively. The default option for transport coefficient model is Wilkes-Blottner-Eucken.
139+
140+
It should be noted the Sutherland model is only used to evaluate viscosity, and the Wilkes-Blottner-Eucken model is used to evaluate diffusion coefficient and thermal conductivity.
141+
142+
---
143+
131144
## Flow Condition (Incompressible) ##
132145

133146
| Solver | Version |

_docs_v7/Slope-Limiters-and-Shock-Resolution.md

+6-3
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,9 @@ The `SLOPE_LIMITER_` options above may each be changed to use different limiters
9696
| `BARTH_JESPERSEN` | Barth-Jespersen | This limiter is a smooth version of the commonly seen Barth-Jespersen limiter seen in the literature |
9797
| `VENKATAKRISHNAN` | Venkatakrishnan | |
9898
| `VENKATAKRISHNAN_WANG` | Venkatakrishnan-Wang | |
99+
| `NISHIKAWA_R3` | Nishikawa-R3 | |
100+
| `NISHIKAWA_R4` | Nishikawa-R4 | |
101+
| `NISHIKAWA_R5` | Nishikawa-R5 | |
99102
| `SHARP_EDGES` | Venkatakrishnan with sharp-edge modification | This limiter should not be used for flow solvers |
100103
| `WALL_DISTANCE` | Venkatakrishnan with wall distance modification | This limiter should not be used for flow solvers |
101104
| `VAN_ALBADA_EDGE` | Van Albada (edge formulation) | This limiter is only implemented for flow solvers and does not output limiter values when using the VOLUME_OUTPUT option |
@@ -106,7 +109,7 @@ The default limiter is `VENKATAKRISHNAN`.
106109

107110
The `VENKAT_LIMITER_COEFF` parameter is generally a small constant, defaulting to $$0.05$$, but its specific definition depends on the limiter being used.
108111

109-
For the `VENKATAKRISHNAN`, `SHARP_EDGES`, and `WALL_DISTANCE` limiters, the `VENKAT_LIMITER_COEFF` parameter refers to $$K$$ in $$\epsilon^2=\left(K\bar{\Delta} \right)^3$$, where $$\bar{\Delta}$$ is an average grid size (this is hardcoded as 1m and thus all tuning is via $$K$$).
112+
For the `VENKATAKRISHNAN`, `SHARP_EDGES`, and `WALL_DISTANCE` limiters, the `VENKAT_LIMITER_COEFF` parameter refers to $$K$$ in $$\epsilon^2=\left(K\bar{\Delta} \right)^3$$, where $$\bar{\Delta}$$ is an average grid size (this is hardcoded as 1m and thus all tuning is via $$K$$). For NISHIKAWA_Rp limiters, $$\epsilon^p=\left(K\bar{\Delta} \right)^{p+1}$$ (p = 3, 4 or 5).
110113
The $$K$$ parameter defines a threshold, below which oscillations are not damped by the limiter, as described by [Venkatakrishnan](https://doi.org/10.1006/jcph.1995.1084).
111114
Thus, a large value will approach the case of using no limiter with undamped oscillations, while too small of a value will slow the convergence and add extra diffusion.
112115
The SU2 implementation of the `BARTH_JESPERSEN` limiter actually uses `VENKATAKRISHNAN` with $$K=0$$.
@@ -115,10 +118,10 @@ The SU2 implementation of the `BARTH_JESPERSEN` limiter actually uses `VENKATAKR
115118
When using the `VENKATAKRISHNAN_WANG` limiter, `VENKAT_LIMITER_COEFF` is instead $$\varepsilon '$$ in $$\varepsilon = \varepsilon ' (q_{max} - q_{min})$$, where $$q_{min}$$ and $$q_{max}$$ are the respective *global* minimum and maximum of the field variable being limited.
116119
This global operation incurs extra time costs due to communication between MPI ranks.
117120
The original work by [Wang](https://doi.org/10.2514/6.1996-2091) suggests using `VENKAT_LIMITER_COEFF` in the range of $$[0.01, 0.20]$$, where again larger values approach the case of using no limiter.
118-
**Note:** unlike the aforementioned `VENKATAKRISHNAN` limiter, the `VENKATAKRISHNAN_WANG` limiter does not depend directly on the mesh size and can thus be used without non-dimensionalization. If the `VENKATAKRISHNAN` limiter is used outside of non-dimensional mode, the fields with larger values (pressure and temperature) will generally be limited more aggressively than velocity.
121+
**Note:** unlike the aforementioned `VENKATAKRISHNAN` limiter and NISHIKAWA_Rp limiter, the `VENKATAKRISHNAN_WANG` limiter does not depend directly on the mesh size and can thus be used without non-dimensionalization. If the `VENKATAKRISHNAN` limiter is used outside of non-dimensional mode, the fields with larger values (pressure and temperature) will generally be limited more aggressively than velocity.
119122

120123

121-
The `NONE`, `BARTH_JESPERSEN`, `VENKATAKRISHNAN`, and `VENKATAKRISHNAN_WANG` limiter options all have no **geometric modifier**.
124+
The `NONE`, `BARTH_JESPERSEN`, `VENKATAKRISHNAN`, `VENKATAKRISHNAN_WANG`, and NISHIKAWA_Rp limiter options all have no **geometric modifier**.
122125
A geometric modifier increases limiting near walls or sharp edges. This is done by multiplying the limiter value by a **geometric factor**.
123126

124127
For both the `SHARP_EDGES` and `WALL_DISTANCE` limiters, the influence of the geometric modifier is controlled with `ADJ_SHARP_LIMITER_COEFF` which defaults to 3.0.

_docs_v7/Style-Guide.md

+2
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ Patch releases cannot break backward compatibility.
2525
SU2 is written for C++11, the formatting rules are defined in a `clang-format` file located in the root of the repository.
2626
**New files must follow the formatting rules exactly.**
2727

28+
SU2 uses pre-commit to enforce a consistent formatting. To use, [install pre-commit](https://pre-commit.com/#install) and run `pre-commit install` at the root of the project. You can now force the formatting on all files with `pre-commit run -a`. This will also run all pre-commit hooks before each commit, preventing dirty commits in the repository.
29+
2830
### Files, functions, and variables
2931

3032
Basic recommendations for creating files, functions, and variables:

0 commit comments

Comments
 (0)