fecomposite.c (4979242ec9aebc8f6bc1fe6d36da3613a7f5e93b) fecomposite.c (f13dfd9ea68e0ddeee984e65c377a1819eab8a8a)
1#include <petsc/private/petscfeimpl.h> /*I "petscfe.h" I*/
2#include <petsc/private/dtimpl.h> /*I "petscdt.h" I*/
3#include <petscblaslapack.h>
4#include <petscdmplextransform.h>
5
6static PetscErrorCode PetscFEDestroy_Composite(PetscFE fem)
7{
8 PetscFE_Composite *cmp = (PetscFE_Composite *)fem->data;

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

237
238 Not Collective
239
240 Input Parameter:
241. fem - The `PetscFE` object
242
243 Output Parameters:
244+ numSubelements - The number of sub elements
1#include <petsc/private/petscfeimpl.h> /*I "petscfe.h" I*/
2#include <petsc/private/dtimpl.h> /*I "petscdt.h" I*/
3#include <petscblaslapack.h>
4#include <petscdmplextransform.h>
5
6static PetscErrorCode PetscFEDestroy_Composite(PetscFE fem)
7{
8 PetscFE_Composite *cmp = (PetscFE_Composite *)fem->data;

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

237
238 Not Collective
239
240 Input Parameter:
241. fem - The `PetscFE` object
242
243 Output Parameters:
244+ numSubelements - The number of sub elements
245. v0 - The affine transformation for each element
246. jac - The Jacobian for each element
247- invjac - The inverse of the Jacobian
245. v0 - The affine transformation for each element, an array of length $dim * Nc$. Pass `NULL` to ignore.
246. jac - The Jacobian for each element, an array of length $dim^2 * Nc$. Pass `NULL` to ignore.
247- invjac - The inverse of the Jacobian, an array of length $dim^2 * Nc$. Pass `NULL` to ignore.
248
249 Level: intermediate
250
248
249 Level: intermediate
250
251 Note:
252 Do not free the output arrays.
253
251.seealso: `PetscFE`, `PetscFECreate()`
252@*/
253PetscErrorCode PetscFECompositeGetMapping(PetscFE fem, PetscInt *numSubelements, const PetscReal *v0[], const PetscReal *jac[], const PetscReal *invjac[])
254{
255 PetscFE_Composite *cmp = (PetscFE_Composite *)fem->data;
256
257 PetscFunctionBegin;
258 PetscValidHeaderSpecific(fem, PETSCFE_CLASSID, 1);

--- 18 unchanged lines hidden ---
254.seealso: `PetscFE`, `PetscFECreate()`
255@*/
256PetscErrorCode PetscFECompositeGetMapping(PetscFE fem, PetscInt *numSubelements, const PetscReal *v0[], const PetscReal *jac[], const PetscReal *invjac[])
257{
258 PetscFE_Composite *cmp = (PetscFE_Composite *)fem->data;
259
260 PetscFunctionBegin;
261 PetscValidHeaderSpecific(fem, PETSCFE_CLASSID, 1);

--- 18 unchanged lines hidden ---