Report Typos and Errors    
Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
Functions/Subroutines
sll_m_spline_fem_utilities_3d_helper Module Reference

Description

Helper for spline finite elements utilites.

Author
Benedikt Perse

Functions/Subroutines

subroutine, public sll_s_spline_fem_sparsity_mass3d (deg, n_cells, spmat)
 Helper function to create sparsity pattern of the 3d mass matrix. More...
 
subroutine loop2 (i, j, shift, deg, n_cells, ind, spmat)
 
subroutine loop1 (i, shift, deg, n_cells, ind, spmat)
 
subroutine, public sll_s_spline_fem_sparsity_mass3d_clamped (deg, n_cells, spmat)
 Helper function to create sparsity pattern of the 3d clamped mass matrix. More...
 
subroutine loop2_clamped (i, j, shift, deg, n_cells, ind, spmat)
 
subroutine loop1_clamped (i, shift, deg, n_cells, ind, spmat)
 
subroutine, public sll_s_spline_fem_sparsity_mixedmass3d (deg1, deg2, n_cells, spmat)
 Helper function to create sparsity pattern of the 3d mass matrix. More...
 
subroutine mloop2 (i, j, shift, deg1, deg2, n_cells, ind, spmat)
 
subroutine mloop1 (i, shift, deg1, deg2, n_cells, ind, spmat)
 
subroutine, public sll_s_spline_fem_sparsity_mixedmass3d_clamped (deg1, deg2, n_cells, spmat)
 Helper function to create sparsity pattern of the 3d clamped mixed mass matrix. More...
 
subroutine mloop2_clamped (i, j, shift, deg1, deg2, n_cells, ind, spmat)
 
subroutine mloop1_clamped (i, shift, deg1, deg2, n_cells, ind, spmat)
 
subroutine, public assemble_mass3d (deg, n_cells, mass_line, matrix, row, ind)
 Assemble the given row of the 3d mass matrix. More...
 
