Rocstar  1.0
Rocstar multiphysics simulation application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rational_rotation.h File Reference
#include <algorithm>
Include dependency graph for rational_rotation.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

 CGAL_kernel_precondition (n > NT0)
 
 CGAL_kernel_precondition (d > NT0)
 
 if (dy > dx)
 
 if (dy *dy *d *d< sq_hypotenuse *n *n)
 
 for (;;)
 
template<class NT >
void rational_rotation_approximation (const double &angle, NT &sin_num, NT &cos_num, NT &denom, const NT &eps_num, const NT &eps_den)
 

Variables

template<class NT >
CGAL_BEGIN_NAMESPACE void
const NT & 
diry
 
template<class NT >
CGAL_BEGIN_NAMESPACE void
const NT NT & 
sin_num = sin
 
template<class NT >
CGAL_BEGIN_NAMESPACE void
const NT NT NT & 
cos_num = cos
 
template<class NT >
CGAL_BEGIN_NAMESPACE void
const NT NT NT NT & 
denom = den
 
template<class NT >
CGAL_BEGIN_NAMESPACE void
const NT NT NT NT const NT & 
eps_num
 
template<class NT >
CGAL_BEGIN_NAMESPACE void
const NT NT NT NT const NT
const NT & 
eps_den
 
const NT & n = eps_num
 
const NT & d = eps_den
 
const NT NT0 = NT(0)
 
const NT NT1 = NT(1)
 
NT & sin = sin_num
 
NT & cos = cos_num
 
NT & den = denom
 
NT dx = CGAL_NTS abs(dirx)
 
NT dy = CGAL_NTS abs(diry)
 
NT sq_hypotenuse = dx*dx + dy*dy
 
NT common_part
 
NT diff_part
 
NT rhs
 
bool lower_ok
 
bool upper_ok
 
 else
 
NT q
 
NT p0 = NT0
 
NT q0 = NT1
 
NT p1 = NT1
 
NT q1 = NT1
 

Function Documentation

CGAL_kernel_precondition ( n  ,
NT0   
)
CGAL_kernel_precondition ( d  ,
NT0   
)
for ( ;;  )

Definition at line 111 of file rational_rotation.h.

References den, p1, q, q1, rhs, and sq_hypotenuse.

Referenced by Window_manifold_2::accumulate_bd_values(), RFC_Window_overlay::detect_features(), NonSmoothSteepestDescent::find_active_set(), MeshImplTags::get_element_data(), MeshImplTags::get_vertex_data(), RFC_Window_transfer::incident_faces(), RFC_Window_transfer::incident_panes(), and RFC_Window_transfer::replicate_metadata().

112  {
113  p = p0 + p1;
114  q = q0 + q1;
115  sin = NT(2)*p*q;
116  den = p*p + q*q;
117 
118  // sanity check for approximation
119  // sin/den < dy/sqrt(hypotenuse) + n/d
120  // && sin/den > dy/sqrt(hypotenuse) - n/d
121  // === sin/den - n/d < dy/sqrt(sq_hypotenuse)
122  // && sin/den + n/d > dy/sqrt(sq_hypotenuse)
123  // === (sin^2 d^2 + n^2 den^2)sq_hypotenuse - 2... < dy^2 d^2 den^2
124  // && (sin^2 d^2 + n^2 den^2)sq_hypotenuse + 2... > dy^2 d^2 den^2
125 
127  diff_part = NT(2)*n*sin*d*den*sq_hypotenuse;
128  rhs = dy*dy*d*d*den*den;
129 
132 
133  if ( lower_ok && upper_ok )
134  {
135  // if ( (p*p)%2 + (q*q)%2 > NT1)
136  // {
137  // sin = p*q;
138  // cos = (q*q - p*p)/2; // exact division
139  // den = (p*p + q*q)/2; // exact division
140  // }
141  // else
142  // {
143  cos = q*q - p*p;
144  // }
145 
146  break;
147  }
148  else
149  {
150  // if ( dy/sqrt(sq_hypotenuse) < sin/den )
151  if ( dy*dy*den*den < sin*sin*sq_hypotenuse )
152  {
153  p1 = p;
154  q1 = q;
155  }
156  else
157  {
158  p0 = p;
159  q0 = q;
160  }
161  }
162  } // for(;;)
const NT & d
NT rhs
NT q1
NT p1
NT & den
NT common_part
NT p0
NT q0
NT & sin
NT sq_hypotenuse
const NT & n
bool lower_ok
NT dy
NT q
NT diff_part
NT & cos
bool upper_ok

Here is the caller graph for this function:

if ( dy  ,
dx   
)

Definition at line 90 of file rational_rotation.h.

References swap().

Referenced by CImg< uintT >::_draw_object3d(), Roccom_map< Object >::add_object(), RFC_Window_overlay::delete_overlay_data(), RFC_Window_overlay::evaluate_normals(), Mesquite::operator<<(), MesqPane::tag_delete(), MesqPane::tag_set_element_data(), tree_out(), and turb_flulesc2f().

91  {
92  swap (dx,dy);
93  }
void swap(int &a, int &b)
Definition: buildface.cpp:88
NT dx
NT dy

Here is the call graph for this function:

Here is the caller graph for this function:

if ( )

Definition at line 96 of file rational_rotation.h.

References NT0, and NT1.

97  {
98  cos = NT1;
99  sin = NT0;
100  den = NT1;
101  }
NT & den
NT & sin
const NT NT0
const NT NT1
NT & cos
void rational_rotation_approximation ( const double &  angle,
NT &  sin_num,
NT &  cos_num,
NT &  denom,
const NT &  eps_num,
const NT &  eps_den 
)

Definition at line 182 of file rational_rotation.h.

References NTS::abs(), CGAL_kernel_precondition, CGAL_NTS, common_part, cos, cos_num, denom, diff_part, eps_den, eps_num, lower_ok, NT0, NT1, p1, q, q1, sin, sin_num, swap(), to_double(), and upper_ok.

Referenced by Rotation_repS2< FT >::Rotation_repS2().

