SCOREC core
Parallel unstructured mesh tools
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
spr.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2011 Scientific Computation Research Center
3  *
4  * This work is open source software, licensed under the terms of the
5  * BSD license as described in the LICENSE file in the top-level directory.
6  */
7 
8 #ifndef SPR_H
9 #define SPR_H
10 
15 #include "apf.h"
16 #include "apfNew.h"
17 #include "apfDynamicVector.h"
18 #include "apfDynamicMatrix.h"
19 
23 namespace spr {
24 
31 apf::Field* getGradIPField(apf::Field* f,
32  const char* name,
33  int order);
34 
38 apf::Field* recoverField(apf::Field* ip_field);
39 
46 apf::Field* getSPRSizeField(apf::Field* f, double adapt_ratio);
47 
55 apf::Field* getTargetSPRSizeField(
56  apf::Field* f,
57  size_t t,
58  double alpha=0.25,
59  double beta=2.0);
60 
61 }
62 
63 #endif
The APF Field interface.
apf::Field * recoverField(apf::Field *ip_field)
recover a nodal field using patch recovery
apf::Field * getSPRSizeField(apf::Field *f, double adapt_ratio)
run the SPR ZZ error estimator
apf::Field * getGradIPField(apf::Field *f, const char *name, int order)
compute the gradient of a vector or scalar field at integration points
Small runtime-sized matrices.
apf::Field * getTargetSPRSizeField(apf::Field *f, size_t t, double alpha=0.25, double beta=2.0)
run the SPR ZZ error estimator with a target # of output elems
Small runtime-sized vectors.