| /libCEED/backends/avx/ |
| H A D | ceed-avx-tensor.c | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 39 //------------------------------------------------------------------------------ 41 //------------------------------------------------------------------------------ 42 …TensorContract_Avx_Blocked(CeedTensorContract contract, CeedInt A, CeedInt B, CeedInt C, CeedInt J, in CeedTensorContract_Avx_Blocked() argument 49 t_stride_1 = J; in CeedTensorContract_Avx_Blocked() 54 for (CeedInt j = 0; j < (J / JJ) * JJ; j += JJ) { in CeedTensorContract_Avx_Blocked() local 58 … for (CeedInt cc = 0; cc < CC / 4; cc++) vv[jj][cc] = loadu(&v[(a * J + j + jj) * C + c + cc * 4]); in CeedTensorContract_Avx_Blocked() 62 rtype tqv = set1(t[(j + jj) * t_stride_0 + b * t_stride_1]); in CeedTensorContract_Avx_Blocked() [all …]
|
| /libCEED/examples/fluids/qfunctions/ |
| H A D | utils_eigensolver_jacobi.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 29 ///@brief Find the off-diagonal index in row i whose absolute value is largest 33 /// @returns Index of absolute largest off-diagonal element in row i 36 for (CeedInt j = i + 2; j < N; j++) in MaxEntryRow() local 37 if (fabs(A[i * N + j]) > fabs(A[i * N + j_max])) j_max = j; in MaxEntryRow() 52 for (CeedInt i = 1; i < N - 1; i++) { in MaxEntry() 53 CeedInt j = max_idx_row[i]; in MaxEntry() local 54 if (fabs(A[i * N + j]) > max_entry) { in MaxEntry() [all …]
|
| H A D | eulervortex.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 9 /// Euler traveling vortex initial condition and operator for Navier-Stokes 38 // T = 1 - (gamma - 1) vortex_strength**2 exp(1 - r**2) / (8 gamma pi**2) 40 // rho = (T/S_vortex)^(1 / (gamma - 1)) 44 // ui = 1 + vortex_strength exp((1 - r**2)/2.) [yc - y, x - xc] / (2 pi) 45 // r = sqrt( (x - xc)**2 + (y - yc)**2 ) 49 // E = P / (gamma - 1) + rho (u u)/2 61 // This helper function provides support for the exact, time-dependent solution (currently not impl… [all …]
|
| H A D | shocktube.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 9 … tube initial condition and Euler equation operator for Navier-Stokes example using PETSc - modifi… 63 // E = P / (gamma - 1) + rho (u u)/2 74 // This helper function provides support for the exact, time-dependent solution (currently not impl… 80 const CeedScalar mid_point = context->mid_point; // Midpoint of the domain in Exact_ShockTube() 81 const CeedScalar P_high = context->P_high; // Driver section pressure in Exact_ShockTube() 82 const CeedScalar rho_high = context->rho_high; // Driver section density in Exact_ShockTube() 83 const CeedScalar P_low = context->P_low; // Driven section pressure in Exact_ShockTube() [all …]
|
| H A D | newtonian.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 9 /// Operator for Navier-Stokes example using PETSc 41 State s = StateFromPrimitive(&context->gas, context->reference); in ICsNewtonianIG() 42 StateToQ(&context->gas, s, q, state_var); in ICsNewtonianIG() 43 for (CeedInt j = 0; j < 5; j++) q0[j][i] = q[j]; in ICsNewtonianIG() local 87 Tau_diagPrim(context, s, dXdx, context->dt, Tau_d); in MassFunction_Newtonian() 91 for (CeedInt j = 0; j < 5; j++) { in MassFunction_Newtonian() local 93 …Grad_v[k][j][i] = wdetJ * (stab[j][0] * dXdx[k][0] + stab[j][1] * dXdx[k][1] + stab[j][2] * dXdx[k… in MassFunction_Newtonian() [all …]
|
| H A D | bc_slip.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 20 CeedScalar(*jac_data_sur) = newt_ctx->is_implicit ? out[1] : NULL; in Slip() 28 wdetJb *= newt_ctx->is_implicit ? -1. : 1.; in Slip() 32 for (CeedInt j = 0; j < 3; j++) vel_reflect[j] = s.Y.velocity[j] - 2. * norm[j] * vel_normal; in Slip() local 40 for (CeedInt j = 0; j < 5; j++) v[j][i] = -wdetJb * Flux[j]; in Slip() local 42 if (newt_ctx->is_implicit) { in Slip() 75 wdetJb *= newt_ctx->is_implicit ? -1. : 1.; in Slip_Jacobian() 79 for (int j = 0; j < 5; j++) dqi[j] = dq[j][i]; in Slip_Jacobian() local [all …]
|
| /libCEED/julia/LibCEED.jl/src/ |
| H A D | Misc.jl | 13 det(J, ::CeedDim{dim}) 17 @inline det(J, ::CeedDim{1}) = @inbounds J[1] argument 18 @inline det(J, ::CeedDim{2}) = @inbounds J[1]*J[4] - J[3]*J[2] argument 20 @inline det(J, ::CeedDim{3}) = @inbounds ( argument 21 J[1]*(J[5]*J[9] - J[6]*J[8]) - 22 J[2]*(J[4]*J[9] - J[6]*J[7]) + 23 J[3]*(J[4]*J[8] - J[5]*J[7]) 28 setvoigt(J::StaticArray{Tuple{D,D},T,2}) 29 setvoigt(J, ::CeedDim{dim}) 31 Given a symmetric matrix `J`, return a `SVector` that encodes `J` using the [Voigt [all …]
|
| /libCEED/backends/memcheck/ |
| H A D | ceed-memcheck-restriction.c | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 14 #include "ceed-memcheck.h" 16 //------------------------------------------------------------------------------ 18 //------------------------------------------------------------------------------ 43 //------------------------------------------------------------------------------ 45 //------------------------------------------------------------------------------ 62 CeedPragmaSIMD for (CeedSize j = 0; j < block_size; j++) { 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() [all …]
|
| /libCEED/examples/ceed/ |
| H A D | ex3-volume.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 15 /// libCEED Q-function for building quadrature data for a mass + diffusion operator 24 // At every quadrature point, compute w/det(J).adj(J).adj(J)^T and store in build_mass_diff() 26 switch (build_data->dim + 10 * build_data->space_dim) { in build_mass_diff() 28 const CeedScalar(*J)[1][CEED_Q_VLA] = (const CeedScalar(*)[1][CEED_Q_VLA])in[0]; in build_mass_diff() local 32 q_data[0][i] = w[i] * J[0][0][i]; in build_mass_diff() 35 q_data[1][i] = w[i] / J[0][0][i]; in build_mass_diff() 39 const CeedScalar(*J)[2][CEED_Q_VLA] = (const CeedScalar(*)[2][CEED_Q_VLA])in[0]; in build_mass_diff() local [all …]
|
| H A D | ex2-surface.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 15 /// libCEED Q-function for building quadrature data for a diffusion operator 24 // At every quadrature point, compute w/det(J).adj(J).adj(J)^T and store in build_diff() 26 switch (build_data->dim + 10 * build_data->space_dim) { in build_diff() 28 const CeedScalar(*J)[1][CEED_Q_VLA] = (const CeedScalar(*)[1][CEED_Q_VLA])in[0]; in build_diff() local 30 …CeedPragmaSIMD for (CeedInt i = 0; i < Q; i++) { q_data[0][i] = w[i] / J[0][0][i]; } // End of Qu… in build_diff() 33 const CeedScalar(*J)[2][CEED_Q_VLA] = (const CeedScalar(*)[2][CEED_Q_VLA])in[0]; in build_diff() local 36 // J: 0 2 q_data: 0 2 adj(J): J11 -J01 in build_diff() [all …]
|
| H A D | ex1-volume-f.h | 1 !----------------------------------------------------------------------- 2 subroutine build_mass(ctx, q, j, w, u3, u4, u5, u6, u7, u8, u9, u10, u11, u12, u13, u14, u15, u16,& 6 ! j is Jacobians with shape [dim, dim, Q] 8 real*8 j(1) 20 qdata(i) = j(i) * w(i) 25 qdata(i) = (j(0*q + i)*j(3*q + i) - j(1*q + i)*j(2*q + i)) * w(i) 30 qdata(i) = (j(0*q + i) * (j(4*q + i)*j(8*q + i) - j(5*q + i)*j(7*q + i)) -& 31 &j(1*q + i) * (j(3*q + i)*j(8*q + i) - j(5*q + i)*j(6*q + i)) +& 32 &j(2*q + i) * (j(3*q + i)*j(7*q + i) - j(4*q + i)*j(6*q + i))) * w(i) 38 !----------------------------------------------------------------------- [all …]
|
| H A D | ex1-volume.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 15 /// libCEED Q-function for building quadrature data for a mass operator 24 switch (build_data->dim + 10 * build_data->space_dim) { in build_mass() 26 const CeedScalar(*J)[1][CEED_Q_VLA] = (const CeedScalar(*)[1][CEED_Q_VLA])in[0]; in build_mass() local 29 …CeedPragmaSIMD for (CeedInt i = 0; i < Q; i++) { q_data[i] = J[0][0][i] * w[i]; } // End of Quadr… in build_mass() 32 const CeedScalar(*J)[2][CEED_Q_VLA] = (const CeedScalar(*)[2][CEED_Q_VLA])in[0]; in build_mass() local 36 q_data[i] = (J[0][0][i] * J[1][1][i] - J[0][1][i] * J[1][0][i]) * w[i]; in build_mass() 40 const CeedScalar(*J)[3][CEED_Q_VLA] = (const CeedScalar(*)[3][CEED_Q_VLA])in[0]; in build_mass() local [all …]
|
| H A D | ex1-volume-f-c.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 10 /// libCEED Q-function for building quadrature data for a mass operator 21 const CeedScalar(*J)[1][CEED_Q_VLA] = (const CeedScalar(*)[1][CEED_Q_VLA])in[0]; in build_mass() local 24 …CeedPragmaSIMD for (CeedInt i = 0; i < Q; i++) { q_data[i] = J[0][0][i] * w[i]; } // End of Quadr… in build_mass() 27 const CeedScalar(*J)[2][CEED_Q_VLA] = (const CeedScalar(*)[2][CEED_Q_VLA])in[0]; in build_mass() local 31 q_data[i] = (J[0][0][i] * J[1][1][i] - J[0][1][i] * J[1][0][i]) * w[i]; in build_mass() 35 const CeedScalar(*J)[3][CEED_Q_VLA] = (const CeedScalar(*)[3][CEED_Q_VLA])in[0]; in build_mass() local 40 …(J[0][0][i] * (J[1][1][i] * J[2][2][i] - J[1][2][i] * J[2][1][i]) - J[0][1][i] * (J[1][0][i] * J[2… in build_mass() [all …]
|
| /libCEED/examples/python/qfunctions/ |
| H A D | ex2-surface.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 10 #include "ex-common.h" 12 /// libCEED Q-function for building quadrature data for a diffusion operator 20 // At every quadrature point, compute w/det(J).adj(J).adj(J)^T and store in build_diff() 22 switch (build_data->dim + 10 * build_data->space_dim) { in build_diff() 24 const CeedScalar(*J)[1][CEED_Q_VLA] = (const CeedScalar(*)[1][CEED_Q_VLA])in[0]; in build_diff() local 26 …CeedPragmaSIMD for (CeedInt i = 0; i < Q; i++) { q_data[0][i] = w[i] / J[0][0][i]; } // End of Qu… in build_diff() 29 const CeedScalar(*J)[2][CEED_Q_VLA] = (const CeedScalar(*)[2][CEED_Q_VLA])in[0]; in build_diff() local [all …]
|
| H A D | ex3-volume.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 10 #include "ex-common.h" 12 /// libCEED Q-function for building quadrature data for a mass + diffusion operator 20 // At every quadrature point, compute w/det(J).adj(J).adj(J)^T and store in build_mass_diff() 22 switch (build_data->dim + 10 * build_data->space_dim) { in build_mass_diff() 24 const CeedScalar(*J)[1][CEED_Q_VLA] = (const CeedScalar(*)[1][CEED_Q_VLA])in[0]; in build_mass_diff() local 28 q_data[0][i] = w[i] * J[0][0][i]; in build_mass_diff() 31 q_data[1][i] = w[i] / J[0][0][i]; in build_mass_diff() [all …]
|
| H A D | ex1-volume.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 10 #include "ex-common.h" 12 /// libCEED Q-function for building quadrature data for a mass operator 20 switch (build_data->dim + 10 * build_data->space_dim) { in build_mass() 22 const CeedScalar(*J)[1][CEED_Q_VLA] = (const CeedScalar(*)[1][CEED_Q_VLA])in[0]; in build_mass() local 25 …CeedPragmaSIMD for (CeedInt i = 0; i < Q; i++) { q_data[i] = J[0][0][i] * w[i]; } // End of Quadr… in build_mass() 28 const CeedScalar(*J)[2][CEED_Q_VLA] = (const CeedScalar(*)[2][CEED_Q_VLA])in[0]; in build_mass() local 32 q_data[i] = (J[0][0][i] * J[1][1][i] - J[0][1][i] * J[1][0][i]) * w[i]; in build_mass() [all …]
|
| /libCEED/backends/ref/ |
| H A D | ceed-ref-restriction.c | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 14 #include "ceed-ref.h" 16 //------------------------------------------------------------------------------ 18 //------------------------------------------------------------------------------ 33 CeedPragmaSIMD for (CeedSize j = 0; j < block_size; j++) { 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() 48 CeedPragmaSIMD for (CeedSize j = 0; j < block_size; j++) { in CeedElemRestrictionApplyStridedNoTranspose_Ref_Core() local [all …]
|
| /libCEED/examples/petsc/qfunctions/swarm/ |
| H A D | swarmmass.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 11 const CeedScalar(*J)[3][CEED_Q_VLA] = (const CeedScalar(*)[3][CEED_Q_VLA])in[0]; in SetupMass() local 17 const CeedScalar B11 = J[1][1][i] * J[2][2][i] - J[1][2][i] * J[2][1][i]; in SetupMass() 18 const CeedScalar B12 = J[0][2][i] * J[2][1][i] - J[0][1][i] * J[2][2][i]; in SetupMass() 19 const CeedScalar B13 = J[0][1][i] * J[1][2][i] - J[0][2][i] * J[1][1][i]; in SetupMass() 21 q_data[i] = w[i] * (J[0][0][i] * B11 + J[1][0][i] * B12 + J[2][0][i] * B13); in SetupMass() 34 for (CeedInt j = 0; j < num_comp; j++) v[j][i] = rho[i] * u[j][i]; in Mass() local
|
| /libCEED/examples/mfem/ |
| H A D | bp1.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 15 /// libCEED Q-function for building quadrature data for a mass operator 20 const CeedScalar *J = in[0], *w = in[1]; in f_build_mass() local 23 switch (bc->dim + 10 * bc->space_dim) { in f_build_mass() 26 CeedPragmaSIMD for (CeedInt i = 0; i < Q; i++) { qdata[i] = J[i] * w[i]; } in f_build_mass() 33 qdata[i] = (J[i + Q * 0] * J[i + Q * 3] - J[i + Q * 1] * J[i + Q * 2]) * w[i]; in f_build_mass() 42 qdata[i] = (J[i + Q * 0] * (J[i + Q * 4] * J[i + Q * 8] - J[i + Q * 5] * J[i + Q * 7]) - in f_build_mass() 43 J[i + Q * 1] * (J[i + Q * 3] * J[i + Q * 8] - J[i + Q * 5] * J[i + Q * 6]) + in f_build_mass() [all …]
|
| /libCEED/include/ceed/jit-source/gallery/ |
| H A D | ceed-poisson3dbuild.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 14 …// At every quadrature point, compute w/det(J).adj(J).adj(J)^T and store the symmetric part of the… in Poisson3DBuild() 17 const CeedScalar(*J)[3][CEED_Q_VLA] = (const CeedScalar(*)[3][CEED_Q_VLA])in[0], *w = in[1]; in Poisson3DBuild() local 27 for (CeedInt j = 0; j < dim; j++) 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() 34 // Compute quadrature weight / det(J) in Poisson3DBuild() [all …]
|
| H A D | ceed-mass3dbuild.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 16 const CeedScalar(*J)[3][CEED_Q_VLA] = (const CeedScalar(*)[3][CEED_Q_VLA])in[0], *w = in[1]; in Mass3DBuild() local 22 …q_data[i] = (J[0][0][i] * (J[1][1][i] * J[2][2][i] - J[1][2][i] * J[2][1][i]) - J[0][1][i] * (J[1]… in Mass3DBuild() 23 J[0][2][i] * (J[1][0][i] * J[2][1][i] - J[1][1][i] * J[2][0][i])) * in Mass3DBuild()
|
| /libCEED/examples/petsc/qfunctions/area/ |
| H A D | areasphere.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 16 // ----------------------------------------------------------------------------- 20 // Reference (parent) 2D coordinates: X \in [-1, 1]^2 22 // Global 3D physical coordinates given by the mesh: xx \in [-R, R]^3 with R radius of the sphere 24 // Local 3D physical coordinates on the 2D manifold: x \in [-l, l]^3 with l half edge of the cube i… 44 // ----------------------------------------------------------------------------- 47 const CeedScalar *X = in[0], *J = in[1], *w = in[2]; in SetupMassGeoSphere() local 61 {J[i + Q * 0], J[i + Q * 3]}, in SetupMassGeoSphere() [all …]
|
| /libCEED/examples/petsc/qfunctions/bps/ |
| H A D | bp3sphere.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 16 // ----------------------------------------------------------------------------- 20 // Reference (parent) 2D coordinates: X \in [-1, 1]^2 22 // Global 3D physical coordinates given by the mesh: xx \in [-R, R]^3 with R radius of the sphere 24 // Local 3D physical coordinates on the 2D manifold: x \in [-l, l]^3 with l half edge of the cube i… 48 // dX_i/dx_j [2 * 3] = (dx_i/dX_j)+ = (dxdX^T dxdX)^(-1) dxdX 52 // g^{ij} = dX_i/dx_k dX_j/dx_k = (dxdX^T dxdX)^{-1} 58 // ----------------------------------------------------------------------------- [all …]
|
| H A D | bp3.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 16 // ----------------------------------------------------------------------------- 37 // ----------------------------------------------------------------------------- 40 const CeedScalar(*J)[3][CEED_Q_VLA] = (const CeedScalar(*)[3][CEED_Q_VLA])in[1]; in SetupDiffGeo() local 50 for (CeedInt j = 0; j < dim; j++) { 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() [all …]
|
| H A D | bp1.h | 1 // Copyright (c) 2017-2026, Lawrence Livermore National Security, LLC and other CEED contributors. 2 // All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 4 // SPDX-License-Identifier: BSD-2-Clause 16 // ----------------------------------------------------------------------------- 25 // ----------------------------------------------------------------------------- 28 const CeedScalar(*J)[3][CEED_Q_VLA] = (const CeedScalar(*)[3][CEED_Q_VLA])in[1]; in SetupMassGeo() local 38 for (CeedInt j = 0; j < dim; j++) { in SetupMassGeo() local 41 // A[k][j] = J[k+1][j+1]*J[k+2][j+2] - J[k+1][j+2]*J[k+2][j+1] in SetupMassGeo() 42 A[k][j] = J[(k + 1) % dim][(j + 1) % dim][i] * J[(k + 2) % dim][(j + 2) % dim][i] - in SetupMassGeo() 43 J[(k + 1) % dim][(j + 2) % dim][i] * J[(k + 2) % dim][(j + 1) % dim][i]; in SetupMassGeo() [all …]
|