#include <subdivisor_uv_binary.hpp>
Definition at line 21 of file subdivisor_uv_binary.hpp.
bool reduce | ( | Cell * | cl | ) | [inline, static] |
Reimplemented in uv_binary_isolate.
Definition at line 62 of file subdivisor_uv_binary.hpp.
References mmx::has_sign_variation(), and uv_binary_approx::m_eps.
00062 { 00063 if(cl->size() < m_eps) return false; 00064 if(!has_sign_variation(cl->equation())) return false; 00065 return true; 00066 }
bool regular | ( | Cell * | cl | ) | [inline, static] |
Definition at line 69 of file subdivisor_uv_binary.hpp.
References mmx::has_sign_variation().
00069 { 00070 if(!has_sign_variation(cl->equation())) return false; 00071 return true; 00072 }
void subdivide | ( | Cell * | cl, | |
Stack * | stack | |||
) | [inline, static] |
Definition at line 39 of file subdivisor_uv_binary.hpp.
References Scalar, and mmx::split().
00039 { 00040 00041 Cell* left = new Cell(*cl); 00042 Cell* right = new Cell(*cl); 00043 00044 unsigned v=0; 00045 // typename Cell::Scalar s=cl->domain().upper()-cl->domain().lower(),s0; 00046 00047 typename Cell::Scalar m=(cl->domain().upper()+cl->domain().lower())/2; 00048 00049 tensor::split(left->equation(), right->equation(), v); 00050 left->domain().upper()=m; 00051 right->domain().lower()=m; 00052 00053 // std::cout<<"==> "<<left->equation(0)<< " "<<left->domain(0)<<std::endl; 00054 // std::cout<<"==> "<<right->equation(0)<< " "<<right->domain(0)<<std::endl; 00055 // std::cout<<std::endl; 00056 00057 st->push(left); 00058 st->push(right); 00059 };
double m_eps = 1e-6 [static] |
Definition at line 23 of file subdivisor_uv_binary.hpp.
Referenced by uv_binary_isolate::reduce(), and uv_binary_approx::reduce().