188 {
189 #ifndef CGAL_CFG_NO_NAMESPACE
190  using std::swap;
191 #endif // CGAL_CFG_NO_NAMESPACE
192 
193  const NT& n = eps_num;
194  const NT& d = eps_den;
195  const NT NT0 = NT(0) ;
196  const NT NT1 = NT(1) ;
197  CGAL_kernel_precondition( n > NT0 );
198  CGAL_kernel_precondition( d > NT0 );
199  NT& isin = sin_num;
200  NT& icos = cos_num;
201  NT& iden = denom;
202  double dsin = sin(angle);
203  double dcos = cos(angle);
204  double dn = CGAL::to_double(n);
205  double dd = CGAL::to_double(d);
206  double eps = dn / dd;
207  dsin = CGAL_NTS abs( dsin);
208  dcos = CGAL_NTS abs( dcos);
209  NT common_part;
210  NT diff_part;
211  NT os;
212  bool lower_ok;
213  bool upper_ok;
214  bool swapped = false;
215 
216  if (dsin > dcos)
217  {
218  swapped = true;
219  swap (dsin,dcos);
220  }
221  if ( dsin < eps )
222  {
223  icos = NT1;
224  isin = NT0;
225  iden = NT1;
226  }
227  else
228  {
229  NT p;
230  NT q;
231  NT p0 = NT0;
232  NT q0 = NT1;
233  NT p1 = NT1;
234  NT q1 = NT1;
235 
236  for(;;)
237  {
238  p = p0 + p1;
239  q = q0 + q1;
240  isin = NT(2)*p*q;
241  iden = p*p + q*q;
242 
243  // XXX sanity check for approximation
244  // sin/den < dsin + n/d
245  // && sin/den > dsin - n/d
246  // sin < dsin * den + n/d * den
247  // && sin > dsin * den - n/d * den
248  os = CGAL::to_double(isin);
249  diff_part = eps * CGAL::to_double(iden);
250  common_part = dsin * CGAL::to_double(iden);
251 
252  upper_ok = (common_part - diff_part < os);
253  lower_ok = (os < common_part + diff_part);
254 
255  if ( lower_ok && upper_ok )
256  {
257  // if ( (p*p)%2 + (q*q)%2 > NT1)
258  // {
259  // isin = p*q;
260  // icos = (q*q - p*p)/2; // exact division
261  // iden = (p*p + q*q)/2; // exact division
262  // }
263  // else
264  // {
265  icos = q*q - p*p;
266  // }
267 
268  break;
269  }
270  else
271  {
272  // XXX if ( dsin < sin/den )
273  if ( dsin * CGAL::to_double(iden) < CGAL::to_double(isin) )
274  {
275  p1 = p;
276  q1 = q;
277  }
278  else
279  {
280  p0 = p;
281  q0 = q;
282  }
283  }
284  } // for(;;)
285  }
286 
287  if ( swapped ) { swap (isin,icos); }
288 
289  dsin = sin( angle);
290  dcos = cos( angle);
291  if (dcos < 0.0) { icos = - icos; }
292  if (dsin < 0.0) { isin = - isin; }
293 
294  sin_num = isin;
295  cos_num = icos;
296  denom = iden;
297 }
void swap(int &a, int &b)
Definition: buildface.cpp:88
CGAL_BEGIN_NAMESPACE double to_double(double d)
Definition: double.h:68
const NT & d
NT q1
NT p1
CGAL_BEGIN_NAMESPACE void const NT NT NT & cos_num
NT common_part
NT p0
NT q0
NT & sin
double angle(Vector_3< double > v1, Vector_3< double > v2)
Compute the angle between two vectors.
Definition: geometry.C:61
const NT NT0
const NT & n
CGAL_BEGIN_NAMESPACE void const NT NT NT NT const NT const NT & eps_den
const NT NT1
bool lower_ok
NT q
NT diff_part
CGAL_BEGIN_NAMESPACE void const NT NT & sin_num
NT abs(const NT &x)
Definition: number_utils.h:130
#define CGAL_NTS
CGAL_BEGIN_NAMESPACE void const NT NT NT NT & denom
#define CGAL_kernel_precondition(EX)
NT & cos
bool upper_ok
CGAL_BEGIN_NAMESPACE void const NT NT NT NT const NT & eps_num

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

NT common_part

Definition at line 84 of file rational_rotation.h.

Referenced by rational_rotation_approximation().

NT& cos = cos_num

Definition at line 79 of file rational_rotation.h.

Referenced by CImg< uintT >::_draw_ellipse(), bcondfarfieldperf(), bcondinflowperf(), CImg< uintT >::blur_anisotropic(), CImg< uintT >::cone3d(), CImg< uintT >::cos(), CImg< uintT >::cylinder3d(), RFC_Window_overlay::detect_features(), CImg< uintT >::draw_arrow(), CImg< uintT >::eigen(), CImg< T >::_cimg_math_parser::eval(), CImg< uintT >::FFT(), func2(), func3(), CImg< uintT >::get_rotate(), Vortex_flow::get_velocity(), LeVeque_flow::get_velocity(), CImg< uintT >::HSItoRGB(), RFC_Window_overlay::init_feature_parameters(), main(), peri_cocnlinitsolution(), peri_cocprinitsolution(), principal_stress(), prep_modbcdistribution::profinflowvttaylorcyl(), radi_diffradintens(), modrandom::randnormal(), rational_rotation_approximation(), FaceOffset_3::reset_default_parameters(), rflo_exchangednodecopy(), rflo_exchangednoderecv(), rflo_exchangegeometrycopy(), rflo_exchangegeometryrecv(), rflu_centralsecondpatch(), rflu_modexactflow::rflu_computeexactflowculick(), rflu_modexactflow::rflu_computeexactflowpacoust(), rflu_modexactflow::rflu_computeexactflowproudman(), rflu_modexactflow::rflu_computeexactflowringleb(), rflu_modexactflow::rflu_computeexactflowssvortex(), rflu_initflowhardcode(), rflu_modnscbc::rflu_nscbc_comprhsff(), rflu_modrelatedpatches::rflu_relp_periodicwrapper(), rflu_modexactflow::rflu_setexactflowtrig(), rflu_modrindstates::rflu_setrindstatefarfieldperf(), rflu_modsymmetryperiodic::rflu_sype_buildtransforms(), CImg< uintT >::rotation_matrix(), rvav_proudmanculicksolution(), scalerotatevector(), FaceOffset_3::set_fangle_turn(), rflu_modrepair3d::snglar(), and CImg< uintT >::torus3d().

