ergo
grid_test.cc File Reference

Tests the DFT grid generation. More...

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <memory>
#include "dft_common.h"
#include "grid_reader.h"
#include "grid_stream.h"

Classes

class  MyMolInfo

Macros

#define NATOMS   2
#define N_BF_SHELLS   2
#define N_BFS   4

Functions

static bool pattern_to_ps (Dft::SparsePattern &p, const char *fName)
static bool grid_test_scaling (const char *fName)
 This routine tests the sparsity pattern generation scalability properties.
static void grid_test_synchronisation ()
int main (int argc, char *argv[])

Variables

struct {
   ergo_real   position [3]
   int   charge
Atoms []
static ergo_real ShellRadii [] = { 1, 2 }
static const MyMolInfo MolInfo

Detailed Description

Tests the DFT grid generation.

This test generates the grid, possibly several times to detect problems with eg. thread synchronisation.

Macro Definition Documentation

#define N_BF_SHELLS   2
#define N_BFS   4
#define NATOMS   2

Function Documentation

static bool grid_test_scaling ( const char *  fName)
static

This routine tests the sparsity pattern generation scalability properties.

At some point in time, water boxes of increasing sizes had irregular sparse pattern. This test helps to debug such cases.

References dft_get_num_threads(), ERGO_SPREFIX, grid_file_name, grid_stream_free(), grid_stream_generate(), grid_stream_new(), grid_stream_set_sparse_pattern(), Dft::GridParams::LMG, pattern_to_ps(), BasisInfoStruct::permuteShells(), Dft::GridParams::radialGridScheme, and setupShellMap().

Referenced by main().

static void grid_test_synchronisation ( )
static
int main ( int  argc,
char *  argv[] 
)
static bool pattern_to_ps ( Dft::SparsePattern &  p,
const char *  fName 
)
static

Referenced by grid_test_scaling().

Variable Documentation

struct { ... } Atoms[]
const MyMolInfo MolInfo
static
ergo_real position[3]
ergo_real ShellRadii[] = { 1, 2 }
static