domain< C > Struct Template Reference

#include <fatarcs.hpp>

List of all members.

Public Types

Public Member Functions

Public Attributes


Detailed Description

template<class C>
struct domain< C >

Definition at line 23 of file fatarcs.hpp.


Member Typedef Documentation

typedef Interval<C> int_t

Definition at line 25 of file fatarcs.hpp.

typedef Seq< Interval<C> > seqint_t

Definition at line 26 of file fatarcs.hpp.

typedef std::vector<C> vec_t

Definition at line 27 of file fatarcs.hpp.


Constructor & Destructor Documentation

domain (  )  [inline]

Definition at line 34 of file fatarcs.hpp.

Referenced by domain< coeff_t >::split().

00034 { }; 

domain ( int  n  )  [inline]

Definition at line 35 of file fatarcs.hpp.

00035 { int_t unit( C(0),C(1) ); for(int i = 0; i < n; i++){I<<unit;}; }; 

domain ( int_t  intxy  )  [inline]

Definition at line 36 of file fatarcs.hpp.

00036 { I<<intxy<<intxy; };

domain ( int_t  intx,
int_t  inty 
) [inline]

Definition at line 37 of file fatarcs.hpp.

00037 { I<<intx<<inty; };


Member Function Documentation

vec_t center (  )  [inline]

Definition at line 68 of file fatarcs.hpp.

00069     { vec_t v(I.size());
00070       for(unsigned i = 0; i < I.size(); i++){
00071           v[i]= I[i].center();};
00072       return v;
00073     };

Seq<C> delta (  )  [inline]

Definition at line 76 of file fatarcs.hpp.

Referenced by minmax_box().

00077     {Seq<C> d; 
00078       for(unsigned i = 0; i < I.size(); i++){
00079           d<<I[i].size();}
00080       return(d);
00081     };

C diam (  )  [inline]

Definition at line 47 of file fatarcs.hpp.

Referenced by domain< coeff_t >::print(), and solver_mv_fatarcs< C >::solver().

00047             {
00048       C d=C(0); 
00049       for(unsigned i = 0; i < I.size(); i++){
00050           d +=I[i].size()*I[i].size();}
00051       return(sqrt(d));
00052     }

C dim (  )  [inline]

Definition at line 40 of file fatarcs.hpp.

Referenced by solver_mv_fatarcs< C >::solver().

00040            {
00041       int d=0; 
00042       for(unsigned i = 0; i < I.size(); i++){d++;}
00043       return(d);
00044     }

vec_t llc (  )  [inline]

Definition at line 54 of file fatarcs.hpp.

00055     {vec_t v(I.size());
00056       for(unsigned i = 0; i < I.size(); i++){
00057           v[i]= I[i].m;};
00058       return v;
00059     };

void print ( int  digits  )  [inline]

Definition at line 83 of file fatarcs.hpp.

00084     { std::cout.precision(digits);
00085       std::cout<<"["<< TODOUBLE(I[0].m)<<", "<< TODOUBLE(I[0].M)<<"]x["<< TODOUBLE(I[1].m)<<", "<< TODOUBLE(I[1].M)<<"],"<<std::endl;
00086       // std::cout << "box midpt: (" <<(llc()[0]+urc()[0])/C(2)<<","<<(llc()[1]+urc()[1])/C(2)<<")"<<std::endl;
00087       std::cout << "diam: " <<diam()<<std::endl;
00088     };

void split ( domain< C > *  ch  )  [inline]

Definition at line 91 of file fatarcs.hpp.

Referenced by solver_mv_fatarcs< C >::solver().

00092     { 
00093      
00094       C cx=I[0].center() ;
00095       C cy=I[1].center() ;
00096      
00097       Interval<C> Ixl(I[0].m , cx), Ixr(cx , I[0].M), Iyl(I[1].m , cy), Iyr(cy, I[1].M);
00098 
00099      
00100       ch[0]=domain(Ixl,Iyl);
00101       ch[1]=domain(Ixr,Iyl);
00102       ch[2]=domain(Ixl,Iyr);
00103       ch[3]=domain(Ixr,Iyr);
00104     };/*subdivison of a box*/

vec_t urc (  )  [inline]

Definition at line 61 of file fatarcs.hpp.

00062     { vec_t v(I.size());
00063       for(unsigned i = 0; i < I.size(); i++){
00064           v[i]= I[i].M;};
00065       return v;
00066     };


Member Data Documentation


The documentation for this struct was generated from the following file:

Generated on 6 Dec 2012 for realroot by  doxygen 1.6.1