| /libCEED/julia/LibCEED.jl/src/generated/ |
| H A D | libceed_bindings.jl | 125 …ccall((:CeedRegistryGetList, libceed), Cint, (Ptr{Csize_t}, Ptr{Ptr{Ptr{Cchar}}}, Ptr{Ptr{CeedInt}… 129 ccall((:CeedInit, libceed), Cint, (Ptr{Cchar}, Ptr{Ceed}), resource, ceed) 133 ccall((:CeedSetStream, libceed), Cint, (Ceed, Ptr{Cvoid}), ceed, handle) 137 ccall((:CeedReferenceCopy, libceed), Cint, (Ceed, Ptr{Ceed}), ceed, ceed_copy) 141 ccall((:CeedGetResource, libceed), Cint, (Ceed, Ptr{Ptr{Cchar}}), ceed, resource) 145 ccall((:CeedIsDeterministic, libceed), Cint, (Ceed, Ptr{Bool}), ceed, is_deterministic) 149 ccall((:CeedAddJitSourceRoot, libceed), Cint, (Ceed, Ptr{Cchar}), ceed, jit_source_root) 153 ccall((:CeedView, libceed), Cint, (Ceed, Ptr{Libc.FILE}), ceed, stream) 157 ccall((:CeedDestroy, libceed), Cint, (Ptr{Ceed},), ceed) 164 ccall((:CeedSetErrorHandler, libceed), Cint, (Ceed, CeedErrorHandler), ceed, eh) [all …]
|
| /libCEED/rust/libceed/ |
| H A D | README.md | 1 # libceed: efficient, extensible discretization 3 …ons](https://github.com/CEED/libCEED/actions/workflows/rust-test-with-style.yml/badge.svg)](https:… 4 [](https://docs.rs/libceed) 6 This crate provides an interface to [libCEED](https://libceed.org), which is a performance-portable… 8 See the [libCEED user manual](https://libceed.org) for details on [interface concepts](https://libc… 10  14 To call libCEED from a Rust package, the following `Cargo.toml` can be used. 17 libceed = "0.12.0" 20 For a development version of the libCEED Rust bindings, use the following `Cargo.toml`. 23 libceed = { git = "https://github.com/CEED/libCEED", branch = "main" } [all …]
|
| H A D | Cargo.toml | 7 name = "libceed" 12 repository = "https://github.com/CEED/libCEED" 13 documentation = "https://docs.rs/libceed" 15 High-level interface for libCEED - the efficient high-order discretization library developed by the… 17 keywords = ["libceed", "exascale", "high-order"] 21 libceed-sys = { version = "0.12", path = "../libceed-sys" } 32 { file = "README.md", search = "libceed = \"[0-9.]*\"", replace = "libceed = \"{{version}}\"" }, 33 …{ file = "../../README.md", search = "libceed = \"[0-9.]*\"", replace = "libceed = \"{{version}}\"…
|
| /libCEED/julia/LibCEED.jl/ |
| H A D | README.md | 1 # LibCEED.jl: Julia Interface for [libCEED](https://github.com/CEED/libCEED) 3 Please see the [LibCEED.jl documentation](http://ceed.exascaleproject.org/libCEED-julia-docs/dev/) … 7 The LibCEED.jl package can be installed with Julia's package manager by running `] add LibCEED`. 8 This will automatically install a pre-built binary of the libCEED library. 9 …libCEED (e.g. CUDA/GPU support, specific compiler flags, etc.) then you should compile your own ve… 11 **Warning:** the pre-built libCEED binaries do not support CUDA backends 13 The pre-built binaries automatically installed by LibCEED.jl (through the [libCEED_jll](https://jul… 14 …want to run libCEED on the GPU, you will have to build libCEED from source and configure LibCEED.j… 16 ### Configuring LibCEED.jl 18 By default, LibCEED.jl will use the pre-built libCEED binaries provided by the [libCEED_jll](https:… [all …]
|
| /libCEED/python/tests/ |
| H A D | test-5-operator.py | 12 import libceed 17 TOL = libceed.EPSILON * 256 42 ceed = libceed.Ceed(ceed_resource) 55 x.set_array(x_array, cmode=libceed.USE_POINTER) 67 cmode=libceed.USE_POINTER) 74 cmode=libceed.USE_POINTER) 79 bx = ceed.BasisTensorH1Lagrange(1, 1, 2, q, libceed.GAUSS) 80 bu = ceed.BasisTensorH1Lagrange(1, 1, p, q, libceed.GAUSS) 88 qf_setup.add_input("weights", 1, libceed.EVAL_WEIGHT) 89 qf_setup.add_input("dx", 1, libceed.EVAL_GRAD) [all …]
|
| H A D | test-3-basis.py | 13 import libceed 18 TOL = libceed.EPSILON * 256 46 ceed = libceed.Ceed(ceed_resource) 48 b = ceed.BasisTensorH1Lagrange(1, 1, 4, 4, libceed.GAUSS_LOBATTO) 52 b = ceed.BasisTensorH1Lagrange(1, 1, 4, 4, libceed.GAUSS) 57 if libceed.lib.CEED_SCALAR_TYPE == libceed.SCALAR_FP64: 68 ceed = libceed.Ceed(ceed_resource) 70 b = ceed.BasisTensorH1Lagrange(3, 1, 4, 5, libceed.GAUSS_LOBATTO) 84 ceed = libceed.Ceed(ceed_resource) 99 X.set_array(x, cmode=libceed.USE_POINTER) [all …]
|
| H A D | test-4-qfunction.py | 12 import libceed 16 TOL = libceed.EPSILON * 256 41 ceed = libceed.Ceed(ceed_resource) 48 qf_setup.add_input("w", 1, libceed.EVAL_WEIGHT) 49 qf_setup.add_input("dx", 1, libceed.EVAL_GRAD) 50 qf_setup.add_output("qdata", 1, libceed.EVAL_NONE) 54 qf_mass.add_input("qdata", 1, libceed.EVAL_NONE) 55 qf_mass.add_input("u", 1, libceed.EVAL_INTERP) 56 qf_mass.add_output("v", 1, libceed.EVAL_INTERP) 72 w.set_array(w_array, cmode=libceed.USE_POINTER) [all …]
|
| H A D | test-1-vector.py | 12 import libceed 16 TOL = libceed.EPSILON * 256 34 ceed = libceed.Ceed(ceed_resource) 40 x.set_array(a, cmode=libceed.USE_POINTER) 52 ceed = libceed.Ceed(ceed_resource) 57 x.set_array(a, cmode=libceed.USE_POINTER) 78 ceed = libceed.Ceed(ceed_resource) 97 ceed = libceed.Ceed(ceed_resource) 105 x.set_array(a, cmode=libceed.USE_POINTER) 108 y.set_array(x_array, cmode=libceed.USE_POINTER) [all …]
|
| /libCEED/ |
| H A D | RELEASING.md | 22 …ences for key features to highlight on [GitHub releases](https://github.com/CEED/libCEED/releases). 31 …://github.com/lvc/abi-compliance-checker) is a useful tool, as is `nm -D libceed.so` and checking … 33 …cised in continuous integration (e.g., HPC facilities) and with users of libCEED, such as MFEM and… 34 … PR to support the new release, and it's good for quality to test before tagging a libCEED release. 38 4. Check that `spack install libceed@develop` works prior to tagging. 39 The Spack `libceed/package.py` file should be updated immediately after tagging a release. 44 1. `git commit -am'libCEED 0.8.1'` 48 4. `git tag --sign -m'libCEED 0.8.1'` 50 6. Draft a [new release on GitHub](https://github.com/CEED/libCEED/releases), using a few sentences… 62 libCEED's Julia interface (LibCEED.jl) has two components: [all …]
|
| H A D | README.md | 1 # libCEED: Efficient Extensible Discretization 13 libCEED provides fast algebra for element-based discretizations, designed for performance portabili… 15 … in the [user manual](https://libceed.org/en/latest/) and API implementation portion of the [docum… 20 The goal of libCEED is to propose such a format, as well as supporting implementations and data str… 21 This new operator description is based on algebraically [factored form](https://libceed.org/en/late… 28 For more details on the CEED API see the [user manual](https://libceed.org/en/latest/). 34 The CEED library, `libceed`, is a C99 library with no required dependencies, and with Fortran, Pyth… 92 libCEED can be built for WASM using [Emscripten](https://emscripten.org). For example, one can buil… 106 $ pip install libceed 116 pkg> add LibCEED [all …]
|
| H A D | setup.py | 40 prefix = os.path.join(self.build_lib, 'libceed') 62 libCEED: Code for Efficient Extensible Discretization 65 libCEED is a lightweight library for expressing and manipulating operators that 67 equations. libCEED's representations are much for efficient than assembled 70 problems, and includes facilities for preconditioning. libCEED is meant to be 74 libCEED has been developed as part of the DOE Exascale Computing Project 96 setup(name="libceed", 98 description="libCEED: Code for Efficient Extensible Discretization", 102 keywords=["libCEED"], 106 url="https://libceed.org", [all …]
|
| /libCEED/julia/LibCEED.jl/docs/src/ |
| H A D | index.md | 1 # LibCEED.jl Docs 3 Documentation for the LibCEED.jl Julia interface to the 4 [libCEED](https://github.com/ceed/libceed) library. 6 For further information, see also the [libCEED 7 documentation](https://libceed.org/). 14 The LibCEED.jl package can be installed with Julia's package manager by running 15 `] add LibCEED`. This will automatically install a pre-built binary of the 16 libCEED library. If you require features of a specific build of libCEED (e.g. 18 own version of the libCEED library, and configure LibCEED.jl to use this binary 19 as described in the [Configuring LibCEED.jl](@ref) section. [all …]
|
| /libCEED/rust/libceed-sys/ |
| H A D | README.md | 1 # libceed-sys: unsafe bindings to libCEED 3 This is the documentation for the low level (unsafe) Rust bindings to the libCEED C interface. 4 See the [libCEED user manual](https://libceed.org) for usage information. 5 …ll prefer the higher level (safe) Rust interface in the [`libceed` crate](https://docs.rs/libceed). 7 libCEED is a low-level API for for the efficient high-order discretization methods developed by the… 12 To use low level libCEED bindings in a Rust package, the following `Cargo.toml` can be used. 15 libceed-sys = "0.12.0" 18 For a development version of the libCEED Rust bindings, use the following `Cargo.toml`. 21 libceed-sys = { git = "https://github.com/CEED/libCEED", branch = "main" } 25 * `static` (default): link to static libceed.a [all …]
|
| /libCEED/examples/python/ |
| H A D | tutorial-1-vector.ipynb | 7 "# libCEED for Python examples\n", 9 …ustrate the main feautures of the Python interface for [libCEED](https://github.com/CEED/libCEED/)… 11 …libCEED's focus is on high-order finite/spectral element method implementations, the approach is m… 18 "## Setting up libCEED for Python\n", 20 "Install libCEED for Python by running" 29 "! python -m pip install libceed" 38 …illustrate the `libceed.Vector` class. In libCEED, CeedVectors constitute the main data structure … 40 …"We illustrate the simple creation of a `libceed.Vector`, how to specify its size, and how to read… 49 "import libceed\n", 51 "ceed = libceed.Ceed()\n", [all …]
|
| H A D | tutorial-5-operator.ipynb | 7 "# libCEED for Python examples\n", 9 …ustrate the main feautures of the Python interface for [libCEED](https://github.com/CEED/libCEED/)… 11 …libCEED's focus is on high-order finite/spectral element method implementations, the approach is m… 18 "## Setting up libCEED for Python\n", 20 "Install libCEED for Python by running" 29 "! python -m pip install libceed" 38 …libceed.Operator` class. In libCEED, a `libceed.Operator` defines the finite/spectral element oper… 54 "import libceed\n", 57 "ceed = libceed.Ceed()\n", 70 "x.set_array(x_array, cmode=libceed.USE_POINTER)\n", [all …]
|
| H A D | tutorial-3-basis.ipynb | 7 "# libCEED for Python examples\n", 9 …ustrate the main feautures of the Python interface for [libCEED](https://github.com/CEED/libCEED/)… 11 …libCEED's focus is on high-order finite/spectral element method implementations, the approach is m… 18 "## Setting up libCEED for Python\n", 20 "Install libCEED for Python by running" 29 "! python -m pip install libceed" 38 …libceed.Basis` class. In libCEED, a `libceed.Basis` defines the finite element basis and associate… 88 "import libceed\n", 90 "ceed = libceed.Ceed()\n", 97 " qmode=libceed.GAUSS_LOBATTO)\n", [all …]
|
| H A D | ex3_volume.py | 9 # libCEED example using diffusion operator to compute surface area 20 import libceed 64 ceed = libceed.Ceed(args.ceed) 69 dim, ncomp_x, mesh_degree + 1, num_qpts, libceed.GAUSS) 73 dim, 1, sol_degree + 1, num_qpts, libceed.GAUSS) 115 qf_build.add_input("dx", dim * dim, libceed.EVAL_GRAD) 116 qf_build.add_input("weights", 1, libceed.EVAL_WEIGHT) 117 qf_build.add_output("qdata", num_q_comp, libceed.EVAL_NONE) 122 op_build.set_field("dx", mesh_restriction, mesh_basis, libceed.VECTOR_ACTIVE) 123 op_build.set_field("weights", libceed.ELEMRESTRICTION_NONE, mesh_basis, libceed.VECTOR_NONE) [all …]
|
| H A D | tutorial-4-qfunction.ipynb | 7 "# libCEED for Python examples\n", 9 …ustrate the main feautures of the Python interface for [libCEED](https://github.com/CEED/libCEED/)… 11 …libCEED's focus is on high-order finite/spectral element method implementations, the approach is m… 18 "## Setting up libCEED for Python\n", 20 "Install libCEED for Python by running" 29 "! python -m pip install libceed" 38 …libceed.QFunction` class. In libCEED, QFunctions represent the spatial terms of the point-wise fun… 49 …ectively, of the mass operator in 1D) from the gallery of available built-in QFunctions in libCEED" 58 "import libceed\n", 61 "ceed = libceed.Ceed()\n", [all …]
|
| H A D | ex1_volume.py | 9 # libCEED example using diffusion operator to compute surface area 20 import libceed 59 ceed = libceed.Ceed(args.ceed) 64 dim, ncomp_x, mesh_degree + 1, num_qpts, libceed.GAUSS) 68 dim, 1, sol_degree + 1, num_qpts, libceed.GAUSS) 111 qf_build.add_input("dx", dim * dim, libceed.EVAL_GRAD) 112 qf_build.add_input("weights", 1, libceed.EVAL_WEIGHT) 113 qf_build.add_output("qdata", num_q_comp, libceed.EVAL_NONE) 118 op_build.set_field("dx", mesh_restriction, mesh_basis, libceed.VECTOR_ACTIVE) 119 op_build.set_field("weights", libceed.ELEMRESTRICTION_NONE, mesh_basis, libceed.VECTOR_NONE) [all …]
|
| H A D | tutorial-0-ceed.ipynb | 7 "# libCEED for Python examples\n", 9 …ustrate the main feautures of the Python interface for [libCEED](https://github.com/CEED/libCEED/)… 11 …libCEED's focus is on high-order finite/spectral element method implementations, the approach is m… 18 "## Setting up libCEED for Python" 25 "Install libCEED for Python by running" 34 "! python -m pip install libceed" 43 …"Here we show some basic examples to illustrate the `Ceed` class. In libCEED, Ceeds represent libr… 54 "import libceed\n", 56 "ceed = libceed.Ceed()" 88 "ceed = libceed.Ceed('/cpu/self/opt/blocked')" [all …]
|
| H A D | ex2_surface.py | 9 # libCEED example using diffusion operator to compute surface area 20 import libceed 60 ceed = libceed.Ceed(args.ceed) 65 dim, ncomp_x, mesh_degree + 1, num_qpts, libceed.GAUSS) 69 dim, 1, sol_degree + 1, num_qpts, libceed.GAUSS) 113 qf_build.add_input("dx", dim * dim, libceed.EVAL_GRAD) 114 qf_build.add_input("weights", 1, libceed.EVAL_WEIGHT) 115 qf_build.add_output("qdata", num_q_comp, libceed.EVAL_NONE) 120 op_build.set_field("dx", mesh_restriction, mesh_basis, libceed.VECTOR_ACTIVE) 121 op_build.set_field("weights", libceed.ELEMRESTRICTION_NONE, mesh_basis, libceed.VECTOR_NONE) [all …]
|
| /libCEED/julia/LibCEED.jl/src/ |
| H A D | LibCEED.jl | 1 module LibCEED module 163 Incompatible libCEED version. 164 LibCEED.jl requires libCEED version at least $minimum_libceed_version. 165 The version of the libCEED library is $(ceedversion())." 176 Returns a `VersionNumber` corresponding to the version of the libCEED library currently used. 190 Returns true if the libCEED library is a release build, false otherwise. 204 Returns true if the libCEED library is at least as current as the specified `version`. Returns 205 `true` whenever libCEED is not a release build. 214 Sets the path of the libCEED dynamic library. `path` should be the absolute path to the library 217 `set_libceed_path!(:prebuilt)` indicates to LibCEED.jl to use the prebuilt version of the libCEED [all …]
|
| H A D | C.jl | 1 # Low-level C API for libCEED 6 using libCEED_jll: libceed, libceed_handle 24 CEED_STRIDES_BACKEND[] = cglobal((:CEED_STRIDES_BACKEND, libceed)) 25 CEED_BASIS_NONE[] = unsafe_load(cglobal((:CEED_BASIS_NONE, libceed), CeedBasis)) 26 CEED_VECTOR_ACTIVE[] = unsafe_load(cglobal((:CEED_VECTOR_ACTIVE, libceed), CeedVector)) 27 CEED_VECTOR_NONE[] = unsafe_load(cglobal((:CEED_VECTOR_NONE, libceed), CeedVector)) 29 unsafe_load(cglobal((:CEED_ELEMRESTRICTION_NONE, libceed), CeedElemRestriction)) 31 unsafe_load(cglobal((:CEED_QFUNCTION_NONE, libceed), CeedQFunction)) 33 unsafe_load(cglobal((:CEED_REQUEST_IMMEDIATE, libceed), Ptr{CeedRequest})) 35 unsafe_load(cglobal((:CEED_REQUEST_ORDERED, libceed), Ptr{CeedRequest}))
|
| /libCEED/examples/ |
| H A D | README.md | 1 # libCEED: Examples 3 This page provides a brief description of the examples for the libCEED library. 5 ## Basic libCEED Examples 7 Two examples that rely only upon libCEED without any external libraries are provided in the [ceed/]… 8 For more details, please see the dedicated [documentation section](https://libceed.org/en/latest/ex… 47 …lement gather, and parallel gather (with the parallel gathers/scatters done externally to libCEED). 58 …in the BPs, please see the dedicated [BPs documentation section](https://libceed.org/en/latest/exa… 60 ## PETSc+libCEED Fluid Dynamics Navier-Stokes Mini-App 63 …fluids) folder and the corresponding [fluids documentation page](https://libceed.org/en/latest/exa… 65 ## PETSc+libCEED Solid Mechanics Elasticity Mini-App [all …]
|
| /libCEED/doc/papers/joss/ |
| H A D | paper.md | 2 title: 'libCEED: Fast algebra for high-order element-based discretizations' 75 `libCEED`, the Code for Efficient Extensible Discretization [@libceed-user-manual], is a lightweigh… 76 `libCEED` provides portable performance via run-time selection of implementations optimized for CPU… 78 Users and library developers can integrate `libCEED` at a low level into existing applications in p… 79 Alternatively, users can utilize integrated `libCEED` support in MFEM [@MFEMlibrary; @mfem-paper]. 81 In addition to supporting applications and discretization libraries, `libCEED` provides a platform … 99 …libCEED` uses a logical decomposition to define element-based discretizations, with optimized impl… 101 `libCEED`'s native C interface is object-oriented, providing data types for each logical object in … 103 Symbol `libCEED` type Description 110 `libCEED` implementations ("backends") are free to reorder and fuse computational steps (including … [all …]
|