subroutine assemble2 (deg, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine assemble1 (deg, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine, public assemble_mass3d_clamped (deg, n_cells, mass_line, matrix, row, ind)
 Assemble the given row of the clamped mass matrix. More...
 
subroutine assemble2_clamped (deg, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine assemble1_clamped (deg, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine, public assemble_mass3d_clamped_boundary (deg, n_cells, mass_line, matrix, row, ind)
 Assemble the boundary part of the clamped mass matrix. More...
 
subroutine assemble2_clamped_boundary (deg, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine assemble1_clamped_boundary (deg, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine, public assemble_mixedmass3d (deg1, deg2, n_cells, mass_line, matrix, row, ind)
 Assemble the given row of the mixed mass matrix. More...
 
subroutine massemble2 (deg1, deg2, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine massemble1 (deg1, deg2, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine, public assemble_mixedmass3d_clamped (deg1, deg2, n_cells, mass_line, matrix, row, ind)
 Assemble the given row of the clamped mixed mass matrix. More...
 
subroutine massemble2_clamped (deg1, deg2, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine massemble1_clamped (deg1, deg2, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine, public assemble_mixedmass3d_clamped_boundary (deg1, deg2, n_cells, mass_line, matrix, row, ind)
 Assemble the boundary part of the clamped mixed mass matrix. More...
 
subroutine massemble2_clamped_boundary (deg1, deg2, n_cells, mass_line, matrix, row, ind, shift)
 
subroutine massemble1_clamped_boundary (deg1, deg2, n_cells, mass_line, matrix, row, ind, shift)
 

Function/Subroutine Documentation

◆ assemble1()

subroutine sll_m_spline_fem_utilities_3d_helper::assemble1 ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), intent(in)  n_cells,
real(kind=f64), dimension((2*deg(1)+1)*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of cells in the first direction
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row in the first direction
[in,out]indindex
[in]shiftshift in the second direction

Definition at line 827 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ assemble1_clamped()

subroutine sll_m_spline_fem_utilities_3d_helper::assemble1_clamped ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), intent(in)  n_cells,
real(kind=f64), dimension((2*deg(1)+1)*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of cells in the first direction
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row in the first direction
[in,out]indindex
[in]shiftshift in the second direction

Definition at line 992 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ assemble1_clamped_boundary()

subroutine sll_m_spline_fem_utilities_3d_helper::assemble1_clamped_boundary ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), intent(in)  n_cells,
real(kind=f64), dimension((7*deg(1)**2-deg(1)-2)/2*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of cells in the first direction
[in]mass_lineboundary massline for the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row in the first direction
[in,out]indindex
[in]shiftshift in the second direction

Definition at line 1120 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ assemble2()

subroutine sll_m_spline_fem_utilities_3d_helper::assemble2 ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((2*deg(1)+1)*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of cells (and grid points)
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex
[in]shiftshift in the third direction

Definition at line 772 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assemble2_clamped()

subroutine sll_m_spline_fem_utilities_3d_helper::assemble2_clamped ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((2*deg(1)+1)*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of cells (and grid points)
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex
[in]shiftshift in the third direction

Definition at line 938 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assemble2_clamped_boundary()

subroutine sll_m_spline_fem_utilities_3d_helper::assemble2_clamped_boundary ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((7*deg(1)**2-deg(1)-2)/2*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of cells (and grid points)
[in]mass_lineboundary massline for the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex
[in]shiftshift in the third direction

Definition at line 1064 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assemble_mass3d()

subroutine, public sll_m_spline_fem_utilities_3d_helper::assemble_mass3d ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((2*deg(1)+1)*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind 
)

Assemble the given row of the 3d mass matrix.

Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of cells (and grid points)
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse mass matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex in the vector containing the entries of the sparse matrix

Definition at line 714 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assemble_mass3d_clamped()

subroutine, public sll_m_spline_fem_utilities_3d_helper::assemble_mass3d_clamped ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((2*deg(1)+1)*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind 
)

Assemble the given row of the clamped mass matrix.

Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of rows (and grid points)
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse mass matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex in the vector containing the entries of the sparse matrix

Definition at line 879 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assemble_mass3d_clamped_boundary()

subroutine, public sll_m_spline_fem_utilities_3d_helper::assemble_mass3d_clamped_boundary ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((7*deg(1)**2-deg(1)-2)/2*(2*deg(2)+1)*(2*deg(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind 
)

Assemble the boundary part of the clamped mass matrix.

Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of rows (and grid points)
[in]mass_lineboundary massline for the sparse mass matrix
[in,out]matrixsparse mass matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex in the vector containing the entries of the sparse matrix

Definition at line 1012 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assemble_mixedmass3d()

subroutine, public sll_m_spline_fem_utilities_3d_helper::assemble_mixedmass3d ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((deg1(1)+deg2(1)+1)*(deg1(2)+ deg2(2)+1)*(deg1(3)+ deg2(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind 
)

Assemble the given row of the mixed mass matrix.

Parameters
[in]deg2spline deg for every direction
[in]n_cellsnumber of rows (and grid points)
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse mass matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex in the vector containing the entries of the sparse matrix

Definition at line 1166 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assemble_mixedmass3d_clamped()

subroutine, public sll_m_spline_fem_utilities_3d_helper::assemble_mixedmass3d_clamped ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((deg1(1)+deg2(1)+1)*(deg1(2)+ deg2(2)+1)*(deg1(3)+ deg2(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind 
)

Assemble the given row of the clamped mixed mass matrix.

Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of rows (and grid points)
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse mass matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex in the vector containing the entries of the sparse matrix

Definition at line 1331 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ assemble_mixedmass3d_clamped_boundary()

subroutine, public sll_m_spline_fem_utilities_3d_helper::assemble_mixedmass3d_clamped_boundary ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension(deg1(3)+deg2(3)+1), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind 
)

Assemble the boundary part of the clamped mixed mass matrix.

Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of rows (and grid points)
[in]mass_lineboundary massline for the sparse mass matrix
[in,out]matrixsparse mass matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex in the vector containing the entries of the sparse matrix

Definition at line 1464 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ loop1()

subroutine sll_m_spline_fem_utilities_3d_helper::loop1 ( integer(kind=i32), intent(in)  i,
integer(kind=i32), intent(in)  shift,
integer(kind=i32), intent(in)  deg,
integer(kind=i32), intent(in)  n_cells,
integer(kind=i32), intent(inout)  ind,
type(sll_t_matrix_csr), intent(inout)  spmat 
)
private
Parameters
[in]irow in first direction
[in]shiftshift in the second direction
[in]degspline degree in first direction
[in]n_cellsnumber of cells in the first direction
[in,out]indindex
[in,out]spmatsparse matrix

Definition at line 163 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ loop1_clamped()

subroutine sll_m_spline_fem_utilities_3d_helper::loop1_clamped ( integer(kind=i32), intent(in)  i,
integer(kind=i32), intent(in)  shift,
integer(kind=i32), intent(in)  deg,
integer(kind=i32), intent(in)  n_cells,
integer(kind=i32), intent(inout)  ind,
type(sll_t_matrix_csr), intent(inout)  spmat 
)
private
Parameters
[in]irow in first direction
[in]shiftshift in the second direction
[in]degspline degree in first direction
[in]n_cellsnumber of cells in the first direction
[in,out]indindex
[in,out]spmatsparse matrix

Definition at line 345 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ loop2()

subroutine sll_m_spline_fem_utilities_3d_helper::loop2 ( integer(kind=i32), intent(in)  i,
integer(kind=i32), intent(in)  j,
integer(kind=i32), intent(in)  shift,
integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
integer(kind=i32), intent(inout)  ind,
type(sll_t_matrix_csr), intent(inout)  spmat 
)
private
Parameters
[in]irow in first direction
[in]jrow in second direction
[in]shiftshift in the third direction
[in]degspline degree for every direction
[in]n_cellsnumber of cells (and grid points)
[in,out]indindex
[in,out]spmatsparse matrix

Definition at line 119 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ loop2_clamped()

subroutine sll_m_spline_fem_utilities_3d_helper::loop2_clamped ( integer(kind=i32), intent(in)  i,
integer(kind=i32), intent(in)  j,
integer(kind=i32), intent(in)  shift,
integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
integer(kind=i32), intent(inout)  ind,
type(sll_t_matrix_csr), intent(inout)  spmat 
)
private
Parameters
[in]irow in first direction
[in]jrow in second direction
[in]shiftshift in the third direction
[in]degspline degree for every direction
[in]n_cellsnumber of cells (and grid points)
[in,out]indindex
[in,out]spmatsparse matrix

Definition at line 298 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ massemble1()

subroutine sll_m_spline_fem_utilities_3d_helper::massemble1 ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), intent(in)  n_cells,
real(kind=f64), dimension((deg1(1)+deg2(1)+1)*(deg1(2)+ deg2(2)+1)*(deg1(3)+ deg2(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells in the first direction
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row in the first direction
[in,out]indindex
[in]shiftshift in the second direction

Definition at line 1280 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ massemble1_clamped()

subroutine sll_m_spline_fem_utilities_3d_helper::massemble1_clamped ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), intent(in)  n_cells,
real(kind=f64), dimension((deg1(1)+deg2(1)+1)*(deg1(2)+ deg2(2)+1)*(deg1(3)+ deg2(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells in the first direction
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row in the first direction
[in,out]indindex
[in]shiftshift in the second direction

Definition at line 1444 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ massemble1_clamped_boundary()

subroutine sll_m_spline_fem_utilities_3d_helper::massemble1_clamped_boundary ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), intent(in)  n_cells,
real(kind=f64), dimension(deg1(3)+ deg2(3)+1), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells in the first direction
[in]mass_lineboundary massline for the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row in the first direction
[in,out]indindex
[in]shiftshift in the second direction

Definition at line 1574 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ massemble2()

subroutine sll_m_spline_fem_utilities_3d_helper::massemble2 ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((deg1(1)+deg2(1)+1)*(deg1(2)+ deg2(2)+1)*(deg1(3)+ deg2(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells (and grid points)
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex
[in]shiftshift in the third direction

Definition at line 1225 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ massemble2_clamped()

subroutine sll_m_spline_fem_utilities_3d_helper::massemble2_clamped ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension((deg1(1)+deg2(1)+1)*(deg1(2)+ deg2(2)+1)*(deg1(3)+ deg2(3)+1)), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells (and grid points)
[in]mass_linemassline for one row of the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex
[in]shiftshift in the third direction

Definition at line 1389 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ massemble2_clamped_boundary()

subroutine sll_m_spline_fem_utilities_3d_helper::massemble2_clamped_boundary ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
real(kind=f64), dimension(deg1(3)+ deg2(3)+1), intent(in)  mass_line,
type(sll_t_matrix_csr), intent(inout)  matrix,
integer(kind=i32), dimension(3), intent(in)  row,
integer(kind=i32), intent(inout)  ind,
integer(kind=i32), intent(in)  shift 
)
private
Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells (and grid points)
[in]mass_lineboundary massline for the sparse mass matrix
[in,out]matrixsparse matrix
[in]rowcurrent row of the sparse matrix
[in,out]indindex
[in]shiftshift in the third direction

Definition at line 1519 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mloop1()

subroutine sll_m_spline_fem_utilities_3d_helper::mloop1 ( integer(kind=i32), intent(in)  i,
integer(kind=i32), intent(in)  shift,
integer(kind=i32), intent(in)  deg1,
integer(kind=i32), intent(in)  deg2,
integer(kind=i32), intent(in)  n_cells,
integer(kind=i32), intent(inout)  ind,
type(sll_t_matrix_csr), intent(inout)  spmat 
)
private
Parameters
[in]irow in first direction
[in]shiftshift in the second direction
[in]deg2spline degrees in first direction
[in]n_cellsnumber of cells in the first direction
[in,out]indindex
[in,out]spmatsparse matrix

Definition at line 504 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ mloop1_clamped()

subroutine sll_m_spline_fem_utilities_3d_helper::mloop1_clamped ( integer(kind=i32), intent(in)  i,
integer(kind=i32), intent(in)  shift,
integer(kind=i32), intent(in)  deg1,
integer(kind=i32), intent(in)  deg2,
integer(kind=i32), intent(in)  n_cells,
integer(kind=i32), intent(inout)  ind,
type(sll_t_matrix_csr), intent(inout)  spmat 
)
private
Parameters
[in]irow in first direction
[in]shiftshift in the second direction
[in]deg2spline degrees in first direction
[in]n_cellsnumber of cells in the first direction
[in,out]indindex
[in,out]spmatsparse matrix

Definition at line 680 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the caller graph for this function:

◆ mloop2()

subroutine sll_m_spline_fem_utilities_3d_helper::mloop2 ( integer(kind=i32), intent(in)  i,
integer(kind=i32), intent(in)  j,
integer(kind=i32), intent(in)  shift,
integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
integer(kind=i32), intent(inout)  ind,
type(sll_t_matrix_csr), intent(inout)  spmat 
)
private
Parameters
[in]irow in first direction
[in]jrow in second direction
[in]shiftshift in the third direction
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells (and grid points)
[in,out]indindex
[in,out]spmatsparse matrix

Definition at line 460 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mloop2_clamped()

subroutine sll_m_spline_fem_utilities_3d_helper::mloop2_clamped ( integer(kind=i32), intent(in)  i,
integer(kind=i32), intent(in)  j,
integer(kind=i32), intent(in)  shift,
integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
integer(kind=i32), intent(inout)  ind,
type(sll_t_matrix_csr), intent(inout)  spmat 
)
private
Parameters
[in]irow in first direction
[in]jrow in second direction
[in]shiftshift in the third direction
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells (and grid points)
[in,out]indindex
[in,out]spmatsparse matrix

Definition at line 636 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sll_s_spline_fem_sparsity_mass3d()

subroutine, public sll_m_spline_fem_utilities_3d_helper::sll_s_spline_fem_sparsity_mass3d ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
type(sll_t_matrix_csr), intent(out)  spmat 
)

Helper function to create sparsity pattern of the 3d mass matrix.

Parameters
[in]degspline degree for every direction
[in]n_cellsnumber of cells (and grid points)
[out]spmatsparse matrix

Definition at line 39 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sll_s_spline_fem_sparsity_mass3d_clamped()

subroutine, public sll_m_spline_fem_utilities_3d_helper::sll_s_spline_fem_sparsity_mass3d_clamped ( integer(kind=i32), dimension(3), intent(in)  deg,
integer(kind=i32), dimension(3), intent(in)  n_cells,
type(sll_t_matrix_csr), intent(out)  spmat 
)

Helper function to create sparsity pattern of the 3d clamped mass matrix.

Parameters
[in]degspline deg for every direction
[in]n_cellsnumber of cells (and grid points)
[out]spmatsparse matrix

Definition at line 206 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sll_s_spline_fem_sparsity_mixedmass3d()

subroutine, public sll_m_spline_fem_utilities_3d_helper::sll_s_spline_fem_sparsity_mixedmass3d ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
type(sll_t_matrix_csr), intent(out)  spmat 
)

Helper function to create sparsity pattern of the 3d mass matrix.

Parameters
[in]deg2spline deg for every direction
[in]n_cellsnumber of cells (and grid points)
[out]spmatsparse matrix

Definition at line 382 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sll_s_spline_fem_sparsity_mixedmass3d_clamped()

subroutine, public sll_m_spline_fem_utilities_3d_helper::sll_s_spline_fem_sparsity_mixedmass3d_clamped ( integer(kind=i32), dimension(3), intent(in)  deg1,
integer(kind=i32), dimension(3), intent(in)  deg2,
integer(kind=i32), dimension(3), intent(in)  n_cells,
type(sll_t_matrix_csr), intent(out)  spmat 
)

Helper function to create sparsity pattern of the 3d clamped mixed mass matrix.

Parameters
[in]deg2spline degrees for every direction
[in]n_cellsnumber of cells (and grid points)
[out]spmatsparse matrix

Definition at line 547 of file sll_m_spline_fem_utilities_3d_helper.F90.

Here is the call graph for this function:
Here is the caller graph for this function:
    Report Typos and Errors