xref: /libCEED/tests/t306-basis.c (revision d7b241e67f6e33d9b297db3da3be4f167f32bbee)
1 // Test QR Factorization
2 #include <ceed.h>
3 
4 int main(int argc, char **argv) {
5   Ceed ceed;
6   CeedScalar qr[12] = {1, -1, 4, 1, 4, -2, 1, 4, 2, 1, -1, 0};
7   CeedScalar tau[3];
8 
9   CeedInit(argv[1], &ceed);
10 
11   CeedQRFactorization(qr, tau, 4, 3);
12   for (int i=0; i<12; i++) {
13     if (qr[i] <= 1E-14 && qr[i] >= -1E-14) qr[i] = 0;
14     fprintf(stdout, "%12.8f\n", qr[i]);
15   }
16   for (int i=0; i<3; i++) {
17     if (tau[i] <= 1E-14 && qr[i] >= -1E-14) tau[i] = 0;
18     fprintf(stdout, "%12.8f\n", tau[i]);
19   }
20   CeedDestroy(&ceed);
21   return 0;
22 }
23