#include "../h3dconfig.h"#include <stdio.h>#include <stdlib.h>#include <string.h>#include <assert.h>#include <math.h>#include <errno.h>#include <cstdarg>#include <algorithm>#include <vector>#include <set>#include "common.h"#include <common/array.h>#include <common/arrayptr.h>#include <common/mapord.h>#include <common/error.h>#include "order.h"#include "mesh.h"#include "quad.h"#include "function.h"#include "shapeset.h"#include <common/bitarray.h>#include "asmlist.h"#include "transform.h"#include "shapefn.h"#include "../refmap.h"#include "../quad.h"#include "solution.h"#include "refmap.h"#include "forms.h"#include "tuple.h"#include <common/timer.h>#include <common/callstack.h>Defines | |
| #define | MAKE_P_CAND(q) |
| #define | MAKE_HP_CAND(q0, q1, q2, q3, q4, q5, q6, q7) |
| #define | MAKE_ANI2_CAND(s, q0, q1) |
| #define | MAKE_ANI4_CAND(s, q0, q1, q2, q3) |
Functions | |
| template<typename f_t , typename res_t > | |
| res_t | h1_form (int n, double *wt, fn_t< res_t > *u_ext[], fn_t< res_t > *u, fn_t< res_t > *v, geom_t< f_t > *e, user_data_t< res_t > *ext) |
| #define MAKE_ANI2_CAND | ( | s, | |||
| q0, | |||||
| q1 | ) |
{ \
if (mesh->can_refine_element(e->id, s)) {\
assert(n < MAX_CAND); \
cand[n].split = s; \
cand[n].p[2] = cand[n].p[3] = cand[n].p[4] = cand[n].p[5] = cand[n].p[6] =\
cand[n].p[7] = 0; \
cand[n].p[0] = (q0); \
cand[n].p[1] = (q1); \
n++; }}
| #define MAKE_ANI4_CAND | ( | s, | |||
| q0, | |||||
| q1, | |||||
| q2, | |||||
| q3 | ) |
{ \
if (mesh->can_refine_element(e->id, s)) {\
assert(n < MAX_CAND); \
cand[n].split = s; \
cand[n].p[4] = cand[n].p[5] = cand[n].p[6] = cand[n].p[7] = 0; \
cand[n].p[0] = (q0); \
cand[n].p[1] = (q1); \
cand[n].p[2] = (q2); \
cand[n].p[3] = (q3); \
n++; }}
| #define MAKE_HP_CAND | ( | q0, | |||
| q1, | |||||
| q2, | |||||
| q3, | |||||
| q4, | |||||
| q5, | |||||
| q6, | |||||
| q7 | ) |
{ \
assert(n < MAX_CAND); \
cand[n].split = H3D_H3D_H3D_REFT_HEX_XYZ; \
cand[n].p[0] = (q0); \
cand[n].p[1] = (q1); \
cand[n].p[2] = (q2); \
cand[n].p[3] = (q3); \
cand[n].p[4] = (q4); \
cand[n].p[5] = (q5); \
cand[n].p[6] = (q6); \
cand[n].p[7] = (q7); \
n++; }
| #define MAKE_P_CAND | ( | q | ) |
{ \
assert(n < MAX_CAND); \
cand[n].split = H3D_REFT_HEX_NONE; \
cand[n].p[1] = cand[n].p[2] = cand[n].p[3] = cand[n].p[4] =\
cand[n].p[5] = cand[n].p[6] = cand[n].p[7] = 0; \
cand[n].p[0] = (q); \
n++; }
| res_t h1_form | ( | int | n, | |
| double * | wt, | |||
| fn_t< res_t > * | u_ext[], | |||
| fn_t< res_t > * | u, | |||
| fn_t< res_t > * | v, | |||
| geom_t< f_t > * | e, | |||
| user_data_t< res_t > * | ext | |||
| ) | [inline] |
1.6.3