Eigenvalue SoLvers for Petaflop-Applications (ELPA) 2024.03.001
Loading...
Searching...
No Matches
Macros | Functions
cannon.c File Reference
#include "config-f90.h"
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <complex.h>
#include <stdbool.h>
#include "../helpers/scalapack_interfaces.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 )