19560d06aSjeremylt /// @file 2ceac335aSJeremy L Thompson /// Test creation, copying, and destruction of a H1Lagrange basis 3ceac335aSJeremy L Thompson /// \test Test creation, copying, and destruction of a H1Lagrange basis 49560d06aSjeremylt #include <ceed.h> 5*49aac155SJeremy L Thompson #include <stdio.h> 69560d06aSjeremylt 79560d06aSjeremylt int main(int argc, char **argv) { 89560d06aSjeremylt Ceed ceed; 94fee36f0SJeremy L Thompson CeedBasis basis, basis_2; 104fee36f0SJeremy L Thompson CeedInt p = 4; 119560d06aSjeremylt 129560d06aSjeremylt CeedInit(argv[1], &ceed); 139560d06aSjeremylt 144fee36f0SJeremy L Thompson CeedBasisCreateTensorH1Lagrange(ceed, 1, 1, p, 4, CEED_GAUSS_LOBATTO, &basis); 154fee36f0SJeremy L Thompson CeedBasisCreateTensorH1Lagrange(ceed, 1, 1, p + 1, 4, CEED_GAUSS_LOBATTO, &basis_2); 169560d06aSjeremylt 174fee36f0SJeremy L Thompson CeedBasisReferenceCopy(basis, &basis_2); // This destroys the previous basis_2 184fee36f0SJeremy L Thompson CeedBasisDestroy(&basis); 199560d06aSjeremylt 204fee36f0SJeremy L Thompson CeedInt p_2; 214fee36f0SJeremy L Thompson CeedBasisGetNumNodes1D(basis_2, &p_2); 224fee36f0SJeremy L Thompson if (p != p_2) printf("Error copying CeedBasis reference\n"); 239560d06aSjeremylt 244fee36f0SJeremy L Thompson CeedBasisDestroy(&basis_2); 259560d06aSjeremylt CeedDestroy(&ceed); 269560d06aSjeremylt return 0; 279560d06aSjeremylt } 28