Eigenvalue SoLvers for Petaflop-Applications (ELPA)  2020.05.001
Macros | Functions
cannon.c File Reference
#include "config-f90.h"
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <complex.h>
#include <mpi.h>
#include "../general/precision_macros.h"
#include "cannon_forw_template.c"
#include "cannon_back_template.c"

Macros

#define C_INT_TYPE_PTR   int*
 
#define C_INT_TYPE   int
 
#define BLAS_KIND   c_int
 
#define C_INT_MPI_TYPE_PTR   int*
 
#define C_INT_MPI_TYPE   int
 
#define MPI_KIND   c_int
 
#define REALCASE   1
 
#define DOUBLE_PRECISION   1
 
#define REALCASE   1
 
#define SINGLE_PRECISION   1
 
#define COMPLEXCASE   1
 
#define DOUBLE_PRECISION   1
 
#define COMPLEXCASE   1
 
#define SINGLE_PRECISION   1
 

Functions

void cannons_reduction_c_d (double *A, double *U, int local_rowsCast, int local_colsCast, int *a_desc, double *Res, int ToStore, int row_comm, int col_comm)
 
void cannons_triang_rectangular_c_d (double *U, double *B, int local_rowsCast, int local_colsCast, int *u_desc, int *b_desc, double *Res, int row_comm, int col_comm)
 
void cannons_reduction_c_f (float *A, float *U, int local_rowsCast, int local_colsCast, int *a_desc, float *Res, int ToStore, int row_comm, int col_comm)
 
void cannons_triang_rectangular_c_f (float *U, float *B, int local_rowsCast, int local_colsCast, int *u_desc, int *b_desc, float *Res, int row_comm, int col_comm)
 
void cannons_reduction_c_dc (double complex *A, double complex *U, int local_rowsCast, int local_colsCasr, int *a_desc, double complex *Res, int ToStore, int row_comm, int col_comm)
 
void cannons_triang_rectangular_c_dc (double complex *U, double complex *B, int local_rowsCast, int local_colsCast, int *u_desc, int *b_desc, double complex *Res, int row_comm, int col_comm)
 
void cannons_reduction_c_fc (float complex *A, float complex *U, int local_rowsCast, int local_colsCast, int *a_desc, float complex *Res, int ToStore, int row_comm, int col_comm)
 
void cannons_triang_rectangular_c_fc (float complex *U, float complex *B, int local_rowsCast, int local_colsCast, int *u_desc, int *b_desc, float complex *Res, int row_comm, int col_comm)
 

Macro Definition Documentation

◆ BLAS_KIND

#define BLAS_KIND   c_int

◆ C_INT_MPI_TYPE

#define C_INT_MPI_TYPE   int

◆ C_INT_MPI_TYPE_PTR

#define C_INT_MPI_TYPE_PTR   int*

◆ C_INT_TYPE

#define C_INT_TYPE   int

◆ C_INT_TYPE_PTR

#define C_INT_TYPE_PTR   int*

◆ COMPLEXCASE [1/2]

#define COMPLEXCASE   1

◆ COMPLEXCASE [2/2]

#define COMPLEXCASE   1

◆ DOUBLE_PRECISION [1/2]

#define DOUBLE_PRECISION   1

◆ DOUBLE_PRECISION [2/2]

#define DOUBLE_PRECISION   1

◆ MPI_KIND

#define MPI_KIND   c_int

◆ REALCASE [1/2]

#define REALCASE   1

◆ REALCASE [2/2]

#define REALCASE   1

◆ SINGLE_PRECISION [1/2]

#define SINGLE_PRECISION   1

◆ SINGLE_PRECISION [2/2]

#define SINGLE_PRECISION   1

Function Documentation

◆ cannons_reduction_c_d()

void cannons_reduction_c_d ( double *  A,
double *  U,
int  local_rowsCast,
int  local_colsCast,
int *  a_desc,
double *  Res,
int  ToStore,
int  row_comm,
int  col_comm 
)

◆ cannons_reduction_c_dc()

void cannons_reduction_c_dc ( double complex *  A,
double complex *  U,
int  local_rowsCast,
int  local_colsCasr,
int *  a_desc,
double complex *  Res,
int  ToStore,
int  row_comm,
int  col_comm 
)

◆ cannons_reduction_c_f()

void cannons_reduction_c_f ( float *  A,
float *  U,
int  local_rowsCast,
int  local_colsCast,
int *  a_desc,
float *  Res,
int  ToStore,
int  row_comm,
int  col_comm 
)

◆ cannons_reduction_c_fc()

void cannons_reduction_c_fc ( float complex *  A,
float complex *  U,
int  local_rowsCast,
int  local_colsCast,
int *  a_desc,
float complex *  Res,
int  ToStore,
int  row_comm,
int  col_comm 
)

◆ cannons_triang_rectangular_c_d()

void cannons_triang_rectangular_c_d ( double *  U,
double *  B,
int  local_rowsCast,
int  local_colsCast,
int *  u_desc,
int *  b_desc,
double *  Res,
int  row_comm,
int  col_comm 
)

◆ cannons_triang_rectangular_c_dc()

void cannons_triang_rectangular_c_dc ( double complex *  U,
double complex *  B,
int  local_rowsCast,
int  local_colsCast,
int *  u_desc,
int *  b_desc,
double complex *  Res,
int  row_comm,
int  col_comm 
)

◆ cannons_triang_rectangular_c_f()

void cannons_triang_rectangular_c_f ( float *  U,
float *  B,
int  local_rowsCast,
int  local_colsCast,
int *  u_desc,
int *  b_desc,
float *  Res,
int  row_comm,
int  col_comm 
)

◆ cannons_triang_rectangular_c_fc()

void cannons_triang_rectangular_c_fc ( float complex *  U,
float complex *  B,
int  local_rowsCast,
int  local_colsCast,
int *  u_desc,
int *  b_desc,
float complex *  Res,
int  row_comm,
int  col_comm 
)