1 /// @file 2 /// Test creation, setting, reading, restoring, and destroying of a vector 3 /// \test Test creation, setting, reading, restoring, and destroying of a vector 4 #include <ceed.h> 5 6 int main(int argc, char **argv) { 7 Ceed ceed; 8 CeedVector x; 9 CeedInt len = 10; 10 CeedScalar array[len]; 11 12 CeedInit(argv[1], &ceed); 13 14 CeedVectorCreate(ceed, len, &x); 15 for (CeedInt i = 0; i < len; i++) array[i] = len + i; 16 CeedVectorSetArray(x, CEED_MEM_HOST, CEED_USE_POINTER, array); 17 18 { 19 const CeedScalar *read_array; 20 21 CeedVectorGetArrayRead(x, CEED_MEM_HOST, &read_array); 22 for (CeedInt i = 0; i < len; i++) { 23 if (read_array[i] != len + i) printf("Error reading array[%" CeedInt_FMT "] = %f\n", i, (CeedScalar)read_array[i]); 24 } 25 CeedVectorRestoreArrayRead(x, &read_array); 26 } 27 28 CeedVectorDestroy(&x); 29 CeedDestroy(&ceed); 30 return 0; 31 } 32