  | 
  
    My Project
    
   programmer's documentation 
   | 
 
 
 
 
Go to the documentation of this file.    1 #ifndef __CS_SLES_IT_H__ 
    2 #define __CS_SLES_IT_H__ 
  372 #if defined(HAVE_MPI) 
  391                                MPI_Comm       caller_comm);
 
  518                             const char    *base_name,
 
 
void const int * f_id
Definition: cs_gui.h:292
 
Definition: cs_sles_it.h:60
 
double cs_sles_it_get_last_initial_residue(const cs_sles_it_t *context)
Return the initial residue for the previous solve operation with a solver.
Definition: cs_sles_it.c:5354
 
Definition: cs_sles_it.h:68
 
double precision, save a
Definition: cs_fuel_incl.f90:146
 
bool cs_sles_it_error_post_and_abort(cs_sles_t *sles, cs_sles_convergence_state_t state, const cs_matrix_t *a, cs_halo_rotation_t rotation_mode, const cs_real_t *rhs, cs_real_t *vx)
Error handler for iterative sparse linear equation solver.
Definition: cs_sles_it.c:5695
 
void cs_sles_it_transfer_pc(cs_sles_it_t *context, cs_sles_pc_t **pc)
Assign a preconditioner to an iterative sparse linear equation solver, transfering its ownership to t...
Definition: cs_sles_it.c:5407
 
struct _cs_sles_pc_t cs_sles_pc_t
Definition: cs_sles_pc.h:66
 
void cs_sles_it_setup(void *context, const char *name, const cs_matrix_t *a, int verbosity)
Setup iterative sparse linear equation solver.
Definition: cs_sles_it.c:4967
 
Definition: cs_sles_it.h:63
 
struct _cs_sles_it_t cs_sles_it_t
Definition: cs_sles_it.h:79
 
cs_sles_it_type_t
Iterative solver types.
Definition: cs_sles_it.h:57
 
#define END_C_DECLS
Definition: cs_defs.h:468
 
double cs_real_t
Floating-point value.
Definition: cs_defs.h:302
 
void cs_sles_it_log(const void *context, cs_log_t log_type)
Log sparse linear equation solver info.
Definition: cs_sles_it.c:4863
 
void cs_sles_it_destroy(void **context)
Destroy iterative sparse linear system solver info and context.
Definition: cs_sles_it.c:4787
 
Definition: cs_sles_it.h:65
 
#define BEGIN_C_DECLS
Definition: cs_defs.h:467
 
void cs_sles_it_free(void *context)
Free iterative sparse linear equation solver setup context.
Definition: cs_sles_it.c:5293
 
struct _cs_matrix_t cs_matrix_t
Definition: cs_matrix.h:90
 
Definition: cs_sles_it.h:70
 
cs_sles_convergence_state_t
Convergence status indicator.
Definition: cs_sles.h:56
 
Definition: cs_sles_it.h:61
 
void cs_sles_it_transfer_parameters(const cs_sles_it_t *src, cs_sles_it_t *dest)
Copy options from one iterative sparse linear system solver info and context to another.
Definition: cs_sles_it.c:5439
 
cs_lnum_t cs_sles_it_get_pcg_single_reduction(void)
Query mean number of rows under which Conjugate Gradient algorithm uses the single-reduction variant.
Definition: cs_sles_it.c:5621
 
Definition: cs_sles_it.h:73
 
cs_sles_convergence_state_t cs_sles_it_solve(void *context, const char *name, const cs_matrix_t *a, int verbosity, cs_halo_rotation_t rotation_mode, double precision, double r_norm, int *n_iter, double *residue, const cs_real_t *rhs, cs_real_t *vx, size_t aux_size, void *aux_vectors)
Call iterative sparse linear equation solver.
Definition: cs_sles_it.c:5129
 
Definition: cs_sles_it.h:59
 
Definition: cs_sles_it.h:62
 
void cs_sles_it_log_parallel_options(void)
Log the current global settings relative to parallelism.
Definition: cs_sles_it.c:5663
 
Definition: cs_sles_it.h:64
 
int cs_lnum_t
local mesh entity id
Definition: cs_defs.h:298
 
cs_sles_pc_t * cs_sles_it_get_pc(cs_sles_it_t *context)
Return a preconditioner context for an iterative sparse linear equation solver.
Definition: cs_sles_it.c:5378
 
void cs_sles_it_set_fallback_threshold(cs_sles_it_t *context, cs_sles_convergence_state_t threshold)
Define convergence level under which the fallback to another solver may be used if applicable.
Definition: cs_sles_it.c:5596
 
Definition: cs_sles_it.h:66
 
cs_sles_it_t * cs_sles_it_create(cs_sles_it_type_t solver_type, int poly_degree, int n_max_iter, bool update_stats)
Create iterative sparse linear system solver info and context.
Definition: cs_sles_it.c:4687
 
cs_log_t
Definition: cs_log.h:48
 
struct _cs_sles_t cs_sles_t
Definition: cs_sles.h:68
 
const char * cs_sles_it_type_name[]
 
Definition: cs_sles_it.h:72
 
void cs_sles_it_set_shareable(cs_sles_it_t *context, const cs_sles_it_t *shareable)
Associate a similar info and context object with which some setup data may be shared.
Definition: cs_sles_it.c:5484
 
void cs_sles_it_set_pcg_single_reduction(cs_lnum_t threshold)
Set mean number of rows under which Conjugate Gradient algorithm should use the single-reduction vari...
Definition: cs_sles_it.c:5649
 
cs_sles_it_type_t cs_sles_it_get_type(const cs_sles_it_t *context)
Return iterative solver type.
Definition: cs_sles_it.c:5329
 
void cs_sles_it_set_plot_options(cs_sles_it_t *context, const char *base_name, bool use_iteration)
Set plotting options for an iterative sparse linear equation solver.
Definition: cs_sles_it.c:5743
 
Definition: cs_sles_it.h:67
 
void * cs_sles_it_copy(const void *context)
Create iterative sparse linear system solver info and context based on existing info and context.
Definition: cs_sles_it.c:4825
 
struct _cs_time_plot_t cs_time_plot_t
Definition: cs_time_plot.h:48
 
cs_sles_it_t * cs_sles_it_define(int f_id, const char *name, cs_sles_it_type_t solver_type, int poly_degree, int n_max_iter)
Define and associate an iterative sparse linear system solver for a given field or equation name.
Definition: cs_sles_it.c:4632
 
cs_halo_rotation_t
Definition: cs_halo.h:60
 
void cs_sles_it_assign_plot(cs_sles_it_t *context, cs_time_plot_t *time_plot, int time_stamp)
Assign existing time plot to iterative sparse linear equation solver.
Definition: cs_sles_it.c:5787
 
void cs_sles_it_assign_order(cs_sles_it_t *context, cs_lnum_t **order)
Assign ordering to iterative solver.
Definition: cs_sles_it.c:5557