:py:mod:`bempp.core.numba_kernels` ================================== .. py:module:: bempp.core.numba_kernels .. autoapi-nested-parse:: Kernels for assembly using Numba. Module Contents --------------- Functions ~~~~~~~~~ .. autoapisummary:: bempp.core.numba_kernels.select_numba_kernels bempp.core.numba_kernels.get_piola_transform bempp.core.numba_kernels.get_edge_lengths bempp.core.numba_kernels.get_global_points bempp.core.numba_kernels.get_normals bempp.core.numba_kernels.elements_adjacent bempp.core.numba_kernels.laplace_single_layer_regular bempp.core.numba_kernels.laplace_double_layer_regular bempp.core.numba_kernels.laplace_adjoint_double_layer_regular bempp.core.numba_kernels.laplace_single_layer_singular bempp.core.numba_kernels.laplace_double_layer_singular bempp.core.numba_kernels.laplace_adjoint_double_layer_singular bempp.core.numba_kernels.helmholtz_single_layer_regular bempp.core.numba_kernels.helmholtz_double_layer_regular bempp.core.numba_kernels.helmholtz_adjoint_double_layer_regular bempp.core.numba_kernels.helmholtz_far_field_single_layer bempp.core.numba_kernels.helmholtz_far_field_double_layer bempp.core.numba_kernels.helmholtz_single_layer_singular bempp.core.numba_kernels.helmholtz_double_layer_singular bempp.core.numba_kernels.helmholtz_adjoint_double_layer_singular bempp.core.numba_kernels.modified_helmholtz_single_layer_regular bempp.core.numba_kernels.modified_helmholtz_single_layer_singular bempp.core.numba_kernels.modified_helmholtz_double_layer_regular bempp.core.numba_kernels.modified_helmholtz_double_layer_singular bempp.core.numba_kernels.modified_helmholtz_adjoint_double_layer_regular bempp.core.numba_kernels.modified_helmholtz_adjoint_double_layer_singular bempp.core.numba_kernels.l2_identity_kernel bempp.core.numba_kernels._vector_grad_product_kernel bempp.core.numba_kernels._curl_curl_product_kernel bempp.core.numba_kernels.laplace_beltrami_kernel bempp.core.numba_kernels.default_sparse_kernel bempp.core.numba_kernels.default_scalar_regular_kernel bempp.core.numba_kernels.laplace_hypersingular_regular bempp.core.numba_kernels.helmholtz_hypersingular_regular bempp.core.numba_kernels.modified_helmholtz_hypersingular_regular bempp.core.numba_kernels.default_scalar_singular_kernel bempp.core.numba_kernels.laplace_hypersingular_singular bempp.core.numba_kernels.helmholtz_hypersingular_singular bempp.core.numba_kernels.modified_helmholtz_hypersingular_singular bempp.core.numba_kernels.default_scalar_potential_kernel bempp.core.numba_kernels.maxwell_efield_regular_assembler bempp.core.numba_kernels.maxwell_efield_singular bempp.core.numba_kernels.maxwell_mfield_singular bempp.core.numba_kernels.maxwell_mfield_regular_assembler bempp.core.numba_kernels.maxwell_efield_potential bempp.core.numba_kernels.maxwell_mfield_potential bempp.core.numba_kernels.maxwell_efield_far_field bempp.core.numba_kernels.maxwell_mfield_far_field Attributes ~~~~~~~~~~ .. autoapisummary:: bempp.core.numba_kernels.M_INV_4PI .. py:data:: M_INV_4PI .. py:function:: select_numba_kernels(operator_descriptor, mode='regular') Select the Numba kernels. .. py:function:: get_piola_transform(grid_data, elements, local_points) Compute the Piola transform. .. py:function:: get_edge_lengths(grid_data, elements) Compute the edge lengths for the given elements. .. py:function:: get_global_points(grid_data, elements, local_points) Get global points. .. py:function:: get_normals(grid_data, nrepetitions, elements, multipliers) Get normals to be repeated n times per element. .. py:function:: elements_adjacent(elements, index1, index2) Check if two elements are adjacent. .. py:function:: laplace_single_layer_regular(test_point, trial_points, test_normal, trial_normals, kernel_parameters) Evaluate Laplace single layer for regular kernels. .. py:function:: laplace_double_layer_regular(test_point, trial_points, test_normal, trial_normals, kernel_parameters) Evaluate Laplace double layer for regular kernels. .. py:function:: laplace_adjoint_double_layer_regular(test_point, trial_points, test_normal, trial_normals, kernel_parameters) Evaluate Laplace adjoint double layer for regular kernels. .. py:function:: laplace_single_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Laplace single layer for singular kernels. .. py:function:: laplace_double_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Laplace double layer for singular kernels. .. py:function:: laplace_adjoint_double_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Laplace adjoint double layer for singular kernels. .. py:function:: helmholtz_single_layer_regular(test_point, trial_points, test_normal, trial_normals, kernel_parameters) Evaluate Helmholtz single layer for regular kernels. .. py:function:: helmholtz_double_layer_regular(test_point, trial_points, test_normal, trial_normals, kernel_parameters) Evaluate Helmholtz double layer for regular kernels. .. py:function:: helmholtz_adjoint_double_layer_regular(test_point, trial_points, test_normal, trial_normals, kernel_parameters) Evaluate Helmholtz adjoint double layer for regular kernels. .. py:function:: helmholtz_far_field_single_layer(test_point, trial_points, test_normal, trial_normals, kernel_parameters) Evaluate Helmholtz single layer for regular kernels. .. py:function:: helmholtz_far_field_double_layer(test_point, trial_points, test_normal, trial_normals, kernel_parameters) Evaluate Helmholtz single layer for regular kernels. .. py:function:: helmholtz_single_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Helmholtz single layer for regular kernels. .. py:function:: helmholtz_double_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Helmholtz double layer for singular kernels. .. py:function:: helmholtz_adjoint_double_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Helmholtz adjoint double layer for singular kernels. .. py:function:: modified_helmholtz_single_layer_regular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Modified Helmholtz single layer for regular kernels. .. py:function:: modified_helmholtz_single_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Modified Helmholtz single layer for singular kernels. .. py:function:: modified_helmholtz_double_layer_regular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Modified Helmholtz double layer for regular kernels. .. py:function:: modified_helmholtz_double_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Modified Helmholtz double layer for singular kernels. .. py:function:: modified_helmholtz_adjoint_double_layer_regular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Modified Helmholtz adjoint double layer for regular kernels. .. py:function:: modified_helmholtz_adjoint_double_layer_singular(test_points, trial_points, test_normal, trial_normal, kernel_parameters) Evaluate Modified Helmholtz adjoint double layer for singular kernels. .. py:function:: l2_identity_kernel(grid_data, nshape_test, nshape_trial, element_index, elements, quad_points, quad_weights, test_normal_multipliers, trial_normal_multipliers, test_multipliers, trial_multipliers, test_shapeset, trial_shapeset, test_basis_evaluate, trial_basis_evaluate, result) Evaluate kernel for L2 identity. .. py:function:: _vector_grad_product_kernel(grid_data, nshape_test, nshape_trial, element_index, elements, quad_points, quad_weights, test_normal_multipliers, trial_normal_multipliers, test_multipliers, trial_multipliers, test_shapeset, trial_shapeset_gradient, test_basis_evaluate, trial_basis_gradient, result) .. py:function:: _curl_curl_product_kernel(grid_data, nshape_test, nshape_trial, element_index, elements, quad_points, quad_weights, test_normal_multipliers, trial_normal_multipliers, test_multipliers, trial_multipliers, test_shapeset_gradient, trial_shapeset_gradient, test_basis_curl, trial_basis_curl, result) Evaluate kernel for L2 identity. .. py:function:: laplace_beltrami_kernel(grid_data, nshape_test, nshape_trial, element_index, elements, quad_points, quad_weights, test_normal_multipliers, trial_normal_multipliers, test_multipliers, trial_multipliers, test_shapeset_gradient, trial_shapeset_gradient, test_basis_gradient, trial_basis_gradient, result) Evaluate kernel for Laplace-Beltrami. .. py:function:: default_sparse_kernel(grid_data, nshape_test, nshape_trial, elements, quad_points, quad_weights, test_normal_multipliers, trial_normal_multipliers, test_multipliers, trial_multipliers, test_shapeset, trial_shapeset, test_basis_evaluate, trial_basis_evaluate, kernel_evaluator, result) Evaluate default sparse kernel. .. py:function:: default_scalar_regular_kernel(test_grid_data, trial_grid_data, nshape_test, nshape_trial, test_elements, trial_elements, test_multipliers, trial_multipliers, test_global_dofs, trial_global_dofs, test_normal_multipliers, trial_normal_multipliers, quad_points, quad_weights, kernel_evaluator, kernel_parameters, grids_identical, test_shapeset, trial_shapeset, result) Evaulate default scalar kernel. .. py:function:: laplace_hypersingular_regular(test_grid_data, trial_grid_data, nshape_test, nshape_trial, test_elements, trial_elements, test_multipliers, trial_multipliers, test_global_dofs, trial_global_dofs, test_normal_multipliers, trial_normal_multipliers, quad_points, quad_weights, kernel_evaluator, kernel_parameters, grids_identical, test_shapeset, trial_shapeset, result) Evaluate Laplace hypersingular kernel. .. py:function:: helmholtz_hypersingular_regular(test_grid_data, trial_grid_data, nshape_test, nshape_trial, test_elements, trial_elements, test_multipliers, trial_multipliers, test_global_dofs, trial_global_dofs, test_normal_multipliers, trial_normal_multipliers, quad_points, quad_weights, kernel_evaluator, kernel_parameters, grids_identical, test_shapeset, trial_shapeset, result) Evaluate Helmholtz hypersingular kernel. .. py:function:: modified_helmholtz_hypersingular_regular(test_grid_data, trial_grid_data, nshape_test, nshape_trial, test_elements, trial_elements, test_multipliers, trial_multipliers, test_global_dofs, trial_global_dofs, test_normal_multipliers, trial_normal_multipliers, quad_points, quad_weights, kernel_evaluator, kernel_parameters, grids_identical, test_shapeset, trial_shapeset, result) Evaluate Modified Helmholtz hypersingular kernel. .. py:function:: default_scalar_singular_kernel(grid_data, test_points, trial_points, quad_weights, test_elements, trial_elements, test_offsets, trial_offsets, weights_offsets, number_of_quad_points, test_normal_multipliers, trial_normal_multipliers, nshape_test, nshape_trial, test_shapeset, trial_shapeset, kernel_evaluator, kernel_parameters, result) Evaluate singular kernel. .. py:function:: laplace_hypersingular_singular(grid_data, test_points, trial_points, quad_weights, test_elements, trial_elements, test_offsets, trial_offsets, weights_offsets, number_of_quad_points, test_normal_multipliers, trial_normal_multipliers, nshape_test, nshape_trial, test_shapeset, trial_shapeset, kernel_evaluator, kernel_parameters, result) Evaluate Laplace hypersingular singular kernel. .. py:function:: helmholtz_hypersingular_singular(grid_data, test_points, trial_points, quad_weights, test_elements, trial_elements, test_offsets, trial_offsets, weights_offsets, number_of_quad_points, test_normal_multipliers, trial_normal_multipliers, nshape_test, nshape_trial, test_shapeset, trial_shapeset, kernel_evaluator, kernel_parameters, result) Evaluate Helmholtz hypersingular singular kernel. .. py:function:: modified_helmholtz_hypersingular_singular(grid_data, test_points, trial_points, quad_weights, test_elements, trial_elements, test_offsets, trial_offsets, weights_offsets, number_of_quad_points, test_normal_multipliers, trial_normal_multipliers, nshape_test, nshape_trial, test_shapeset, trial_shapeset, kernel_evaluator, kernel_parameters, result) Singular evaluator. .. py:function:: default_scalar_potential_kernel(dtype, result_type, kernel_dimension, points, x, grid_data, quad_points, quad_weights, number_of_shape_functions, shapeset_evaluate, kernel_function, kernel_parameters, normal_multipliers, support_elements) Implement a scalar potential kernel. .. py:function:: maxwell_efield_regular_assembler(test_grid_data, trial_grid_data, nshape_test, nshape_trial, test_elements, trial_elements, test_multipliers, trial_multipliers, test_global_dofs, trial_global_dofs, test_normal_multipliers, trial_normal_multipliers, quad_points, quad_weights, kernel_evaluator, kernel_parameters, grids_identical, test_shapeset, trial_shapeset, result) Evaluate Maxwell electric field kernel. .. py:function:: maxwell_efield_singular(grid_data, test_points, trial_points, quad_weights, test_elements, trial_elements, test_offsets, trial_offsets, weights_offsets, number_of_quad_points, test_normal_multipliers, trial_normal_multipliers, nshape_test, nshape_trial, test_shapeset, trial_shapeset, kernel_evaluator, kernel_parameters, result) Singular evaluator. .. py:function:: maxwell_mfield_singular(grid_data, test_points, trial_points, quad_weights, test_elements, trial_elements, test_offsets, trial_offsets, weights_offsets, number_of_quad_points, test_normal_multipliers, trial_normal_multipliers, nshape_test, nshape_trial, test_shapeset, trial_shapeset, kernel_evaluator, kernel_parameters, result) Singular evaluator. .. py:function:: maxwell_mfield_regular_assembler(test_grid_data, trial_grid_data, nshape_test, nshape_trial, test_elements, trial_elements, test_multipliers, trial_multipliers, test_global_dofs, trial_global_dofs, test_normal_multipliers, trial_normal_multipliers, quad_points, quad_weights, kernel_evaluator, kernel_parameters, grids_identical, test_shapeset, trial_shapeset, result) Evaluate Maxwell magnetic field kernel. .. py:function:: maxwell_efield_potential(dtype, result_type, kernel_dimension, points, x, grid_data, quad_points, quad_weights, number_of_shape_functions, shapeset_evaluate, kernel_function, kernel_parameters, normal_multipliers, support_elements) Implement the Maxwell electric field potential. .. py:function:: maxwell_mfield_potential(dtype, result_type, kernel_dimension, points, x, grid_data, quad_points, quad_weights, number_of_shape_functions, shapeset_evaluate, kernel_function, kernel_parameters, normal_multipliers, support_elements) Implement the Maxwell magnetic field potential. .. py:function:: maxwell_efield_far_field(dtype, result_type, kernel_dimension, points, x, grid_data, quad_points, quad_weights, number_of_shape_functions, shapeset_evaluate, kernel_function, kernel_parameters, normal_multipliers, support_elements) Implement the Maxwell electric far-field potential. .. py:function:: maxwell_mfield_far_field(dtype, result_type, kernel_dimension, points, x, grid_data, quad_points, quad_weights, number_of_shape_functions, shapeset_evaluate, kernel_function, kernel_parameters, normal_multipliers, support_elements) Implement the Maxwell magnetic far-field potential.