| /libCEED/tests/ |
| H A D | t305-basis.c | 14 CeedScalar M[p * p], K[p * p], X[p * p], lambda[p]; in main() local 28 for (int k = 0; k < q; k++) { in main() local 29 sum_m += interpolation[p * k + i] * quadrature_weights[k] * interpolation[p * k + j]; in main() 30 sum_k += gradient[p * k + i] * quadrature_weights[k] * gradient[p * k + j]; in main() 33 K[p * i + j] = sum_k; in main() 37 CeedSimultaneousDiagonalization(ceed, K, M, X, lambda, p); in main() 44 for (int k = 0; k < p; k++) sum += M[p * i + k] * X[p * k + j]; in main() local 51 for (int k = 0; k < p; k++) sum += X[p * k + i] * work_array[p * k + j]; in main() local 65 // Check X^T K X = Lambda in main() 69 for (int k = 0; k < p; k++) sum += K[p * i + k] * X[p * k + j]; in main() local [all …]
|
| H A D | t583-operator.c | 54 for (CeedInt k = 0; k < p; k++) { in main() local 55 ind_x[p * (p * i + k) + j] = offset + k * (n_x * 2 + 1) + j; in main() 56 orients_u[p * (p * i + k) + j] = false; in main() 57 curl_orients_u[3 * (p * (p * i + k) + j) + 0] = 0; in main() 58 curl_orients_u[3 * (p * (p * i + k) + j) + 1] = 1; in main() 59 curl_orients_u[3 * (p * (p * i + k) + j) + 2] = 0; in main() 118 for (CeedInt k = 0; k < num_dofs * num_dofs; ++k) { in main() local 119 assembled_values[k] = 0.0; in main() 120 assembled_values_oriented[k] = 0.0; in main() 121 assembled_values_curl_oriented[k] = 0.0; in main() [all …]
|
| H A D | t304-basis.c | 27 …for (int k = 0; k < p; k++) sum += interpolation[p * k + i] * quadrature_weights[k] * interpolatio… in main() local 39 for (int k = 0; k < p; k++) sum += Q[p * i + k] * lambda[k] * Q[p * j + k]; in main() local
|
| H A D | t580-operator.h | 17 for (CeedInt k = 0; k < 2; k++) { in AlphaMatTransposeMatMult2x2() local 18 C[j][k] = 0; in AlphaMatTransposeMatMult2x2() 20 C[j][k] += alpha * A[m][j] * B[m][k]; in AlphaMatTransposeMatMult2x2() 51 for (CeedInt k = 0; k < 2; k++) { in mass() local 52 v[k][i] = 0; in mass() 53 for (CeedInt m = 0; m < 2; m++) v[k][i] += JT_J[k][m] * u[m][i] * w[i] / det_J; in mass()
|
| H A D | t220-elemrestriction.c | 48 CeedInt k = j + p * i; in main() local 50 if (y_oriented_array[k] * CeedIntPow(-1, i % 2) != 10 + (k + 1) / 2) { in main() 52 …rror in oriented restricted array y[%" CeedInt_FMT "] = %f\n", k, (CeedScalar)y_oriented_array[k]); in main() 55 if (y_unsigned_array[k] != 10 + (k + 1) / 2) { in main() 57 …rror in unsigned restricted array y[%" CeedInt_FMT "] = %f\n", k, (CeedScalar)y_unsigned_array[k]); in main() 60 if (y_unsigned_array[k] != y_unsigned_copy_array[k]) { in main() 62 …ror in copy restricted array y[%" CeedInt_FMT "] = %f\n", k, (CeedScalar)y_unsigned_copy_array[k]); in main()
|
| H A D | t537-operator.c | 51 for (CeedInt k = 0; k < p; k++) ind_x[p * (p * i + k) + j] = offset + k * (n_x * 2 + 1) + j; in main() local 124 …for (int k = 0; k < num_comp; k++) assembled_true[i * num_comp * num_comp + k * num_comp + j] += v… in main() local 125 …for (CeedInt k = 0; k < num_comp * num_dofs; k++) assembled_full_true[k][i + num_dofs * j] += v_ar… in main() local 126 …for (CeedInt k = 0; k < num_comp; k++) assembled_full_true[i * num_comp + k][i * num_comp + j] = v… in main() local
|
| H A D | t218-elemrestriction.c | 76 CeedInt k = j + elem_size * i; in main() local 78 if (j == 2 && 10 + 3 * i + j + 1 != -y_array[k]) { in main() 80 … printf("Error in restricted array y[%" CeedInt_FMT "] = %f\n", k, (CeedScalar)y_array[k]); in main() 82 } else if (j == 3 && 10 + 3 * i + j - 1 != -y_array[k]) { in main() 84 … printf("Error in restricted array y[%" CeedInt_FMT "] = %f\n", k, (CeedScalar)y_array[k]); in main() 87 if (j == 2 && 10 + 3 * i + j + 1 != y_unsigned_array[k]) { in main() 89 …rror in unsigned restricted array y[%" CeedInt_FMT "] = %f\n", k, (CeedScalar)y_unsigned_array[k]); in main() 91 } else if (j == 3 && 10 + 3 * i + j - 1 != y_unsigned_array[k]) { in main() 93 …rror in unsigned restricted array y[%" CeedInt_FMT "] = %f\n", k, (CeedScalar)y_unsigned_array[k]); in main() 97 if (10 + 3 * i + j != y_array[k] || 10 + 3 * i + j != y_unsigned_array[k]) { in main() [all …]
|
| H A D | t560-operator.c | 52 for (CeedInt k = 0; k < p; k++) ind_x[p * (p * i + k) + j] = offset + k * (n_x * 2 + 1) + j; in main() local 96 for (CeedInt k = 0; k < num_dofs * num_dofs; ++k) { in main() local 97 assembled_values[k] = 0.0; in main() 98 assembled_true[k] = 0.0; in main() 107 for (CeedInt k = 0; k < num_entries; ++k) { in main() local 108 assembled_values[rows[k] * num_dofs + cols[k]] += assembled_array[k]; in main()
|
| H A D | t566-operator.c | 53 for (CeedInt k = 0; k < p; k++) ind_x[p * (p * i + k) + j] = offset + k * p + j; in main() local 98 for (CeedInt k = 0; k < num_comp * num_comp * num_dofs * num_dofs; k++) { in main() local 99 assembled_values[k] = 0.0; in main() 100 assembled_true[k] = 0.0; in main() 109 …for (CeedInt k = 0; k < num_entries; k++) assembled_values[rows[k] * num_comp * num_dofs + cols[k]… in main() local
|
| H A D | t561-operator.c | 52 for (CeedInt k = 0; k < p; k++) ind_x[p * (p * i + k) + j] = offset + k * (n_x * 2 + 1) + j; in main() local 99 for (CeedInt k = 0; k < num_dofs * num_dofs; ++k) { in main() local 100 assembled_values[k] = 0.0; in main() 101 assembled_true[k] = 0.0; in main() 110 …for (CeedInt k = 0; k < num_entries; ++k) assembled_values[rows[k] * num_dofs + cols[k]] += assemb… in main() local
|
| /libCEED/include/ceed/jit-source/cuda/ |
| H A D | cuda-ref-basis-tensor-at-points.h | 54 for (CeedInt k = i; k < BASIS_Q_1D * BASIS_P_1D; k += blockDim.x) { in InterpAtPoints() local 55 s_chebyshev_interp_1d[k] = chebyshev_interp_1d[k]; in InterpAtPoints() 84 for (CeedInt k = i; k < writeLen; k += blockDim.x) { in InterpAtPoints() local 85 const CeedInt c = k % post; in InterpAtPoints() 86 const CeedInt j = (k / post) % Q; in InterpAtPoints() 87 const CeedInt a = k / (post * Q); in InterpAtPoints() 91 out[k] = v_k; in InterpAtPoints() 137 for (CeedInt k = i; k < BASIS_Q_1D * BASIS_P_1D; k += blockDim.x) { in InterpTransposeAtPoints() local 138 s_chebyshev_interp_1d[k] = chebyshev_interp_1d[k]; in InterpTransposeAtPoints() 158 for (CeedInt k = i; k < BASIS_NUM_QPTS; k += blockDim.x) { in InterpTransposeAtPoints() local [all …]
|
| H A D | cuda-ref-basis-tensor.h | 27 for (CeedInt k = i; k < BASIS_Q_1D * BASIS_P_1D; k += blockDim.x) { in Interp() local 28 s_interp_1d[k] = interp_1d[k]; in Interp() 58 for (CeedInt k = i; k < writeLen; k += blockDim.x) { in Interp() local 59 const CeedInt c = k % post; in Interp() 60 const CeedInt j = (k / post) % Q; in Interp() 61 const CeedInt a = k / (post * Q); in Interp() 65 if (is_transpose && d == BASIS_DIM - 1) out[k] += v_k; in Interp() 66 else out[k] = v_k; in Interp() 86 for (CeedInt k = i; k < BASIS_Q_1D * BASIS_P_1D; k += blockDim.x) { in Grad() local 87 s_interp_1d[k] = interp_1d[k]; in Grad() [all …]
|
| /libCEED/include/ceed/jit-source/hip/ |
| H A D | hip-ref-basis-tensor-at-points.h | 54 for (CeedInt k = i; k < BASIS_Q_1D * BASIS_P_1D; k += blockDim.x) { in InterpAtPoints() local 55 s_chebyshev_interp_1d[k] = chebyshev_interp_1d[k]; in InterpAtPoints() 84 for (CeedInt k = i; k < writeLen; k += blockDim.x) { in InterpAtPoints() local 85 const CeedInt c = k % post; in InterpAtPoints() 86 const CeedInt j = (k / post) % Q; in InterpAtPoints() 87 const CeedInt a = k / (post * Q); in InterpAtPoints() 91 out[k] = v_k; in InterpAtPoints() 137 for (CeedInt k = i; k < BASIS_Q_1D * BASIS_P_1D; k += blockDim.x) { in InterpTransposeAtPoints() local 138 s_chebyshev_interp_1d[k] = chebyshev_interp_1d[k]; in InterpTransposeAtPoints() 158 for (CeedInt k = i; k < BASIS_NUM_QPTS; k += blockDim.x) { in InterpTransposeAtPoints() local [all …]
|
| H A D | hip-ref-basis-tensor.h | 27 for (CeedInt k = i; k < BASIS_Q_1D * BASIS_P_1D; k += blockDim.x) { in Interp() local 28 s_interp_1d[k] = interp_1d[k]; in Interp() 58 for (CeedInt k = i; k < writeLen; k += blockDim.x) { in Interp() local 59 const CeedInt c = k % post; in Interp() 60 const CeedInt j = (k / post) % Q; in Interp() 61 const CeedInt a = k / (post * Q); in Interp() 65 if (is_transpose && d == BASIS_DIM - 1) out[k] += v_k; in Interp() 66 else out[k] = v_k; in Interp() 86 for (CeedInt k = i; k < BASIS_Q_1D * BASIS_P_1D; k += blockDim.x) { in Grad() local 87 s_interp_1d[k] = interp_1d[k]; in Grad() [all …]
|
| /libCEED/examples/fluids/qfunctions/ |
| H A D | eulervortex.h | 188 for (CeedInt k = 0; k < 3; k++) { // Columns of each Jacobian matrix in ConvectiveFluxJacobian_Euler() local 189 dF[i][0][k + 1] = ((i == k) ? 1. : 0.); in ConvectiveFluxJacobian_Euler() 190 …dF[i][j + 1][k + 1] = ((j == k) ? u[i] : 0.) + ((i == k) ? u[j] : 0.) - ((i == j) ? u[k] : 0.) * (… in ConvectiveFluxJacobian_Euler() 191 …dF[i][4][k + 1] = ((i == k) ? (E * gamma / rho - (gamma - 1.) * u_sq / 2.) : 0.) - (gamma - 1.… in ConvectiveFluxJacobian_Euler() 301 for (CeedInt k = 0; k < 3; k++) { in Euler() local 302 drhodx[j] += drho[k] * dXdx[k][j]; in Euler() 303 dEdx[j] += dE[k] * dXdx[k][j]; in Euler() 305 dUdx[j][k] += dU[j][l] * dXdx[l][k]; in Euler() 306 dXdxdXdxT[j][k] += dXdx[j][l] * dXdx[k][l]; // dXdx_j,k * dXdx_k,j in Euler() 318 for (CeedInt k = 0; k < 3; k++) dv[k][j][i] = 0.; in Euler() local [all …]
|
| H A D | shocktube.h | 120 for (CeedInt k = 0; k < 3; k++) { // Columns of each Jacobian matrix in ConvectiveFluxJacobian_Euler() local 121 dF[i][0][k + 1] = ((i == k) ? 1. : 0.); in ConvectiveFluxJacobian_Euler() 122 …dF[i][j + 1][k + 1] = ((j == k) ? u[i] : 0.) + ((i == k) ? u[j] : 0.) - ((i == j) ? u[k] : 0.) * (… in ConvectiveFluxJacobian_Euler() 123 …dF[i][4][k + 1] = ((i == k) ? (E * gamma / rho - (gamma - 1.) * u_sq / 2.) : 0.) - (gamma - 1.… in ConvectiveFluxJacobian_Euler() 257 for (CeedInt k = 0; k < 3; k++) { in EulerShockTube() local 258 du[j][k] = (dU[j][k] - drho[k] * u[j]) / rho; in EulerShockTube() 259 drhodx[j] += drho[k] * dXdx[k][j]; in EulerShockTube() 260 dEdx[j] += dE[k] * dXdx[k][j]; in EulerShockTube() 262 dUdx[j][k] += dU[j][l] * dXdx[l][k]; in EulerShockTube() 263 dXdxdXdxT[j][k] += dXdx[j][l] * dXdx[k][l]; // dXdx_j,k * dXdx_k,j in EulerShockTube() [all …]
|
| /libCEED/examples/petsc/qfunctions/bps/ |
| H A D | bp24.h | 29 const CeedScalar k[3] = {1., 2., 3.}; in SetupMassDiffRhs3() local 33 …sin(M_PI * (c[0] + k[0] * x[i + Q * 0])) * sin(M_PI * (c[1] + k[1] * x[i + Q * 1])) * sin(M_PI * (… in SetupMassDiffRhs3() 40 …rhs[i + 0 * Q] = w[i + Q * 0] * (M_PI * M_PI * (k[0] * k[0] + k[1] * k[1] + k[2] * k[2]) + 1.0) * … in SetupMassDiffRhs3() 80 for (int k = 0; k < 3; k++) { // k = component in MassDiff3() local 82 v[i + k * Q] = q_data[i + 0 * Q] * u[i + k * Q]; in MassDiff3() 85 …vg[i + (k + j * 3) * Q] = (uJ[k][0] * dXdxdXdx_T[0][j] + uJ[k][1] * dXdxdXdx_T[1][j] + uJ[k][2] * … in MassDiff3()
|
| H A D | bp4.h | 29 const CeedScalar k[3] = {1., 2., 3.}; in SetupDiffRhs3() local 33 …sin(M_PI * (c[0] + k[0] * x[i + Q * 0])) * sin(M_PI * (c[1] + k[1] * x[i + Q * 1])) * sin(M_PI * (… in SetupDiffRhs3() 40 …rhs[i + 0 * Q] = w[i + Q * 0] * M_PI * M_PI * (k[0] * k[0] + k[1] * k[1] + k[2] * k[2]) * true_sol… in SetupDiffRhs3() 78 for (int k = 0; k < 3; k++) { // k = component in Diff3() local 80 …vg[i + (k + j * 3) * Q] = (uJ[k][0] * dXdxdXdx_T[0][j] + uJ[k][1] * dXdxdXdx_T[1][j] + uJ[k][2] * … in Diff3()
|
| H A D | bp3.h | 51 for (CeedInt k = 0; k < dim; k++) { in SetupDiffGeo() local 53 // A[k][j] = J[k+1][j+1]*J[k+2][j+2] - J[k+1][j+2]*J[k+2][j+1] in SetupDiffGeo() 54 A[k][j] = J[(k + 1) % dim][(j + 1) % dim][i] * J[(k + 2) % dim][(j + 2) % dim][i] - in SetupDiffGeo() 55 J[(k + 1) % dim][(j + 2) % dim][i] * J[(k + 2) % dim][(j + 1) % dim][i]; in SetupDiffGeo() 86 const CeedScalar k[3] = {1., 2., 3.}; in SetupDiffRhs() local 88 …rue_soln[i] = sin(M_PI * (c[0] + k[0] * x[i + Q * 0])) * sin(M_PI * (c[1] + k[1] * x[i + Q * 1])) … in SetupDiffRhs() 90 rhs[i] = w[i + Q * 0] * M_PI * M_PI * (k[0] * k[0] + k[1] * k[1] + k[2] * k[2]) * true_soln[i]; in SetupDiffRhs()
|
| /libCEED/backends/ref/ |
| H A D | ceed-ref-restriction.c | 31 for (CeedSize k = 0; k < num_comp; k++) { in CeedElemRestrictionApplyStridedNoTranspose_Ref_Core() local 34 vv[e * elem_size * num_comp + (k * elem_size + n) * block_size + j - v_offset] = in CeedElemRestrictionApplyStridedNoTranspose_Ref_Core() 35 … uu[n + k * elem_size + CeedIntMin(e + j, num_elem - 1) * elem_size * (CeedSize)num_comp]; in CeedElemRestrictionApplyStridedNoTranspose_Ref_Core() 46 for (CeedSize k = 0; k < num_comp; k++) { in CeedElemRestrictionApplyStridedNoTranspose_Ref_Core() local 49 vv[e * elem_size * num_comp + (k * elem_size + n) * block_size + j - v_offset] = in CeedElemRestrictionApplyStridedNoTranspose_Ref_Core() 50 … uu[n * strides[0] + k * strides[1] + CeedIntMin(e + j, num_elem - 1) * (CeedSize)strides[2]]; in CeedElemRestrictionApplyStridedNoTranspose_Ref_Core() 68 for (CeedSize k = 0; k < num_comp; k++) { in CeedElemRestrictionApplyOffsetNoTranspose_Ref_Core() local 70 …vv[elem_size * (k * block_size + e * num_comp) + i - v_offset] = uu[impl->offsets[i + e * elem_siz… in CeedElemRestrictionApplyOffsetNoTranspose_Ref_Core() 86 for (CeedSize k = 0; k < num_comp; k++) { in CeedElemRestrictionApplyOrientedNoTranspose_Ref_Core() local 88 vv[elem_size * (k * block_size + e * num_comp) + i - v_offset] = in CeedElemRestrictionApplyOrientedNoTranspose_Ref_Core() [all …]
|
| /libCEED/examples/solids/qfunctions/ |
| H A D | finite-strain-mooney-rivlin.h | 201 for (CeedInt k = 0; k < 3; k++) { // Derivative in ElasFSResidual_MR() local 202 grad_u[j][k][i] = 0; in ElasFSResidual_MR() 203 for (CeedInt m = 0; m < 3; m++) grad_u[j][k][i] += dXdx[m][k] * du[j][m]; in ElasFSResidual_MR() 235 for (CeedInt k = 0; k < 3; k++) { in ElasFSResidual_MR() local 236 P[j][k] = 0; in ElasFSResidual_MR() 237 for (CeedInt m = 0; m < 3; m++) P[j][k] += F[j][m] * S[m][k]; in ElasFSResidual_MR() 243 for (CeedInt k = 0; k < 3; k++) { // Derivative in ElasFSResidual_MR() local 244 dvdX[k][j][i] = 0; in ElasFSResidual_MR() 245 for (CeedInt m = 0; m < 3; m++) dvdX[k][j][i] += dXdx[k][m] * P[j][m] * wdetJ; in ElasFSResidual_MR() 294 for (CeedInt k = 0; k < 3; k++) { // Derivative in ElasFSJacobian_MR() local [all …]
|
| H A D | finite-strain-neo-hookean.h | 199 for (CeedInt k = 0; k < 3; k++) { // Derivative in ElasFSResidual_NH() local 200 grad_u[j][k][i] = 0; in ElasFSResidual_NH() 201 for (CeedInt m = 0; m < 3; m++) grad_u[j][k][i] += dXdx[m][k] * du[j][m]; in ElasFSResidual_NH() 232 for (CeedInt k = 0; k < 3; k++) { in ElasFSResidual_NH() local 233 P[j][k] = 0; in ElasFSResidual_NH() 234 for (CeedInt m = 0; m < 3; m++) P[j][k] += F[j][m] * S[m][k]; in ElasFSResidual_NH() 240 for (CeedInt k = 0; k < 3; k++) { // Derivative in ElasFSResidual_NH() local 241 dvdX[k][j][i] = 0; in ElasFSResidual_NH() 242 for (CeedInt m = 0; m < 3; m++) dvdX[k][j][i] += dXdx[k][m] * P[j][m] * wdetJ; in ElasFSResidual_NH() 295 for (CeedInt k = 0; k < 3; k++) { // Derivative in ElasFSJacobian_NH() local [all …]
|
| /libCEED/backends/memcheck/ |
| H A D | ceed-memcheck-restriction.c | 60 for (CeedSize k = 0; k < num_comp; k++) { in CeedElemRestrictionApplyStridedNoTranspose_Memcheck_Core() local 63 vv[e * elem_size * num_comp + (k * elem_size + n) * block_size + j - v_offset] = in CeedElemRestrictionApplyStridedNoTranspose_Memcheck_Core() 64 … uu[n * strides[0] + k * strides[1] + CeedIntMin(e + j, num_elem - 1) * (CeedSize)strides[2]]; in CeedElemRestrictionApplyStridedNoTranspose_Memcheck_Core() 81 for (CeedSize k = 0; k < num_comp; k++) { in CeedElemRestrictionApplyOffsetNoTranspose_Memcheck_Core() local 83 …vv[elem_size * (k * block_size + e * num_comp) + i - v_offset] = uu[impl->offsets[i + e * elem_siz… in CeedElemRestrictionApplyOffsetNoTranspose_Memcheck_Core() 99 for (CeedSize k = 0; k < num_comp; k++) { in CeedElemRestrictionApplyOrientedNoTranspose_Memcheck_Core() local 101 vv[elem_size * (k * block_size + e * num_comp) + i - v_offset] = in CeedElemRestrictionApplyOrientedNoTranspose_Memcheck_Core() 102 …uu[impl->offsets[i + e * elem_size] + k * comp_stride] * (impl->orients[i + e * elem_size] ? -1.0 … in CeedElemRestrictionApplyOrientedNoTranspose_Memcheck_Core() 118 for (CeedSize k = 0; k < num_comp; k++) { in CeedElemRestrictionApplyCurlOrientedNoTranspose_Memcheck_Core() local 122 vv[e * elem_size * num_comp + (k * elem_size + n) * block_size + j - v_offset] = in CeedElemRestrictionApplyCurlOrientedNoTranspose_Memcheck_Core() [all …]
|
| /libCEED/backends/magma/ |
| H A D | ceed-magma-gemm-nontensor.cpp | 24 …ns_t trans_A, magma_trans_t trans_B, magma_int_t m, magma_int_t n, magma_int_t k, CeedScalar alpha, in magmablas_gemm() argument 28 …magmablas_sgemm(trans_A, trans_B, m, n, k, (float)alpha, (const float *)d_A, ldda, (const float *)… in magmablas_gemm() 31 …magmablas_dgemm(trans_A, trans_B, m, n, k, (double)alpha, (const double *)d_A, ldda, (const double… in magmablas_gemm() 38 …_strided(magma_trans_t trans_A, magma_trans_t trans_B, magma_int_t m, magma_int_t n, magma_int_t k, in magmablas_gemm_batched_strided() argument 43 …magmablas_sgemm_batched_strided(trans_A, trans_B, m, n, k, (float)alpha, (const float *)d_A, ldda,… in magmablas_gemm_batched_strided() 46 …magmablas_dgemm_batched_strided(trans_A, trans_B, m, n, k, (double)alpha, (const double *)d_A, ldd… in magmablas_gemm_batched_strided() 53 …ns_t trans_A, magma_trans_t trans_B, magma_int_t m, magma_int_t n, magma_int_t k, CeedScalar alpha, in devblas_gemm() argument 57 …magma_sgemm(trans_A, trans_B, m, n, k, (float)alpha, (const float *)d_A, ldda, (const float *)d_B,… in devblas_gemm() 59 …magma_dgemm(trans_A, trans_B, m, n, k, (double)alpha, (const double *)d_A, ldda, (const double *)d… in devblas_gemm() 66 …_strided(magma_trans_t trans_A, magma_trans_t trans_B, magma_int_t m, magma_int_t n, magma_int_t k, in devblas_gemm_batched_strided() argument [all …]
|
| /libCEED/include/ceed/jit-source/gallery/ |
| H A D | ceed-poisson3dbuild.h | 28 for (CeedInt k = 0; k < dim; k++) in Poisson3DBuild() local 30 // A[k][j] = J[k+1][j+1]*J[k+2][j+2] - J[k+2][j+1]*J[k+1][j+2] in Poisson3DBuild() 31 A[k][j] = J[(k + 1) % dim][(j + 1) % dim][i] * J[(k + 2) % dim][(j + 2) % dim][i] - in Poisson3DBuild() 32 J[(k + 2) % dim][(j + 1) % dim][i] * J[(k + 1) % dim][(j + 2) % dim][i]; in Poisson3DBuild()
|