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. More... | |
virtual SeparatrixOrthogonal * | clone () const override final |
Abstract clone method that returns a copy on the heap. More... | |
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 More... | |
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. More... | |
virtual aRealGeneratorX2d * | clone () const =0 |
Abstract clone method that returns a copy on the heap. More... | |
virtual | ~aRealGeneratorX2d () |
Additional Inherited Members | |
Protected Member Functions inherited from dg::geo::aRealGeneratorX2d< real_type > | |
aRealGeneratorX2d () | |
aRealGeneratorX2d (const aRealGeneratorX2d &src) | |
aRealGeneratorX2d & | operator= (const aRealGeneratorX2d &src) |
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 >.