| /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-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 …]
|
| 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-2-elemrestriction.py | 12 import libceed 22 ceed = libceed.Ceed(ceed_resource) 28 x.set_array(a, cmode=libceed.USE_POINTER) 35 cmode=libceed.USE_POINTER) 52 ceed = libceed.Ceed(ceed_resource) 58 x.set_array(a, cmode=libceed.USE_POINTER) 78 ceed = libceed.Ceed(ceed_resource) 87 x.set_array(a, cmode=libceed.COPY_VALUES) 94 num_elem + 1, ind, cmode=libceed.COPY_VALUES) 126 ceed = libceed.Ceed(ceed_resource) [all …]
|
| H A D | test-0-ceed.py | 11 import libceed 20 ceed = libceed.Ceed(ceed_resource) 28 ceed = libceed.Ceed(ceed_resource) 40 ceed = libceed.Ceed(ceed_resource) 52 ceed = libceed.Ceed(ceed_resource) 62 ceed = libceed.Ceed(ceed_resource)
|
| /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/examples/python/ |
| H A D | ex3_volume.py | 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) 124 op_build.set_field("qdata", q_data_restriction, libceed.BASIS_NONE, libceed.VECTOR_ACTIVE) [all …]
|
| H A D | ex1_volume.py | 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) 120 op_build.set_field("qdata", q_data_restriction, libceed.BASIS_NONE, libceed.VECTOR_ACTIVE) [all …]
|
| H A D | ex2_surface.py | 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) 122 op_build.set_field("qdata", q_data_restriction, libceed.BASIS_NONE, libceed.VECTOR_ACTIVE) [all …]
|
| H A D | tutorial-5-operator.ipynb | 11 …o other discretizations in factored form, as explained in the [user manual](https://libceed.org/)." 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", 81 …"restriction_x = ceed.ElemRestriction(num_elem, 2, 1, 1, num_x, indices_x, cmode=libceed.USE_POINT… 87 …"restriction_u = ceed.ElemRestriction(num_elem, p, 1, 1, num_u, indices_u, cmode=libceed.USE_POINT… 92 "basis_x = ceed.BasisTensorH1Lagrange(1, 1, 2, q, libceed.GAUSS)\n", 93 "basis_u = ceed.BasisTensorH1Lagrange(1, 1, p, q, libceed.GAUSS)\n", [all …]
|
| H A D | tutorial-1-vector.ipynb | 11 …o other discretizations in factored form, as explained in the [user manual](https://libceed.org/)." 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", 77 …e, we associate the data stored in a `libceed.Vector` with a `numpy.array` and use it to set and r… 88 "ceed = libceed.Ceed()\n", 92 "x.set_array(a, cmode=libceed.USE_POINTER)\n", 102 …he following example, we set all entries to the same value and then visualize the `libceed.Vector`" [all …]
|
| H A D | tutorial-3-basis.ipynb | 11 …o other discretizations in factored form, as explained in the [user manual](https://libceed.org/)." 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", 105 …"Although a `libceed.Basis` is fully discrete, we can use the Lagrange construction to extend the … 116 "basis_viz = ceed.BasisTensorH1Lagrange(1, 1, P, Q_viz, libceed.GAUSS_LOBATTO)\n", 124 "basis_viz.apply(4, libceed.EVAL_INTERP, I, basis_fns)\n", 148 "b = ceed.BasisTensorH1Lagrange(1, 1, 4, 4, libceed.GAUSS)\n", [all …]
|
| /libCEED/rust/libceed/ |
| H A D | Cargo.toml | 7 name = "libceed" 13 documentation = "https://docs.rs/libceed" 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}}\"…
|
| H A D | README.md | 1 # libceed: efficient, extensible discretization 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  17 libceed = "0.12.0" 23 libceed = { git = "https://github.com/CEED/libCEED", branch = "main" } 27 extern crate libceed; 29 fn main() -> libceed::Result<()> { 30 let ceed = libceed::Ceed::init("/cpu/self/ref"); [all …]
|
| /libCEED/julia/LibCEED.jl/src/ |
| H A D | C.jl | 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/rust/ex1-volume/src/ |
| H A D | transform.rs | 14 mesh_coords: &mut libceed::Vector, in transform_mesh_coordinates() 15 ) -> libceed::Result<libceed::Scalar> { in transform_mesh_coordinates() 21 + 1.0 / (3.0 as libceed::Scalar).sqrt() in transform_mesh_coordinates() 22 * ((2.0 / 3.0) * std::f64::consts::PI as libceed::Scalar * (*coord - 0.5)).sin() in transform_mesh_coordinates() 31 let v = std::f64::consts::PI as libceed::Scalar / 2.0 * coords[i + num_nodes]; in transform_mesh_coordinates() 40 2 | 3 => 3.0 / 4.0 * std::f64::consts::PI as libceed::Scalar, in transform_mesh_coordinates()
|
| /libCEED/examples/rust/ex1-volume-vector/src/ |
| H A D | transform.rs | 14 mesh_coords: &mut libceed::Vector, in transform_mesh_coordinates() 15 ) -> libceed::Result<libceed::Scalar> { in transform_mesh_coordinates() 21 + 1.0 / (3.0 as libceed::Scalar).sqrt() in transform_mesh_coordinates() 22 * ((2.0 / 3.0) * std::f64::consts::PI as libceed::Scalar * (*coord - 0.5)).sin() in transform_mesh_coordinates() 31 let v = std::f64::consts::PI as libceed::Scalar / 2.0 * coords[i + num_nodes]; in transform_mesh_coordinates() 40 2 | 3 => 3.0 / 4.0 * std::f64::consts::PI as libceed::Scalar, in transform_mesh_coordinates()
|
| /libCEED/examples/rust/ex2-surface/src/ |
| H A D | transform.rs | 13 mesh_coords: &mut libceed::Vector, in transform_mesh_coordinates() 14 ) -> libceed::Result<libceed::Scalar> { in transform_mesh_coordinates() 19 + 1.0 / (3.0 as libceed::Scalar).sqrt() in transform_mesh_coordinates() 20 * ((2.0 / 3.0) * std::f64::consts::PI as libceed::Scalar * (*coord - 0.5)).sin() in transform_mesh_coordinates()
|
| /libCEED/examples/rust/ex2-surface-vector/src/ |
| H A D | transform.rs | 13 mesh_coords: &mut libceed::Vector, in transform_mesh_coordinates() 14 ) -> libceed::Result<libceed::Scalar> { in transform_mesh_coordinates() 19 + 1.0 / (3.0 as libceed::Scalar).sqrt() in transform_mesh_coordinates() 20 * ((2.0 / 3.0) * std::f64::consts::PI as libceed::Scalar * (*coord - 0.5)).sin() in transform_mesh_coordinates()
|
| /libCEED/examples/rust/mesh/src/ |
| H A D | lib.rs | 8 use libceed::{Ceed, ElemRestriction, Vector}; 51 ) -> libceed::Result<(ElemRestriction, ElemRestriction)> { 98 libceed::MemType::Host, 108 libceed::CEED_STRIDES_BACKEND, 122 ) -> libceed::Result<Vector> { 133 ceed.basis_tensor_H1_Lagrange(1, 1, 2, p, libceed::QuadMode::GaussLobatto)?; 138 libceed::TransposeMode::NoTranspose, 139 libceed::EvalMode::Interp, 154 coords[gs_nodes + scalar_size * d] = ((d_1d / (p - 1)) as libceed::Scalar 156 / num_xyz[d] as libceed::Scalar;
|
| /libCEED/rust/libceed-sys/ |
| H A D | Cargo.toml | 8 name = "libceed-sys" 10 links = "libceed-sys" 14 documentation = "https://docs.rs/libceed-sys" 18 keywords = ["libceed", "exascale", "high-order"] 41 …{ file = "README.md", search = "libceed-sys = \"[0-9.]*\"", replace = "libceed-sys = \"{{version}}…
|
| H A D | README.md | 1 # libceed-sys: unsafe bindings to libCEED 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). 15 libceed-sys = "0.12.0" 21 libceed-sys = { git = "https://github.com/CEED/libCEED", branch = "main" } 25 * `static` (default): link to static libceed.a 26 * `system`: use libceed from a system directory (otherwise, install from source) 30 To develop libCEED, use `cargo build` in the `rust/libceed-sys` directory to install a local copy a… 48 export LD_LIBRARY_PATH=$CEED_DIR/target/debug/build/libceed-sys-d1ea22c6e1ad3f23/out/lib 51 …e is printed during `cargo build --verbose` or you can find it with `find target -name libceed.so`. [all …]
|
| /libCEED/examples/rust/ex3-volume/src/ |
| H A D | transform.rs | 14 mesh_coords: &mut libceed::Vector, in transform_mesh_coordinates() 15 ) -> libceed::Result<libceed::Scalar> { in transform_mesh_coordinates() 22 + 1.0 / (3.0 as libceed::Scalar).sqrt() in transform_mesh_coordinates() 23 * ((2.0 / 3.0) * std::f64::consts::PI as libceed::Scalar * (*coord - 0.5)) in transform_mesh_coordinates()
|
| /libCEED/examples/rust/ex3-volume-vector/src/ |
| H A D | transform.rs | 14 mesh_coords: &mut libceed::Vector, in transform_mesh_coordinates() 15 ) -> libceed::Result<libceed::Scalar> { in transform_mesh_coordinates() 22 + 1.0 / (3.0 as libceed::Scalar).sqrt() in transform_mesh_coordinates() 23 * ((2.0 / 3.0) * std::f64::consts::PI as libceed::Scalar * (*coord - 0.5)) in transform_mesh_coordinates()
|