34 box_t
box_gen(box_rep_t m1, box_rep_t m2,
int MTH)
39 if(l1.
size()==4){mc1=
median(m1, l1, MTH);}
else{mc1=arc_rep_t();};
41 if(l2.
size()==4){mc2=
median(m2, l2, MTH);}
else{mc2=arc_rep_t();};
49 if(c1>
C(0) && c2>
C(0) ){
53 extrema=
extpts(mc1,r1,mc2,r2);
64 void prepro(bernstein_t & pol1, bernstein_t & pol2, vec_t midpt)
66 bernstein_t p1=pol1,p2=pol2;
72 if(c1x!=c1y && c2x!=c2y){
91 while(!list.empty()){it++;
97 box_rep_t m1(poly1, rec);
98 box_rep_t m2(poly2, rec);
104 box_t newrec=box_gen(m1, m2, MTH); arcgen++;
109 if(newrec.
diam() <( rec.
diam()/
C(2) ) ){;
111 if(newrec.
diam()<epsilon){mo.push(newrec);
113 else{list.push(newrec);
118 if(rec.
diam()<epsilon){mo.push(rec);}
119 else{rec.
split(p);subdiv++;
120 for(
int i=0; i<4; i++){list.push(p[3-i]);}
133 std::cout <<
" * * * * * "<<std::endl;
134 std::cout <<
"iteration: "<<it<<std::endl;
135 std::cout <<
"subdivisoins: "<<subdiv<<std::endl;
136 std::cout <<
"try fatarc generation: "<<arcgen<<std::endl;
Seq< std::vector< C > > extpts(arc_rep< C > mc1, C r1, arc_rep< C > mc2, C r2)
Definition: fatarcs_fcts.hpp:432
bool not_empty()
Definition: fatarcs.hpp:338
std::vector< C > vec_t
Definition: solver_fatarcs.hpp:17
Sequence of terms with reference counter.
Definition: Seq.hpp:28
Seq< domain< C > > solve_bv_fatarcs(polynomial< C, with< Bernstein > > p1, polynomial< C, with< Bernstein > > p2, C eps)
Definition: solver_fatarcs.hpp:161
TMPL Polynomial diff(const Polynomial &pol, int v)
Multivariate Polynomial Differentiation.
Definition: polynomial_fcts.hpp:99
Seq< box_t > seqbox_t
Definition: solver_fatarcs.hpp:23
coeff_t max_eval(arc_rep_t circ)
Definition: fatarcs.hpp:437
solver_mv_fatarcs(bernstein_t p1, bernstein_t p2, C eps)
Definition: solver_fatarcs.hpp:29
R & rep(R &r)
Definition: shared_object.hpp:180
Definition: fatarcs.hpp:307
Definition: fatarcs.hpp:23
void split(domain< C > *ch)
Definition: fatarcs.hpp:91
bool is_arc(arc_rep< C > c)
Definition: fatarcs_fcts.hpp:415
bernstein_t poly2
Definition: solver_fatarcs.hpp:26
void eval(Result &result, const bernstein< Coeff > &controls, const Parameters ¶meters)
Definition: tensor_bernstein_fcts.hpp:195
size_type size() const
Definition: Seq.hpp:166
void prepro(bernstein_t &pol1, bernstein_t &pol2, vec_t midpt)
Definition: solver_fatarcs.hpp:64
box_t box
Definition: fatarcs.hpp:318
box_rep< C > box_rep_t
Definition: solver_fatarcs.hpp:20
Definition: solver_fatarcs.hpp:14
Definition: polynomial.hpp:37
T median(const Interval< T, r > &x)
Definition: Interval_fcts.hpp:91
arc_rep< C > arc_rep_t
Definition: solver_fatarcs.hpp:21
C diam()
Definition: fatarcs.hpp:47
scalar< T > sqrt(const scalar< T > &b)
Definition: scalar.hpp:501
seqbox_t solver(int MTH)
SOLVE ROUTINE.
Definition: solver_fatarcs.hpp:79
std::stack< box_t > stbox_t
Definition: solver_fatarcs.hpp:22
domain< C > minmax_box(Seq< std::vector< C > > ispts, domain< C > box)
Definition: fatarcs_fcts.hpp:476
domain< C > box_t
Definition: solver_fatarcs.hpp:18
box_t box_gen(box_rep_t m1, box_rep_t m2, int MTH)
Definition: solver_fatarcs.hpp:34
Definition: fatarcs.hpp:119
double C
Definition: solver_mv_fatarcs.cpp:16
coeff_t min_grad()
Definition: fatarcs.hpp:420
C dim()
Definition: fatarcs.hpp:40
polynomial< C,with< Bernstein > > bernstein_t
Definition: solver_fatarcs.hpp:19
C epsilon
Definition: solver_fatarcs.hpp:25
Seq< vec_t > event_list()
Definition: fatarcs.hpp:404
Definition: polynomial.hpp:40