You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
7 - added infos about parameters in constants.h (#28)
* added infos about parameters
---------
Co-authored-by: Christina Schwarz <christina.schwarz@fau.de>
Co-authored-by: Martin J. Kühn <62713180+mknaranja@users.noreply.github.com>
Copy file name to clipboardExpand all lines: include/constants.h
+49-21Lines changed: 49 additions & 21 deletions
Original file line number
Diff line number
Diff line change
@@ -39,8 +39,8 @@ enum icontrols
39
39
{
40
40
/*! \brief (WIP) Optimized code
41
41
*
42
-
* 0: old working version
43
-
* 1: new version (WIP)
42
+
* 0: old version (non-optimized version for validation in the beginning, not maintained for some time; do not use)
43
+
* 1: new version (default)
44
44
*/
45
45
optimized,
46
46
/*! \brief Verbose level
@@ -71,41 +71,63 @@ enum icontrols
71
71
* Defines the number of nodes in each direction:
72
72
* - nr = 2^(nr_exp-1)
73
73
* - ntheta = 2^(ceil(log2(nr))-1)
74
+
*
75
+
* More detailed:
76
+
*
77
+
* First, the number of nodes in r-direction is computed as follows:
78
+
* without any ansisotropy (fac_ani=0), we have nr=2^(nr_exp - 1) equally distributed nodes;
79
+
* with anisotropy: we fisrt create nr=2^(nr_exp) - 1^(fac_ani) equally distributed nodes, and then, the grid is refined fac_ani-times;
80
+
* Lastly, regardless of using any anisotropy or not, we refine again by splitting all intervals at the midpoint
81
+
* (to obtain a uniform grid refinement between the two finest levels for a successful extrapolation).
82
+
*
83
+
* Second, the number of nodes in theta-direction is computed as follows:
84
+
* ntheta= 2^(ceil(log_2(nr)))
85
+
*
74
86
*/
75
87
nr_exp,
88
+
/*! \brief The parameter ntheta_exp is not used in our simulations. We generally define the number of theta intervals similar to the number of intervals in r.
89
+
*/
76
90
ntheta_exp,
77
91
/*! \brief Anisotropic discretization in 'edge' region for r
78
92
*
79
-
* Defines if we use anisotropic discretization
80
-
* - r (fac_ani): in 'edge' region
81
-
* - theta (theta_aniso)
93
+
* Defines if we use anisotropic discretization in r-direction
82
94
*
83
95
* Possible values are:
84
96
* - -1: input list of r and theta coordinates
85
97
* - 0: no anisotropy
86
-
* - >0: anisotropy (automatic)
98
+
* - >0: anisotropy (automatic) (number of refinements)
99
+
*
87
100
*/
88
101
fac_ani,
102
+
/*! \brief Not used
103
+
* (we never have an ansisotropy in theta-direction, so the value is always 0/false)
104
+
*/
89
105
theta_aniso,
90
106
/*! \brief Smoothing steps
91
107
*
92
-
* Number of pre- and post-smoothing steps
108
+
* Number of pre- (v1) and post- (v2) -smoothing steps
93
109
*/
94
110
v1,
95
111
v2,
96
112
/*! \brief Type of MG cycle
97
113
*
98
114
* Type of multigrid cycle:
99
-
* - 1: V-cycle
115
+
* - 1: V-cycle (default setting)
100
116
* - 2: W-cycle
101
117
*/
102
118
cycle,
103
-
/*! \brief Circular or stretched geometry
119
+
/*! \brief Defines the form of the considered cross-section: Circular or stretched geometry. If `mod_pk=0`, we consider a circular geometry. If `mod_pk>1`, it always goes with a particular choice of `kappa_eps` and `delta_e` to describe realistic Tokamak cross sections.
0 commit comments