232 field (*f)(
const real *e,
void *fdata),
void *fdata,
248 field (*f)(
const real *x,
void *fdata),
void *fdata,
262 field (*f)(
const uint *e,
void *data),
void *data,
280 field(*f) (
const real * x,
void *fdata),
void *fdata,
317 void (*f) (
const real * x,
void *fdata,
pavector v),
void *fdata,
337 void (*f) (
const real * x,
void *fdata,
pavector v),
void *fdata,
void assemble_tri2drt0_b_D_avector(pctri2drt0 dc, field(*f)(const real *e, void *fdata), void *fdata, pavector d)
Discretize Dirichlet boundary values.
psparsematrix build_tri2drt0_A_interaction_sparsematrix(pctri2drt0 dc)
Create a sparsematrix with a sparsity pattern matching the lowest order Raviart-Thomas functions and ...
pclustergeometry build_tri2drt0_A_clustergeometry(pctri2drt0 rt, uint *idx)
Create a clustergeometry object for the clustering ofthe degrees of freedom (edges).
tri2drt0 * ptri2drt0
Pointer to tri2drt0 object.
Definition: tri2drt0.h:30
uint nfix
Number of fixed edges (here: Neumann edges).
Definition: tri2drt0.h:67
psparsematrix build_tri2drt0_A_sparsematrix(pctri2drt0 dc)
Create a sparsematrix with a sparsity pattern matching the lowest order Raviart-Thomas functions and ...
void del_tri2drt0(ptri2drt0 dc)
Delete a tri2drt0 object.
unsigned uint
Unsigned integer type.
Definition: settings.h:70
Representation of a two-dimensional triangular mesh.
Definition: tri2d.h:56
void update_tri2drt0(ptri2drt0 rt0)
Update the numbers of degrees of freedoms and fixed edges after mixed boundary conditions were set...
uint * is_dof
Determines whether an edge is a degree of freedom or fixed.
Definition: tri2drt0.h:73
double _Complex field
Field type.
Definition: settings.h:171
psparsematrix build_tri2drt0_B_sparsematrix(pctri2drt0 dc)
Create a sparsematrix with a sparsity pattern matching the lowest order Raviart-Thomas functions for ...
Representation of a clustergeometry object.
Definition: clustergeometry.h:45
const tri2drt0 * pctri2drt0
Pointer to a constant tri2drt0 object.
Definition: tri2drt0.h:33
real norml2_pressure_centroid_tri2drt0(pctri2drt0 dc, field(*f)(const real *x, void *fdata), void *fdata, pcavector x2)
Compute the -norm of the discretization error for the pressure using the midpoint rule...
void assemble_tri2drt0_darcy_A_sparsematrix(pctri2drt0 dc, psparsematrix A, psparsematrix Af, pavector K)
Assemble the upper left block of the system matrix.
void assemble_tri2drt0_g_N_avector(ptri2drt0 dc, field(*f)(const uint *e, void *data), void *data, pavector g)
Discretize Neumann Boundary values.
ptri2drt0 new_tri2drt0(pctri2d rt)
Create a tri2drt0 object using a tri2d mesh.
Representation of a trial space with lowest order Raviart-Thomas basis functions on a two-dimensional...
Definition: tri2drt0.h:58
void assemble_tri2drt0_darcy_B_sparsematrix(pctri2drt0 dc, psparsematrix A, psparsematrix Af)
Assemble the lower left block of the system matrix.
psparsematrix build_tri2drt0_B_interaction_sparsematrix(pctri2drt0 dc)
Create a sparsematrix with a sparsity pattern matching the lowest order Raviart-Thomas functions for ...
#define HEADER_PREFIX
Prefix for function declarations.
Definition: settings.h:43
double real
real floating point type.
Definition: settings.h:97
uint * idx2dof
Consecutive indices for all degrees of freedom and all fixed edges.
Definition: tri2drt0.h:77
void assemble_tri2drt0_b_f_avector(ptri2drt0 dc, field(*f)(const real *x, void *fdata), void *fdata, pavector fv)
Discretize an -functional.
real norml2_flux_centroid_tri2drt0(pctri2drt0 dc, void(*f)(const real *x, void *fdata, pavector v), void *fdata, pcavector x1, pcavector g)
Compute the -norm of the discretization error for the flux using the midpoint rule.
pclustergeometry build_tri2drt0_B_clustergeometry(pctri2drt0 rt, uint *idx)
Create a clustergeometry object for the clustering of the triangles.
pctri2d t2
Triangular mesh, represented by tri2d object.
Definition: tri2drt0.h:61
real norml2_flux_edgemidpoint_tri2drt0(pctri2drt0 dc, void(*f)(const real *x, void *fdata, pavector v), void *fdata, pcavector x1, pcavector g)
Compute the -norm of the discretization error for the flux using the edge midpoint rule...
Representation of a sparse matrix in compressed row format.
Definition: sparsematrix.h:42
real norml2_pressure_edgemidpoint_tri2drt0(pctri2drt0 dc, field(*f)(const real *x, void *fdata), void *fdata, pcavector x2)
Compute the -norm of the discretization error for the pressure using the edge midpoint rule...
uint ndof
Number of degrees of freedom (here: inner edges + Dirichlet edges).
Definition: tri2drt0.h:64