1#ifndef __CS_RANGE_SET_H__
2#define __CS_RANGE_SET_H__
130 cs_gnum_t l_range[2],
166 cs_gnum_t g_id_base);
193 cs_gnum_t l_range[2],
cs_datatype_t
Definition cs_defs.h:260
#define BEGIN_C_DECLS
Definition cs_defs.h:467
#define END_C_DECLS
Definition cs_defs.h:468
int cs_lnum_t
local mesh entity id
Definition cs_defs.h:298
struct _cs_interface_set_t cs_interface_set_t
Definition cs_interface.h:61
cs_range_set_t * cs_range_set_create_from_shared(const cs_interface_set_t *ifs, const cs_halo_t *halo, cs_lnum_t n_elts, cs_gnum_t l_range[2], cs_gnum_t *g_id)
Create a range set (with associated range and global ids) from an existing partition of data based on...
Definition cs_range_set.c:573
void cs_range_set_scatter(const cs_range_set_t *rs, cs_datatype_t datatype, cs_lnum_t stride, const void *src_val, void *dest_val)
Scatter element values associated with a range set to the full set.
Definition cs_range_set.c:887
void cs_range_set_destroy(cs_range_set_t **rs)
Destroy a range set structure.
Definition cs_range_set.c:609
void cs_range_set_define(const cs_interface_set_t *ifs, const cs_halo_t *halo, cs_lnum_t n_elts, bool balance, cs_gnum_t g_id_base, cs_gnum_t l_range[2], cs_gnum_t *g_id)
Define global ids and a partitioning of data based on local ranges for elements which may be shared a...
Definition cs_range_set.c:446
cs_range_set_t * cs_range_set_create(const cs_interface_set_t *ifs, const cs_halo_t *halo, cs_lnum_t n_elts, bool balance, cs_gnum_t g_id_base)
Create a range set (with associated range and global ids) for the partitioning of data based on local...
Definition cs_range_set.c:521
void cs_range_set_sync(const cs_range_set_t *rs, cs_datatype_t datatype, cs_lnum_t stride, void *val)
Synchronize values elements associated with a range set, using either a halo or an interface set.
Definition cs_range_set.c:757
void cs_range_set_gather(const cs_range_set_t *rs, cs_datatype_t datatype, cs_lnum_t stride, const void *src_val, void *dest_val)
Gather element values associated with a range set to a compact set.
Definition cs_range_set.c:804
void cs_range_set_zero_out_of_range(const cs_range_set_t *rs, cs_datatype_t datatype, cs_lnum_t stride, void *val)
Set values of a given array to zero for indexes of elements outside the local range.
Definition cs_range_set.c:637
Definition cs_range_set.h:57
const cs_interface_set_t * ifs
Definition cs_range_set.h:69
const cs_halo_t * halo
Definition cs_range_set.h:70
const cs_gnum_t * g_id
Definition cs_range_set.h:64
cs_gnum_t * _g_id
Definition cs_range_set.h:66