1#ifndef __CS_RANGE_SET_H__
2#define __CS_RANGE_SET_H__
cs_datatype_t
Definition cs_defs.h:300
#define BEGIN_C_DECLS
Definition cs_defs.h:542
unsigned cs_gnum_t
global mesh entity number
Definition cs_defs.h:327
#define END_C_DECLS
Definition cs_defs.h:543
int cs_lnum_t
local mesh entity id
Definition cs_defs.h:335
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.cpp:736
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.cpp:1060
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, int tr_ignore, 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.cpp:682
void cs_range_set_destroy(cs_range_set_t **rs)
Destroy a range set structure.
Definition cs_range_set.cpp:782
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.cpp:930
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.cpp:987
void cs_range_set_define(const cs_interface_set_t *ifs, const cs_halo_t *halo, cs_lnum_t n_elts, bool balance, int tr_ignore, 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.cpp:578
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.cpp:810
Definition cs_range_set.h:57
const cs_interface_set_t * ifs
Definition cs_range_set.h:70
cs_gnum_t l_range[2]
Definition cs_range_set.h:63
const cs_halo_t * halo
Definition cs_range_set.h:71
const cs_gnum_t * g_id
Definition cs_range_set.h:65
cs_gnum_t * _g_id
Definition cs_range_set.h:67
cs_lnum_t n_elts[3]
Definition cs_range_set.h:59