2. Projections¶
2.1. 2D Projections¶
-
vita.modules.projection.projection2D.
particle_path_projection
¶ alias of
vita.modules.projection.projection2D.particle_path_projection
-
vita.modules.projection.projection2D.psi_map_projection.
map_psi_omp_to_divertor
(x_axis_omp, divertor_coords, fiesta, location='lfs')¶ Function mapping the normalised psi from the specified coordinates at the OMP to the specified coordinates at the divertor. Currently the divertor is assumed to be represented by a 1D polynomial function, y = ax + b.
Parameters: - x_axis_omp (np.ndarray) – Numpy array with the radial coordinates we wish to map at the OMP
- fiesta (Fiesta) – A Fiesta object with the 2D equilibrium we wish to map
- divertor_coords (np.ndarray) – A 2-x-2 numpy array containg the corner points of the divertor in the 2D projection
- location (string) – a string with the location to evaluate, either ‘hfs’ or ‘lfs’. Default is ‘lfs’
Return type: dict
Returns: A dictionary containing:
- ”R_div” : an n-x-1 array
with the R-coordinates at the divertor tile corresponding to the same psi_n as at the OMP
- ”Z_div” : an n-x-1 array
with the Z-coordinates at the divertor tile corresponding to the same psi_n as at the OMP
- ”Angles” : an n-x-1 array
with the angles between the field lines and the divertor tile corresponding to the same psi_n as at the OMP
- ”Flux_expansion” : an n-x-1 array
with the flux expasion at the divertor tile corresponding to the same psi_n as at the OMP
-
vita.modules.projection.projection2D.project_heat_flux.
project_heat_flux
(x_pos_omp, heat_flux_profile, map_dict)¶ Function for mapping the heat flux from the OMP to the divertor. The heat flux at a different position is given by:
\[q_{parallel\_surf} = \frac{R_{omp}}{R_{surf}} * \frac{q_{parallel\_omp}}{(f_x/\cos(\alpha))},\]where \(R_{omp}\), is the radial coordinate at the OMP, \(R_{surf}\) is the radial coordinates at the surface, \(q_{parallel\_omp}\) is the parallel heat flux at the OMP, \(\alpha\) is the incidence angle of the field-lines with respect to the normal of the surface, and \(f_x\) is the flux expansion:
\[f_x = R_{omp}*B_{pol}(R_{omp}, Z_{omp})/(R_{surf}*B_{pol}(R_{surf}, Z_{surf})),\]where \(Z_{omp}\) is the vertical position of the OMP (usually 0), \(Z_{surf}\) is the vertical position of the surface, and \(B_{pol}\) is the poloidal magnetic field and the given coordinates.
Parameters: - x_pos_omp (np.ndarray) – Radial coordinates at the OMP
- heat_flux_profile (np.ndarray) – Parallel heat flux at the given coordinates
- map_dict (dict) –
a python dictionary with:
- keys: float
- x_pos_omp[i], each position at the omp has a corresponding mapped position
- values: dictionary
- dictionary with keys:
- ”R_pos” : float, radial position of the surface
“Z_pos” : float, vertical position of the surface
“f_x” : float, flux expansion at the given R, Z position
“alpha” : float, incidence angle with respect to the normalof the surface
Return type: np.ndarray
Returns: q_surf, the parallel heat flux at the surface position
2.2. 3D Projections (CHERAB)¶
Coming soon.