Lines Matching refs:b

34 destroy(b::Basis) = C.CeedBasisDestroy(b.ref) # COV_EXCL_LINE
35 Base.getindex(b::Basis) = b.ref[]
36 Base.show(io::IO, ::MIME"text/plain", b::Basis) = ceed_show(io, b, C.CeedBasisView)
290 …apply!(b::Basis, nelem, tmode::TransposeMode, emode::EvalMode, u::AbstractCeedVector, v::AbstractC…
308 b::Basis,
315 C.CeedBasisApply(b[], nelem, tmode, emode, u[], v[])
319 apply(b::Basis, u::AbstractVector; nelem=1, tmode=NOTRANSPOSE, emode=EVAL_INTERP)
321 Performs the same function as the above-defined [`apply!`](@ref apply!(b::Basis, nelem,
327 function apply(b::Basis, u::AbstractVector; nelem=1, tmode=NOTRANSPOSE, emode=EVAL_INTERP)
329 ccall((:CeedBasisGetCeed, C.libceed), Cint, (C.CeedBasis, Ptr{C.Ceed}), b[], ceed_ref)
335 C.CeedBasisGetNumQuadratureComponents(b[], emode, qcomp)
336 len_v = (tmode == TRANSPOSE) ? getnumnodes(b) : qcomp[]*getnumqpts(b)
340 apply!(b, nelem, tmode, emode, u_vec, v_vec)
345 getdimension(b::Basis)
349 function getdimension(b::Basis)
351 C.CeedBasisGetDimension(b[], dim)
365 gettopology(b::Basis)
369 function gettopology(b::Basis)
371 C.CeedBasisGetTopology(b[], topo)
376 getnumcomponents(b::Basis)
380 function getnumcomponents(b::Basis)
382 C.CeedBasisGetNumComponents(b[], ncomp)
387 getnumnodes(b::Basis)
391 function getnumnodes(b::Basis)
393 C.CeedBasisGetNumNodes(b[], nnodes)
398 getnumnodes1d(b::Basis)
402 function getnumnodes1d(b::Basis)
404 C.CeedBasisGetNumNodes1D(b[], nnodes1d)
409 getnumqpts(b::Basis)
413 function getnumqpts(b::Basis)
415 C.CeedBasisGetNumQuadraturePoints(b[], nqpts)
420 getnumqpts1d(b::Basis)
424 function getnumqpts1d(b::Basis)
426 C.CeedBasisGetNumQuadraturePoints1D(b[], nqpts1d)
431 getqref(b::Basis)
436 function getqref(b::Basis)
438 C.CeedBasisIsTensor(b[], istensor)
440 C.CeedBasisGetQRef(b[], ref)
442 istensor[] ? unsafe_wrap(Array, ref[], getnumqpts1d(b)) :
443 unsafe_wrap(Array, ref[], (getnumqpts(b), getdimension(b)))',
448 getqref(b::Basis)
453 function getqweights(b::Basis)
455 C.CeedBasisIsTensor(b[], istensor)
457 C.CeedBasisGetQWeights(b[], ref)
458 copy(unsafe_wrap(Array, ref[], istensor[] ? getnumqpts1d(b) : getnumqpts(b)))
462 getinterp(b::Basis)
465 `(getnumqpts(b), getnumnodes(b))` for a given $H^1$ basis or `(getdimension(b),
466 getnumqpts(b), getnumnodes(b))` for a given vector $H(div)$ or $H(curl)$ basis.
468 function getinterp(b::Basis)
470 C.CeedBasisGetInterp(b[], ref)
471 q = getnumqpts(b)
472 p = getnumnodes(b)
474 C.CeedBasisGetNumQuadratureComponents(b[], C.CEED_EVAL_INTERP, qcomp)
483 getinterp1d(b::Basis)
485 Get the 1D interpolation matrix of the given [`Basis`](@ref). `b` must be a tensor-product
486 basis, otherwise this function will fail. Returns a matrix of size `(getnumqpts1d(b),
487 getnumnodes1d(b))`.
489 function getinterp1d(b::Basis)
491 C.CeedBasisGetInterp1D(b[], ref)
492 q = getnumqpts1d(b)
493 p = getnumnodes1d(b)
498 getgrad(b::Basis)
501 `(getdimension(b), getnumqpts(b), getnumnodes(b))`.
503 function getgrad(b::Basis)
505 C.CeedBasisGetGrad(b[], ref)
506 dim = getdimension(b)
507 q = getnumqpts(b)
508 p = getnumnodes(b)
513 getgrad1d(b::Basis)
516 `(getnumqpts(b), getnumnodes(b))`.
518 function getgrad1d(b::Basis)
520 C.CeedBasisGetGrad1D(b[], ref)
521 q = getnumqpts1d(b)
522 p = getnumnodes1d(b)
527 getdiv(b::Basis)
530 `(getnumqpts(b), getnumnodes(b))`.
532 function getdiv(b::Basis)
534 C.CeedBasisGetDiv(b[], ref)
535 q = getnumqpts(b)
536 p = getnumnodes(b)
541 getcurl(b::Basis)
544 `(curlcomp, getnumqpts(b), getnumnodes(b))`, `curlcomp = 1 if getdimension(b) < 3 else
545 getdimension(b)`.
547 function getcurl(b::Basis)
549 C.CeedBasisGetCurl(b[], ref)
550 q = getnumqpts(b)
551 p = getnumnodes(b)
553 C.CeedBasisGetNumQuadratureComponents(b[], C.CEED_EVAL_CURL, qcomp)