Edge-Plasma Modeling Activities at PoliTo F. Subba and R. Zanino Dipartimento di Energetica, Politecnico, Torino, Italy Ringberg Theory Meeting, 20Nov08 1 Outline • Development of a far-SOL plasma code • ITM-related activities Ringberg Theory Meeting, 20Nov08 2 Traditional approach to edge plasma modelling Near SOL: well represented by edge modelling codes Far SOL: not included Ringberg Theory Meeting, 20Nov08 3 Far SOL relevance – Particle fluxes to/from the wall (erosion/redeposition, tritium inventory) – Heat flux distribution on the wall – Physics-based boundary conditions at the real (physical) wall – Design optimization of ICRH antennas (foreseen collaboration with TOPICA code team @ PoliTo) –… Ringberg Theory Meeting, 20Nov08 4 Far SOL modeling • Modeling the wall requires geometrical flexibility Triangular mesh • Conservative scheme gives robustness CVFE Baliga, B.; Pham, T. & Patankar, S. V., Solution of Some Two-Dimensional Incompressible Fluid Flow and Heat Transfer Problems, Using a Control Volume Finite-Element Method, Numerical Heat Transfer, 1983, 6, 245-261 Ringberg Theory Meeting, 20Nov08 5 Control volumes in FV vs. CVFE methods CVFE FV Mesh nodes FE sides CV boundaries Ringberg Theory Meeting, 20Nov08 6 Relation between CVs and FE cells Once a plasma quantity (e.g. the temperature T) is known at the three mesh nodes i, j, k it can be interpolated over the whole triangular element by means of proper interpolation functions i j k T(x,y) = Tifi(x,y) + Tjfj(x,y) + Tkfk(x,y) This allows a consistent approximation of the fluxes through the control volume boundaries. Ringberg Theory Meeting, 20Nov08 7 Approximation of fluxes q i 5 ncVc Ti f i T j f j Tk f k c Ti f i T j f j Tk f k 2 c j k Fluxes across the CV boundaries can be properly determined We are sure that the flux leaving volume j towards i is the same entering volume i from j: the scheme is conservative There is obviously not a “best” choice for the interpolating functions fi. We choose them as combinations of exponentials along x and y, because (i) (ii) it is a well known choice in CFD [B. Baliga, Numer. Heat transf. 245 (1983)] it allows to switch automatically between centred and upwind schemes, depending on the flow conditions Ringberg Theory Meeting, 20Nov08 8 FE interpolation j Vc c k y yc x xc f i x, y Ai Bi exp Ci exp Pe x x Pe y y y j k k x i VC , x xi xk Pex Dx y x // B i Pey VC , y y j yk Dy Vc: flow speed at the element center Dx, Dy: diffusivity One side aligned to B Constants Ai, Bi Ci are determined by requiring fip = ip High Peclet f ~ constant Low Peclet f ~ linear Ringberg Theory Meeting, 20Nov08 9 The ASPOEL code • The CVFE scheme has been implemented in the ASPOEL code, developed at PoliTo, using unstructured triangular grids • Pure plasma 2D fluid equations so far • Coupling between different equations is done via the SIMPLE scheme • Applications completed so far: – Limiter case, standalone – Single-null (AUG) case, coupled with B2 Ringberg Theory Meeting, 20Nov08 10 ASPOEL model equations n n V S t i i i ni Z i ni ne //,i ˆ S e// Vi i pi Iˆ i //,i t i mi niVi niVr ,i Dr r ni 3 5 n T n T V q e e e e e e S Ee Qie t 2 2 3 5 niTi niTiVi qi S Ei Qie t 2 2 Ve Vi Ringberg Theory Meeting, 20Nov08 11 Stand-alone application to a limiter case V// [m/s] @ Top region Z [m] Z [m] Te [eV] @ Top region R [m] R [m] Details of the V// and Te maps in the SOL of a limiter machine Ringberg Theory Meeting, 20Nov08 12 Coupling to near-SOL codes • A far-SOL code can, in principle, work on the near SOL as well. • However, well known and successful codes exist for the near-SOL (e.g., B2) • To take advantage of this, it was decided to couple ASPOEL with B2, as a first step towards a global edge modeling tool. Ringberg Theory Meeting, 20Nov08 13 Mesh Generation (I) r Wall nodes • Select the desired wall nodes fix the magnetic surfaces to build the mesh • Project radially the wall nodes to the near SOL interface complete the mesh Near SOL interface nodes (B2 mesh) Accurate wall representation Poor matching with B2 mesh Ringberg Theory Meeting, 20Nov08 14 ASPOEL+B2 grids • ASPOEL (far SOL) • ~ 6000 elements • Triangular Z (m) • B2 (near SOL) • ~ 3700 cells • Quadrilateral R (m) Ringberg Theory Meeting, 20Nov08 15 B2-ASPOEL coupling loop B2 single iteration n, V, T profiles along the interface Fluxes across the interface ASPOEL single iteration Ringberg Theory Meeting, 20Nov08 16 Application to ASDEX Upgrade Density map across the whole SOL (private region excluded at present) Ringberg Theory Meeting, 20Nov08 17 B2+ASPOEL “validation” Density profile @ outer mid-plane (AUG shot # 18737) Excellent agreement with experimental data Ringberg Theory Meeting, 20Nov08 18 Next steps • Neutrals (short term ~ 3 months) – Modification of the mesh generator • Enforce one-to-one near-far SOL nodes matching at the interface (needed for Monte Carlo particle history computations) • Handle the upper (secondary) X point (for ITER) – Coupling to EIRENE • Validation and application to ITER (medium term ~ 6 months) – Select suitable database/shots (AUG, TCV, …) – FW shaping issues • Impurities (long term ≳ 1 year) Ringberg Theory Meeting, 20Nov08 19 Mesh Generation (II) • Select the desired wall nodes fix the magnetic surfaces to build the mesh Wall nodes • Project radially the near SOL interface nodes towards the wall complete the mesh Near SOL interface nodes (B2 mesh) Accurate matching with B2 mesh Poor wall representation Ringberg Theory Meeting, 20Nov08 20 Preliminary application to ITER 4 Z(m) 2 0 -2 -4 Near+far SOL mesh for B2/ASPOEL including the upper (secondary) X point Ringberg Theory Meeting, 20Nov08 4 8 6 R(m) 21 Mesh Generation (III) • Two strategies for mesh generation tested so far • Both are relatively simple to code, but force to choose between good wall resolution OR good interface matching • There are some ideas for optimized procedures to be developed Ringberg Theory Meeting, 20Nov08 22 Near-SOL plasma state + target fluxes (B2) n n T E V V Far-SOL plasma state + wall fluxes (ASPOEL) Split sources Combine into a global SOL plasma Ringberg Theory Meeting, 20Nov08 Compute ionization, recombination, chargeexchange sources (EIRENE) B2-ASPOEL-EIRENE coupling 23 ITM Related Activities • EFDA is supporting the development of a suite of Integrated Tokamak Modeling (ITM) tools • The ITM project relies on the Kepler software. Scope: – Run different plasma codes in an integrated framework (workflow) – Include serial (pre/main run/post) and coupled (e.g. near-far SOL codes) workflows Ringberg Theory Meeting, 20Nov08 24 Workflow example (ETS) ICRH EQsetup NBI TRANSPORT VIS EQUIL COMBINER ETS DIAG Ringberg Theory Meeting, 20Nov08 FEEDB 25 [D. Coster, ITM 08] Consistent Physical Objects • A key requirement for the ITM project is the development of standard Consistent Physical Objects (CPOs) – CPO = Data structure to convey the I/O data flows of all codes – Examples already developed for main plasma (1D) codes – CPOs for edge-plasma codes not available yet Ringberg Theory Meeting, 20Nov08 26 PoliTo involvement in ITM Related Activities • IMP3 (Transport) – Definition of edge-related CPOs (activity leader) – Preparation of modules for handling boundary conditions for edge codes (in collaboration with Innsbruck University) – Implementation of ITM 2d data structures in at least 1 edge plasma code (not started) – Preparation of diagnostics CPOs (transferred to EDRG group) Ringberg Theory Meeting, 20Nov08 27 Constraints for Edge CPOs • Many code-coupling combinations (plasma-plasma, plasma-neutrals, equilibrium-turbulence, fluid-kinetic, …) • Many physical conditions / geometries (1D, 2D, 3D; steady-state, transients, …) • Many computational approaches (FV, FE, CVFE, Monte-Carlo, PIC, FD, structured grids, unstructured grids, …) Ringberg Theory Meeting, 20Nov08 28 Codes involved in edge CPOs design so far • • • • • • • • ASPOEL (F. Subba) BIT-1 (D. Tskhakaya) B2.5 (D. Coster, X. Bonnin) B2.6 (X. Bonnin, H. Hirnish) EIRENE (D. Reiter, P. Boerner, S. Wiesen) ELENA (C. Kontz) FINDIF (R. Zagorski) JOREK (G. Huysmans) Ringberg Theory Meeting, 20Nov08 29 Edge CPO structure • Grid CPO – Specify the domain geometry, a (set of) computational grid(s), and related information (e.g. metric tensor, Christoffel symbols, …) • Plasma CPO – Provide a common structure to specify a set of code-dependent plasma data – Requires the grid CPO to be developed first Ringberg Theory Meeting, 20Nov08 30 Main ideas for Grid CPO • Describe a general geometry by a hierarchical chain from low to high-dimension objects – – – – Use nodes to build segments (1d cells) Use segments to build faces (2d cells) Use faces to build volumes (3d cells) … • Take as much advantage as possible from the (possible) existence of structured meshes (e.g. reducing the specification of a 2D grid to the specification of two 1D objects) • Do not force any assumption on the used system of coordinates: any code should be able to specify the geometry using its natural co-ordinate system (cartesian, toroidal, magnetic, …) Ringberg Theory Meeting, 20Nov08 31 Nodes specification • Nodes are the fundamental brick to build all subsequent geometrical objects • Each node is identified by a set of real numbers (the node coordinates) • A coordinate system must be associated to each set of nodes (e.g. cartesian, toroidal, magnetic, …) to be specified separately • A number of auxiliary (redundant) coordinates may be associated with nodes (e.g.: (x, y, z) main coordinates, (r, θ, φ) auxiliary coordinates) Ringberg Theory Meeting, 20Nov08 32 Grid will be built upon cells 1D cells • GRID: a set of CELLS with associated information • CELLs: 2D cell – Built starting from nodes – Many possible set of co-ordinates (not necessarily X, Y, Z, Vx, Vy, Vz, t) – May have different dimensions in the same geometry description. 2D example: • 2D cells for the domain interior • 1D cell for the boundaries 3D cell – Organized according to a hierarchical structure • Nodes are boundaries of 1D cells • 1D cells are boundaries of 2D cells • … Ringberg Theory Meeting, 20Nov08 33 Multiple grids on a single geometry t3 t2 Different grids can be used to specify a mesh evolving with time: t1 Different grids may specify different discretizations of the same geometry Ringberg Theory Meeting, 20Nov08 34 Structured vs. unstructured meshes Fully structured mesh j Various levels of mesh structuring may be present (partial) simplifications may be possible Mixed i Fully un-structured mesh Ringberg Theory Meeting, 20Nov08 35 Conclusions • Edge-plasma modeling activities at PoliTo have been reviewed • Main emphasis is on the development, validation and application of the ASPOEL code for far-SOL analysis Target: ITER relevance in 1 year • Involvement in the ITM activities expected to increase Ringberg Theory Meeting, 20Nov08 36 Spaces vs. Grids • Space – A collection of cells (with some additional information) involving a subset of coordinates only (e.g. only “position” coordinates) – Key elements to take advantage of possible grid structuring: build a grid by combining N≥1 spaces – Stored as elements of a derived type array • Grid – A collection of cells (with additional information) involving ALL the mesh coordinates – Obtain a grid cell by combining a number of space cells • Identify a grid cell by a set of integer numbers • Many grid cell properties are derived implicitly by the composing spaceRingberg cells:Theory saveMeeting, memory 20Nov08 37 Subgrids • Each grid cell may be marked as belonging to an individual subgrid • Subgrids may be used to specify separate individual regions • Typical expected application: use different subgrids to specify the domain boundaries or the interior Example: mesh on a 3D rectangular domain Full domain Boundaries: 6 subgrids of 2D cells Ringberg Theory Meeting, 20Nov08 Interior: 1 subgrid of 3D cells 38 Subgrids example The CVFE method may require a double discretization of the same computational domain: Identify different discretizations using different subgrids Z Ringberg Theory Meeting, 20Nov08 R 39 Proposed Grid CPO description • Grid – Section with global information – Array of spaces – Array of grid_nodes – Array of grid_cells The detailed definition of the data structures is currently being discussed. It will change before release Ringberg Theory Meeting, 20Nov08 40 GEOMETRY CPO DATA STRUCTURES Ringberg Theory Meeting, 20Nov08 41 Proposed CPO data structures: GRID Current status: may change before release • Grid – General specifications for array sizes – Some quantities characterize spaces. Stored here for technical reasons • maxnumcor [integer, scalar] Maximum number of coordinates in a single space • maxnmfxcr [integer, scalar] Maximum number of fixed (ignorable) coordinates in a single space • maxceldim [integer, scalar] Maximum dimension for grid cells • maxcelbou [integer, scalar] Maximum number of boundaries for grid cells • maxnumnod [integer, scalar] Maximum number of nodes in any individual space • maxnumcel [integer, scalar] Maximum number of cells in any individual space Ringberg Theory Meeting, 20Nov08 42 Proposed CPO data structures: GRID I – Array-size and data specific to the grid • • • • • • • grddim [integer, scalar] Global domain dimensionality numgrdspc [integer, scalar] number of spaces in the grid numgrdnod [integer, scalar] number of nodes in the grid numgrdcel [integer, scalar] number of cells in the grid numsgr [integer, scalar] number of subgrids nmaxcr [integer, scalar] number of auxiliary coordinates numngh(1:grddim) [integer, array] number of neighbors for grid cells of different dimension • axcrtp(1:nmaxcr) [integer, array] type of auxiliary coordinates. E.g. type=1 for x, type=2 for y, … – List of spaces, grid nodes and cells • spaces(1:numgrdspc) [derived type space, array] stores the spaces composing the grid • grdnod(1:numgrdnog) [derived type grid_node, array] stores the grid nodes • grdcel(1:numgrdcel) [derived type grid_cell, array] stores the grid cells Ringberg Theory Meeting, 20Nov08 43 Proposed CPO data structures: GRID_SPACE • Grid_space – – – – – – – – – – – – numcor [integer, scalar] number of coordinates specified in the space typcor(1:numcor) [integer, array] type coordinates specified in the space nmfxcr [integer, scalar] number of fixed (igonrable) coordinates involved in the space fxcrls [integer, array] list of the fixed (ignorable) coordinates involved in the space fxcrvl [double, array] values of the fixed (ignorable) coordinates involved in the space celdim [integegr, scalar] dimensionality of the space (it will contain cells of any dimension ≤ celdim) numnod [integer, scalar] number of nodes in the space numcel(1:celdim) [integer, array] number of cells of different dimension in the space celbou(1:celdim) [integer, array] number of boundaries for cells of different dimension nodes(1:numnod, 1:numcor-nmfxcr) [double, array] list of the nodes in the space cell(1:celdim, 1:numcel, 1:celbou) [integer, array] list of the cells in the space. Every cell is specified by listing its boundaries nghlst(1:celdim, 1:numcel, 1:celbou) [integer, array] For each cell in the space, list the neighbors Ringberg Theory Meeting, 20Nov08 44 Proposed CPO data structures: GRID_NODE • grid_node – Node identification • indexes(1:numspc) [integer, array] pointer to field “nodes” in the composing spaces – Node additional information • metric(1:(grddim*(grddim+1)/2) [double, array] components of the metric tensor at node locations • axcrls(1:nmaxcr) [double, array] list of auxiliary coordinates • alias [integer, scalar] alias for the node. Used to specify, e.g., domain periodicity • … Ringberg Theory Meeting, 20Nov08 45 Proposed CPO data structures: GRID_CELL • grid_cell – Cell identification • indexes(1:2*numgrdspc) [integer, array] Two indexes per each space, used to identify an individual cell – Additional cell information • • • • celdim [integer, scalar] cell dimension subgrid [integer, scalar] subgrid marker neighbors(1:numngh(celdim)) [integer, array] list of cell neighbors measure [double, scalar] cell measure (length, area, volume, … according to the dimension) • metric(1:(grddim*(grddim+1)/2) [double, array] (metric tensor associated with the cell) • center [integer, scalar] (pointer to a node located at the cell center) • … Ringberg Theory Meeting, 20Nov08 46
© Copyright 2026 Paperzz