Neko-TOP
A portable framework for high-order spectral element flow toplogy optimization.
Loading...
Searching...
No Matches
math_ext Module Reference

Functions/Subroutines

subroutine copy_mask (a, b, size, mask, mask_size)
 Copy within a mask. NOTE, this differs from masked_copy in the indexing. \( a_i = b_i, for i in mask \).
 
subroutine cadd_mask (a, c, size, mask, mask_size)
 Add a constant to a masked vector. \( a_i = a_i + c, for i in mask \).
 
subroutine invcol1_mask (a, size, mask, mask_size)
 Invert a masked vector. \( a_i = 1/a_i, for i in mask \).
 
subroutine cmult_mask (a, c, size, mask, mask_size)
 Multiply a masked vector by a constant. \( a_i = c * a_i, for i in mask \).
 
subroutine col2_mask (a, b, size, mask, mask_size)
 Multiply 2 masked vectors. Save the result in a new vector. \( a_i = b_i * c_i, for i in mask \).
 
subroutine col3_mask (a, b, c, size, mask, mask_size)
 Multiply 2 masked vectors. Save the result in a new vector. \( a_i = b_i * c_i, for i in mask \).
 
subroutine sub3_mask (a, b, c, size, mask, mask_size)
 Subtract 2 masked vectors. Save the result in a new vector. \( a_i = b_i - c_i, for i in mask \).
 
real(kind=rp) function glsc2_mask (a, b, size, mask, mask_size)
 Weighted inner product \( a^T b \) for indices in the mask.
 

Function/Subroutine Documentation

◆ cadd_mask()

subroutine math_ext::cadd_mask ( real(kind=rp), dimension(size), intent(inout a,
real(kind=rp), intent(in c,
integer, intent(in size,
integer, dimension(mask_size), intent(in mask,
integer, intent(in mask_size 
)

Definition at line 27 of file math_ext.f90.

Here is the caller graph for this function:

◆ cmult_mask()

subroutine math_ext::cmult_mask ( real(kind=rp), dimension(size), intent(inout a,
real(kind=rp), intent(in c,
integer, intent(in size,
integer, dimension(mask_size), intent(in mask,
integer, intent(in mask_size 
)

Definition at line 56 of file math_ext.f90.

◆ col2_mask()

subroutine math_ext::col2_mask ( real(kind=rp), dimension(size), intent(inout a,
real(kind=rp), dimension(size), intent(in b,
integer, intent(in size,
integer, dimension(mask_size), intent(in mask,
integer, intent(in mask_size 
)

Definition at line 71 of file math_ext.f90.

◆ col3_mask()

subroutine math_ext::col3_mask ( real(kind=rp), dimension(size), intent(inout a,
real(kind=rp), dimension(size), intent(in b,
real(kind=rp), dimension(size), intent(in c,
integer, intent(in size,
integer, dimension(mask_size), intent(in mask,
integer, intent(in mask_size 
)

Definition at line 86 of file math_ext.f90.

◆ copy_mask()

subroutine math_ext::copy_mask ( real(kind=rp), dimension(size), intent(inout a,
real(kind=rp), dimension(size), intent(in b,
integer, intent(in size,
integer, dimension(mask_size), intent(in mask,
integer, intent(in mask_size 
)

Definition at line 12 of file math_ext.f90.

Here is the caller graph for this function:

◆ glsc2_mask()

real(kind=rp) function math_ext::glsc2_mask ( real(kind=rp), dimension(size), intent(in a,
real(kind=rp), dimension(size), intent(in b,
integer, intent(in size,
integer, dimension(mask_size), intent(in mask,
integer, intent(in mask_size 
)

Definition at line 116 of file math_ext.f90.

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

◆ invcol1_mask()

subroutine math_ext::invcol1_mask ( real(kind=rp), dimension(size), intent(inout a,
integer, intent(in size,
integer, dimension(mask_size), intent(in mask,
integer, intent(in mask_size 
)

Definition at line 42 of file math_ext.f90.

◆ sub3_mask()

subroutine math_ext::sub3_mask ( real(kind=rp), dimension(size), intent(inout a,
real(kind=rp), dimension(size), intent(in b,
real(kind=rp), dimension(size), intent(in c,
integer, intent(in size,
integer, dimension(mask_size), intent(in mask,
integer, intent(in mask_size 
)

Definition at line 101 of file math_ext.f90.

Here is the caller graph for this function: