proteus  1.8.1
C/C++/Fortran libraries
Files | Functions
smoothers

C implementations of multilevel smoother algorithms. More...

Files

file  smoothers.c
 

Functions

void jacobi_NR_prepare (SuperMatrix *A, double w, double tol, double *M)
 
void jacobi_NR_solve (SuperMatrix *A, double *M, double *R, int *node_order, double *dX)
 
void nl_jacobi_NR_solve (SuperMatrix *A, double *R, int *node_order, double w, double tol, double *dX)
 
void gauss_seidel_NR_prepare (SuperMatrix *A, double w, double tol, double *M)
 
void gauss_seidel_NR_solve (SuperMatrix *A, double *M, double *R, int *node_order, double *dX)
 
void nl_gauss_seidel_NR_solve (SuperMatrix *A, double *R, int *node_order, double w, double tol, double *dX)
 
int asm_NR_init (SuperMatrix *A, int **subdomain_dim_p, int ***l2g_L_p, double ***subdomain_L_p, double ***subdomain_R_p, double ***subdomain_dX_p, PROTEUS_LAPACK_INTEGER ***subdomain_pivots_p)
 
void asm_NR_free (int N, int *subdomain_dim, int **l2g_L, double **subdomain_L, double **subdomain_R, double **subdomain_dX, PROTEUS_LAPACK_INTEGER **subdomain_pivots)
 
void asm_NR_prepare (SuperMatrix *A, int *subdomain_dim, int **l2g_L, double **subdomainL, PROTEUS_LAPACK_INTEGER **subdomainPivots)
 
void asm_NR_solve (SuperMatrix *A, double w, double **subdomainL, int *subdomain_dim, int **l2g_L, double *R, double **subdomainR, int *node_order, double **subdomain_dX, double *dX, PROTEUS_LAPACK_INTEGER **subdomainPivots)
 
int basm_NR_init (int rowBlocks, SuperMatrix *A, int **subdomain_dim_p, int ***l2g_L_p, double ***subdomain_L_p, double ***subdomain_R_p, double ***subdomain_dX_p, PROTEUS_LAPACK_INTEGER ***subdomain_pivots_p, PROTEUS_LAPACK_INTEGER ***subdomain_col_pivots_p)
 
void basm_NR_free (int N, int *subdomain_dim, int **l2g_L, double **subdomain_L, double **subdomain_R, double **subdomain_dX, PROTEUS_LAPACK_INTEGER **subdomain_pivots, PROTEUS_LAPACK_INTEGER **subdomain_col_pivots)
 
void basm_NR_prepare (int rowBlocks, int N, SuperMatrix *A, int *subdomain_dim, int **l2g_L, double **subdomainL, PROTEUS_LAPACK_INTEGER **subdomainPivots, PROTEUS_LAPACK_INTEGER **subdomainColPivots)
 
void basm_NR_solve (int rowBlocks, int N, SuperMatrix *A, double w, double **subdomainL, int *subdomain_dim, int **l2g_L, double *R, double **subdomainR, int *node_order, double **subdomain_dX, double *dX, PROTEUS_LAPACK_INTEGER **subdomainPivots, PROTEUS_LAPACK_INTEGER **subdomainColPivots)
 

Detailed Description

Function Documentation

◆ asm_NR_free()

void asm_NR_free ( int  N,
int *  subdomain_dim,
int **  l2g_L,
double **  subdomain_L,
double **  subdomain_R,
double **  subdomain_dX,
PROTEUS_LAPACK_INTEGER **  subdomain_pivots 
)

Definition at line 268 of file smoothers.c.

◆ asm_NR_init()

int asm_NR_init ( SuperMatrix *  A,
int **  subdomain_dim_p,
int ***  l2g_L_p,
double ***  subdomain_L_p,
double ***  subdomain_R_p,
double ***  subdomain_dX_p,
PROTEUS_LAPACK_INTEGER ***  subdomain_pivots_p 
)

Definition at line 189 of file smoothers.c.

