... | @@ -4,7 +4,7 @@ The [core](https://gitlab.uliege.be/am-dept/dartflo/blob/master/dart/api/core.py |
... | @@ -4,7 +4,7 @@ The [core](https://gitlab.uliege.be/am-dept/dartflo/blob/master/dart/api/core.py |
|
**1. Defining the parameters**
|
|
**1. Defining the parameters**
|
|
In practise, DART is initialized by using a dictionary of parameters, and the type of scenario and task. The different parameters are listed hereunder.
|
|
In practise, DART is initialized by using a dictionary of parameters, and the type of scenario and task. The different parameters are listed hereunder.
|
|
```python
|
|
```python
|
|
p = {
|
|
cfg = {
|
|
# Options
|
|
# Options
|
|
'Threads' : int, # number of threads
|
|
'Threads' : int, # number of threads
|
|
'Verb' : int, # verbosity
|
|
'Verb' : int, # verbosity
|
... | @@ -23,10 +23,12 @@ p = { |
... | @@ -23,10 +23,12 @@ p = { |
|
# ... only 3D
|
|
# ... only 3D
|
|
'Wings' : list of str, # LIST of names of physical groups containing the lifting surface boundary (first element will be the body of interest for aerostructural and optimization)
|
|
'Wings' : list of str, # LIST of names of physical groups containing the lifting surface boundary (first element will be the body of interest for aerostructural and optimization)
|
|
'Wakes' : list of str, # LIST of names of physical group containing the wake
|
|
'Wakes' : list of str, # LIST of names of physical group containing the wake
|
|
'WakeTips' : list of str, # LIST of names of physical group containing the edge of the wake (not for 2.5D)
|
|
'WakeTips' : list of str, # LIST of names of physical group containing the free edge of the wake (not for 2.5D)
|
|
'TeTips' : list of str, # LIST of names of physical group containing the edge of the wake and the trailing edge
|
|
'Tes' : list of str, # LIST of names of physical group containing the trailing edges
|
|
# ... optional for 3D
|
|
# ... optional for 3D
|
|
'Symmetry' : str, # name of physical group containing the symmetry boundaries
|
|
'Symmetry' : str, # name of physical group containing the symmetry boundaries
|
|
|
|
'Fuselage' : str, # name of physical group containing the fuselage boundary
|
|
|
|
'WakeExs' : str, # LIST of names of physical group containing the free edge of the wake and the intersection of lifting surface with fuselage (to be excluded from Wake B.C.), only required if a 'Fuselage' if present, otherwise 'WakeTips' is sufficient
|
|
# Freestream
|
|
# Freestream
|
|
'M_inf' : float, # freestream Mach number
|
|
'M_inf' : float, # freestream Mach number
|
|
'AoA' : float, # freestream angle of attack [deg] (optional, default=0)
|
|
'AoA' : float, # freestream angle of attack [deg] (optional, default=0)
|
... | @@ -53,15 +55,17 @@ p = { |
... | @@ -53,15 +55,17 @@ p = { |
|
Once the parameters have been defined, DART can simply be initialized by calling,
|
|
Once the parameters have been defined, DART can simply be initialized by calling,
|
|
```python
|
|
```python
|
|
from dart.api.core import initDart
|
|
from dart.api.core import initDart
|
|
dim, qinf, msh, wrtr, mrf, pbl, bnd, sol, adj = initDart(p, scenario=..., task=...)
|
|
_dart = initDart(cfg, scenario='aerodynamic', task='analysis', `viscous=False`)
|
|
```
|
|
```
|
|
where `scenario` can be `'aerodynamic'` or `'aerostructural'`, and `task` can be `'analysis'` or `'optimization'`, and where:
|
|
where `scenario` can be `'aerodynamic'` or `'aerostructural'`, and `task` can be `'analysis'` or `'optimization'`, and viscous is a boolean indicating whether the solver should also be configured for viscous-inviscid interaction. `_dart` is a dictionary containing the following objects (named after their key):
|
|
- `dim` is the number of dimensions (`2` or `3`)
|
|
- `dim` is the number of dimensions (`2` or `3`)
|
|
- `qinf` is the freestream dynamic pressure (`0` except if `scenario='aerostructural'`)
|
|
- `qinf` is the freestream dynamic pressure (`0` except if `scenario='aerostructural'`)
|
|
- `msh` is the mesh
|
|
- `msh` is the mesh
|
|
- `wrtr` is the utility to write mesh/results on disk
|
|
- `wrt` is the utility to write mesh/results on disk
|
|
- `mrf` is the mesh morpher (`None` except if `scenario='aerostructural'` or `task='optimization'`)
|
|
- `mrf` is the mesh morpher (`None` except if `scenario='aerostructural'` or `task='optimization'`)
|
|
- `pbl` is the formulation of the problem
|
|
- `pbl` is the formulation of the problem
|
|
- `bnd` is the body of interest
|
|
- `bnd` is the body of interest
|
|
|
|
- `blwb` is the blowing boundary condition on the body (`None` except if `viscous=True`)
|
|
|
|
- `blww` is the blowing boundary condition on the wake (`None` except if `viscous=True`)
|
|
- `sol` is the direct (Newton) solver
|
|
- `sol` is the direct (Newton) solver
|
|
- `adj` is the adjoint solver (`None` except if `task='optimization'`) |
|
- `adj` is the adjoint solver (`None` except if `task='optimization'`) |