mirror of
https://github.com/triqs/dft_tools
synced 2024-12-23 04:43:42 +01:00
36 lines
659 B
C++
36 lines
659 B
C++
|
|
||
|
#include "testing.hpp"
|
||
|
|
||
|
int main()
|
||
|
{
|
||
|
double e[4], en, ci_sum, ct, res[4];
|
||
|
int inds[4], inds_should[4];
|
||
|
int i, flag;
|
||
|
char mess[128];
|
||
|
|
||
|
e[0] = -1.5;
|
||
|
e[1] = -1.309017;
|
||
|
e[2] = -1.0;
|
||
|
e[3] = -0.5;
|
||
|
|
||
|
en = -0.55;
|
||
|
printf("\n Test case 2\n\n");
|
||
|
|
||
|
flag = dos_reorder(en, e, inds);
|
||
|
|
||
|
dos_corner_weights(en, e, inds, res);
|
||
|
dos_tet_weights(en, e, inds, &ct);
|
||
|
|
||
|
for(i = 0, ci_sum = 0.0; i < 4; i++)
|
||
|
{
|
||
|
printf(" res[%d] = %20.15lf\n", i, res[i]);
|
||
|
ci_sum += res[i];
|
||
|
}
|
||
|
|
||
|
printf(" Difference: %le\n", fabs(ci_sum - ct));
|
||
|
|
||
|
sprintf(mess, "Difference between 'ci_sum' and 'ct' is too large");
|
||
|
ASSERT(fabs(ci_sum - ct) < 1e-12, mess);
|
||
|
}
|
||
|
|