cos_num = cos
const NT& d = eps_den

Definition at line 73 of file rational_rotation.h.

Referenced by CImg< T >::_cimg_math_parser::_cimg_math_parser(), CImg< uintT >::_draw_object3d(), CImg< uintT >::_get_select(), CImg< uintT >::_LU(), Aff_transformationS2< FT >::Aff_transformationS2(), ainv(), bc_enforce(), CImg< uintT >::blur_anisotropic(), init_py::burn_get_film_coeff_1d(), c2005(), CkHashFunction_default(), CkHashFunction_string(), Pane_connectivity::collect_nodes(), Pane_connectivity::collect_points(), RFC_Window_overlay::comp_angle_defect(), Rocmop::compute_medial_quadric(), Kdtree_interface< PT >::copy_coord(), RFC_Window_overlay::cos_edge_angle(), cst_coh(), ctranspose(), Plane_3< R, T >::d(), CImg< uintT >::det(), RFC_Window_overlay::detect_features(), Pane_connectivity::determine_coisolated_nodes(), rflu_modrepair3d::dihed(), CImg< uintT >::dijkstra(), CImg< uintT >::draw_gaussian(), CImg< uintT >::draw_line(), CImg< uintT >::eigen(), Window_manifold_2::elements_to_nodes(), entropy_corr1(), entropy_corr2(), rflu_modentropyfixes::entropyfixhartenhyman(), RFC_Pane_overlay::evaluate_normals(), findPartner(), Kdtree_d< Traits >::ExtPoint::get_coord_point(), Kdtree_d< Traits >::ExtPoint::get_coord_status(), CImg< uintT >::get_distance(), FileTokenizer::get_float_internal(), CImg< uintT >::get_haar(), CImg< uintT >::get_resize(), PlaneS3< FT >::has_on_boundary(), PlaneS3< FT >::has_on_negative_side(), PlaneS3< FT >::has_on_positive_side(), I_circulator_size(), implicit_soln(), init_hex(), init_prism(), init_profiling(), init_pyr(), init_tet(), init_tets_from_hex(), Halfedge_data_structure_decorator< _HDS >::inside_out(), Overlay_primitives::intersect(), MeshBndSurf::intersection(), CImg< uintT >::invert(), is_integral(), RFC_Window_overlay::is_strong_ad(), lass(), line_project_pointC2(), SparseGrid< SpaceCell >::locate(), SparseGrid< SpaceCell >::locate_index(), SparseGrid< SpaceCell >::locate_packed_index(), spec_rflu_modchemistry::lusolve(), main(), Overlay::match_features_0(), Pane_boundary::min_squared_edge_len(), mixtgasliq_c(), mixtperf_c_dgp(), mixtperf_eo_dgpuvw(), mixtperf_eo_dgpvm(), mixtperf_p_ddogpo(), mixtperf_p_deogvm2(), mixtperf_p_drt(), mixtperf_t_dpr(), PlaneS3< FT >::new_rep(), norm_and_clean_constraints(), FaceOffset_3::obtain_face_offset(), DirectionS2< FT >::operator!=(), DirectionS3< FT >::operator!=(), Direction_3< R, T >::operator!=(), Direction_2< R, T >::operator!=(), Direction_2< R, T >::operator<(), operator<<(), Direction_2< R, T >::operator<=(), operator>>(), blockLoc::operator[](), blockDim::operator[](), PlaneS3< FT >::opposite(), FeasibleNewton::optimize_vertex_positions(), PlaneS3< FT >::oriented_side(), peul_residualsmoothing(), PlaneS3< FT >::point(), radi_rflo_flimressmoothing(), read_hdf(), setup_py::read_properties(), setup_py::readtable(), RFC_Window_transfer::replicate_data(), rflo_laplacegridsolve(), rflo_modlaplacesmoothing::rflo_laplacegridsolve(), rflo_residualsmoothing(), rflu_computeenerdissoles(), rflu_modexactflow::rflu_computeexactflowculick(), rflu_modexactflow::rflu_computeexactflowpacoust(), rflu_modexactflow::rflu_computeexactflowproudman(), rflu_modexactflow::rflu_computeexactflowringleb(), rflu_modexactflow::rflu_computeexactflowssvortex(), rflu_computeintegral3oles(), rflu_modoles::rflu_geti1posoles(), rflu_modoles::rflu_geti4posoles(), rflu_initbcdatahardcode(), rflu_initflowhardcode(), rflu_initflowhardcodelim(), rflu_modbessel::rflu_jyndd(), rflu_modbessel::rflu_jyzo(), In_place_list_n< T, managed >::set_dimension(), C3Vector::SetData(), shift_P(), rflu_modrepair3d::snglar(), CImg< uintT >::solve(), solve_x(), RFC_Window_overlay::subdiv_feature_curve(), to_double(), tql1(), tql2(), Translation_repS2< FT >::transform(), Translation_repS3< FT >::transform(), Scaling_repS3< FT >::transform(), Scaling_repS2< FT >::transform(), tred1(), tred2(), tridg(), turb_rflo_ransressmoothing(), v3d10(), v3d10_ale(), v3d10_b_bar(), v3d10_nl(), v3d10_nl_arruda_boyce(), v3d10_nl_arruda_boyce_damping(), v3d10_nl_arruda_boyce_thermal(), v3d10_nl_damping(), v3d10_nl_huang(), v3d10_nl_matous(), v3d10r_nl(), v3d4(), v3d4_ale(), v3d4_neohookeancompress(), v3d4_neohookeanincompress(), v3d4_neohookeanincompressdef(), v3d4_neohookeanincompressprin(), v3d4_nl(), v3d4_nl_arruda_boyce(), v3d4_thermalexp2(), MeshImpl::vtk_create_structured_elems(), writeBlock(), and writeMblock().

NT diff_part

Definition at line 85 of file rational_rotation.h.

Referenced by rational_rotation_approximation().

CGAL_BEGIN_NAMESPACE void const NT& diry

Definition at line 61 of file rational_rotation.h.

dx = CGAL_NTS abs(dirx)

Definition at line 81 of file rational_rotation.h.

