Set of routines to handle the management of high-level iterative algorithms such as Uzawa, Golub-Kahan Bi-orthogonalization or Picard algorithms which incorporates inner solvers. More...
#include "cs_defs.h"#include <float.h>#include <assert.h>#include <bft_mem.h>#include "cs_evaluate.h"#include "cs_iter_algo.h"
Include dependency graph for cs_iter_algo.c:Functions | |
| cs_iter_algo_info_t * | cs_iter_algo_define (int verbosity, int n_max_iter, double atol, double rtol, double dtol) |
| Create and initialize a new cs_iter_algo_info_t structure. More... | |
| void | cs_iter_algo_navsto_fb_picard_cvg (const cs_cdo_connect_t *connect, const cs_cdo_quantities_t *quant, const cs_real_t *pre_iterate, const cs_real_t *cur_iterate, cs_real_t div_l2_norm, cs_iter_algo_info_t *a_info) |
| Test if one has to do one more Picard iteration. Test if performed on the relative norm on the increment between two iterations but also on the divergence. More... | |
Set of routines to handle the management of high-level iterative algorithms such as Uzawa, Golub-Kahan Bi-orthogonalization or Picard algorithms which incorporates inner solvers.
| cs_iter_algo_info_t* cs_iter_algo_define | ( | int | verbosity, |
| int | n_max_iter, | ||
| double | atol, | ||
| double | rtol, | ||
| double | dtol | ||
| ) |
Create and initialize a new cs_iter_algo_info_t structure.
| [in] | verbosity | set the level of information printed |
| [in] | n_max_iter | maximal number of iteration |
| [in] | atol | absolute tolerance |
| [in] | rtol | relative tolerance |
| [in] | dtol | divergence tolerance |
| void cs_iter_algo_navsto_fb_picard_cvg | ( | const cs_cdo_connect_t * | connect, |
| const cs_cdo_quantities_t * | quant, | ||
| const cs_real_t * | pre_iterate, | ||
| const cs_real_t * | cur_iterate, | ||
| cs_real_t | div_l2_norm, | ||
| cs_iter_algo_info_t * | a_info | ||
| ) |
Test if one has to do one more Picard iteration. Test if performed on the relative norm on the increment between two iterations but also on the divergence.
| [in] | connect | set of additional connectivities for CDO |
| [in] | quant | set of additional geometrical quantities |
| [in] | pre_iterate | previous state of the mass flux iterate |
| [in] | cur_iterate | current state of the mass flux iterate |
| [in] | div_l2_norm | L2 norm of the velocity divergence |
| [in,out] | a_info | pointer to a cs_iter_algo_info_t struct. |