47#include "MR_rect_tree.hpp"
48#include "MR_cell_cplx.hpp"
49#include "MR_rt_to_cc.hpp"
52typedef mjr::tree15b1d1rT tt_t;
53typedef mjr::MRccT5 cc_t;
54typedef mjr::MR_rt_to_cc<tt_t, cc_t> tc_t;
57tt_t::rrpt_t
f(tt_t::drpt_t x) {
58 double ret = (x<0?-1:1)*std::pow(std::abs(x), 1/3.0) * std::sqrt((x+1.5)*(x+1.5)-1) * (x-2);
60 ret = 2+std::sin(20*x);
74 tree.refine_grid(5,
f);
77 tree.refine_recursive_if_cell_vertex_is_nan(10,
f);
81 tree.refine_leaves_recursive_cell_pred(10,
f, [&tree](tt_t::diti_t i) {
return (tree.cell_near_domain_point(0.0, 1.0e-2, i)); });
85 tree.refine_leaves_recursive_cell_pred(10,
f, [&tree](tt_t::diti_t i) {
return (tree.cell_near_domain_point(2.0, 1.0e-2, i)); });
89 tree.refine_leaves_recursive_cell_pred(11,
f, [&tree](tt_t::diti_t i) {
return (tree.cell_near_domain_point(-2.619185320, 1.0e-2, i)); });
93 tree.refine_leaves_recursive_cell_pred(10,
f, [&tree](tt_t::diti_t i) {
return (tree.diti_to_drpt(i) >= 2.0); });
96 tree.refine_leaves_recursive_cell_pred(10,
f, [&tree](tt_t::diti_t i) {
return (tree.cell_near_domain_point(-0.2171001290, 1.0e-2, i)); });
100 tree.refine_leaves_recursive_cell_pred(8,
f, [&tree](tt_t::diti_t i) {
return (tree.cell_near_domain_point(0.8775087009, 1.0e-2, i)); });
105 tc_t::construct_geometry_fans(ccplx,
108 {{tc_t::val_src_spc_t::FDOMAIN, 0 },
109 {tc_t::val_src_spc_t::FRANGE, 0 },
110 {tc_t::val_src_spc_t::CONSTANT, 0.0}},
115 ccplx.create_named_datasets({
"x",
"f(x)"});
119 ccplx.write_xml_vtk(
"curve_plot.vtu",
"curve_plot");
double f(double x, double y)