◆ asm_NR_prepare()

void asm_NR_prepare ( SuperMatrix *  A,
int *  subdomain_dim,
int **  l2g_L,
double **  subdomainL,
PROTEUS_LAPACK_INTEGER **  subdomainPivots 
)

Definition at line 293 of file smoothers.c.

◆ asm_NR_solve()

void asm_NR_solve ( SuperMatrix *  A,
double  w,
double **  subdomainL,
int *  subdomain_dim,
int **  l2g_L,
double *  R,
double **  subdomainR,
int *  node_order,
double **  subdomain_dX,
double *  dX,
PROTEUS_LAPACK_INTEGER **  subdomainPivots 
)

Definition at line 324 of file smoothers.c.

◆ basm_NR_free()

void basm_NR_free ( int  N,
int *  subdomain_dim,
int **  l2g_L,
double **  subdomain_L,
double **  subdomain_R,
double **  subdomain_dX,
PROTEUS_LAPACK_INTEGER **  subdomain_pivots,
PROTEUS_LAPACK_INTEGER **  subdomain_col_pivots 
)

Definition at line 574 of file smoothers.c.

◆ basm_NR_init()

int basm_NR_init ( int  rowBlocks,
SuperMatrix *  A,
int **  subdomain_dim_p,
int ***  l2g_L_p,
double ***  subdomain_L_p,
double ***  subdomain_R_p,
double ***  subdomain_dX_p,
PROTEUS_LAPACK_INTEGER ***  subdomain_pivots_p,
PROTEUS_LAPACK_INTEGER ***  subdomain_col_pivots_p 
)

Definition at line 391 of file smoothers.c.

◆ basm_NR_prepare()

void basm_NR_prepare ( int  rowBlocks,
int  N,
SuperMatrix *  A,
int *  subdomain_dim,
int **  l2g_L,
double **  subdomainL,
PROTEUS_LAPACK_INTEGER **  subdomainPivots,
PROTEUS_LAPACK_INTEGER **  subdomainColPivots 
)

Definition at line 602 of file smoothers.c.

◆ basm_NR_solve()

void basm_NR_solve ( int  rowBlocks,
int  N,
SuperMatrix *  A,
double  w,
double **  subdomainL,
int *  subdomain_dim,
int **  l2g_L,
double *  R,
double **  subdomainR,
int *  node_order,
double **  subdomain_dX,
double *  dX,
PROTEUS_LAPACK_INTEGER **  subdomainPivots,
PROTEUS_LAPACK_INTEGER **  subdomainColPivots 
)

Definition at line 668 of file smoothers.c.

◆ gauss_seidel_NR_prepare()

void gauss_seidel_NR_prepare ( SuperMatrix *  A,
double  w,
double  tol,
double *  M 
)

Definition at line 71 of file smoothers.c.

◆ gauss_seidel_NR_solve()

void gauss_seidel_NR_solve ( SuperMatrix *  A,
double *  M,
double *  R,
int *  node_order,
double *  dX 
)

Definition at line 114 of file smoothers.c.

◆ jacobi_NR_prepare()

void jacobi_NR_prepare ( SuperMatrix *  A,
double  w,
double  tol,
double *  M 
)

Definition at line 10 of file smoothers.c.

◆ jacobi_NR_solve()

void jacobi_NR_solve ( SuperMatrix *  A,
double *  M,
double *  R,
int *  node_order,
double *  dX 
)

Definition at line 15 of file smoothers.c.

◆ nl_gauss_seidel_NR_solve()

void nl_gauss_seidel_NR_solve ( SuperMatrix *  A,
double *  R,
int *  node_order,
double  w,
double  tol,
double *  dX 
)

Definition at line 142 of file smoothers.c.

◆ nl_jacobi_NR_solve()

void nl_jacobi_NR_solve ( SuperMatrix *  A,
double *  R,
int *  node_order,
double  w,
double  tol,
double *  dX 
)

Definition at line 26 of file smoothers.c.