152bfb9bbSJeremy L Thompson /// @file 252bfb9bbSJeremy L Thompson /// Test creation and destruction of a 2D Simplex non-tensor H1 basis 3*4fee36f0SJeremy L Thompson /// \test Test creation and destruction of a 2D Simplex non-tensor H1 basis 452bfb9bbSJeremy L Thompson #include "t320-basis.h" 552bfb9bbSJeremy L Thompson 62b730f8bSJeremy L Thompson #include <ceed.h> 72b730f8bSJeremy L Thompson 852bfb9bbSJeremy L Thompson int main(int argc, char **argv) { 952bfb9bbSJeremy L Thompson Ceed ceed; 10*4fee36f0SJeremy L Thompson const CeedInt p = 6, q = 4, dim = 2; 11*4fee36f0SJeremy L Thompson CeedBasis basis; 12*4fee36f0SJeremy L Thompson CeedScalar q_ref[dim * q], q_weight[q]; 13*4fee36f0SJeremy L Thompson CeedScalar interp[p * q], grad[dim * p * q]; 1452bfb9bbSJeremy L Thompson 1580a9ef05SNatalie Beams CeedInit(argv[1], &ceed); 1680a9ef05SNatalie Beams 1780a9ef05SNatalie Beams // Test skipped if using single precision 182b730f8bSJeremy L Thompson if (CEED_SCALAR_TYPE == CEED_SCALAR_FP32) return CeedError(ceed, CEED_ERROR_UNSUPPORTED, "Test not implemented in single precision"); 1980a9ef05SNatalie Beams 20*4fee36f0SJeremy L Thompson Build2DSimplex(q_ref, q_weight, interp, grad); 21*4fee36f0SJeremy L Thompson CeedBasisCreateH1(ceed, CEED_TOPOLOGY_TRIANGLE, 1, p, q, interp, grad, q_ref, q_weight, &basis); 22*4fee36f0SJeremy L Thompson CeedBasisView(basis, stdout); 2352bfb9bbSJeremy L Thompson 24*4fee36f0SJeremy L Thompson CeedBasisDestroy(&basis); 2552bfb9bbSJeremy L Thompson CeedDestroy(&ceed); 2652bfb9bbSJeremy L Thompson return 0; 2752bfb9bbSJeremy L Thompson } 28