ceed.h (4092d0ee9dee1dc94927b92ec4a4f5b5b7bb02dc) ceed.h (b9c05c73848caa4a8e85dca1ee63c2e7e70143c4)
1/// Copyright (c) 2017, Lawrence Livermore National Security, LLC. Produced at
2/// the Lawrence Livermore National Laboratory. LLNL-CODE-734707. All Rights
3/// reserved. See files LICENSE and NOTICE for details.
4///
5/// This file is part of CEED, a collection of benchmarks, miniapps, software
6/// libraries and APIs for efficient high-order finite element and spectral
7/// element discretizations for exascale applications. For more information and
8/// source code availability see http://github.com/ceed.

--- 258 unchanged lines hidden (view full) ---

267 const CeedInt *indices, CeedElemRestriction *rstr);
268CEED_EXTERN int CeedElemRestrictionCreateVector(CeedElemRestriction rstr,
269 CeedVector *lvec, CeedVector *evec);
270CEED_EXTERN int CeedElemRestrictionApply(CeedElemRestriction rstr,
271 CeedTransposeMode tmode, CeedVector u, CeedVector ru, CeedRequest *request);
272CEED_EXTERN int CeedElemRestrictionApplyBlock(CeedElemRestriction rstr,
273 CeedInt block, CeedTransposeMode tmode, CeedVector u, CeedVector ru,
274 CeedRequest *request);
1/// Copyright (c) 2017, Lawrence Livermore National Security, LLC. Produced at
2/// the Lawrence Livermore National Laboratory. LLNL-CODE-734707. All Rights
3/// reserved. See files LICENSE and NOTICE for details.
4///
5/// This file is part of CEED, a collection of benchmarks, miniapps, software
6/// libraries and APIs for efficient high-order finite element and spectral
7/// element discretizations for exascale applications. For more information and
8/// source code availability see http://github.com/ceed.

--- 258 unchanged lines hidden (view full) ---

267 const CeedInt *indices, CeedElemRestriction *rstr);
268CEED_EXTERN int CeedElemRestrictionCreateVector(CeedElemRestriction rstr,
269 CeedVector *lvec, CeedVector *evec);
270CEED_EXTERN int CeedElemRestrictionApply(CeedElemRestriction rstr,
271 CeedTransposeMode tmode, CeedVector u, CeedVector ru, CeedRequest *request);
272CEED_EXTERN int CeedElemRestrictionApplyBlock(CeedElemRestriction rstr,
273 CeedInt block, CeedTransposeMode tmode, CeedVector u, CeedVector ru,
274 CeedRequest *request);
275CEED_EXTERN int CeedElemRestrictionGetIMode(CeedElemRestriction rstr,
276 CeedInterlaceMode *Imode);
277CEED_EXTERN int CeedElemRestrictionGetNumElements(CeedElemRestriction rstr,
278 CeedInt *numelem);
279CEED_EXTERN int CeedElemRestrictionGetElementSize(CeedElemRestriction rstr,
280 CeedInt *elemsize);
281CEED_EXTERN int CeedElemRestrictionGetNumNodes(CeedElemRestriction rstr,
282 CeedInt *numnodes);
283CEED_EXTERN int CeedElemRestrictionGetNumComponents(CeedElemRestriction rstr,
284 CeedInt *numcomp);
285CEED_EXTERN int CeedElemRestrictionGetNumBlocks(CeedElemRestriction rstr,
286 CeedInt *numblk);
287CEED_EXTERN int CeedElemRestrictionGetBlockSize(CeedElemRestriction rstr,
288 CeedInt *blksize);
275CEED_EXTERN int CeedElemRestrictionGetMultiplicity(CeedElemRestriction rstr,
276 CeedVector mult);
277CEED_EXTERN int CeedElemRestrictionView(CeedElemRestriction rstr, FILE *stream);
278CEED_EXTERN int CeedElemRestrictionDestroy(CeedElemRestriction *rstr);
279
280/// The formalism here is that we have the structure
281/// \int_\Omega v^T f_0(u, \nabla u, qdata) + (\nabla v)^T f_1(u, \nabla u, qdata)
282/// where gradients are with respect to the reference element.

--- 191 unchanged lines hidden ---
289CEED_EXTERN int CeedElemRestrictionGetMultiplicity(CeedElemRestriction rstr,
290 CeedVector mult);
291CEED_EXTERN int CeedElemRestrictionView(CeedElemRestriction rstr, FILE *stream);
292CEED_EXTERN int CeedElemRestrictionDestroy(CeedElemRestriction *rstr);
293
294/// The formalism here is that we have the structure
295/// \int_\Omega v^T f_0(u, \nabla u, qdata) + (\nabla v)^T f_1(u, \nabla u, qdata)
296/// where gradients are with respect to the reference element.

--- 191 unchanged lines hidden ---