1#ifndef __CS_MATRIX_ASSEMBLER_PRIV_H__
2#define __CS_MATRIX_ASSEMBLER_PRIV_H__
69struct _cs_matrix_assembler_t {
151struct _cs_matrix_assembler_values_t {
209_l_id_binary_search(
cs_lnum_t l_id_array_size,
213 if (l_id_array_size < 1)
219 while (start_id < end_id) {
220 if (l_id_array[mid_id] < l_id)
221 start_id = mid_id + 1;
222 else if (l_id_array[mid_id] > l_id)
226 mid_id = start_id + (end_id - start_id)/2;
228 if (l_id_array[mid_id] != l_id)
250_g_id_binary_find(
cs_lnum_t g_id_array_size,
256 cs_lnum_t mid_id = (end_id -start_id) / 2;
257 while (start_id < end_id) {
258 if (g_id_array[mid_id] < g_id)
259 start_id = mid_id + 1;
260 else if (g_id_array[mid_id] > g_id)
264 mid_id = start_id + ((end_id -start_id) / 2);
266 assert(g_id_array[mid_id] == g_id);
#define BEGIN_C_DECLS
Definition: cs_defs.h:542
double cs_real_t
Floating-point value.
Definition: cs_defs.h:342
uint64_t cs_gnum_t
global mesh entity number
Definition: cs_defs.h:325
#define END_C_DECLS
Definition: cs_defs.h:543
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:335
struct _cs_matrix_assembler_t cs_matrix_assembler_t
Definition: cs_matrix_assembler.h:61
void() cs_matrix_assembler_values_end_t(void *matrix)
Function pointer to complete the final assembly of matrix coefficients.
Definition: cs_matrix_assembler.h:186
void() cs_matrix_assembler_values_add_t(void *matrix, cs_lnum_t n, cs_lnum_t stride, const cs_lnum_t row_id[], const cs_lnum_t col_idx[], const cs_real_t val[])
Function pointer for addition to matrix coefficients using local row ids and column indexes.
Definition: cs_matrix_assembler.h:116
void() cs_matrix_assembler_values_add_g_t(void *matrix, cs_lnum_t n, cs_lnum_t stride, const cs_gnum_t row_g_id[], const cs_gnum_t col_g_id[], const cs_real_t val[])
Function pointer for addition to matrix coefficients using global row ids and column indexes.
Definition: cs_matrix_assembler.h:148
void() cs_matrix_assembler_values_init_t(void *matrix, cs_lnum_t db_size, cs_lnum_t eb_size)
Function pointer for initialization of matrix coefficients using local row ids and column indexes.
Definition: cs_matrix_assembler.h:84
void() cs_matrix_assembler_values_begin_t(void *matrix)
Function pointer to start the final assembly of matrix coefficients.
Definition: cs_matrix_assembler.h:169