| ceed-impl.h (4b35598d4ab61368abe61b9309f3efc1d5444b46) | ceed-impl.h (c8c3fa7d27bffffddcff68a8a1d51314e0358a98) |
|---|---|
| 1// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and other CEED contributors. 2// All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 3// 4// SPDX-License-Identifier: BSD-2-Clause 5// 6// This file is part of CEED: http://github.com/ceed 7 8/// @file --- 161 unchanged lines hidden (view full) --- 170 uint64_t num_readers; /* number of instances of offset read only access */ 171 bool is_oriented; /* flag for oriented restriction */ 172 void *data; /* place for the backend to store any data */ 173}; 174 175struct CeedBasis_private { 176 Ceed ceed; 177 int (*Apply)(CeedBasis, CeedInt, CeedTransposeMode, CeedEvalMode, CeedVector, CeedVector); | 1// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and other CEED contributors. 2// All Rights Reserved. See the top-level LICENSE and NOTICE files for details. 3// 4// SPDX-License-Identifier: BSD-2-Clause 5// 6// This file is part of CEED: http://github.com/ceed 7 8/// @file --- 161 unchanged lines hidden (view full) --- 170 uint64_t num_readers; /* number of instances of offset read only access */ 171 bool is_oriented; /* flag for oriented restriction */ 172 void *data; /* place for the backend to store any data */ 173}; 174 175struct CeedBasis_private { 176 Ceed ceed; 177 int (*Apply)(CeedBasis, CeedInt, CeedTransposeMode, CeedEvalMode, CeedVector, CeedVector); |
| 178 int (*ApplyAtPoints)(CeedBasis, CeedInt, CeedTransposeMode, CeedEvalMode, CeedVector, CeedVector, CeedVector); |
|
| 178 int (*Destroy)(CeedBasis); 179 int ref_count; 180 bool is_tensor_basis; /* flag for tensor basis */ 181 CeedInt dim; /* topological dimension */ 182 CeedElemTopology topo; /* element topology */ 183 CeedInt num_comp; /* number of field components (1 for scalar fields) */ 184 CeedInt P_1d; /* number of nodes in one dimension */ 185 CeedInt Q_1d; /* number of quadrature points in one dimension */ --- 6 unchanged lines hidden (view full) --- 192 CeedScalar *interp; /* row-major matrix of shape [Q, P] or [dim * Q, P] expressing the values of nodal basis functions or vector basis functions at 193 quadrature points */ 194 CeedScalar *interp_1d; /* row-major matrix of shape [Q1d, P1d] expressing the values of nodal basis functions at quadrature points */ 195 CeedScalar *grad; /* row-major matrix of shape [dim * Q, P] matrix expressing derivatives of nodal basis functions at quadrature points */ 196 CeedScalar *grad_1d; /* row-major matrix of shape [Q1d, P1d] matrix expressing derivatives of nodal basis functions at quadrature points */ 197 CeedScalar *div; /* row-major matrix of shape [Q, P] expressing the divergence of basis functions at quadrature points for H(div) discretizations */ 198 CeedScalar *curl; /* row-major matrix of shape [curl_dim * Q, P], curl_dim = 1 if dim < 3 else dim, expressing the curl of basis functions at 199 quadrature points for H(curl) discretizations */ | 179 int (*Destroy)(CeedBasis); 180 int ref_count; 181 bool is_tensor_basis; /* flag for tensor basis */ 182 CeedInt dim; /* topological dimension */ 183 CeedElemTopology topo; /* element topology */ 184 CeedInt num_comp; /* number of field components (1 for scalar fields) */ 185 CeedInt P_1d; /* number of nodes in one dimension */ 186 CeedInt Q_1d; /* number of quadrature points in one dimension */ --- 6 unchanged lines hidden (view full) --- 193 CeedScalar *interp; /* row-major matrix of shape [Q, P] or [dim * Q, P] expressing the values of nodal basis functions or vector basis functions at 194 quadrature points */ 195 CeedScalar *interp_1d; /* row-major matrix of shape [Q1d, P1d] expressing the values of nodal basis functions at quadrature points */ 196 CeedScalar *grad; /* row-major matrix of shape [dim * Q, P] matrix expressing derivatives of nodal basis functions at quadrature points */ 197 CeedScalar *grad_1d; /* row-major matrix of shape [Q1d, P1d] matrix expressing derivatives of nodal basis functions at quadrature points */ 198 CeedScalar *div; /* row-major matrix of shape [Q, P] expressing the divergence of basis functions at quadrature points for H(div) discretizations */ 199 CeedScalar *curl; /* row-major matrix of shape [curl_dim * Q, P], curl_dim = 1 if dim < 3 else dim, expressing the curl of basis functions at 200 quadrature points for H(curl) discretizations */ |
| 200 void *data; /* place for the backend to store any data */ | 201 CeedVector vec_chebyshev; 202 CeedBasis basis_chebyshev; /* basis interpolating from nodes to Chebyshev polynomial coefficients */ 203 void *data; /* place for the backend to store any data */ |
| 201}; 202 203struct CeedTensorContract_private { 204 Ceed ceed; 205 int (*Apply)(CeedTensorContract, CeedInt, CeedInt, CeedInt, CeedInt, const CeedScalar *restrict, CeedTransposeMode, const CeedInt, 206 const CeedScalar *restrict, CeedScalar *restrict); 207 int (*Destroy)(CeedTensorContract); 208 int ref_count; --- 159 unchanged lines hidden --- | 204}; 205 206struct CeedTensorContract_private { 207 Ceed ceed; 208 int (*Apply)(CeedTensorContract, CeedInt, CeedInt, CeedInt, CeedInt, const CeedScalar *restrict, CeedTransposeMode, const CeedInt, 209 const CeedScalar *restrict, CeedScalar *restrict); 210 int (*Destroy)(CeedTensorContract); 211 int ref_count; --- 159 unchanged lines hidden --- |