Referenced by CImg< uintT >::_cubic_atX(), CImg< uintT >::_cubic_atXY(), CImg< uintT >::_display(), CImg< uintT >::_display_object3d(), CImg< uintT >::_draw_scanline(), CImg< uintT >::_linear_atX(), CImg< uintT >::_linear_atXY(), CImg< uintT >::_linear_atXYZ(), CImg< uintT >::_linear_atXYZV(), CImg< uintT >::_load_ascii(), CImg< uintT >::_load_bmp(), CImg< uintT >::_load_dlm(), rflu_modrepair3d::angfnd(), CImg< uintT >::assign(), Propagation_3::bound_axial_disp(), CImg< uintT >::CImg(), CImg< uintT >::cubic_atX(), CImg< uintT >::cubic_atXY(), DirectionS3< FT >::delta(), DirectionS2< FT >::delta(), CImg< uintT >::draw_axis(), CImg< uintT >::draw_gaussian(), CImg< uintT >::draw_grid(), CImg< uintT >::draw_line(), CImg< uintT >::draw_plasma(), CImg< uintT >::draw_spline(), CImg< uintT >::draw_triangle(), Direction_3< R, T >::dx(), Direction_2< R, T >::dx(), CImgList< uintT >::get_append(), CImg< uintT >::get_blur_patch(), CImg< uintT >::get_distance(), CImg< uintT >::get_projections2d(), CImg< uintT >::get_resize(), CImg< uintT >::get_select_graph(), CImg< uintT >::isocurve3d(), CImg< uintT >::isosurface3d(), line_from_point_directionC2(), CImg< uintT >::linear_atX(), CImg< uintT >::linear_atXY(), CImg< uintT >::linear_atXYZ(), CImg< uintT >::linear_atXYZV(), cimg_library::cimg::mod(), DirectionS3< FT >::operator-(), DirectionS2< FT >::operator-(), DirectionS2< FT >::operator<(), DirectionS2< FT >::operator==(), DirectionS3< FT >::operator==(), DirectionS2< FT >::perpendicular(), plag_rflu_correctmixtproperties(), plane_from_point_directionC3(), data_py::polint(), CImg< uintT >::projections2d(), rflu_modrepair3d::replace(), CImg< uintT >::resize(), CImg< uintT >::resize_object3d(), rflo_modelliptsmoothing::rflo_elliptgridgauss2d(), rflo_modelliptsmoothing::rflo_elliptgridjac2d(), rflo_modelliptsmoothing::rflo_elliptgridsmoo(), rflo_modelliptsmoothing::rflo_elliptgridsmooregion(), rflo_modelliptsmoothing::rflo_elliptgridsor2d(), rflo_exchangednoderecv(), rflo_exchangegeometrycopy(), rflo_exchangegeometryrecv(), rflo_modgridcontrolmap::rflo_gridcontrolmap2d(), rflo_modgridcontrolmap::rflo_gridcontrolmap3d(), rflo_laplacegridsmoo(), rflo_modlaplacesmoothing::rflo_laplacegridsmoo(), rflo_modvolmeshsmoothing::rflo_vmslaplaceiterate(), rflu_modausmflux::rflu_ausm_computeflux2_mpsd(), rflu_modausmflux::rflu_ausm_computeflux2_mtcp(), rflu_modausmflux::rflu_ausm_computeflux2_tcp(), rflu_modbilinearpatch::rflu_blin_computexsectline(), rflu_modbilinearpatch::rflu_blin_findclosestpoint(), rflu_modstencilsbfaces::rflu_buildbf2cstencil(), rflu_modstencilscells::rflu_buildc2cstencil(), rflu_modstencilsfaces::rflu_buildf2cstencil(), rflu_centralsecondpatch(), rflu_centralsecondpatch_gl(), rflu_moddifferentiationbfaces::rflu_computebfgradconstr(), rflu_moddifferentiationbfaces::rflu_computegradbfaces(), rflu_moddifferentiationcells::rflu_computegradcells_2d(), rflu_moddifferentiationcells::rflu_computegradcells_3d(), rflu_moddifferentiationcells::rflu_computegradcellsconstr(), rflu_moddifferentiationcells::rflu_computegradcellsfast_2d(), rflu_moddifferentiationcells::rflu_computegradcellsfast_3d(), rflu_moddifferentiationfaces::rflu_computegradfaces(), rflu_moddifferentiationfaces::rflu_computegradfacesconstr(), rflu_modweights::rflu_computestencilmoments2d1(), rflu_modweights::rflu_computestencilmoments3d1(), rflu_modgridutils::rflu_distortgrid(), rflu_modhllcflux::rflu_hllc_computeflux2_gl(), rflu_modhllcflux::rflu_hllc_computeflux2_tcp(), rflu_modincelltest::rflu_ict_testfacequadbilinear(), rflu_modinterpolation::rflu_interpcells2face(), rflu_modinterpolation::rflu_interpcells2facepatch(), rflu_modinterpolation::rflu_interpcells2faces(), rflu_modlimiters::rflu_limitgradcellssimple(), rflu_modnscbc::rflu_nscbc_compsecondpatchflux(), rflu_modrepair3d::rflu_repair3d(), rflu_modroeflux::rflu_roe_computeflux2_gl(), rflu_modroeflux::rflu_roe_computeflux2_tcp(), rflu_modroeflux::rflu_roe_computefluxc2_tcp(), rflu_modroeflux::rflu_roe_computefluxd2_tcp(), rflu_scalarsecondpatch(), rflu_modrindstates::rflu_setrindstatefarfieldperf(), rflu_timestepviscous(), CImg< uintT >::set_linear_atXY(), CImg< uintT >::set_linear_atXYZ(), rflu_modrepair3d::smooth(), solve_x(), rflu_modrepair3d::tessel(), and rflu_modrepair3d::tetmod().

dy = CGAL_NTS abs(diry)

Definition at line 82 of file rational_rotation.h.

