AMG.cpp File Reference
`#include "Paso.h"`
`#include "Preconditioner.h"`
`#include "MergedSolver.h"`
`#include "Options.h"`
`#include "PasoUtil.h"`
`#include "MKL.h"`
`#include <iostream>`

## Namespaces

| paso

## Macros

#define | SHOW_TIMING 0

## Functions

double * | paso::createRandomVector (escript::const_Distribution_ptr dist)
void | paso::Preconditioner_AMG_free (Preconditioner_AMG *in)
int | paso::Preconditioner_AMG_getMaxLevel (const Preconditioner_AMG *in)
double | paso::Preconditioner_AMG_getCoarseLevelSparsity (const Preconditioner_AMG *in)
dim_t | paso::Preconditioner_AMG_getNumCoarseUnknowns (const Preconditioner_AMG *in)
Preconditioner_AMG * | paso::Preconditioner_AMG_alloc (SystemMatrix_ptr A, int level, Options *options)
void | paso::Preconditioner_AMG_solve (SystemMatrix_ptr A, Preconditioner_AMG *amg, double *x, double *b)
void | paso::Preconditioner_AMG_setStrongConnections (SystemMatrix_ptr A, dim_t *degree_S, index_t *offset_S, index_t *S, double theta, double tau)
void | paso::Preconditioner_AMG_setStrongConnections_Block (SystemMatrix_ptr A, dim_t *degree_S, index_t *offset_S, index_t *S, double theta, double tau)
void | paso::Preconditioner_AMG_transposeStrongConnections (dim_t n, const dim_t *degree_S, const index_t *offset_S, const index_t *S, const dim_t nT, dim_t *degree_ST, index_t *offset_ST, index_t *ST)
void | paso::Preconditioner_AMG_CIJPCoarsening (dim_t n, dim_t my_n, AMGBlockSelect *split_marker, const dim_t *degree_S, const index_t *offset_S, const index_t *S, const dim_t *degree_ST, const index_t *offset_ST, const index_t *ST, const_Connector_ptr col_connector, escript::const_Distribution_ptr col_dist)

## Macro Definition Documentation

## SHOW_TIMING

#define SHOW_TIMING 0

Referenced by paso::Preconditioner_AMG_alloc(), and paso::Preconditioner_AMG_solve().