#include "float.h"
#include "math.h"
#include <stdlib.h>
Go to the source code of this file.
Classes | |
struct | lagrange_data |
struct | obbox_2 |
struct | obbox_3 |
struct | hash_data_2 |
struct | hash_data_3 |
struct | findpt_listel |
struct | opt_edge_data_2 |
struct | opt_point_data_2 |
struct | opt_data_2 |
struct | findpt_data_2 |
struct | opt_face_data_3 |
struct | opt_edge_data_3 |
struct | opt_point_data_3 |
struct | opt_data_3 |
struct | findpt_data_3 |
Macros | |
#define | MOAB_POLY_EPS ( 128 * DBL_EPSILON ) |
#define | MOAB_POLY_PI 3.1415926535897932384626433832795028841971693993751058209749445923 |
#define | mbsqrt sqrt |
#define | mbabs fabs |
#define | mbcos cos |
#define | mbsin sin |
#define | mbfloor floor |
#define | mbceil ceil |
#define | INTEGER int |
#define | GLOBAL_INT long |
#define | MAYBE_UNUSED |
#define | tmalloc(type, count) ( (type*)smalloc( ( count ) * sizeof( type ), __FILE__ ) ) |
#define | tcalloc(type, count) ( (type*)scalloc( ( count ), sizeof( type ), __FILE__ ) ) |
#define | trealloc(type, ptr, count) ( (type*)srealloc( ( ptr ), ( count ) * sizeof( type ), __FILE__ ) ) |
#define | MAYBE_UNUSED |
#define | DECLMINMAX(type, prefix) |
Typedefs | |
typedef double | realType |
typedef signed INTEGER | sint |
typedef unsigned INTEGER | uint |
typedef signed GLOBAL_INT | slong |
typedef unsigned GLOBAL_INT | ulong |
typedef int(* | findpt_func) (void *, const realType *, int, uint *, realType *, realType *) |
Functions | |
void | legendre_matrix (const realType *x, int m, realType *P, int n) |
void | legendre_matrix_t (const realType *x, int m, realType *P, int n) |
void | legendre_row (realType x, realType *P, int n) |
void | gauss_nodes (realType *z, int n) |
void | lobatto_nodes (realType *z, int n) |
void | gauss_weights (const realType *z, realType *w, int n) |
void | lobatto_weights (const realType *z, realType *w, int n) |
void | gauss_to_legendre (const realType *z, const realType *w, int n, realType *J) |
void | gauss_to_legendre_t (const realType *z, const realType *w, int n, realType *J) |
void | lobatto_to_legendre (const realType *z, const realType *w, int n, realType *J) |
void | lagrange_weights (const realType *z, unsigned n, const realType *x, unsigned m, realType *J, realType *work) |
void | lagrange_weights_deriv (const realType *z, unsigned n, const realType *x, unsigned m, realType *J, realType *D, realType *work) |
void | lagrange_setup (lagrange_data *p, const realType *z, unsigned n) |
void | lagrange_free (lagrange_data *p) |
void | lagrange_0 (lagrange_data *p, realType x) |
void | lagrange_1 (lagrange_data *p, realType x) |
void | lagrange_2 (lagrange_data *p, realType x) |
void | lagrange_2u (lagrange_data *p) |
void | tensor_c1 (const realType *R, unsigned mr, unsigned nr, const realType *u, realType *v) |
void | tensor_r1 (const realType *R, unsigned mr, unsigned nr, const realType *u, realType *v) |
void | tensor_c2 (const realType *R, unsigned mr, unsigned nr, const realType *S, unsigned ms, unsigned ns, const realType *u, realType *v, realType *work) |
void | tensor_r2 (const realType *R, unsigned mr, unsigned nr, const realType *S, unsigned ms, unsigned ns, const realType *u, realType *v, realType *work) |
void | tensor_c3 (const realType *R, unsigned mr, unsigned nr, const realType *S, unsigned ms, unsigned ns, const realType *T, unsigned mt, unsigned nt, const realType *u, realType *v, realType *work1, realType *work2) |
void | tensor_r3 (const realType *R, unsigned mr, unsigned nr, const realType *S, unsigned ms, unsigned ns, const realType *T, unsigned mt, unsigned nt, const realType *u, realType *v, realType *work1, realType *work2) |
realType | tensor_i1 (const realType *Jr, unsigned nr, const realType *u) |
realType | tensor_i2 (const realType *Jr, unsigned nr, const realType *Js, unsigned ns, const realType *u, realType *work) |
realType | tensor_i3 (const realType *Jr, unsigned nr, const realType *Js, unsigned ns, const realType *Jt, unsigned nt, const realType *u, realType *work) |
realType | tensor_ig1 (const realType *Jr, const realType *Dr, unsigned nr, const realType *u, realType *g) |
realType | tensor_ig2 (const realType *Jr, const realType *Dr, unsigned nr, const realType *Js, const realType *Ds, unsigned ns, const realType *u, realType *g, realType *work) |
realType | tensor_ig3 (const realType *Jr, const realType *Dr, unsigned nr, const realType *Js, const realType *Ds, unsigned ns, const realType *Jt, const realType *Dt, unsigned nt, const realType *u, realType *g, realType *work) |
findpt_data_2 * | findpt_setup_2 (const realType *const xw[2], const unsigned n[2], uint nel, uint max_hash_size, realType bbox_tol) |
findpt_data_3 * | findpt_setup_3 (const realType *const xw[3], const unsigned n[3], uint nel, uint max_hash_size, realType bbox_tol) |
void | findpt_free_2 (findpt_data_2 *p) |
void | findpt_free_3 (findpt_data_3 *p) |
const realType * | findpt_allbnd_2 (const findpt_data_2 *p) |
const realType * | findpt_allbnd_3 (const findpt_data_3 *p) |
int | findpt_2 (findpt_data_2 *p, const realType x[2], int guess, uint *el, realType r[2], realType *dist) |
int | findpt_3 (findpt_data_3 *p, const realType x[3], int guess, uint *el, realType r[3], realType *dist) |
void | findpt_weights_2 (findpt_data_2 *p, const realType r[2]) |
void | findpt_weights_3 (findpt_data_3 *p, const realType r[3]) |
double | findpt_eval_2 (findpt_data_2 *p, const realType *u) |
double | findpt_eval_3 (findpt_data_3 *p, const realType *u) |
void | opt_alloc_3 (opt_data_3 *p, lagrange_data *ld) |
void | opt_free_3 (opt_data_3 *p) |
double | opt_findpt_3 (opt_data_3 *p, const realType *const elx[3], const realType xstar[3], realType r[3], unsigned *constr) |
void | opt_vol_set_intp_3 (opt_data_3 *p, const realType r[3]) |
void | opt_alloc_2 (opt_data_2 *p, lagrange_data *ld) |
void | opt_free_2 (opt_data_2 *p) |
double | opt_findpt_2 (opt_data_2 *p, const realType *const elx[2], const realType xstar[2], realType r[2], unsigned *constr) |
void | fail (const char *fmt,...) |
static void * | smalloc (size_t size, const char *file) MAYBE_UNUSED |
static void * | scalloc (size_t nmemb, size_t size, const char *file) MAYBE_UNUSED |
static void * | srealloc (void *ptr, size_t size, const char *file) MAYBE_UNUSED |
static realType | r1norm_1 (realType a) MAYBE_UNUSED |
static realType | r1norm_2 (realType a, realType b) MAYBE_UNUSED |
static realType | r1norm_3 (realType a, realType b, realType c) MAYBE_UNUSED |
static realType | r2norm_1 (realType a) MAYBE_UNUSED |
static realType | r2norm_2 (realType a, realType b) MAYBE_UNUSED |
static realType | r2norm_3 (realType a, realType b, realType c) MAYBE_UNUSED |
Variables | |
const unsigned | opt_no_constraints_2 |
const unsigned | opt_no_constraints_3 |
#define DECLMINMAX | ( | type, | |
prefix | |||
) |
Definition at line 679 of file FindPtFuncs.h.
#define GLOBAL_INT long |
Definition at line 47 of file FindPtFuncs.h.
#define INTEGER int |
Definition at line 38 of file FindPtFuncs.h.
#define MAYBE_UNUSED |
Definition at line 676 of file FindPtFuncs.h.
#define MAYBE_UNUSED |
Definition at line 676 of file FindPtFuncs.h.
#define mbabs fabs |
Definition at line 16 of file FindPtFuncs.h.
#define mbceil ceil |
Definition at line 20 of file FindPtFuncs.h.
#define mbcos cos |
Definition at line 17 of file FindPtFuncs.h.
#define mbfloor floor |
Definition at line 19 of file FindPtFuncs.h.
#define mbsin sin |
Definition at line 18 of file FindPtFuncs.h.
#define mbsqrt sqrt |
Definition at line 15 of file FindPtFuncs.h.
#define MOAB_POLY_EPS ( 128 * DBL_EPSILON ) |
Definition at line 12 of file FindPtFuncs.h.
#define MOAB_POLY_PI 3.1415926535897932384626433832795028841971693993751058209749445923 |
Definition at line 13 of file FindPtFuncs.h.
#define tcalloc | ( | type, | |
count | |||
) | ( (type*)scalloc( ( count ), sizeof( type ), __FILE__ ) ) |
Definition at line 636 of file FindPtFuncs.h.
#define tmalloc | ( | type, | |
count | |||
) | ( (type*)smalloc( ( count ) * sizeof( type ), __FILE__ ) ) |
Definition at line 635 of file FindPtFuncs.h.
#define trealloc | ( | type, | |
ptr, | |||
count | |||
) | ( (type*)srealloc( ( ptr ), ( count ) * sizeof( type ), __FILE__ ) ) |
Definition at line 637 of file FindPtFuncs.h.
Definition at line 538 of file FindPtFuncs.h.
typedef double realType |
Definition at line 56 of file FindPtFuncs.h.
Definition at line 61 of file FindPtFuncs.h.
typedef signed GLOBAL_INT slong |
Definition at line 71 of file FindPtFuncs.h.
Definition at line 65 of file FindPtFuncs.h.
typedef unsigned GLOBAL_INT ulong |
Definition at line 79 of file FindPtFuncs.h.
void fail | ( | const char * | fmt, |
... | |||
) |
Definition at line 6 of file errmem.c.
Referenced by main(), ZoltanPartitioner::mbGlobalSuccess(), scalloc(), smalloc(), and srealloc().
int findpt_2 | ( | findpt_data_2 * | p, |
const realType | x[2], | ||
int | guess, | ||
uint * | el, | ||
realType | r[2], | ||
realType * | dist | ||
) |
int findpt_3 | ( | findpt_data_3 * | p, |
const realType | x[3], | ||
int | guess, | ||
uint * | el, | ||
realType | r[3], | ||
realType * | dist | ||
) |
const realType* findpt_allbnd_2 | ( | const findpt_data_2 * | p | ) |
const realType* findpt_allbnd_3 | ( | const findpt_data_3 * | p | ) |
|
inline |
Definition at line 2283 of file findpt.c.
References lagrange_data::J, findpt_data_2::ld, lagrange_data::n, findpt_data_2::od_work, and tensor_i2().
|
inline |
Definition at line 2288 of file findpt.c.
References lagrange_data::J, findpt_data_3::ld, lagrange_data::n, findpt_data_3::od_work, and tensor_i3().
void findpt_free_2 | ( | findpt_data_2 * | p | ) |
void findpt_free_3 | ( | findpt_data_3 * | p | ) |
findpt_data_2* findpt_setup_2 | ( | const realType *const | xw[2], |
const unsigned | n[2], | ||
uint | nel, | ||
uint | max_hash_size, | ||
realType | bbox_tol | ||
) |
findpt_data_3* findpt_setup_3 | ( | const realType *const | xw[3], |
const unsigned | n[3], | ||
uint | nel, | ||
uint | max_hash_size, | ||
realType | bbox_tol | ||
) |
|
inline |
Definition at line 2270 of file findpt.c.
References lagrange_0(), and findpt_data_2::ld.
|
inline |
void lagrange_0 | ( | lagrange_data * | p, |
realType | x | ||
) |
void lagrange_1 | ( | lagrange_data * | p, |
realType | x | ||
) |
void lagrange_2 | ( | lagrange_data * | p, |
realType | x | ||
) |
void lagrange_2u | ( | lagrange_data * | p | ) |
void lagrange_free | ( | lagrange_data * | p | ) |
void lagrange_setup | ( | lagrange_data * | p, |
const realType * | z, | ||
unsigned | n | ||
) |
void lagrange_weights | ( | const realType * | z, |
unsigned | n, | ||
const realType * | x, | ||
unsigned | m, | ||
realType * | J, | ||
realType * | work | ||
) |
void lagrange_weights_deriv | ( | const realType * | z, |
unsigned | n, | ||
const realType * | x, | ||
unsigned | m, | ||
realType * | J, | ||
realType * | D, | ||
realType * | work | ||
) |
void lobatto_nodes | ( | realType * | z, |
int | n | ||
) |
void opt_alloc_2 | ( | opt_data_2 * | p, |
lagrange_data * | ld | ||
) |
void opt_alloc_3 | ( | opt_data_3 * | p, |
lagrange_data * | ld | ||
) |
double opt_findpt_2 | ( | opt_data_2 * | p, |
const realType *const | elx[2], | ||
const realType | xstar[2], | ||
realType | r[2], | ||
unsigned * | constr | ||
) |
double opt_findpt_3 | ( | opt_data_3 * | p, |
const realType *const | elx[3], | ||
const realType | xstar[3], | ||
realType | r[3], | ||
unsigned * | constr | ||
) |
void opt_free_2 | ( | opt_data_2 * | p | ) |
void opt_free_3 | ( | opt_data_3 * | p | ) |
void opt_vol_set_intp_3 | ( | opt_data_3 * | p, |
const realType | r[3] | ||
) |
Definition at line 728 of file FindPtFuncs.h.
References mbabs.
Referenced by findpt_hash_2(), and opt_findpt_2().
Definition at line 733 of file FindPtFuncs.h.
References mbabs.
Referenced by findpt_hash_3(), and opt_findpt_3().
Definition at line 738 of file FindPtFuncs.h.
References mbsqrt.
Definition at line 743 of file FindPtFuncs.h.
References mbsqrt.
Referenced by findpt_pass_2(), and opt_findpt_2().
Definition at line 748 of file FindPtFuncs.h.
References mbsqrt.
Referenced by findpt_pass_3(), and opt_findpt_3().
|
static |
|
static |
|
static |
realType tensor_ig3 | ( | const realType * | Jr, |
const realType * | Dr, | ||
unsigned | nr, | ||
const realType * | Js, | ||
const realType * | Ds, | ||
unsigned | ns, | ||
const realType * | Jt, | ||
const realType * | Dt, | ||
unsigned | nt, | ||
const realType * | u, | ||
realType * | g, | ||
realType * | work | ||
) |
|
extern |
Definition at line 10 of file findpt.c.
Referenced by findpt_guess_2(), findpt_pass_2(), and opt_findpt_2().
|
extern |
Definition at line 11 of file findpt.c.
Referenced by findpt_guess_3(), findpt_pass_3(), moab::ElemUtil::hex_findpt(), moab::Element::SpectralHex::ievaluate(), moab::Element::SpectralQuad::ievaluate(), opt_findpt_3(), and moab::SpectralQuad::reverseEvalFcn().