| /libCEED/julia/LibCEED.jl/src/ |
| H A D | CeedVector.jl | 37 destroy(v::CeedVector) = C.CeedVectorDestroy(v.ref) # COV_EXCL_LINE 38 Base.getindex(v::CeedVector) = v.ref[] 40 Base.summary(io::IO, v::CeedVector) = print(io, length(v), "-element CeedVector") 41 function Base.show(io::IO, ::MIME"text/plain", v::CeedVector) 42 summary(io, v) 44 witharray_read(v, MEM_HOST) do arr 48 Base.show(io::IO, v::CeedVector) = witharray_read(a -> show(io, a), v, MEM_HOST) 50 function Base.length(::Type{T}, v::CeedVector) where {T} 52 C.CeedVectorGetLength(v[], len) 58 Base.axes(v::CeedVector) = (Base.OneTo(length(v)),) [all …]
|
| /libCEED/examples/ |
| H A D | bps.md | 14 …eak form on a Hilbert space $V^p \subset H^1$, i.e., find $u \in V^p$ such that for all $v \in V^p$ 17 \langle v,u \rangle = \langle v,f \rangle , 20 …v,u\rangle$ and $\langle v,f\rangle$ express the continuous bilinear and linear forms, respectivel… 23 \begin{aligned} \langle v,u \rangle &:= \int_{\Omega} \, v \, u \, dV ,\\ \langle v,f \rangle &:= \… 31 v(\bm x) &= \sum_{i=1}^n v_i \, \phi_i(\bm x) . 35 The coefficients $\{u_j\}$ and $\{v_i\}$ are the nodal values of $u$ and $v$, respectively. 39 \langle v,u \rangle = \bm v^T M \bm u , \qquad \langle v,f\rangle = \bm v^T \bm b \,. 54 …ned via the following variational formulation, i.e., find $u \in V^p$ such that for all $v \in V^p$ 57 a(v,u) = \langle v,f \rangle , \, 60 where now $a (v,u)$ expresses the continuous bilinear form defined on $V^p$ for sufficiently regula… [all …]
|
| /libCEED/examples/fluids/qfunctions/ |
| H A D | turb_spanstats.h | 16 CeedScalar(*v)[CEED_Q_VLA] = (CeedScalar(*)[CEED_Q_VLA])out[0]; in ChildStatsCollection() local 28 v[TURB_MEAN_DENSITY][i] = wdetJ * s.U.density; in ChildStatsCollection() 29 v[TURB_MEAN_PRESSURE][i] = wdetJ * s.Y.pressure; in ChildStatsCollection() 30 v[TURB_MEAN_PRESSURE_SQUARED][i] = wdetJ * Square(s.Y.pressure); in ChildStatsCollection() 31 v[TURB_MEAN_PRESSURE_VELOCITY_X][i] = wdetJ * s.Y.pressure * s.Y.velocity[0]; in ChildStatsCollection() 32 v[TURB_MEAN_PRESSURE_VELOCITY_Y][i] = wdetJ * s.Y.pressure * s.Y.velocity[1]; in ChildStatsCollection() 33 v[TURB_MEAN_PRESSURE_VELOCITY_Z][i] = wdetJ * s.Y.pressure * s.Y.velocity[2]; in ChildStatsCollection() 34 v[TURB_MEAN_DENSITY_TEMPERATURE][i] = wdetJ * s.U.density * s.Y.temperature; in ChildStatsCollection() 35 …v[TURB_MEAN_DENSITY_TEMPERATURE_FLUX_X][i] = wdetJ * s.U.density * s.Y.temperature * s.Y.velocity[… in ChildStatsCollection() 36 …v[TURB_MEAN_DENSITY_TEMPERATURE_FLUX_Y][i] = wdetJ * s.U.density * s.Y.temperature * s.Y.velocity[… in ChildStatsCollection() [all …]
|
| H A D | utils.h | 47 CEED_QFUNCTION_HELPER CeedScalar DotN(const CeedScalar *u, const CeedScalar *v, const CeedInt N) { in DotN() argument 49 CeedPragmaSIMD for (CeedInt i = 0; i < N; i++) output += u[i] * v[i]; in DotN() 54 …dScalar Dot3(const CeedScalar *u, const CeedScalar *v) { return u[0] * v[0] + u[1] * v[1] + u[2] *… in Dot3() argument 57 CEED_QFUNCTION_HELPER void Cross3(const CeedScalar u[3], const CeedScalar v[3], CeedScalar w[3]) { in Cross3() 58 w[0] = (u[1] * v[2]) - (u[2] * v[1]); in Cross3() 59 w[1] = (u[2] * v[0]) - (u[0] * v[2]); in Cross3() 60 w[2] = (u[0] * v[1]) - (u[1] * v[0]); in Cross3() 64 CEED_QFUNCTION_HELPER void Curl3(const CeedScalar gradient[3][3], CeedScalar v[3]) { in Curl3() 65 v[0] = gradient[2][1] - gradient[1][2]; in Curl3() 66 v[1] = gradient[0][2] - gradient[2][0]; in Curl3() [all …]
|
| /libCEED/backends/magma/tuning/ |
| H A D | tuning.cpp | 52 CeedVector u, v; in main() local 68 CeedVectorCreate(ceed, Q * N, &v); in main() 72 CeedVectorSetValue(v, 0.0); in main() 73 ierr = CeedBasisApply(basis, N, CEED_NOTRANSPOSE, CEED_EVAL_INTERP, u, v); in main() 77 CeedBasisApply(basis, N, CEED_NOTRANSPOSE, CEED_EVAL_INTERP, u, v); in main() 84 CeedVectorSetValue(v, 0.0); in main() 85 ierr = CeedBasisApply(basis, N, CEED_TRANSPOSE, CEED_EVAL_INTERP, v, u); in main() 89 CeedBasisApply(basis, N, CEED_TRANSPOSE, CEED_EVAL_INTERP, v, u); in main() 95 CeedVectorDestroy(&v); in main() 101 CeedVectorCreate(ceed, dim * Q * N, &v); in main() [all …]
|
| /libCEED/tests/ |
| H A D | t332-basis.c | 12 CeedVector u, v; in main() local 35 CeedVectorCreate(ceed, num_qpts, &v); in main() 36 CeedVectorSetValue(v, 0.0); in main() 38 CeedBasisApply(basis, 1, CEED_NOTRANSPOSE, CEED_EVAL_DIV, u, v); in main() 43 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 47 CeedVectorRestoreArrayRead(v, &v_array); in main() 50 CeedVectorSetValue(v, 1.0); in main() 53 CeedBasisApply(basis, 1, CEED_TRANSPOSE, CEED_EVAL_DIV, v, u); in main() 67 CeedVectorDestroy(&v); in main()
|
| H A D | t331-basis.c | 12 CeedVector u, v; in main() local 35 CeedVectorCreate(ceed, dim * num_qpts, &v); in main() 36 CeedVectorSetValue(v, 0.0); in main() 38 CeedBasisApply(basis, 1, CEED_NOTRANSPOSE, CEED_EVAL_INTERP, u, v); in main() 43 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 47 CeedVectorRestoreArrayRead(v, &v_array); in main() 50 CeedVectorSetValue(v, 1.0); in main() 53 CeedBasisApply(basis, 1, CEED_TRANSPOSE, CEED_EVAL_INTERP, v, u); in main() 69 CeedVectorDestroy(&v); in main()
|
| H A D | t363-basis.c | 12 CeedVector u, v; in main() local 23 CeedVectorCreate(ceed, p, &v); in main() 24 CeedVectorSetValue(v, 0); in main() 29 CeedBasisApply(basis, 1, CEED_TRANSPOSE, CEED_EVAL_GRAD, u, v); in main() 30 CeedBasisApplyAdd(basis, 1, CEED_TRANSPOSE, CEED_EVAL_GRAD, u, v); in main() 42 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 46 CeedVectorRestoreArrayRead(v, &v_array); in main() 50 CeedVectorDestroy(&v); in main()
|
| H A D | t411-qfunction.c | 11 CeedVector u, v; in main() local 21 CeedVectorCreate(ceed, q, &v); in main() 22 CeedVectorSetValue(v, 0); in main() 27 out[0] = v; in main() 35 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 39 CeedVectorRestoreArrayRead(v, &v_array); in main() 43 CeedVectorDestroy(&v); in main()
|
| H A D | t360-basis.c | 14 CeedVector u, u_q, v, v_q, w_q; in main() local 19 CeedVectorCreate(ceed, p_dim, &v); in main() 21 CeedVectorSetValue(v, 0.0); in main() 32 CeedBasisApply(basis, 1, CEED_TRANSPOSE, CEED_EVAL_INTERP, v_q, v); in main() 34 CeedBasisApplyAdd(basis, 1, CEED_TRANSPOSE, CEED_EVAL_INTERP, v_q, v); in main() 41 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 44 CeedVectorRestoreArrayRead(v, &v_array); in main() 48 CeedVectorDestroy(&v); in main()
|
| H A D | t412-qfunction.c | 11 CeedVector u, v; in main() local 21 CeedVectorCreate(ceed, q * size, &v); in main() 22 CeedVectorSetValue(v, 0); in main() 27 out[0] = v; in main() 35 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 39 CeedVectorRestoreArrayRead(v, &v_array); in main() 43 CeedVectorDestroy(&v); in main()
|
| H A D | t362-basis.c | 13 CeedVector u, v, u_q, v_q, w_q; in main() local 22 CeedVectorCreate(ceed, p, &v); in main() 24 CeedVectorSetValue(v, 0.0); in main() 36 CeedBasisApply(basis, 1, CEED_TRANSPOSE, CEED_EVAL_INTERP, v_q, v); in main() 38 CeedBasisApplyAdd(basis, 1, CEED_TRANSPOSE, CEED_EVAL_INTERP, v_q, v); in main() 45 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 48 CeedVectorRestoreArrayRead(v, &v_array); in main() 52 CeedVectorDestroy(&v); in main()
|
| H A D | t409-qfunction.c | 13 CeedVector u, v; in main() local 24 CeedVectorCreate(ceed, q, &v); in main() 25 CeedVectorSetValue(v, 0.0); in main() 37 out[0] = v; in main() 44 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 52 CeedVectorRestoreArrayRead(v, &v_array); in main() 80 out[0] = v; in main() 86 CeedVectorDestroy(&v); in main()
|
| H A D | t342-basis.c | 11 CeedVector u, v; in main() local 48 CeedVectorCreate(ceed, q, &v); in main() 49 CeedVectorSetValue(v, 0.0); in main() 51 CeedBasisApply(basis, 1, CEED_NOTRANSPOSE, CEED_EVAL_CURL, u, v); in main() 56 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 60 CeedVectorRestoreArrayRead(v, &v_array); in main() 63 CeedVectorSetValue(v, 1.0); in main() 66 CeedBasisApply(basis, 1, CEED_TRANSPOSE, CEED_EVAL_CURL, v, u); in main() 80 CeedVectorDestroy(&v); in main()
|
| H A D | t341-basis.c | 11 CeedVector u, v; in main() local 48 CeedVectorCreate(ceed, dim * q, &v); in main() 49 CeedVectorSetValue(v, 0.0); in main() 51 CeedBasisApply(basis, 1, CEED_NOTRANSPOSE, CEED_EVAL_INTERP, u, v); in main() 56 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 60 CeedVectorRestoreArrayRead(v, &v_array); in main() 63 CeedVectorSetValue(v, 1.0); in main() 66 CeedBasisApply(basis, 1, CEED_TRANSPOSE, CEED_EVAL_INTERP, v, u); in main() 80 CeedVectorDestroy(&v); in main()
|
| H A D | t324-basis.c | 12 CeedVector u, v; in main() local 23 CeedVectorCreate(ceed, p, &v); in main() 24 CeedVectorSetValue(v, 0); in main() 29 CeedBasisApply(basis, 1, CEED_TRANSPOSE, CEED_EVAL_GRAD, u, v); in main() 41 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 45 CeedVectorRestoreArrayRead(v, &v_array); in main() 49 CeedVectorDestroy(&v); in main()
|
| H A D | t411-qfunction-f.f90 | 7 integer u,v variable 29 call ceedvectorcreate(ceed,q,v,err) 30 call ceedvectorsetvalue(v,0.d0,err) 35 &v,ceed_null,ceed_null,ceed_null,ceed_null,ceed_null,& 39 call ceedvectorgetarrayread(v,ceed_mem_host,vv,voffset,err) 47 call ceedvectorrestorearrayread(v,vv,voffset,err) 50 call ceedvectordestroy(v,err)
|
| H A D | t310-basis.c | 11 CeedVector u, v; in main() local 17 CeedVectorCreate(ceed, len, &v); in main() 28 CeedBasisApply(basis, 1, CEED_NOTRANSPOSE, CEED_EVAL_INTERP, u, v); in main() 33 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 37 CeedVectorRestoreArrayRead(v, &v_array); in main() 42 CeedVectorDestroy(&v); in main()
|
| H A D | t412-qfunction-f.f90 | 7 integer u,v variable 30 call ceedvectorcreate(ceed,q*s,v,err) 31 call ceedvectorsetvalue(v,0.d0,err) 36 &v,ceed_null,ceed_null,ceed_null,ceed_null,ceed_null,& 40 call ceedvectorgetarrayread(v,ceed_mem_host,vv,voffset,err) 48 call ceedvectorrestorearrayread(v,vv,voffset,err) 51 call ceedvectordestroy(v,err)
|
| H A D | t321-basis.c | 16 CeedVector u, v; in main() local 34 CeedVectorCreate(ceed, q, &v); in main() 35 CeedVectorSetValue(v, 0); in main() 40 CeedBasisApply(basis, 1, CEED_NOTRANSPOSE, CEED_EVAL_INTERP, u, v); in main() 46 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 51 CeedVectorRestoreArrayRead(v, &v_array); in main() 55 CeedVectorDestroy(&v); in main()
|
| H A D | t505-operator.c | 17 CeedVector q_data, x, u, v; in main() local 31 CeedVectorCreate(ceed, num_nodes_u, &v); in main() 81 CeedVectorSetValue(v, 0.0); in main() 82 CeedOperatorApplyAdd(op_mass, u, v, CEED_REQUEST_IMMEDIATE); in main() 89 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 91 CeedVectorRestoreArrayRead(v, &v_array); in main() 96 CeedVectorSetValue(v, 1.0); in main() 97 CeedOperatorApplyAdd(op_mass, u, v, CEED_REQUEST_IMMEDIATE); in main() 104 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 106 CeedVectorRestoreArrayRead(v, &v_array); in main() [all …]
|
| H A D | t509-operator.c | 14 CeedVector u, v; in main() local 21 CeedVectorCreate(ceed, num_nodes, &v); in main() 36 CeedOperatorApply(op_identity, u, v, CEED_REQUEST_IMMEDIATE); in main() 42 CeedVectorGetArrayRead(v, CEED_MEM_HOST, &v_array); in main() 46 CeedVectorRestoreArrayRead(v, &v_array); in main() 50 CeedVectorDestroy(&v); in main()
|
| /libCEED/julia/LibCEED.jl/docs/src/ |
| H A D | CeedVector.md | 6 Base.setindex!(v::CeedVector, v2::CeedScalar) 7 Base.setindex!(v::CeedVector, v2::AbstractArray) 8 Base.Vector(v::CeedVector) 9 LinearAlgebra.norm(v::CeedVector, n::NormType) 10 LinearAlgebra.norm(v::CeedVector, p::Real)
|
| /libCEED/backends/avx/ |
| H A D | ceed-avx-tensor.c | 44 … const CeedScalar *restrict u, CeedScalar *restrict v, const CeedInt JJ, const CeedInt CC) { in CeedTensorContract_Avx_Blocked() argument 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() 69 … for (CeedInt cc = 0; cc < CC / 4; cc++) storeu(&v[(a * J + j + jj) * C + c + cc * 4], vv[jj][cc]); in CeedTensorContract_Avx_Blocked() 81 … 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() 93 … for (CeedInt cc = 0; cc < CC / 4; cc++) storeu(&v[(a * J + j + jj) * C + c + cc * 4], vv[jj][cc]); in CeedTensorContract_Avx_Blocked() 106 … const CeedScalar *restrict u, CeedScalar *restrict v, const CeedInt JJ, const CeedInt CC) { in CeedTensorContract_Avx_Remainder() argument 123 for (CeedInt jj = 0; jj < JJ; jj++) vv[jj] = loadu(&v[(a * J + j + jj) * C + c]); in CeedTensorContract_Avx_Remainder() 135 for (CeedInt jj = 0; jj < JJ; jj++) storeu(&v[(a * J + j + jj) * C + c], vv[jj]); in CeedTensorContract_Avx_Remainder() 143 … for (CeedInt c = (C / CC) * CC; c < C; c++) v[(a * J + j) * C + c] += tq * u[(a * B + b) * C + c]; in CeedTensorContract_Avx_Remainder() 154 … CeedTransposeMode t_mode, const CeedInt add, const CeedScalar *restrict u, CeedScalar *restrict v, in CeedTensorContract_Avx_Single() argument [all …]
|
| /libCEED/examples/ceed/ |
| H A D | index.md | 24 \sum_e \int_{\Omega_e} v(x) 1 \, dV 27 with $v(x) \in \mathcal{V}_p = \{ v \in H^{1}(\Omega_e) \,|\, v \in P_p(\bm{I}), e=1,\ldots,N_e \}$… 51 let us multiply by a test function $v$ and integrate by parts to obtain 54 \int_\Omega \nabla v \cdot \nabla u \, dV - \int_{\partial \Omega} v \nabla u \cdot \hat{\bm n}\, d… 57 …uch that $\nabla u \cdot \hat{\bm n} = 1$, the boundary integrand is $v 1 \equiv v$. Hence, simila… 60 \int_\Omega \nabla v \cdot \nabla u \, dV \approx \sum_e \int_{\partial \Omega_e} v(x) 1 \, dS . 81 \sum_e \int_{\Omega_e}\left( v(x) 1 + \nabla v(x) \cdot 0 \right) \, dV 84 with $v(x) \in \mathcal{V}_p = \{ v \in H^{1}(\Omega_e) \,|\, v \in P_p(\bm{I}), e=1,\ldots,N_e \}$…
|