Lines Matching refs:PetscCall
21 PetscCall(PetscInitialize(&argc, &argv, 0, help)); in main()
22 PetscCall(PetscRandomCreate(PETSC_COMM_SELF, &rnd)); in main()
27 PetscCall(PetscMalloc1(size * size, &a)); in main()
28 PetscCall(PetscMalloc1(size * size, &b)); in main()
31 PetscCall(PetscRandomGetValue(rnd, &a[i + j * size])); in main()
35 PetscCall(MatCreate(PETSC_COMM_SELF, &A)); in main()
36 PetscCall(MatSetSizes(A, size, size, size, size)); in main()
37 PetscCall(MatSetType(A, MATSEQDENSE)); in main()
38 PetscCall(MatSeqDenseSetPreallocation(A, a)); in main()
39 PetscCall(MatAssemblyBegin(A, MAT_FINAL_ASSEMBLY)); in main()
40 PetscCall(MatAssemblyEnd(A, MAT_FINAL_ASSEMBLY)); in main()
42 PetscCall(PetscMalloc1(size, &x)); in main()
44 PetscCall(VecCreateSeqWithArray(PETSC_COMM_SELF, 1, size, x, &X)); in main()
45 PetscCall(VecAssemblyBegin(X)); in main()
46 PetscCall(VecAssemblyEnd(X)); in main()
48 PetscCall(PetscMalloc1(size, &y)); in main()
49 PetscCall(VecCreateSeqWithArray(PETSC_COMM_SELF, 1, size, y, &Y)); in main()
50 PetscCall(VecAssemblyBegin(Y)); in main()
51 PetscCall(VecAssemblyEnd(Y)); in main()
53 PetscCall(PetscMalloc1(size, &z)); in main()
54 PetscCall(VecCreateSeqWithArray(PETSC_COMM_SELF, 1, size, z, &Z)); in main()
55 PetscCall(VecAssemblyBegin(Z)); in main()
56 PetscCall(VecAssemblyEnd(Z)); in main()
61 PetscCall(MatCreate(PETSC_COMM_SELF, &A11)); in main()
62 PetscCall(MatSetSizes(A11, size1, size1, size1, size1)); in main()
63 PetscCall(MatSetType(A11, MATSEQDENSE)); in main()
64 PetscCall(MatSeqDenseSetPreallocation(A11, b)); in main()
65 PetscCall(MatDenseSetLDA(A11, size)); in main()
66 PetscCall(MatAssemblyBegin(A11, MAT_FINAL_ASSEMBLY)); in main()
67 PetscCall(MatAssemblyEnd(A11, MAT_FINAL_ASSEMBLY)); in main()
69 PetscCall(MatCreate(PETSC_COMM_SELF, &A12)); in main()
70 PetscCall(MatSetSizes(A12, size1, size2, size1, size2)); in main()
71 PetscCall(MatSetType(A12, MATSEQDENSE)); in main()
72 PetscCall(MatSeqDenseSetPreallocation(A12, b + size1 * size)); in main()
73 PetscCall(MatDenseSetLDA(A12, size)); in main()
74 PetscCall(MatAssemblyBegin(A12, MAT_FINAL_ASSEMBLY)); in main()
75 PetscCall(MatAssemblyEnd(A12, MAT_FINAL_ASSEMBLY)); in main()
77 PetscCall(MatCreate(PETSC_COMM_SELF, &A21)); in main()
78 PetscCall(MatSetSizes(A21, size2, size1, size2, size1)); in main()
79 PetscCall(MatSetType(A21, MATSEQDENSE)); in main()
80 PetscCall(MatSeqDenseSetPreallocation(A21, b + size1)); in main()
81 PetscCall(MatDenseSetLDA(A21, size)); in main()
82 PetscCall(MatAssemblyBegin(A21, MAT_FINAL_ASSEMBLY)); in main()
83 PetscCall(MatAssemblyEnd(A21, MAT_FINAL_ASSEMBLY)); in main()
85 PetscCall(MatCreate(PETSC_COMM_SELF, &A22)); in main()
86 PetscCall(MatSetSizes(A22, size2, size2, size2, size2)); in main()
87 PetscCall(MatSetType(A22, MATSEQDENSE)); in main()
88 PetscCall(MatSeqDenseSetPreallocation(A22, b + size1 * size + size1)); in main()
89 PetscCall(MatDenseSetLDA(A22, size)); in main()
90 PetscCall(MatAssemblyBegin(A22, MAT_FINAL_ASSEMBLY)); in main()
91 PetscCall(MatAssemblyEnd(A22, MAT_FINAL_ASSEMBLY)); in main()
93 PetscCall(VecCreateSeqWithArray(PETSC_COMM_SELF, 1, size1, x, &X1)); in main()
94 PetscCall(VecCreateSeqWithArray(PETSC_COMM_SELF, 1, size2, x + size1, &X2)); in main()
95 PetscCall(VecCreateSeqWithArray(PETSC_COMM_SELF, 1, size1, z, &Z1)); in main()
96 PetscCall(VecCreateSeqWithArray(PETSC_COMM_SELF, 1, size2, z + size1, &Z2)); in main()
102 PetscCall(MatMult(A, X, Y)); in main()
103 PetscCall(MatMult(A11, X1, Z1)); in main()
104 PetscCall(MatMultAdd(A12, X2, Z1, Z1)); in main()
105 PetscCall(MatMult(A22, X2, Z2)); in main()
106 PetscCall(MatMultAdd(A21, X1, Z2, Z2)); in main()
107 PetscCall(VecAXPY(Z, -1.0, Y)); in main()
108 PetscCall(VecNorm(Z, NORM_2, &nrm)); in main()
109 …if (nrm > 100.0 * PETSC_MACHINE_EPSILON) PetscCall(PetscPrintf(PETSC_COMM_WORLD, "Test1; error nor… in main()
114 PetscCall(PetscRandomGetValue(rnd, &v)); in main()
117 PetscCall(MatSetValues(A, 1, &i, 1, &j, &v, INSERT_VALUES)); in main()
119 PetscCall(MatSetValues(A12, 1, &i, 1, &j, &v, INSERT_VALUES)); in main()
120 PetscCall(PetscRandomGetValue(rnd, &v)); in main()
122 PetscCall(MatSetValues(A, 1, &i, 1, &j, &v, INSERT_VALUES)); in main()
124 PetscCall(MatSetValues(A22, 1, &i, 1, &j, &v, INSERT_VALUES)); in main()
125 PetscCall(MatAssemblyBegin(A, MAT_FINAL_ASSEMBLY)); in main()
126 PetscCall(MatAssemblyEnd(A, MAT_FINAL_ASSEMBLY)); in main()
127 PetscCall(MatAssemblyBegin(A12, MAT_FINAL_ASSEMBLY)); in main()
128 PetscCall(MatAssemblyEnd(A12, MAT_FINAL_ASSEMBLY)); in main()
129 PetscCall(MatAssemblyBegin(A22, MAT_FINAL_ASSEMBLY)); in main()
130 PetscCall(MatAssemblyEnd(A22, MAT_FINAL_ASSEMBLY)); in main()
132 PetscCall(MatMult(A, X, Y)); in main()
133 PetscCall(MatMult(A11, X1, Z1)); in main()
134 PetscCall(MatMultAdd(A12, X2, Z1, Z1)); in main()
135 PetscCall(MatMult(A22, X2, Z2)); in main()
136 PetscCall(MatMultAdd(A21, X1, Z2, Z2)); in main()
137 PetscCall(VecAXPY(Z, -1.0, Y)); in main()
138 PetscCall(VecNorm(Z, NORM_2, &nrm)); in main()
139 …if (nrm > 100.0 * PETSC_MACHINE_EPSILON) PetscCall(PetscPrintf(PETSC_COMM_WORLD, "Test2; error nor… in main()
144 PetscCall(MatMultTranspose(A, X, Y)); in main()
145 PetscCall(MatMultTranspose(A11, X1, Z1)); in main()
146 PetscCall(MatMultTransposeAdd(A21, X2, Z1, Z1)); in main()
147 PetscCall(MatMultTranspose(A22, X2, Z2)); in main()
148 PetscCall(MatMultTransposeAdd(A12, X1, Z2, Z2)); in main()
149 PetscCall(VecAXPY(Z, -1.0, Y)); in main()
150 PetscCall(VecNorm(Z, NORM_2, &nrm)); in main()
151 …if (nrm > 100.0 * PETSC_MACHINE_EPSILON) PetscCall(PetscPrintf(PETSC_COMM_WORLD, "Test3; error nor… in main()
152 PetscCall(PetscFree(a)); in main()
153 PetscCall(PetscFree(b)); in main()
154 PetscCall(PetscFree(x)); in main()
155 PetscCall(PetscFree(y)); in main()
156 PetscCall(PetscFree(z)); in main()
157 PetscCall(MatDestroy(&A)); in main()
158 PetscCall(MatDestroy(&A11)); in main()
159 PetscCall(MatDestroy(&A12)); in main()
160 PetscCall(MatDestroy(&A21)); in main()
161 PetscCall(MatDestroy(&A22)); in main()
163 PetscCall(VecDestroy(&X)); in main()
164 PetscCall(VecDestroy(&Y)); in main()
165 PetscCall(VecDestroy(&Z)); in main()
167 PetscCall(VecDestroy(&X1)); in main()
168 PetscCall(VecDestroy(&X2)); in main()
169 PetscCall(VecDestroy(&Z1)); in main()
170 PetscCall(VecDestroy(&Z2)); in main()
171 PetscCall(PetscRandomDestroy(&rnd)); in main()
172 PetscCall(PetscFinalize()); in main()