Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
|
Utilites for Maxwell solver's with spline finite elements using sparse matrices.
Functions/Subroutines | |
subroutine, public | sll_s_spline_fem_mass3d_clamped (n_cells, deg, component, matrix, profile, spline, n_cells_min, n_cells_max) |
Set up 3d clamped mass matrix for specific spline degrees and profile function. More... | |
subroutine | sll_s_spline_fem_mass_line_boundary (q, deg, profile, row, n_cells, component, mass_line, xw_gauss_d1, xw_gauss_d2, xw_gauss_d3, bspl_d1, bspl_d2, bspl_d3, spline) |
subroutine, public | sll_s_spline_fem_mixedmass3d_clamped (n_cells, deg1, deg2, component, matrix, profile, spline1, spline2, n_cells_min, n_cells_max) |
Set up 3d clamped mixed mass matrix for specific spline degree and profile function. More... | |
subroutine | sll_s_spline_fem_mixedmass_line_boundary (q, deg1, deg2, profile, row, n_cells, component, mass_line, xw_gauss_d1, xw_gauss_d2, xw_gauss_d3, bspl_d1a, bspl_d2a, bspl_d3a, bspl_d1b, bspl_d2b, bspl_d3b, spline1, spline2) |
Computes the mixed mass line for a mass matrix with degree splines. More... | |
subroutine, public | sll_s_multiply_g_clamped (n_dofs, delta_x, s_deg_0, field_in, field_out) |
Multiply by dicrete gradient matrix. More... | |
subroutine, public | sll_s_multiply_gt_clamped (n_dofs, delta_x, s_deg_0, field_in, field_out) |
Multiply by transpose of dicrete gradient matrix. More... | |
subroutine, public | sll_s_multiply_c_clamped (n_dofs, delta_x, s_deg_0, field_in, field_out) |
Multiply by discrete curl matrix. More... | |
subroutine, public | sll_s_multiply_ct_clamped (n_dofs, delta_x, s_deg_0, field_in, field_out) |
Multiply by transpose of discrete curl matrix. More... | |
subroutine, public | sll_s_multiply_g_clamped_1d (n_dofs, delta_x, s_deg_0, in, out) |
Multiplication of the input vector in by the clamped derivative matrix G. More... | |
subroutine, public | sll_s_multiply_gt_clamped_1d (n_dofs, delta_x, s_deg_0, in, out) |
Multiplication of the input vector in by the transposed clamped derivative matrix G^T. More... | |
subroutine, public sll_m_spline_fem_utilities_3d_clamped::sll_s_multiply_c_clamped | ( | dimension(3), intent(in) | n_dofs, |
dimension(3), intent(in) | delta_x, | ||
dimension(3), intent(in) | s_deg_0, | ||
dimension(:), intent(in) | field_in, | ||
dimension(:), intent(out) | field_out | ||
) |
Multiply by discrete curl matrix.
Definition at line 776 of file sll_m_spline_fem_utilities_3d_clamped.F90.
subroutine, public sll_m_spline_fem_utilities_3d_clamped::sll_s_multiply_ct_clamped | ( | dimension(3), intent(in) | n_dofs, |
dimension(3), intent(in) | delta_x, | ||
dimension(3), intent(in) | s_deg_0, | ||
dimension(:), intent(in) | field_in, | ||
dimension(:), intent(out) | field_out | ||
) |
Multiply by transpose of discrete curl matrix.
Definition at line 1002 of file sll_m_spline_fem_utilities_3d_clamped.F90.
subroutine, public sll_m_spline_fem_utilities_3d_clamped::sll_s_multiply_g_clamped | ( | dimension(3), intent(in) | n_dofs, |
dimension(3), intent(in) | delta_x, | ||
dimension(3), intent(in) | s_deg_0, | ||
dimension(:), intent(in) | field_in, | ||
dimension(:), intent(out) | field_out | ||
) |
Multiply by dicrete gradient matrix.
Definition at line 538 of file sll_m_spline_fem_utilities_3d_clamped.F90.
subroutine, public sll_m_spline_fem_utilities_3d_clamped::sll_s_multiply_g_clamped_1d | ( | intent(in) | n_dofs, |
intent(in) | delta_x, | ||
intent(in) | s_deg_0, | ||
dimension(:), intent(in) | in, | ||
dimension(:), intent(out) | out | ||
) |
Multiplication of the input vector in by the clamped derivative matrix G.
Definition at line 1220 of file sll_m_spline_fem_utilities_3d_clamped.F90.
subroutine, public sll_m_spline_fem_utilities_3d_clamped::sll_s_multiply_gt_clamped | ( | dimension(3), intent(in) | n_dofs, |
dimension(3), intent(in) | delta_x, | ||
dimension(3), intent(in) | s_deg_0, | ||
dimension(:), intent(in) | field_in, | ||
dimension(:), intent(out) | field_out | ||
) |
Multiply by transpose of dicrete gradient matrix.
Definition at line 652 of file sll_m_spline_fem_utilities_3d_clamped.F90.
subroutine, public sll_m_spline_fem_utilities_3d_clamped::sll_s_multiply_gt_clamped_1d | ( | intent(in) | n_dofs, |
intent(in) | delta_x, | ||
intent(in) | s_deg_0, | ||
dimension(:), intent(in) | in, | ||
dimension(:), intent(out) | out | ||
) |
Multiplication of the input vector in by the transposed clamped derivative matrix G^T.
Definition at line 1244 of file sll_m_spline_fem_utilities_3d_clamped.F90.
subroutine, public sll_m_spline_fem_utilities_3d_clamped::sll_s_spline_fem_mass3d_clamped | ( | dimension(3), intent(in) | n_cells, |
dimension(3), intent(in) | deg, | ||
intent(in) | component, | ||
type(sll_t_matrix_csr), intent(out) | matrix, | ||
procedure(sll_i_profile_function) | profile, | ||
type(sll_t_spline_pp_1d), intent(in) | spline, | ||
dimension(3), intent(in) | n_cells_min, | ||
dimension(3), intent(in) | n_cells_max | ||
) |
Set up 3d clamped mass matrix for specific spline degrees and profile function.
[out] | matrix | sparse mass matrix |
profile | profile function | |
[in] | spline | 1D pp-spline |
Definition at line 53 of file sll_m_spline_fem_utilities_3d_clamped.F90.
|
private |
profile | profile function | |
[in] | spline | 1D pp-spline |
Definition at line 148 of file sll_m_spline_fem_utilities_3d_clamped.F90.
subroutine, public sll_m_spline_fem_utilities_3d_clamped::sll_s_spline_fem_mixedmass3d_clamped | ( | dimension(3), intent(in) | n_cells, |
dimension(3), intent(in) | deg1, | ||
dimension(3), intent(in) | deg2, | ||
dimension(2), intent(in) | component, | ||
type(sll_t_matrix_csr), intent(out) | matrix, | ||
procedure(sll_i_profile_function) | profile, | ||
type(sll_t_spline_pp_1d), intent(in) | spline1, | ||
type(sll_t_spline_pp_1d), intent(in) | spline2, | ||
dimension(3), intent(in) | n_cells_min, | ||
dimension(3), intent(in) | n_cells_max | ||
) |
Set up 3d clamped mixed mass matrix for specific spline degree and profile function.
[out] | matrix | sparse mass matrix |
profile | profile function | |
[in] | spline1 | 1D pp-spline |
[in] | spline2 | 1D pp-spline |
Definition at line 271 of file sll_m_spline_fem_utilities_3d_clamped.F90.
|
private |
Computes the mixed mass line for a mass matrix with degree splines.
profile | profile function | |
[in] | spline1 | 1D pp-spline |
[in] | spline2 | 1D pp-spline |
Definition at line 388 of file sll_m_spline_fem_utilities_3d_clamped.F90.