2 #include "sll_working_precision.h" 
   21      sll_int32 :: n_dofs(3) 
 
   22      sll_real64 :: delta_x(3) 
 
   24      sll_real64 :: sign = 1.0_f64 
 
   42     sll_int32  :: n_dofs(3) 
 
   43     sll_real64 :: delta_x(3) 
 
   48     self%n_total = n_total
 
   50     self%delta_x = delta_x
 
   52     self%n_rows = 3*self%n_total
 
   53     self%n_cols = 3*self%n_total
 
   55     self%n_global_rows = self%n_rows
 
   56     self%n_global_cols = self%n_cols
 
   71     sll_real64, 
intent( in    ) :: x(:) 
 
   72     sll_real64, 
intent(   out ) :: y(:) 
 
   74     sll_real64 :: scratch1(3*self%n_total), scratch2(3*self%n_total)
 
   80     call self%mass2%dot( scratch1, scratch2  )
 
   86     call self%mass1%dot( x, y )
 
   89     y = y + self%sign * scratch1
 
module for abstract linear operator
 
module for a block linear operator
 
subroutine free_schur_eb_3d(self)
 
subroutine dot_schur_eb_3d(self, x, y)
 
subroutine print_info_schur_eb_3d(self)
 
subroutine create_linear_operator_schur_eb_3d(self, mass1, mass2, n_total, n_dofs, delta_x)
 
Utilites for Maxwell solver's with spline finite elements.
 
subroutine, public sll_s_multiply_c(n_dofs, delta_x, field_in, field_out)
Multiply by discrete curl matrix.
 
subroutine, public sll_s_multiply_ct(n_dofs, delta_x, field_in, field_out)
Multiply by transpose of discrete curl matrix.
 
class for abstract linear operator
 
class for a linear operator_block