|
Extension: Geometries
#include "dg/geometries/geometries.h"
|
Choose points on separatrix and construct grid from there. More...
Public Member Functions | |
| SeparatrixOrthogonal (const CylindricalFunctorsLvl2 &psi, const CylindricalSymmTensorLvl1 &chi, double psi_0, double xX, double yX, double x0, double y0, int firstline, bool verbose=false) | |
| Construct. | |
| virtual SeparatrixOrthogonal * | clone () const override final |
| Abstract clone method that returns a copy on the heap. | |
Public Member Functions inherited from dg::geo::aRealGeneratorX2d< real_type > | |
| real_type | zeta0 (real_type fx) const |
| real_type | zeta1 (real_type fx) const |
| real_type | eta0 (real_type fy) const |
| real_type | eta1 (real_type fy) const |
| bool | isOrthogonal () const |
| sparsity pattern for metric | |
| void | generate (const thrust::host_vector< real_type > &zeta1d, const thrust::host_vector< real_type > &eta1d, unsigned nodeX0, unsigned nodeX1, thrust::host_vector< real_type > &x, thrust::host_vector< real_type > &y, thrust::host_vector< real_type > &zetaX, thrust::host_vector< real_type > &zetaY, thrust::host_vector< real_type > &etaX, thrust::host_vector< real_type > &etaY) const |
| Generate grid points and elements of the Jacobian. | |
| virtual | ~aRealGeneratorX2d () |
Additional Inherited Members | |
Protected Member Functions inherited from dg::geo::aRealGeneratorX2d< real_type > | |
| aRealGeneratorX2d () | |
| aRealGeneratorX2d (const aRealGeneratorX2d &) | |
| aRealGeneratorX2d & | operator= (const aRealGeneratorX2d &) |
Choose points on separatrix and construct grid from there.
This is the algorithm described in: "M. Wiesenberger, M. Held, L. Einkemmer, A. Kendl Streamline integration as a method for structured grid generation in X-point geometry Journal of Computational Physics 373, 370-384 (2018)"
normalize_solovev_t program to change the parameters. Further, it is assumed that closed flux surfaces inside of the separatrix exist.
|
inline |
Construct.
| psi | the flux function, the separatrix must be at \( \psi = 0\) |
| chi | the monitor tensor, see dg::geo::make_Xconst_monitor or dg::geo::make_Xbump_monitor |
| psi_0 | The left boundary of the grid this generator will generate. Must be a closed flux surface. |
| xX | the X-point x - coordinate |
| yX | the X-point y - coordinate |
| x0 | a point in the inside of the separatrix (can be the O-point, defines the angle for initial separatrix integration) |
| y0 | a point in the inside of the separatrix (can be the O-point, defines the angle for initial separatrix integration) |
| firstline | =0 means conformal, =1 means equalarc discretization of the separatrix |
| verbose | if true the integrators will write additional information to std::cout |
|
inlinefinaloverridevirtual |
Abstract clone method that returns a copy on the heap.
Implements dg::geo::aRealGeneratorX2d< real_type >.