Referenced by CImg< uintT >::_cubic_atXY(), CImg< uintT >::_display(), CImg< uintT >::_display_object3d(), CImg< uintT >::_draw_polygon(), CImgDisplay::_fitscreen(), CImg< uintT >::_linear_atXY(), CImg< uintT >::_linear_atXYZ(), CImg< uintT >::_linear_atXYZV(), CImg< uintT >::_load_ascii(), CImg< uintT >::_load_bmp(), CImg< uintT >::_load_dlm(), CImgDisplay::_render_resize(), rflu_modrepair3d::angfnd(), CImg< uintT >::assign(), CImg< uintT >::CImg(), CImg< uintT >::cubic_atXY(), DirectionS3< FT >::delta(), DirectionS2< FT >::delta(), CImg< uintT >::draw_axis(), CImg< uintT >::draw_gaussian(), CImg< uintT >::draw_grid(), CImg< uintT >::draw_line(), CImg< uintT >::draw_plasma(), CImg< uintT >::draw_spline(), Direction_3< R, T >::dy(), Direction_2< R, T >::dy(), CImgList< uintT >::get_append(), CImg< uintT >::get_blur_patch(), CImg< uintT >::get_distance(), CImg< uintT >::get_projections2d(), CImg< uintT >::get_resize(), CImg< uintT >::get_select_graph(), CImg< uintT >::isocurve3d(), CImg< uintT >::isosurface3d(), line_from_point_directionC2(), CImg< uintT >::linear_atXY(), CImg< uintT >::linear_atXYZ(), CImg< uintT >::linear_atXYZV(), DirectionS3< FT >::operator-(), DirectionS2< FT >::operator-(), DirectionS2< FT >::operator<(), DirectionS2< FT >::operator==(), DirectionS3< FT >::operator==(), peri_cocnlinitsolution(), peri_cocprinitsolution(), peri_copgradupdate(), DirectionS2< FT >::perpendicular(), plag_rflu_correctmixtproperties(), plane_from_point_directionC3(), CImg< uintT >::projections2d(), rflu_modrepair3d::replace(), CImg< uintT >::resize(), CImg< uintT >::resize_object3d(), rflo_modelliptsmoothing::rflo_elliptgridgauss2d(), rflo_modelliptsmoothing::rflo_elliptgridjac2d(), rflo_modelliptsmoothing::rflo_elliptgridsmoo(), rflo_modelliptsmoothing::rflo_elliptgridsmooregion(), rflo_modelliptsmoothing::rflo_elliptgridsor2d(), rflo_exchangednodecopy(), rflo_exchangednoderecv(), rflo_exchangegeometrycopy(), rflo_exchangegeometryrecv(), rflo_modgridcontrolmap::rflo_gridcontrolmap2d(), rflo_modgridcontrolmap::rflo_gridcontrolmap3d(), rflo_modlaplacesmoothing::rflo_laplacegridsmoo(), rflo_laplacegridsmoo(), rflo_modvolmeshsmoothing::rflo_vmslaplaceiterate(), rflu_modausmflux::rflu_ausm_computeflux2_mpsd(), rflu_modausmflux::rflu_ausm_computeflux2_mtcp(), rflu_modausmflux::rflu_ausm_computeflux2_tcp(), rflu_modbilinearpatch::rflu_blin_computexsectline(), rflu_modbilinearpatch::rflu_blin_findclosestpoint(), rflu_modstencilsbfaces::rflu_buildbf2cstencil(), rflu_modstencilscells::rflu_buildc2cstencil(), rflu_modstencilsfaces::rflu_buildf2cstencil(), rflu_centralsecondpatch(), rflu_centralsecondpatch_gl(), rflu_moddifferentiationbfaces::rflu_computebfgradconstr(), rflu_moddifferentiationbfaces::rflu_computegradbfaces(), rflu_moddifferentiationcells::rflu_computegradcells_2d(), rflu_moddifferentiationcells::rflu_computegradcells_3d(), rflu_moddifferentiationcells::rflu_computegradcellsconstr(), rflu_moddifferentiationcells::rflu_computegradcellsfast_2d(), rflu_moddifferentiationcells::rflu_computegradcellsfast_3d(), rflu_moddifferentiationfaces::rflu_computegradfaces(), rflu_moddifferentiationfaces::rflu_computegradfacesconstr(), rflu_modweights::rflu_computestencilmoments2d1(), rflu_modweights::rflu_computestencilmoments3d1(), rflu_modgridutils::rflu_distortgrid(), rflu_modextractflowdata::rflu_extractflowdatablasius(), rflu_modhllcflux::rflu_hllc_computeflux2_gl(), rflu_modhllcflux::rflu_hllc_computeflux2_tcp(), rflu_modincelltest::rflu_ict_testfacequadbilinear(), rflu_modinterpolation::rflu_interpcells2face(), rflu_modinterpolation::rflu_interpcells2facepatch(), rflu_modinterpolation::rflu_interpcells2faces(), rflu_modlimiters::rflu_limitgradcellssimple(), rflu_modnscbc::rflu_nscbc_compsecondpatchflux(), rflu_modrepair3d::rflu_repair3d(), rflu_modroeflux::rflu_roe_computeflux2_gl(), rflu_modroeflux::rflu_roe_computeflux2_tcp(), rflu_modroeflux::rflu_roe_computefluxc2_tcp(), rflu_modroeflux::rflu_roe_computefluxd2_tcp(), rflu_scalarsecondpatch(), rflu_modrindstates::rflu_setrindstatefarfieldperf(), rflu_timestepviscous(), CImg< uintT >::save_empty_cimg(), CImgList< uintT >::save_empty_cimg(), CImg< uintT >::set_linear_atXY(), CImg< uintT >::set_linear_atXYZ(), rflu_modrepair3d::smooth(), rflu_modrepair3d::tessel(), and rflu_modrepair3d::tetmod().

