![]() |
Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
|
This module defines a hexagonal mesh. More...
#include "sll_memory.h"#include "sll_assert.h"#include "sll_errors.h"#include "sll_working_precision.h"Go to the source code of this file.
Data Types | |
| type | sll_t_hex_mesh_2d |
| 2d hexagonal mesh More... | |
| type | hex_mesh_2d_ptr |
| interface | sll_o_delete |
Modules | |
| module | sll_m_hexagonal_meshes |
Functions/Subroutines | |
| type(sll_t_hex_mesh_2d) function, pointer, public | sll_f_new_hex_mesh_2d (num_cells, center_x1, center_x2, r11, r12, r21, r22, r31, r32, radius, EXTRA_TABLES) |
| Creates and initializes a new hexagonal mesh. More... | |
| subroutine, public | sll_s_hex_mesh_2d_init (mesh, num_cells, radius, center_x1, center_x2, r1_x1, r1_x2, r2_x1, r2_x2, r3_x1, r3_x2, EXTRA_TABLES) |
| initializes a previously allocated 2d hex-mesh More... | |
| subroutine | init_center_points_triangle (mesh) |
| <BRIEF_DESCRIPTION> More... | |
| subroutine | init_edge_center_triangle (mesh) |
| <BRIEF_DESCRIPTION> More... | |
| subroutine | index_hex_to_global (mesh, k1, k2, index_tab) |
| Finds the index in the global array of the point which coordinates where passed as parameter. More... | |
| real(kind=f64) function | eta1_node_hex (mesh, i, j) |
| Computes the first cartesian coordinate of a given point. More... | |
| real(kind=f64) function | eta2_node_hex (mesh, i, j) |
| Computes the second cartesian coordinate of a given point. More... | |
| function | eta1_cell_hex (mesh, cell_num) |
| Computes the first cartesian coordinate of the center of the cell. More... | |
| real(kind=f64) function | eta2_cell_hex (mesh, cell_num) |
| Computes the 2nd cartesian coordinate of the center of the cell. More... | |
| real(kind=f64) function | eta1_cell_hex_two_arg (mesh, i, j) |
| NOT IMPLEMENTED. More... | |
| real(kind=f64) function | eta2_cell_hex_two_arg (mesh, i, j) |
| NOT IMPLEMENTED. More... | |
| integer(kind=i32) function, public | sll_f_cells_to_origin (k1, k2) |
| Computes the number of cell from point to origin. More... | |
| subroutine | cell_type (mesh, num_ele, val) |
| Computes the type of triangle of a given cell. More... | |
| function | hex_to_global (mesh, k1, k2) |
| Transform hexagonal coordinates to global index. More... | |
| function | global_to_hex1 (mesh, index) |
| Gives the 1st hexagonal coordinate to point of global index "index". More... | |
| function | global_to_hex2 (mesh, index) |
| Gives the 2nd hexagonal coordinate to point of global index "index". More... | |
| function | global_to_x1 (mesh, index) |
| Gives the 1st cartesian coordinate to point of global index "index". More... | |
| function | global_to_x2 (mesh, index) |
| Gives the 2nd cartesian coordinate to point of global index "index". More... | |
| function, public | sll_f_cart_to_hex1 (mesh, x1, x2) |
| Transform cartesian coordinates to 1st hexagonal coordinates. More... | |
| function, public | sll_f_cart_to_hex2 (mesh, x1, x2) |
| Transform cartesian coordinates to 2ndst hexagonal coordinates. More... | |
| function | global_to_local (mesh, ref_index, global) |
| Transforms global to local index in respect to a reference index. More... | |
| function, public | sll_f_local_to_global (mesh, ref_index, local) |
| Transforms local index in a given reference local indexation to a global index from the mesh. More... | |
| function | local_hex_to_global (mesh, k1_ref, k2_ref, local) |
| Same as sll_f_local_to_global but taking hexagonal coordinates as reference indexing. More... | |
| subroutine, public | sll_s_get_cell_vertices_index (x, y, mesh, s1, s2, s3) |
| Returns indices of the edges of a given cell. More... | |
| subroutine, public | sll_s_get_triangle_index (k1, k2, mesh, x, triangle_index) |
| Given a mesh point and the first cartesian coordinate of a point (that is not on the mesh) we return the given cell index. More... | |
| subroutine | get_neighbours (mesh, cell_index, nei_1, nei_2, nei_3) |
| returns the indices of the neighbouring cells/triangles More... | |
| subroutine, public | sll_s_get_edge_index (k1, k2, mesh, x, edge_index1, edge_index2, edge_index3) |
| <BRIEF_DESCRIPTION> More... | |
| function, public | sll_f_change_elements_notation (mesh, i_elmt_old) |
| Function that allows to change from the current element notation to one more intuitive. More... | |
| recursive subroutine | hex_to_aligned_pt (mesh, ind, transf, x_new, y_new) |
| Computes the coordinate transformation hex->aligned for a point. More... | |
| subroutine | hex_to_aligned_elmt (mesh, i_elmt, transf, transf_matA, transf_vecB) |
| Computes the coordinate transformation hex->aligned for an element. More... | |
| subroutine | ref_to_hex_elmt (mesh, i_elmt, transf_matA, transf_vecB) |
| Computes the coordinate transformation ref->hex for an element. More... | |
| subroutine | ref_to_aligned_elmt (mesh, i_elmt, transf, transf_matA, transf_vecB) |
| Computes the coordinate transformation ref->aligned for an element. More... | |
| subroutine, public | sll_s_display_hex_mesh_2d (mesh) |
| Displays hexagonal mesh in terminal. More... | |
| subroutine, public | sll_s_write_caid_files (mesh, transf, spline_deg) |
| Writes files for CAID. More... | |
| subroutine | write_hex_mesh_2d (mesh, name) |
| Writes the hexagonal mesh into a given file. More... | |
| subroutine | write_field_hex_mesh_xmf (mesh, field, name) |
| Same as write_field_hex_mesh but output in xmf. More... | |
| subroutine | write_hex_mesh_mtv (mesh, mtv_file) |
| Same as write_hex_mesh but output is mtv file. More... | |
| subroutine, public | sll_s_delete_hex_mesh_2d (mesh) |
| Deletes an hexagonal mesh. More... | |
This module defines a hexagonal mesh.
Definition in file sll_m_hexagonal_meshes.F90.
1.9.1