14 Refiner(Domain1D& domain);
17 void setCriteria(doublereal ratio = 10.0,
18 doublereal slope = 0.8,
19 doublereal curve = 0.8,
20 doublereal prune = -0.1) {
26 void setActive(
int comp,
bool state =
true) {
27 m_active[comp] = state;
29 void setMaxPoints(
int npmax) {
34 void setGridMin(
double gridmin) {
40 double gridMin()
const {
44 int analyze(
size_t n,
const doublereal* z,
const doublereal* x);
45 int getNewGrid(
int n,
const doublereal* z,
int nn, doublereal* znew);
48 return static_cast<int>(m_loc.size());
51 bool newPointNeeded(
size_t j) {
52 return m_loc.find(j) != m_loc.end();
54 bool keepPoint(
size_t j) {
55 return (m_keep[j] != -1);
57 double value(
const double* x,
size_t i,
size_t j);
73 std::map<size_t, int> m_loc;
74 std::map<size_t, int> m_keep;
75 std::map<std::string, int> m_c;
76 std::vector<bool> m_active;
77 doublereal m_ratio, m_slope, m_curve, m_prune;
78 doublereal m_min_range;