else
Initial value:
{
NT p

Definition at line 103 of file rational_rotation.h.

Referenced by Rocmop::determine_physical_border().

CGAL_BEGIN_NAMESPACE void const NT NT NT NT const NT const NT& eps_den
Initial value:
{
using std::swap
void swap(int &a, int &b)
Definition: buildface.cpp:88

Definition at line 67 of file rational_rotation.h.

Referenced by rational_rotation_approximation(), and Rotation_repS2< FT >::Rotation_repS2().

CGAL_BEGIN_NAMESPACE void const NT NT NT NT const NT& eps_num
bool lower_ok

Definition at line 87 of file rational_rotation.h.

Referenced by rational_rotation_approximation().

const NT& n = eps_num

Definition at line 72 of file rational_rotation.h.

Referenced by CImg< uintT >::_display_object3d(), CImg< uintT >::_draw_spline(), CImg< uintT >::_load_png(), CImg< uintT >::_save_png(), Window_manifold_2::accumulate_bd_values(), arruda_boyce(), arruda_boyce_cauchy(), CImgList< uintT >::assign(), Agent::assign_attributes(), bccaseloop(), Pane_communicator::begin_update(), modsortsearch::binarysearchinteger(), FloGrid::BlockCount(), CImg< uintT >::blur_anisotropic(), Propagation_3::bound_nodal_motion(), tpz_ordered::build_point_index(), Kdtree_d< Traits >::build_r(), buildFaces(), Rocblas::calcDot(), Roccom_base::call_function(), Coupling::callMethod(), rflu_modrepair3d::cavbnd(), CBox::CBox(), Coupling::check_convergence(), rflu_modrepair3d::coarsn(), rflu_modrepair3d::colaps(), collect_coincident_nodes(), COM_F_FUNC2(), COM_get_attribute(), COM_print_window(), modtools::compfact(), LPtoPTemplate::compute_analytical_hessian(), Geo_Metric_Base_3::compute_angles(), IdealWeightInverseMeanRatio::compute_element_analytical_gradient(), IdealWeightMeanRatio::compute_element_analytical_gradient(), IdealWeightInverseMeanRatio::compute_element_analytical_hessian(), IdealWeightMeanRatio::compute_element_analytical_hessian(), Window_manifold_2::compute_nodal_normals(), Pane_dual_connectivity::construct_connectivity_str_2(), CImgList< uintT >::contains(), CImgList< uintT >::containsNXYZV(), Pane_manifold_2::convert_pconn_edge2ghost(), Attribute::copy_array(), Pane_connectivity::create_b2map(), create_int_vector(), Agent::create_registered_attributes(), Agent::create_registered_window_attributes(), ctranspose(), Pane::delete_attribute(), rflu_modrepair3d::densfn(), Pane_boundary::determine_border_nodes_3(), Pane_boundary::determine_borders(), Pane_connectivity::determine_coisolated_nodes(), Window_manifold_2::determine_counterparts(), Window_manifold_2::determine_primaries(), determine_probe_value(), CImg< uintT >::div(), spec_rflu_modchemistry::drate_stiff(), RFC_Window_overlay::dump_strong_edges(), rflu_modrepair3d::edglen(), Transfer_base::element_load_vector(), Window_manifold_2::elements_to_nodes(), Propagation_3::enforce_nodal_constraints(), IdealWeightInverseMeanRatio::evaluate_element(), IdealWeightMeanRatio::evaluate_element(), CImg< uintT >::FFT(), FaceOffset_3::filter_and_identify_ridge_edges(), Coupling::finalize(), Random_access_adaptor< Vertex_iterator >::find(), Polyhedron_incremental_builder_3< HDS >::find_facet(), Polyhedron_incremental_builder_3< HDS >::find_vertex(), Roccom_base::get_attribute_handle(), Roccom_base::get_attribute_handle_const(), Roccom_base::get_attributes(), Roccom_base::get_connectivities(), Roccom_base::get_f90pntoffsets(), get_face_volume(), Rocout::get_fname(), Roccom_base::get_function_handle(), CImg< uintT >::get_matrix_at(), CImg< uintT >::get_norm(), get_shape(), get_shape20(), Roccom_base::get_window_handle(), Mesh::Connectivity::GetAdjacent(), CImg< uintT >::HSVtoRGB(), I_circulator_distance(), I_circulator_size(), I_min_circulator_size(), implicit_soln(), implicit_v3d8_mass_consistent(), In_place_list_n_base< INode, 2 >::In_place_list_n_base(), Pane::inherit(), Coupling::init(), RFC_Pane_base::init(), Mesh::NodalCoordinates::init(), CBox::init(), Coupling::init_convergence(), Mesh::NodalCoordinates::init_copy(), RFC_Window_transfer::init_nodal_buffers(), init_speed(), init_speed_arrays(), Geo_Metric_Base_2::initialize(), Geo_Metric_Base_3::initialize(), Alg_Metric_Base_3::initialize(), Alg_Metric_Base_2::initialize(), initk(), Mesquite::inner(), rflu_modrepair3d::input(), Coupling::input(), CImgList< uintT >::insert(), Transfer_base::integrate(), Transfer_base::integrate_subface(), Transfer_base::interpolate_fe(), intersect_bbox(), intersect_ray_triangle(), io_hdf_data(), Halfedge_data_structure_decorator< _HDS >::is_valid(), itoa(), KNN_Grid< Tri >::k_nearest(), ktinitcrs(), ktnumnnz(), Mesquite::length(), generic_list::li_get_len(), Mesquite::Linf(), nodeMatcher::loc2node(), rflu_modrepair3d::lock(), locthermcap_v3d8(), locthermstiff_v3d8(), CImg< uintT >::logo40x38(), spec_rflu_modchemistry::lusolve(), main(), make_kd_tree(), GridConversion::MakeProject(), Kdtree_d< Traits >::malloc_node(), Overlay::match_features_0(), matmul2(), matous_const_model(), Mesh::Connectivity::matrix_mode(), GridConversion::MidPointQuadrature(), CImg< uintT >::mul(), Transfer_base::multiply_mass_mat_and_x(), PartitionBoundary::MyRank(), Pane::new_attribute(), Mesh::NodalCoordinates::NodalCoordinates(), non_negative_mod(), CVector::normalize(), C3Vector::Normalize(), CImg< uintT >::normalize(), normalize_coor(), Overlay::number_subfaces(), Overlay::number_subnodes(), numknnz(), rflu_modrepair3d::octfil(), rflu_modoctree::octree(), rflu_modrepair3d::octrmv(), CImg< uintT >::operator%=(), CImg< uintT >::operator&=(), Function::operator()(), nvc::operator*(), nvc::operator+(), Iterator_from_circulator< C, Ref, Ptr >::operator+(), operator+(), Circulator_from_container< Ctnr >::operator+(), Const_circulator_from_container< Ctnr >::operator+(), Circulator_from_iterator< I, TT, SS, DD >::operator+(), Iterator_from_circulator< C, Ref, Ptr >::operator+=(), CImg< uintT >::operator+=(), nvc::operator-(), N_step_adaptor< I, N, Ref, Ptr, Val, Dist, Ctg >::operator-(), Iterator_from_circulator< C, Ref, Ptr >::operator-(), Circulator_from_container< Ctnr >::operator-(), Const_circulator_from_container< Ctnr >::operator-(), Circulator_from_iterator< I, TT, SS, DD >::operator-(), CImg< uintT >::operator-=(), nvc::operator/(), Mesh::operator<<(), CImg< uintT >::operator<<(), CImg< uintT >::operator<<=(), Mesh::operator>>(), CImg< uintT >::operator>>(), CImg< uintT >::operator>>=(), N_step_adaptor< I, N, Ref, Ptr, Val, Dist, Ctg >::operator[](), Iterator_from_circulator< C, Ref, Ptr >::operator[](), Circulator_from_container< Ctnr >::operator[](), Const_circulator_from_container< Ctnr >::operator[](), Circulator_from_iterator< I, TT, SS, DD >::operator[](), CImg< uintT >::operator^=(), operatorj(), CImg< uintT >::operator|=(), SteepestDescent::optimize_vertex_positions(), Coupling::output_restart_files(), Coupling::output_visualization_files(), Pane::Pane(), tpz_ordered::parse_data(), tpz_fequad::parse_data(), partition_ceff(), datafile::partition_layout(), peri_cocnlinitsolution(), peri_copgradupdate(), peul_readsolution(), peul_readsolutionregion(), peul_writesolution(), plag_readsolution(), plag_readsolutionfilepost(), plag_readstatpost(), plag_rflo_modstats::plag_rflo_readstat(), plag_rflo_modstats::plag_rflo_writestat(), plag_statmapping(), plag_writesolution(), data_py::polin2(), data_py::polint(), Roccom_base::print_profile(), Coupling::ProcessInterrupt(), project_window(), rflu_modrepair3d::putpnt(), modsortsearch::quicksortinteger(), modsortsearch::quicksortintegerinteger(), modsortsearch::quicksortrfreal(), modsortsearch::quicksortrfrealinteger(), radi_extinctioncoef(), radi_rflo_readsolution(), radi_rflo_writesolution(), rflu_modrepair3d::radrat(), RFC_Pane_base::read_binary(), read_frac(), read_io_files(), IM_Reader::read_mesh(), MSH_Reader::read_pane_coors(), SMF_Reader::read_pane_coors(), IM_Reader::read_pane_coors(), MSH_Reader::read_pane_elems(), SMF_Reader::read_pane_elems(), FluRegion::ReadFluSolnASCII(), FluRegion::ReadGSPASCII(), FloGrid::ReadNBlocks(), readprobesection(), rflu_modrepair3d::recon(), RFC_Pane_base::register_sdv_attributes(), Pane::reinit_attr(), rflu_modrepair3d::replace(), RFC_Window_transfer::replicate_metadata(), Coupling::restart_at_time(), rflo_interpoldistrib(), rflo_readbcfromfile(), rflo_readgrid(), rflo_readgridregion(), rflo_modpatchaerocoeffs::rflo_readpatchaerocoeffs(), rflo_modpatchaerocoeffs::rflo_readpatchaerocoeffsreg(), rflo_readsolution(), rflo_readsolutionregion(), rflo_readstat(), rflo_readstatregion(), rflo_readtbcsection(), rflo_writegrid(), rflo_writegridregion(), rflo_modpatchaerocoeffs::rflo_writepatchaerocoeffs(), rflo_writesolution(), rflo_writesolutionregion(), rflo_writestat(), rflu_modoctree::rflu_buildoctree(), rflu_computeintegral1oles(), rflu_computeintegral4oles(), rflu_modweights::rflu_computewtsx2c_1d(), rflu_modoles::rflu_definecorrelation32(), rflu_modoles::rflu_definecorrelation430(), rflu_modbessel::rflu_jyndd(), rflu_modbessel::rflu_jyzo(), rflu_modbessel::rflu_jyzom(), rflu_readtbcsection(), rflu_modrepair3d::rflu_repair3d(), rocfracprep(), cimg_library::cimg::rol(), cimg_library::cimg::ror(), rs(), Coupling::run(), rvav_readcomparisonssection(), Coupling::schedule(), Action::set_attr(), Roccom_base::set_f90pointer(), Roccom_base::set_function(), Action::set_io(), Roccom_base::set_member_function_helper(), points::set_num_points(), points::set_num_vars(), spec_rflu_modchemistry::set_rate(), bitmap::set_size(), FloGridBlock::SetGhostLayers(), makefloParam::setLevel(), Pane_manifold_2::size_of_edges(), Window_manifold_2::size_of_edges(), Connectivity::size_of_elements(), Window_manifold_2::size_of_faces(), RFC_Window_base::size_of_faces(), Connectivity::size_of_ghost_elements(), Pane_manifold_2::size_of_nodes(), Window_manifold_2::size_of_nodes(), RFC_Window_base::size_of_nodes(), RFC_Pane_base::size_of_primary_nodes(), Window_manifold_2::size_of_quadrilaterals(), Connectivity::size_of_real_elements(), Window_manifold_2::size_of_triangles(), rflu_modrepair3d::sliver(), rflu_modrepair3d::smooth(), In_place_list_n< T, managed >::splice(), CGAL::square(), CGAL::NTS::square(), modstatsroutines::statmapping(), cimg_library::cimg::strpare(), rflu_modrepair3d::struct(), summary(), MesqPane::tag_delete(), tensormul(), TestingObject< ResultsType >::Test__MidPointQuadrature(), TestingObject< ResultsType >::Test__TrapezoidQuadrature(), rflu_modrepair3d::tetar(), rflu_modrepair3d::tetar2(), rflu_modrepair3d::tetar3(), rflu_modrepair3d::tetmv(), tql1(), tql2(), TRAIL_FluInitSurfSoln(), TRAIL_RemeshInitFluSurfData(), TRAIL_RocmopSmooth(), TRAIL_SafeRemove(), GridConversion::TrapezoidQuadrature(), tred1(), tred2(), Triangulation::triangulate(), turb_coranswalldistov(), turb_rflo_readsolution(), turb_rflo_readsolutionregion(), turb_rflo_writesolution(), turb_statmapping(), CVector::unit(), Window_manifold_2::update_bd_flags(), Window_manifold_2::update_bd_normals(), Window_manifold_2::update_bdedge_bitmap(), FullyCoupling::update_integrals(), updatetbc(), rflu_modrepair3d::volcom(), rflu_modrepair3d::volput(), write_attr_CGNS(), RFC_Pane_base::write_binary(), Overlay::write_inodes_tec(), Overlay::write_inodes_vec(), RFC_Pane_base::write_tec_ij(), RFC_Pane_base::write_tec_mixed(), RFC_Pane_base::write_tec_tri(), prep_modbcdistribution::writebctofile(), FluRegion::WriteFluSolnASCII(), FluRegion::WriteGSPASCII(), Mesh::NodalCoordinates::x(), Mesh::NodalCoordinates::y(), Mesh::NodalCoordinates::z(), Coupling::~Coupling(), and Pane::~Pane().

const NT NT0 = NT(0)

Definition at line 74 of file rational_rotation.h.

Referenced by if(), and rational_rotation_approximation().

const NT NT1 = NT(1)

Definition at line 75 of file rational_rotation.h.

Referenced by if(), and rational_rotation_approximation().

NT p1 = NT1

Definition at line 108 of file rational_rotation.h.

Referenced by CImg< uintT >::_draw_spline(), CImg< uintT >::CMYtoRGB(), compare_key(), LPtoPTemplate::compute_analytical_gradient(), Geo_Metric_Base_3::compute_aspects(), RFC_Window_overlay::cos_face_angle(), CVector::CVector(), Window_manifold_2::determine_counterparts(), Window_manifold_2::determine_primaries(), Vector3D::distance_between(), for(), CImg< uintT >::HSItoRGB(), CImg< uintT >::HSLtoRGB(), CImg< uintT >::HSVtoRGB(), halfspace3d::init(), CVector::init(), Mesh::GenericElement::Inverted(), CImg< uintT >::isocurve3d(), CImg< uintT >::isosurface3d(), CImg< uintT >::LabtoXYZ(), main(), matous_const_model(), CLine::move(), norm_and_clean_constraints(), Overlay_primitives::project_green_feature(), rational_rotation_approximation(), read_ij(), read_obj(), rflo_boundarydeformation(), rflo_modmovegridelliptfra::rflo_mgelliptboundaries(), rflo_modmovegridframe::rflo_mgframebnddeformation(), rflo_modmovegridframe::rflo_mgframebnddeformation0(), rflo_modmovegridutil::rflo_movegridcurvedpatch(), rflo_tfint1d(), rflo_tfint2d(), CImg< uintT >::RGBtoCMY(), CImg< uintT >::RGBtoHSI(), CImg< uintT >::RGBtoHSL(), CImg< uintT >::RGBtoHSV(), CImg< uintT >::RGBtoXYZ(), CImg< uintT >::RGBtoYCbCr(), CImg< uintT >::RGBtoYUV(), rm_constraint(), Mesh::GenericElement::ShapeOK(), shift_P(), rflu_modrepair3d::snglar(), spec_eqeulcorr(), CImg< uintT >::sphere3d(), tree_out(), v3d10_nl_matous(), vol_elem_mat_ortho(), CImg< uintT >::xyYtoXYZ(), CImg< uintT >::XYZtoLab(), CImg< uintT >::XYZtoRGB(), CImg< uintT >::XYZtoxyY(), CImg< uintT >::YCbCrtoRGB(), and CImg< uintT >::YUVtoRGB().

NT q0 = NT1

Definition at line 107 of file rational_rotation.h.

NT& sin = sin_num

Definition at line 78 of file rational_rotation.h.

Referenced by CImg< uintT >::_draw_ellipse(), bcondfarfieldperf(), bcondinflowperf(), CImg< uintT >::blur_anisotropic(), COM_print_window(), Rocmop::compute_medial_quadric(), CImg< uintT >::cone3d(), CImg< uintT >::cylinder3d(), CImg< uintT >::draw_arrow(), CImg< uintT >::eigen(), Window_manifold_2::elements_to_nodes(), CImg< T >::_cimg_math_parser::eval(), rflu_modrepair3d::fangle(), CImg< uintT >::FFT(), func2(), func3(), Rocout::get_fname(), CImg< uintT >::get_rotate(), Vortex_flow::get_velocity(), LeVeque_flow::get_velocity(), init_speed_arrays(), is_whole(), load_data_HDF4(), main(), new_attributes(), peri_cocnlinitsolution(), peri_cocprinitsolution(), PrintConn(), prep_modbcdistribution::profinflowvttaylorcyl(), radi_diffradintens(), modrandom::randnormal(), rational_rotation_approximation(), Rocin::read_by_control_file(), rflo_exchangednodecopy(), rflo_exchangednoderecv(), rflo_exchangegeometrycopy(), rflo_exchangegeometryrecv(), rflu_centralsecondpatch(), rflu_modexactflow::rflu_computeexactflowculick(), rflu_modexactflow::rflu_computeexactflowpacoust(), rflu_modexactflow::rflu_computeexactflowproudman(), rflu_modexactflow::rflu_computeexactflowringleb(), rflu_modexactflow::rflu_computeexactflowssvortex(), rflu_initflowhardcode(), rflu_modnscbc::rflu_nscbc_comprhsff(), rflu_modrelatedpatches::rflu_relp_periodicwrapper(), rflu_modexactflow::rflu_setexactflowtrig(), rflu_modrindstates::rflu_setrindstatefarfieldperf(), rflu_modsymmetryperiodic::rflu_sype_buildtransforms(), CImg< uintT >::rotation_matrix(), rvav_proudmanculicksolution(), scalerotatevector(), scan_files_HDF4(), CImg< uintT >::sin(), rflu_modrepair3d::snglar(), CImg< uintT >::torus3d(), updatetbcsinusoidal(), write_attr_CGNS(), and Rocout::write_rocin_control_file().

sin_num = sin
NT sq_hypotenuse = dx*dx + dy*dy

Definition at line 83 of file rational_rotation.h.

Referenced by for().

bool upper_ok

Definition at line 88 of file rational_rotation.h.

Referenced by rational_rotation_approximation().