#include <bernstein_eenv.hpp>
Definition at line 246 of file bernstein_eenv.hpp.
typedef eenv_base::sz_t sz_t |
Reimplemented from eenv_base.
Definition at line 248 of file bernstein_eenv.hpp.
eenv | ( | ) | [inline] |
Definition at line 264 of file bernstein_eenv.hpp.
Definition at line 265 of file bernstein_eenv.hpp.
References eenv::_alloc_(), eenv_base::compute_strides(), eenv::m_mxvr, eenv_base::m_nvr, eenv::m_pszs, eenv_base::m_szs, and eenv::m_vrs.
Definition at line 277 of file bernstein_eenv.hpp.
References eenv::_alloc_(), eenv_base::compute_strides(), eenv_base::copy(), eenv::m_mxvr, eenv_base::m_nvr, eenv::m_pszs, eenv_base::m_szs, and eenv::m_vrs.
00278 { 00279 _alloc_(nvr); 00280 std::copy(szs,szs+m_nvr,m_szs); 00281 std::copy(vrs,vrs+m_nvr,m_vrs); 00282 compute_strides(); 00283 m_pszs[-1] = 0; 00284 m_mxvr = m_vrs[0]; 00285 for (sz_t v = 0; v < m_nvr; v ++ ) if ( m_vrs[v] > m_mxvr ) m_mxvr = m_vrs[v]; 00286 for ( sz_t v = 0; v < m_nvr; v ++ ) 00287 m_pszs[v] = m_pszs[v-1] + m_szs[v]; 00288 };
~eenv | ( | ) | [inline] |
Definition at line 302 of file bernstein_eenv.hpp.
References eenv_base::m_nvr, eenv_base::m_szs, and eenv_base::nvars().
Referenced by eenv::diff().
void _alloc_ | ( | sz_t | nvr | ) | [inline] |
Definition at line 256 of file bernstein_eenv.hpp.
References eenv_base::m_nvr, eenv::m_pszs, eenv_base::m_str, eenv_base::m_szs, and eenv::m_vrs.
Referenced by eenv::diff(), and eenv::eenv().
static void _mvrcvloop_ | ( | bernstein::eenv * | oenv, | |
real_t * | dst, | |||
bernstein::eenv * | aenv, | |||
real_t * | sra, | |||
bernstein::eenv * | benv, | |||
real_t * | srb, | |||
unsigned * | asupp = 0 , |
|||
unsigned | nas = 0 , |
|||
unsigned * | oasup = 0 , |
|||
unsigned * | bsupp = 0 , |
|||
unsigned | nbs = 0 , |
|||
unsigned * | obsup = 0 | |||
) | [inline, static] |
operations sous forme monomiale
Definition at line 442 of file bernstein_eenv.hpp.
void compute_strides | ( | ) | [inline, protected, inherited] |
Definition at line 29 of file bernstein_eenv.hpp.
References eenv_base::m_nvr, eenv_base::m_str, and eenv_base::m_szs.
Referenced by eenv::diff(), eenv::eenv(), and eenv_base::set_szs().
void copy | ( | X * | dst, | |
real_t const *const | src | |||
) | [inline, inherited] |
Definition at line 53 of file bernstein_eenv.hpp.
References eenv_base::data_size().
Referenced by eenv::diff(), eenv::eenv(), eenv_base::eval(), eenv_base::meval(), and eenv_base::monoms_eval().
sz_t data_size | ( | ) | const [inline, inherited] |
Definition at line 39 of file bernstein_eenv.hpp.
References eenv_base::m_str.
Referenced by eenv_base::copy(), eenv_base::eval(), eenv_base::flatness(), eenv_base::fromMonoms(), eenv_base::hodograph(), eenv_base::lrestrict(), eenv_base::maxs(), eenv::mdiff(), eenv_base::meval(), eenv_base::mins(), eenv::monoms_derivative(), eenv_base::monoms_eval(), eenv_base::rrestrict(), eenv_base::scale(), eenv_base::sgnchg(), eenv_base::split(), eenv_base::split2(), eenv_base::toMonoms(), and eenv::vmap().
00039 { return m_str[-1]; };
real_t density | ( | real_t * | src, | |
const real_t | prec = 1e-12 , |
|||
unsigned | nsmp = 0 | |||
) | [inline] |
Definition at line 360 of file bernstein_eenv.hpp.
References mmx::abs(), eenv_base::nvars(), and eenv::var().
00360 { 00361 if ( c < 0 ) o << "-"; 00362 else 00363 if ( ! first ) o << "+"; 00364 o << std::abs(c); 00365 for ( sz_t v = 0; v < nvars(); v ++ ) 00366 if ( add[var(v)] ) o << "*x" << var(v) << "^" << add[var(v)]; 00367 return true; 00368 }; 00369 return false; 00370 }; 00371 00372 template<typename real_t> 00373 void monoms_print( std::ostream& o, real_t * src ) 00374 { 00375 unsigned i;
Definition at line 322 of file bernstein_eenv.hpp.
References eenv::_alloc_(), eenv_base::compute_strides(), eenv_base::copy(), eenv::m_mxvr, eenv_base::m_nvr, eenv_base::m_szs, eenv::m_vrs, eenv_base::nvars(), eenv_base::sz(), and eenv::~eenv().
Referenced by eenv::monoms_derivative().
static void elevation | ( | eenv * | out, | |
eenv * | in, | |||
real_t * | dst, | |||
real_t * | src, | |||
bzenv< real_t > * | bznv = bzenv<real_t>::_default_ | |||
) | [inline, static] |
Definition at line 970 of file bernstein_eenv.hpp.
Definition at line 965 of file bernstein_eenv.hpp.
real_t eval | ( | real_t * | data, | |
const real_t * | prm, | |||
real_t * | chunk = 0 | |||
) | [inline, inherited] |
Definition at line 56 of file bernstein_eenv.hpp.
References eenv_base::copy(), eenv_base::data_size(), mmx::brnops::decasteljau(), eenv_base::m_str, eenv_base::m_szs, and eenv_base::nvars().
00057 { 00058 sz_t i,j; 00059 real_t * tmp; 00060 if ( chunk ) tmp = chunk; 00061 else tmp = new real_t[ data_size() ]; 00062 std::copy(data,data+data_size(), tmp ); 00063 for ( int v = nvars()-1; v >= 0 ; v -- ) 00064 for ( i = 0; i <data_size(); i += m_str[v-1] ) 00065 brnops::decasteljau(tmp+i,m_szs[v],prm[v],m_str[v]); 00066 real_t val = tmp[0]; 00067 if ( !chunk ) delete[] tmp; 00068 return val; 00069 };
real_t flatness | ( | real_t * | data, | |
int | v | |||
) | [inline, inherited] |
Definition at line 233 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, eenv_base::m_szs, and mmx::vctops::max().
void fromMonoms | ( | real_t * | data, | |
bzenv< real_t > * | env = bzenv<real_t>::_default_ | |||
) | [inline, inherited] |
Definition at line 209 of file bernstein_eenv.hpp.
References eenv_base::fromMonoms(), and eenv_base::m_nvr.
Referenced by eenv_base::fromMonoms().
00209 { for ( sz_t v = 0; v < m_nvr; fromMonoms(data,v,env), v++ ); };
void fromMonoms | ( | real_t * | data, | |
sz_t | v, | |||
bzenv< real_t > * | env = bzenv<real_t>::_default_ | |||
) | [inline, inherited] |
Definition at line 201 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, and eenv_base::m_szs.
void hodograph | ( | real_t * | dst, | |
real_t * | src, | |||
int | v | |||
) | [inline, inherited] |
Definition at line 42 of file bernstein_eenv.hpp.
References eenv_base::data_size(), mmx::brnops::hodograph(), eenv_base::m_str, and eenv_base::m_szs.
int indexofvar | ( | sz_t | gv | ) | const [inline] |
Definition at line 311 of file bernstein_eenv.hpp.
References eenv_base::m_nvr, and eenv::m_vrs.
void lrestrict | ( | real_t * | data, | |
int | v, | |||
const real_t & | mn | |||
) | [inline, inherited] |
Definition at line 173 of file bernstein_eenv.hpp.
References eenv_base::data_size(), mmx::brnops::lrestrict(), eenv_base::m_str, and eenv_base::m_szs.
void maxs | ( | real_t * | _maxs_, | |
real_t const *const | data | |||
) | const [inline, inherited] |
Definition at line 145 of file bernstein_eenv.hpp.
References eenv_base::m_nvr, eenv_base::m_szs, and eenv_base::maxs().
Referenced by eenv_base::maxs().
void maxs | ( | real_t * | _maxs_, | |
real_t const *const | data, | |||
sz_t | v | |||
) | const [inline, inherited] |
Definition at line 131 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, and eenv_base::m_szs.
00132 { 00133 sz_t p,k,i,j; 00134 00135 for ( p = 0, k = 0; k < m_szs[v]; k++, p += m_str[v] ) 00136 { 00137 _maxs_[k] = data[p]; 00138 for ( i = 0; i < data_size(); i += m_str[v-1] ) 00139 for ( j = i; j < i + m_str[v]; j ++ ) 00140 if ( data[j+p] > _maxs_[k] ) _maxs_[k] = data[j+p]; 00141 }; 00142 };
static void mcrossp | ( | eenv * | res, | |
eenv * | a, | |||
eenv * | b, | |||
real_t ** | dst, | |||
real_t ** | src_a, | |||
real_t ** | src_b | |||
) | [inline, static] |
Definition at line 665 of file bernstein_eenv.hpp.
static void mcrossp | ( | eenv * | oenv, | |
real_t ** | dst, | |||
eenv * | aenv, | |||
real_t ** | src_a, | |||
eenv * | benv, | |||
real_t ** | src_b, | |||
bool | clear = true , |
|||
unsigned * | asupp = 0 , |
|||
unsigned | nas = 0 , |
|||
unsigned * | oasup = 0 , |
|||
unsigned * | bsupp = 0 , |
|||
unsigned | nbs = 0 , |
|||
unsigned * | obsup = 0 | |||
) | [inline, static] |
Definition at line 617 of file bernstein_eenv.hpp.
static void mdiff | ( | eenv * | res, | |
eenv * | a, | |||
real_t * | dst, | |||
real_t const *const | src, | |||
int | v | |||
) | [inline, static] |
Definition at line 334 of file bernstein_eenv.hpp.
References eenv_base::data_size(), mmx::brnops::diff(), eenv_base::m_str, and eenv_base::sz().
Referenced by eenv::monoms_derivative().
00335 { 00336 sz_t is = 0; 00337 for ( sz_t i = 0; i < res->data_size(); i += res->m_str[v-1], is += a->m_str[v-1] ) 00338 for ( sz_t j = 0; j < a->m_str[v]; j ++ ) 00339 upoldse::diff(dst+i+j,src+is+j,a->sz(v),a->m_str[v]); 00340 };
static void mdotp | ( | eenv * | oenv, | |
real_t * | dst, | |||
eenv * | aenv, | |||
real_t ** | src_a, | |||
eenv * | benv, | |||
real_t ** | src_b, | |||
int | n, | |||
bool | clear = true , |
|||
unsigned * | asupp = 0 , |
|||
unsigned | nas = 0 , |
|||
unsigned * | oasup = 0 , |
|||
unsigned * | bsupp = 0 , |
|||
unsigned | nbs = 0 , |
|||
unsigned * | obsup = 0 | |||
) | [inline, static] |
Definition at line 680 of file bernstein_eenv.hpp.
void meval | ( | X & | res, | |
real_t * | data, | |||
const X * | prm | |||
) | const [inline, inherited] |
Definition at line 90 of file bernstein_eenv.hpp.
References eenv_base::copy(), eenv_base::data_size(), mmx::upoldse_::horner(), eenv_base::m_str, eenv_base::m_szs, and eenv_base::nvars().
00091 { 00092 sz_t i; 00093 X * tmp = new X[ data_size() ]; 00094 std::copy(data,data+data_size(),tmp); 00095 for ( int v = nvars()-1; v >= 0 ; v -- ) 00096 for ( i = 0; i < data_size(); i += m_str[v-1] ) 00097 *(tmp+i) = univariate::horner(tmp+i,m_szs[v],prm[v],m_str[v]); 00098 res = tmp[0]; 00099 delete[] tmp; 00100 };
void mins | ( | real_t * | _mins_, | |
real_t const *const | data | |||
) | const [inline, inherited] |
Definition at line 149 of file bernstein_eenv.hpp.
References eenv_base::m_nvr, eenv_base::m_szs, and eenv_base::mins().
Referenced by eenv_base::mins().
void mins | ( | real_t * | _mins_, | |
real_t const *const | data, | |||
sz_t | v | |||
) | const [inline, inherited] |
Definition at line 118 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, and eenv_base::m_szs.
static void mmul | ( | eenv * | oenv, | |
real_t * | dst, | |||
eenv * | aenv, | |||
real_t * | src_a, | |||
eenv * | benv, | |||
real_t * | src_b, | |||
bool | clear = true , |
|||
unsigned * | asupp = 0 , |
|||
unsigned | nas = 0 , |
|||
unsigned * | oasupp = 0 , |
|||
unsigned * | bsupp = 0 , |
|||
unsigned | nbs = 0 , |
|||
unsigned * | obsupp = 0 | |||
) | [inline, static] |
Definition at line 583 of file bernstein_eenv.hpp.
static void monoms_crossprod | ( | eenv * | res, | |
eenv * | a, | |||
eenv * | b, | |||
real_t ** | dst, | |||
real_t ** | src_a, | |||
real_t ** | src_b | |||
) | [inline, static] |
Definition at line 669 of file bernstein_eenv.hpp.
static void monoms_derivative | ( | eenv * | res, | |
eenv * | a, | |||
real_t ** | dst, | |||
real_t ** | src, | |||
int | v, | |||
int | n = 1 | |||
) | [inline, static] |
Definition at line 343 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv::diff(), and eenv::mdiff().
00344 { 00345 res->diff(a,v); 00346 for ( int c = 0; c < n; c ++ ) 00347 { 00348 dst[c] = new real_t[ res->data_size() ]; 00349 mdiff( res, a, dst[c], src[c], v ); 00350 }; 00351 };
static void monoms_dotprod | ( | eenv * | res, | |
eenv * | a, | |||
eenv * | b, | |||
real_t *& | dst, | |||
real_t ** | src_a, | |||
real_t ** | src_b, | |||
int | n | |||
) | [inline, static] |
Definition at line 701 of file bernstein_eenv.hpp.
real_t monoms_eval | ( | real_t * | data, | |
const real_t * | prm | |||
) | const [inline, inherited] |
Definition at line 103 of file bernstein_eenv.hpp.
References eenv_base::copy(), eenv_base::data_size(), mmx::upoldse_::horner(), eenv_base::m_str, eenv_base::m_szs, and eenv_base::nvars().
00104 { 00105 sz_t i; 00106 real_t * tmp = new real_t[ data_size() ]; 00107 std::copy(data,data+data_size(), tmp ); 00108 for ( int v = nvars()-1; v >= 0 ; v -- ) 00109 for ( i = 0; i < data_size(); i += m_str[v-1] ) 00110 *(tmp+i) = upoldse::horner(tmp+i,m_szs[v],prm[v],m_str[v]); 00111 real_t val = tmp[0]; 00112 delete[] tmp; 00113 return val; 00114 };
static void monoms_multiply | ( | bernstein::eenv * | res, | |
bernstein::eenv * | a, | |||
bernstein::eenv * | b, | |||
real_t * | dst, | |||
real_t * | src_a, | |||
real_t * | src_b | |||
) | [inline, static] |
Definition at line 558 of file bernstein_eenv.hpp.
static void monoms_multiply_loop | ( | eenv * | o, | |
eenv * | a, | |||
eenv * | b, | |||
real_t * | dst, | |||
real_t * | src_a, | |||
real_t * | src_b | |||
) | [inline, static] |
Definition at line 554 of file bernstein_eenv.hpp.
void monoms_print | ( | std::ostream & | o, | |
real_t * | src | |||
) | [inline] |
Definition at line 936 of file bernstein_eenv.hpp.
static void msimplify | ( | eenv * | ienv, | |
real_t * | data | |||
) | [inline, static] |
Definition at line 883 of file bernstein_eenv.hpp.
sz_t nvars | ( | ) | const [inline, inherited] |
Definition at line 38 of file bernstein_eenv.hpp.
References eenv_base::m_nvr.
Referenced by eenv::density(), eenv::diff(), eenv_base::eval(), eenv_base::meval(), eenv_base::monoms_eval(), and eenv::~eenv().
00038 { return m_nvr; };
static void oaddress | ( | bernstein::eenv * | oenv, | |
unsigned * | osupp, | |||
bernstein::eenv * | ienv, | |||
unsigned * | isupp = 0 , |
|||
unsigned | nsp = 0 | |||
) | [inline, static] |
Definition at line 418 of file bernstein_eenv.hpp.
00422 { 00423 out << "eenv:"; 00424 out << "\n\tszs = "; 00425 vctops::print(env_m.hpp_szs,env_m.hpp_nvr,1,out); 00426 out << "\n\tvrs = "; 00427 vctops::print(env_m.hpp_vrs,env_m.hpp_nvr,1,out); 00428 out << "\n"; 00429 out << "\n\ttsz = " << env.data_size() << std::endl; 00430 return out; 00431 }; 00432 }; 00433 //-------------------------------------------------------------------- 00434 } //namespace mmx 00435 /********************************************************************/ 00436 #endif // 00437 #endif //
Definition at line 389 of file bernstein_eenv.hpp.
References eenv::var().
static void pmmul | ( | eenv * | oenv, | |
real_t ** | dst, | |||
eenv * | aenv, | |||
real_t ** | src_a, | |||
eenv * | benv, | |||
real_t ** | src_b, | |||
int | n, | |||
bool | clear = true , |
|||
unsigned * | asupp = 0 , |
|||
unsigned | nas = 0 , |
|||
unsigned * | oasup = 0 , |
|||
unsigned * | bsupp = 0 , |
|||
unsigned | nbs = 0 , |
|||
unsigned * | obsup = 0 | |||
) | [inline, static] |
Definition at line 564 of file bernstein_eenv.hpp.
bool print_monom | ( | std::ostream & | o, | |
const real_t & | c, | |||
sz_t * | add, | |||
bool | first | |||
) | [inline] |
Definition at line 920 of file bernstein_eenv.hpp.
Definition at line 300 of file bernstein_eenv.hpp.
References eenv::m_pszs.
00300 { return m_pszs[v-1];}
sz_t psz | ( | ) | [inline] |
Definition at line 299 of file bernstein_eenv.hpp.
References eenv_base::m_nvr, and eenv::m_pszs.
void rrestrict | ( | real_t * | data, | |
int | v, | |||
const real_t & | mx | |||
) | [inline, inherited] |
Definition at line 182 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, eenv_base::m_szs, and mmx::brnops::rrestrict().
00183 { 00184 int i,j; 00185 for ( i = 0; i < data_size(); i += m_str[v-1] ) 00186 for ( j = i; j < i + m_str[v]; j++ ) 00187 brnops::rrestrict(data+j,m_szs[v],mx,m_str[v]); 00188 };
static void rvbinoms | ( | bernstein::eenv * | ienv, | |
real_t * | bcff, | |||
unsigned * | isupp = 0 , |
|||
unsigned | nsp = 0 , |
|||
bernstein::bzenv< real_t > * | bznv = bzenv<real_t>::_default_ | |||
) | [inline, static] |
operations sous forme de bernstein
Definition at line 712 of file bernstein_eenv.hpp.
void scale | ( | real_t * | data | ) | [inline, inherited] |
Definition at line 194 of file bernstein_eenv.hpp.
References eenv_base::data_size().
00194 { vctops::scale(data,data_size()); };
void set_szs | ( | sz_t * | szs | ) | [inline, inherited] |
Definition at line 36 of file bernstein_eenv.hpp.
References eenv_base::compute_strides(), and eenv_base::m_szs.
00036 { m_szs = szs; compute_strides(); };
bool sgnchg | ( | real_t * | data | ) | [inline, inherited] |
Definition at line 191 of file bernstein_eenv.hpp.
References eenv_base::data_size().
00191 { return vctops::sgnchg(data,data_size()); };
void split | ( | real_t * | left, | |
real_t * | right, | |||
int | v, | |||
const real_t & | t | |||
) | [inline, inherited] |
algorithmes de de Casteljau
Definition at line 155 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, and eenv_base::m_szs.
void split2 | ( | real_t * | left, | |
real_t * | right, | |||
int | v | |||
) | [inline, inherited] |
Definition at line 164 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, and eenv_base::m_szs.
void spmeval | ( | X & | res, | |
real_t * | src, | |||
X * | prm, | |||
unsigned * | supp, | |||
unsigned | nsupp | |||
) | const [inline, inherited] |
Definition at line 72 of file bernstein_eenv.hpp.
References mmx::add(), eenv_base::m_nvr, and eenv_base::m_szs.
00073 { 00074 sz_t v, lg, d; 00075 unsigned i,add,o; 00076 lg = 0; 00077 for ( v = 0; v < m_nvr; v ++ ) if ( m_szs[v] > m_szs[lg] ) lg = v; 00078 X powers [m_nvr][m_szs[lg]]; 00079 X acc; 00080 for ( v = 0; v < m_nvr; v ++ ) 00081 for ( powers[v][0] = 1.0, d = 1; d < m_szs[v]; powers[v][d] = prm[v]*powers[v][d-1], d ++ ); 00082 res = 0; 00083 for ( i = 0; i < nsupp; res += acc, i ++ ) 00084 for ( add = supp[i], acc = src[add], v = m_nvr-1; add; add /= m_szs[v], v -- ) 00085 acc *= powers[v][add%m_szs[v]]; 00086 };
static void spmmul | ( | eenv * | oenv, | |
real_t * | dst, | |||
eenv * | aenv, | |||
real_t * | src_a, | |||
eenv * | benv, | |||
real_t * | src_b, | |||
bool | clear = true , |
|||
bool | stats = false | |||
) | [inline, static] |
Definition at line 610 of file bernstein_eenv.hpp.
static void spmmul | ( | eenv * | oenv, | |
real_t ** | dst, | |||
eenv * | aenv, | |||
real_t ** | src_a, | |||
eenv * | benv, | |||
real_t ** | src_b, | |||
int | n, | |||
bool | clear = true , |
|||
bool | stats = false | |||
) | [inline, static] |
Definition at line 592 of file bernstein_eenv.hpp.
Definition at line 308 of file bernstein_eenv.hpp.
References eenv_base::m_str.
00308 { return m_str[v]; };
unsigned support | ( | unsigned * | supp, | |
real_t * | src, | |||
const real_t & | prec = 1e-6 | |||
) | [inline] |
Definition at line 379 of file bernstein_eenv.hpp.
00382 { 00383 bool b = print_monom(o,src[i],add,first); 00384 if ( first && b ) first = false; 00385 mcount += b; 00386 c = nvars()-1;
void swap | ( | eenv & | e | ) | [inline] |
Definition at line 290 of file bernstein_eenv.hpp.
References eenv::m_mxvr, eenv_base::m_nvr, eenv::m_pszs, eenv_base::m_szs, and eenv::m_vrs.
Definition at line 37 of file bernstein_eenv.hpp.
References eenv_base::m_szs.
Referenced by eenv::diff(), and eenv::mdiff().
00037 { return m_szs[v]; };
void toMonoms | ( | real_t * | data, | |
bzenv< real_t > * | env = bzenv<real_t>::_default_ | |||
) | [inline, inherited] |
Definition at line 221 of file bernstein_eenv.hpp.
References eenv_base::m_nvr, and eenv_base::toMonoms().
Referenced by eenv_base::toMonoms().
void toMonoms | ( | real_t * | data, | |
sz_t | v, | |||
bzenv< real_t > * | env = bzenv<real_t>::_default_ | |||
) | [inline, inherited] |
Definition at line 213 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, and eenv_base::m_szs.
static void v0restrict | ( | real_t * | rs, | |
real_t * | ms, | |||
bernstein::eenv * | em, | |||
const real_t & | l | |||
) | [inline, static] |
Definition at line 1003 of file bernstein_eenv.hpp.
static void v0restrict | ( | real_t * | rs, | |
bernstein::eenv * | em, | |||
const real_t & | l | |||
) | [inline, static] |
Definition at line 985 of file bernstein_eenv.hpp.
Definition at line 309 of file bernstein_eenv.hpp.
References eenv::m_vrs.
Referenced by eenv::density(), and eenv::op_mul().
00309 { return m_vrs[v]; };
static void vmap | ( | sz_t * | vmap, | |
bernstein::eenv * | o, | |||
bernstein::eenv * | i | |||
) | [inline, static] |
Definition at line 407 of file bernstein_eenv.hpp.
References eenv_base::data_size(), eenv_base::m_str, and eenv_base::m_szs.
00408 { 00409 sz_t io = 0; 00410 sz_t v = 0; 00411 for ( sz_t i = 0; i < in->data_size(); i += in->m_str[v-1], io += out->m_str[v-1] ) 00412 for ( sz_t j = 0; j < in->m_str[v]; j ++ ) 00413 bznv->elevate( dst + io + j, src + i + j , in->m_szs[v], in->m_str[v], out->m_str[v], out->m_szs[v]-in->m_szs[v] ); 00414 }; 00415 00416 #include "bernstein_eenv_vrestrict.hpp"
static void vrestrict | ( | bernstein::eenv * | oenv, | |
bernstein::eenv * | ienv, | |||
X *& | dst, | |||
real_t * | src, | |||
sz_t | v, | |||
const X & | prm | |||
) | [inline, static] |
Definition at line 1012 of file bernstein_eenv.hpp.
Definition at line 255 of file bernstein_eenv.hpp.
Referenced by eenv::diff(), eenv::eenv(), and eenv::swap().
Definition at line 27 of file bernstein_eenv.hpp.
Referenced by eenv::_alloc_(), eenv_base::compute_strides(), eenv::diff(), eenv::eenv(), eenv_base::eenv_base(), eenv_base::fromMonoms(), eenv::indexofvar(), eenv_base::maxs(), eenv_base::mins(), eenv_base::nvars(), eenv::psz(), eenv_base::spmeval(), eenv::swap(), eenv_base::toMonoms(), and eenv::~eenv().
Definition at line 254 of file bernstein_eenv.hpp.
Referenced by eenv::_alloc_(), eenv::eenv(), eenv::psft(), eenv::psz(), and eenv::swap().
Definition at line 27 of file bernstein_eenv.hpp.
Referenced by eenv::_alloc_(), eenv_base::compute_strides(), eenv_base::data_size(), eenv_base::eval(), eenv_base::flatness(), eenv_base::fromMonoms(), eenv_base::hodograph(), eenv_base::lrestrict(), eenv_base::maxs(), eenv::mdiff(), eenv_base::meval(), eenv_base::mins(), eenv_base::monoms_eval(), eenv_base::rrestrict(), eenv_base::split(), eenv_base::split2(), eenv::stride(), eenv_base::toMonoms(), and eenv::vmap().
Definition at line 27 of file bernstein_eenv.hpp.
Referenced by eenv::_alloc_(), eenv_base::compute_strides(), eenv::diff(), eenv::eenv(), eenv_base::eval(), eenv_base::flatness(), eenv_base::fromMonoms(), eenv_base::hodograph(), eenv_base::lrestrict(), eenv_base::maxs(), eenv_base::meval(), eenv_base::mins(), eenv_base::monoms_eval(), eenv_base::rrestrict(), eenv_base::set_szs(), eenv_base::split(), eenv_base::split2(), eenv_base::spmeval(), eenv::swap(), eenv_base::sz(), eenv_base::toMonoms(), eenv::vmap(), and eenv::~eenv().
Definition at line 253 of file bernstein_eenv.hpp.
Referenced by eenv::_alloc_(), eenv::diff(), eenv::eenv(), eenv::indexofvar(), eenv::swap(), and eenv::var().