1 #ifndef __CS_COUPLING_H__
2 #define __CS_COUPLING_H__
111 #if defined(HAVE_MPI)
123 const char *forced_app_type);
139 const ple_coupling_mpi_set_t *
308 float tolerance_base,
309 float tolerance_fraction,
312 const int point_tag[],
343 float tolerance_base,
344 float tolerance_fraction,
347 const int point_tag[],
ple_lnum_t cs_coupling_mesh_extents(const void *mesh, ple_lnum_t n_max_extents, double tolerance, double extents[])
Compute extents of a mesh representation.
Definition: cs_coupling.c:611
void cs_coupling_point_in_mesh(const void *mesh, float tolerance_base, float tolerance_fraction, ple_lnum_t n_points, const ple_coord_t point_coords[], const int point_tag[], ple_lnum_t location[], float distance[])
Find elements in a given mesh containing points: updates the location[] and distance[] arrays associa...
Definition: cs_coupling.c:667
const ple_coupling_mpi_set_t * cs_coupling_get_mpi_apps(void)
Return info on other applications in the same MPI root communicator.
Definition: cs_coupling.c:289
void cs_coupling_set_ts_multiplier(double m)
Define a time step multiplier for external couplings.
Definition: cs_coupling.c:388
void cs_coupling_set_sync_flag(int flag)
Define an optional synchronization flag for external couplings.
Definition: cs_coupling.c:349
void cplact(int *isync)
Definition: cs_coupling.c:154
void cs_coupling_sync_apps(int flags, int current_ts_id, int *max_ts_id, double *ts)
Synchronize with applications in the same PLE coupling group.
Definition: cs_coupling.c:413
void cs_coupling_point_in_mesh_p(const void *mesh, float tolerance_base, float tolerance_fraction, ple_lnum_t n_points, const ple_coord_t point_coords[], const int point_tag[], ple_lnum_t location[], float distance[])
Find elements in a given mesh containing points: updates the location[] and distance[] arrays associa...
Definition: cs_coupling.c:715
int cs_coupling_get_sync_flag(void)
Return the optional synchronization flag for external couplings.
Definition: cs_coupling.c:307
void cs_coupling_discover_mpi_apps(const char *app_name, const char *forced_app_type)
Discover other applications in the same MPI root communicator.
Definition: cs_coupling.c:180
double cs_coupling_get_ts_multiplier(void)
Return the time step multiplier for external couplings.
Definition: cs_coupling.c:367
bool cs_coupling_is_sync_active(void)
Indicate is synchronization with applications in the same PLE group is active.
Definition: cs_coupling.c:548
void cplsyn(int *ntmabs, const int *ntcabs, cs_real_t *dtref)
Definition: cs_coupling.c:122
void cs_coupling_finalize(void)
Finalize MPI coupling helper structures.
Definition: cs_coupling.c:274
#define BEGIN_C_DECLS
Definition: cs_defs.h:509
double cs_real_t
Floating-point value.
Definition: cs_defs.h:319
#define CS_PROCF(x, y)
Definition: cs_defs.h:523
#define END_C_DECLS
Definition: cs_defs.h:510
integer(c_int), pointer, save ntmabs
Maximum absolute time step number.
Definition: optcal.f90:205
real(c_double), pointer, save dtref
Reference time step.
Definition: optcal.f90:273
integer(c_int), pointer, save ntcabs
Current absolute time step number. In case of restart, this is equal to ntpabs + number of new iterat...
Definition: optcal.f90:196