PAWpySeed Parallel C/Python package for numerical analysis of PAW DFT wavefunctions

- Main Page
- Classes
- Files

- File List
- File Members

Classes | Typedefs | Functions
momentum.h File Reference
`#include <complex.h>`
`#include <math.h>`
Include dependency graph for momentum.h:

Go to the source code of this file.

## Classes
struct | transform_spline
struct | density_ft
struct | density_ft_elem

## Typedefs
typedef struct transform_spline | transform_spline_t
typedef struct density_ft | density_ft_t
typedef struct density_ft_elem | density_ft_elem_t

## Functions
void | free_transform_spline_list (transform_spline_t *transforms, int num_transforms)
void | free_density_ft_list (density_ft_t *densities, int total_projs)
void | free_density_ft_elem_list (density_ft_elem_t *elems, int num_elems)
float complex | pseudo_momentum (int *GP, int *G_bounds, double *lattice, int *G1s, float complex *C1s, int num_waves1, int *G2s, float complex *C2s, int num_waves2, int *fftg)
void | mul_partial_waves (double *product, int size, double *r, double *f1, double *f2)
void | make_rho (double *rho, int size, double *grid, double *aewave1, double *pswave1, double *aewave2, double *pswave2)
density_ft_t | spher_transforms (int size, double *r, double *f, int l1, int m1, int l2, int m2, double encut)
double complex | spher_momentum (density_ft_t densities, double *G)
density_ft_elem_t | get_transforms (ppot_t pp, double encut)
density_ft_elem_t * | get_all_transforms (pswf_t *wf, double encut)
double complex | get_momentum_matrix_element (pswf_t *wf, int *labels, double *coords, int b1, int k1, int s1, int b2, int k2, int s2, int *GP, density_ft_elem_t *elems)
void | get_momentum_matrix (double complex *matrix, int numg, int *igall, pswf_t *wf, int *labels, double *coords, int band1, int kpt1, int spin1, int band2, int kpt2, int spin2, density_ft_elem_t *transforms_list, double encut)
void | momentum_grid_size (pswf_t *wf, double *nb1max, double *nb2max, double *nb3max, int *npmax, double encut)
int | get_momentum_grid (int *igall, pswf_t *wf, double nb1max, double nb2max, double nb3max, double encut)
void | grid_bounds (int *G_bounds, int *gdim, int *igall, int num_waves)
void | list_to_grid_map (int *grid, int *G_bounds, int *gdim, int *igall, int num_waves)
void | fill_grid (float complex *x, int *Gs, float complex *Cs, int *fftg, int numg)
void | fullwf_reciprocal (double complex *Cs, int *igall, pswf_t *wf, int numg, int band_num, int kpt_num, int *labels, double *coords)
double complex | kwave_value (double *x, double *wave, double **spline, int size, int l, int m, double *pos)
double complex | quick_overlap (int *dG, double complex *C1s, double complex *C2s, int numg, int *Gs, int *gmap, int *G_bounds, int *gdim)

## Detailed Description

Momentum matrix elements

## Typedef Documentation

typedef struct density_ft_elem density_ft_elem_t

typedef struct density_ft density_ft_t

typedef struct transform_spline transform_spline_t

## Function Documentation

void fill_grid | ( | float complex * | x,
|  | int * | Gs,
|  | float complex * | Cs,
|  | int * | fftg,
|  | int | numg
| ) |  |

void free_density_ft_elem_list | ( | density_ft_elem_t * | elems,
|  | int | num_elems
| ) |  |

void free_density_ft_list | ( | density_ft_t * | densities,
|  | int | total_projs
| ) |  |

void free_transform_spline_list | ( | transform_spline_t * | transforms,
|  | int | num_transforms
| ) |  |

void fullwf_reciprocal | ( | double complex * | Cs,
|  | int * | igall,
|  | pswf_t * | wf,
|  | int | numg,
|  | int | band_num,
|  | int | kpt_num,
|  | int * | labels,
|  | double * | coords
| ) |  |

density_ft_elem_t* get_all_transforms | ( | pswf_t * | wf,
|  | double | encut
| ) |  |

int get_momentum_grid | ( | int * | igall,
|  | pswf_t * | wf,
|  | double | nb1max,
|  | double | nb2max,
|  | double | nb3max,
|  | double | encut
| ) |  |

void get_momentum_matrix | ( | double complex * | matrix,
|  | int | numg,
|  | int * | igall,
|  | pswf_t * | wf,
|  | int * | labels,
|  | double * | coords,
|  | int | band1,
|  | int | kpt1,
|  | int | spin1,
|  | int | band2,
|  | int | kpt2,
|  | int | spin2,
|  | density_ft_elem_t * | transforms_list,
|  | double | encut
| ) |  |

double complex get_momentum_matrix_element | ( | pswf_t * | wf,
|  | int * | labels,
|  | double * | coords,
|  | int | b1,
|  | int | k1,
|  | int | s1,
|  | int | b2,
|  | int | k2,
|  | int | s2,
|  | int * | GP,
|  | density_ft_elem_t * | elems
| ) |  |

density_ft_elem_t get_transforms | ( | ppot_t | pp,
|  | double | encut
| ) |  |

void grid_bounds | ( | int * | G_bounds,
|  | int * | gdim,
|  | int * | igall,
|  | int | num_waves
| ) |  |

double complex kwave_value | ( | double * | x,
|  | double * | wave,
|  | double ** | spline,
|  | int | size,
|  | int | l,
|  | int | m,
|  | double * | pos
| ) |  |

void list_to_grid_map | ( | int * | grid,
|  | int * | G_bounds,
|  | int * | gdim,
|  | int * | igall,
|  | int | num_waves
| ) |  |

void make_rho | ( | double * | rho,
|  | int | size,
|  | double * | grid,
|  | double * | aewave1,
|  | double * | pswave1,
|  | double * | aewave2,
|  | double * | pswave2
| ) |  |

void momentum_grid_size | ( | pswf_t * | wf,
|  | double * | nb1max,
|  | double * | nb2max,
|  | double * | nb3max,
|  | int * | npmax,
|  | double | encut
| ) |  |

void mul_partial_waves | ( | double * | product,
|  | int | size,
|  | double * | r,
|  | double * | f1,
|  | double * | f2
| ) |  |

float complex pseudo_momentum | ( | int * | GP,
|  | int * | G_bounds,
|  | double * | lattice,
|  | int * | G1s,
|  | float complex * | C1s,
|  | int | num_waves1,
|  | int * | G2s,
|  | float complex * | C2s,
|  | int | num_waves2,
|  | int * | fftg
| ) |  |

double complex quick_overlap | ( | int * | dG,
|  | double complex * | C1s,
|  | double complex * | C2s,
|  | int | numg,
|  | int * | Gs,
|  | int * | gmap,
|  | int * | G_bounds,
|  | int * | gdim
| ) |  |

double complex spher_momentum | ( | density_ft_t | densities,
|  | double * | G
| ) |  |

density_ft_t spher_transforms | ( | int | size,
|  | double * | r,
|  | double * | f,
|  | int | l1,
|  | int | m1,
|  | int | l2,
|  | int | m2,
|  | double | encut
| ) |  |