| /libCEED/tests/ |
| H A D | t525-operator.c | 8 #include "t500-operator.h" 29 .other = -3.0, in main() 33 .other = -3.0, in main() 38 // First sub-operator in main() 49 // Check setting field in operator in main() 64 // Second sub-operator in main() 80 // Check setting field in context of single sub-operator for composite operator in main() 95 // Check setting field in context of multiple sub-operators for composite operator in main() 105 // Check requesting label for field that doesn't exist returns NULL in main() 110 // Check getting reference to QFunctionContext in main()
|
| H A D | junit.py | 5 def create_argparser() -> argparse.ArgumentParser: 13 '-c', 14 '--ceed-backends', 20 '-m', 21 '--mode', 26 parser.add_argument('-n', '--nproc', type=int, default=1, help='number of MPI processes') 27 …parser.add_argument('-b', '--junit-batch', type=str, default='', help='Name of JUnit batch for out… 28 …parser.add_argument('-np', '--pool-size', type=int, default=1, help='Number of test cases to run i… 29 parser.add_argument('-s', '--search', type=str, default='.*', 31 parser.add_argument('-v', '--verbose', action='store_true', default=False, [all …]
|
| H A D | junit_common.py | 19 sys.path.insert(0, str(Path(__file__).parent / "junit-xml")) 65 csv_rtol: float = -1 66 csv_ztol: float = -1 67 cgns_tol: float = -1 88 def get_source_path(self, test: str) -> Path: 100 def get_run_path(self, test: str) -> Path: 112 def get_output_path(self, test: str, output_file: str) -> Path: 125 def test_failure_artifacts_path(self) -> Path: 132 return getattr(self, '_cgns_tol', 1.0e-12) 141 return getattr(self, '_csv_ztol', 3e-10) [all …]
|
| H A D | t553-operator.c | 2 /// Test creation, action, and destruction for mass matrix operator with multigrid level, non-tenso… 3 …t creation, action, and destruction for mass matrix operator with multigrid level, non-tensor basis 17 …_elem + 1, num_dofs_u_coarse = num_elem * (p_coarse - 1) + 1, num_dofs_u_fine = num_elem * (p_fine… in main() 26 for (CeedInt i = 0; i < num_dofs_x; i++) x_array[i] = (CeedScalar)i / (num_dofs_x - 1); in main() 45 ind_u_coarse[p_coarse * i + j] = i * (p_coarse - 1) + j; in main() 53 ind_u_fine[p_fine * i + j] = i * (p_fine - 1) + j; in main() 97 // Check output in main() 107 …if (fabs(sum - 1.) > 1000. * CEED_EPSILON) printf("Computed Area Coarse Grid: %f != True Area: 1.0… in main() 116 // Check output in main() 126 …if (fabs(sum - 1.) > 1000. * CEED_EPSILON) printf("Computed Area Fine Grid: %f != True Area: 1.0\n… in main() [all …]
|
| H A D | t530-operator.c | 9 #include "t510-operator.h" 46 offset = col * (p - 1) + row * (nx * 2 + 1) * (p - 1); in main() 91 // Check output in main() 98 if (fabs(q_data_array[i] - assembled_array[i]) > 1e-9) { in main() 112 // Check output in main() 119 …if (fabs(area - 1.0) > 100. * CEED_EPSILON) printf("Error: True operator computed area = %f != 1.0… in main() 135 // Check output in main() 143 …if (fabs(area - 1.0) > 1000. * CEED_EPSILON) printf("Error: Linearized operator computed area = %f… in main()
|
| H A D | t553-operator-f.f90 | 1 !----------------------------------------------------------------------- 22 parameter(nucoarse=nelem*(pcoarse-1)+1) 23 parameter(nufine=nelem*(pfine-1)+1) 42 do i=0,nx-1 43 arrx(i+1)=i/(nx-1.d0) 45 do i=0,nelem-1 52 do i=0,nelem-1 53 do j=0,pcoarse-1 54 inducoarse(pcoarse*i+j+1)=i*(pcoarse-1)+j 60 do i=0,nelem-1 [all …]
|
| H A D | t550-operator.c | 9 #include "t502-operator.h" 19 …_elem + 1, num_dofs_u_coarse = num_elem * (p_coarse - 1) + 1, num_dofs_u_fine = num_elem * (p_fine… in main() 28 for (CeedInt i = 0; i < num_dofs_x; i++) x_array[i] = (CeedScalar)i / (num_dofs_x - 1); in main() 47 ind_u_coarse[p_coarse * i + j] = i * (p_coarse - 1) + j; in main() 55 ind_u_fine[p_fine * i + j] = i * (p_fine - 1) + j; in main() 101 // Check output in main() 111 …if (fabs(sum - 2.) > 1000. * CEED_EPSILON) printf("Computed Area Coarse Grid: %f != True Area: 2.0… in main() 120 // Check output in main() 131 …if (fabs(sum - 2.) > 1000. * CEED_EPSILON) printf("Computed Area Fine Grid: %f != True Area: 2.0\n… in main() 136 // Check output in main() [all …]
|
| H A D | t552-operator.c | 9 #include "t502-operator.h" 19 …_elem + 1, num_dofs_u_coarse = num_elem * (p_coarse - 1) + 1, num_dofs_u_fine = num_elem * (p_fine… in main() 28 for (CeedInt i = 0; i < num_dofs_x; i++) x_array[i] = (CeedScalar)i / (num_dofs_x - 1); in main() 47 ind_u_coarse[p_coarse * i + j] = i * (p_coarse - 1) + j; in main() 55 ind_u_fine[p_fine * i + j] = i * (p_fine - 1) + j; in main() 106 // Check output in main() 116 …if (fabs(sum - 2.) > 1000. * CEED_EPSILON) printf("Computed Area Coarse Grid: %f != True Area: 2.0… in main() 125 // Check output in main() 134 …if (fabs(sum - 2.) > 1000. * CEED_EPSILON) printf("Computed Area Fine Grid: %f != True Area: 2.0\n… in main() 140 // Check output in main() [all …]
|
| H A D | t551-operator.c | 2 /// Test creation, action, and destruction for mass matrix operator with multigrid level, non-tenso… 3 …, action, and destruction for mass matrix operator with multigrid level, non-tensor basis and inte… 9 #include "t502-operator.h" 19 …x = num_elem + 1, num_dofs_u_c = num_elem * (p_coarse - 1) + 1, num_dofs_u_f = num_elem * (p_fine … in main() 28 for (CeedInt i = 0; i < num_dofs_x; i++) x_array[i] = (CeedScalar)i / (num_dofs_x - 1); in main() 47 ind_u_coarse[p_coarse * i + j] = i * (p_coarse - 1) + j; in main() 55 ind_u_fine[p_fine * i + j] = i * (p_fine - 1) + j; in main() 118 // Check output in main() 128 …if (fabs(sum - 2.) > 1000. * CEED_EPSILON) printf("Computed Area Coarse Grid: %f != True Area: 2.0… in main() 137 // Check output in main() [all …]
|
| H A D | t530-operator-f.f90 | 1 !----------------------------------------------------------------------- 5 include 't530-operator-f.h' 6 !----------------------------------------------------------------------- 57 do i=0,nelem-1 60 offset=col*(p-1)+row*(nx*2+1)*(p-1) 61 do j=0,p-1 62 do k=0,p-1 85 ! -- Setup 88 &//'t510-operator.h:setup'//char(0),qf_setup,err) 92 ! -- Mass [all …]
|
| H A D | t552-operator-f.f90 | 1 !----------------------------------------------------------------------- 5 include 't502-operator-f.h' 6 !----------------------------------------------------------------------- 28 parameter(nucoarse=nelem*(pcoarse-1)+1) 29 parameter(nufine=nelem*(pfine-1)+1) 50 do i=0,nx-1 51 arrx(i+1)=i/(nx-1.d0) 53 do i=0,nelem-1 60 do i=0,nelem-1 61 do j=0,pcoarse-1 [all …]
|
| H A D | t550-operator-f.f90 | 1 !----------------------------------------------------------------------- 5 include 't502-operator-f.h' 6 !----------------------------------------------------------------------- 28 parameter(nucoarse=nelem*(pcoarse-1)+1) 29 parameter(nufine=nelem*(pfine-1)+1) 47 do i=0,nx-1 48 arrx(i+1)=i/(nx-1.d0) 50 do i=0,nelem-1 57 do i=0,nelem-1 58 do j=0,pcoarse-1 [all …]
|
| H A D | t554-operator.c | 10 #include "t502-operator.h" 17 …_elem + 1, num_dofs_u_coarse = num_elem * (p_coarse - 1) + 1, num_dofs_u_fine = num_elem * (p_fine… in main() 27 for (CeedInt i = 0; i < num_dofs_x; i++) x_array[i] = (CeedScalar)i / (num_dofs_x - 1); in main() 49 // -- QData in main() 52 // -- Restrictions in main() 60 offset = num_elem_sub * i * (p_fine - 1); in main() 63 ind_u_fine[p_fine * j + k] = offset + j * (p_fine - 1) + k; in main() 72 // -- Bases in main() 76 // -- QFunctions in main() 87 // -- Operators in main() [all …]
|
| H A D | t505-operator.c | 9 #include "t500-operator.h" 19 CeedInt num_nodes_x = num_elem + 1, num_nodes_u = num_elem * (p - 1) + 1; in main() 27 for (CeedInt i = 0; i < num_nodes_x; i++) x_array[i] = (CeedScalar)i / (num_nodes_x - 1); in main() 43 ind_u[p * i + j] = i * (p - 1) + j; in main() 84 // Check output in main() 92 if (fabs(sum - 1.) > 1000. * CEED_EPSILON) printf("Computed Area: %f != True Area: 1.0\n", sum); in main() 99 // Check output in main() 102 CeedScalar sum = -num_nodes_u; in main() 107 if (fabs(sum - 1.) > 1000. * CEED_EPSILON) printf("Computed Area: %f != True Area: 1.0\n", sum); in main()
|
| H A D | t592-operator.c | 9 #include "t591-operator.h" 14 …CeedInt num_nodes = (num_elem_1d * (p - 1) + 1) * (num_elem_1d * (p - 1) + 1), num_points_per_elem… in main() 32 x_array[num_points_per_elem * (e * dim + d) + 1] = d == 0 ? -0.25 : 0.25; in main() 33 x_array[num_points_per_elem * (e * dim + d) + 2] = d == 0 ? 0.25 : -0.25; in main() 54 CeedInt p = 2, num_nodes = (num_elem_1d * (p - 1) + 1) * (num_elem_1d * (p - 1) + 1); in main() 60 for (CeedInt d = 0; d < dim; d++) n_d[d] = num_elem_1d * (p - 1) + 1; in main() 75 g_node += (elem_xy[d] * (p - 1) + r_node % p) * g_node_stride; in main() 106 for (CeedInt d = 0; d < dim; d++) n_d[d] = num_elem_1d * (p - 1) + 1; in main() 121 g_node += (elem_xy[d] * (p - 1) + r_node % p) * g_node_stride; in main() 170 // Check output in main() [all …]
|
| H A D | t598-operator.c | 4 #include "t591-operator.h" 15 … num_nodes_coarse = (num_elem_1d * (p_coarse - 1) + 1) * (num_elem_1d * (p_coarse - 1)… in main() 16 …Int num_nodes_fine = (num_elem_1d * (p_fine - 1) + 1) * (num_elem_1d * (p_fine - 1) … in main() 33 x_array[num_points_per_elem * (e * dim + d) + 1] = d == 0 ? -0.25 : 0.25; in main() 34 x_array[num_points_per_elem * (e * dim + d) + 2] = d == 0 ? 0.25 : -0.25; in main() 55 CeedInt p = 2, num_nodes = (num_elem_1d * (p - 1) + 1) * (num_elem_1d * (p - 1) + 1); in main() 61 for (CeedInt d = 0; d < dim; d++) n_d[d] = num_elem_1d * (p - 1) + 1; in main() 76 g_node += (elem_xy[d] * (p - 1) + r_node % p) * g_node_stride; in main() 107 for (CeedInt d = 0; d < dim; d++) n_d[d] = num_elem_1d * (p_coarse - 1) + 1; in main() 122 g_node += (elem_xy[d] * (p_coarse - 1) + r_node % p_coarse) * g_node_stride; in main() [all …]
|
| H A D | t305-basis.c | 39 // Check X^T M X = I in main() 57 if (fabs(M[p * i + j] - (i == j ? 1.0 : 0.0)) > 100. * CEED_EPSILON) { in main() 65 // Check X^T K X = Lambda in main() 82 if (fabs(K[p * i + j] - (i == j ? lambda[i] : 0.0)) > 1e3 * CEED_EPSILON) { in main()
|
| /libCEED/examples/python/ |
| H A D | tutorial-5-operator.ipynb | 9 …ithub.com/CEED/libCEED/), the low-level API library for efficient high-order discretization method… 11 …"While libCEED's focus is on high-order finite/spectral element method implementations, the approa… 29 "! python -m pip install libceed" 38 …documentation](https://libceed.org/en/latest/libCEEDapi.html#finite-element-operator-decomposition… 45 …ute the length of this 1D domain, similar to Ex1-Volume in the [tutorial-6-shell tutorial](./tutor… 63 "num_u = num_elem*(p-1) + 1\n", 69 " x_array[i] = i / (num_x - 1.0)\n", 86 " indices_u[p*i+j] = i*(p-1) + j\n", 106 "op_setup.check()\n", 114 "op_mass.check()\n", [all …]
|
| /libCEED/interface/ |
| H A D | ceed-jit-tools.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 8 #include <ceed-impl.h> 11 #include <ceed/jit-tools.h> 17 @brief Check if valid file exists at path given 23 @return An error code: 0 - success, otherwise - failure 34 size_t source_file_path_length = (last_colon - source_file_path + 1); in CeedCheckFilePath() 37 memcpy(source_file_path_only, source_file_path, source_file_path_length - 1); in CeedCheckFilePath() 46 // Check for valid file path in CeedCheckFilePath() [all …]
|
| H A D | ceed-qfunctioncontext.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 8 #include <ceed-impl.h> 19 /// ---------------------------------------------------------------------------- 21 /// ---------------------------------------------------------------------------- 30 @param[out] field_index Index of field, or `-1` if field is not registered 32 @return An error code: 0 - success, otherwise - failure 37 *field_index = -1; in CeedQFunctionContextGetFieldIndex() 38 for (CeedInt i = 0; i < ctx->num_fields; i++) { in CeedQFunctionContextGetFieldIndex() [all …]
|
| /libCEED/python/tests/ |
| H A D | test-3-basis.py | 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 import check 20 # ------------------------------------------------------------------------------- 22 # ------------------------------------------------------------------------------- 28 result *= math.tanh(x[d] - center) 40 # ------------------------------------------------------------------------------- 42 # ------------------------------------------------------------------------------- 58 stdout, stderr, ref_stdout = check.output(capsys) [all …]
|
| H A D | test-5-operator.py | 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 import check 19 # ------------------------------------------------------------------------------- 21 # ------------------------------------------------------------------------------- 36 # ------------------------------------------------------------------------------- 38 # ------------------------------------------------------------------------------- 48 nu = nelem * (p - 1) + 1 54 x_array[i] = i / (nx - 1.0) [all …]
|
| /libCEED/examples/petsc/include/ |
| H A D | petscversion.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 /// Petsc version check
|
| /libCEED/.github/workflows/ |
| H A D | release-notes.yml | 5 branches-ignore: 6 - main 13 os: [ubuntu-24.04] 15 runs-on: ${{ matrix.os }} 18 - name: Environment setup 20 - name: Check release notes 23 if git diff origin/main --exit-code include/ceed/*; then 25 elif git diff origin/main --exit-code doc/sphinx/source/releasenotes.rst; then
|
| /libCEED/ |
| H A D | RELEASING.md | 5 In preparing a release, create a branch to hold pre-release commits. 21 Use `git log --first-parent v0.7..` to get a sense of the pull requests that have been merged and t… 25 Use `make doc-latexpdf` to build a PDF users manual and inspect it for missing references or format… 30 1. If making a minor release, check for API and ABI changes that could break [semantic versioning](… 31 …[ABI compliance checker](https://github.com/lvc/abi-compliance-checker) is a useful tool, as is `n… 33 2. Double check testing on any architectures that may not be exercised in continuous integration (e… 38 4. Check that `spack install libceed@develop` works prior to tagging. 44 1. `git commit -am'libCEED 0.8.1'` 45 More frequently, this is amending the commit message on an in-progress commit, after rebasing if ap… 47 3. `git switch main && git merge --ff-only HEAD@{1}` fast-forward merge into `main` [all …]
|