src/expde/math_lib/math_lib.h File Reference

#include <iostream>
#include <fstream>

Include dependency graph for math_lib.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  D3vector

Defines

#define M_PI   3.1415927
#define x0   V0.x
#define y0   V0.y
#define z0   V0.z
#define x1   V1.x
#define y1   V1.y
#define z1   V1.z
#define x2   V2.x
#define y2   V2.y
#define z2   V2.z
#define x3   V3.x
#define y3   V3.y
#define z3   V3.z

Functions

int Find_next_prime (int zahl)
double arccos (const double y)
double my_tan (const double y)
double my_atan (const double y)
double my_sqrt (const double y)
double MAX (double a, double b)
double MAX (double a, double b, double c)
int MAX (int a, int b)
int MAX (int a, int b, int c)
double MIN (double a, double b)
double ABS (double a)
int ABS (int a)
D3vector MAX (D3vector V1, D3vector V2)
D3vector MIN (D3vector V1, D3vector V2)
D3vector operator+ (const D3vector &v, const D3vector &w)
D3vector operator * (const D3vector &v, const D3vector &w)
D3vector operator/ (const D3vector &v, const D3vector &w)
D3vector operator- (const D3vector &v, const D3vector &w)
D3vector operator/ (const D3vector &v, const double f)
D3vector operator * (const D3vector &v, const double f)
D3vector operator * (const double f, const D3vector &v)
bool operator< (const D3vector &v, const D3vector &w)
bool operator== (const D3vector &v, const D3vector &w)
double L_infty (const D3vector &v)
double norm (const D3vector &v)
double product (const D3vector &v, const D3vector &w)
D3vector cross_product (const D3vector &v, const D3vector &w)
D3vector normal_vector_of_triangle (const D3vector &va, const D3vector &vb, const D3vector &vc)
double angle_between_vectors (const D3vector &va, const D3vector &vb)
double max_interior_angel_of_triangle (const D3vector &va, const D3vector &vb, const D3vector &vc)
double angle_between_faces (const D3vector &va, const D3vector &vb, const D3vector &vc, const D3vector &vd)
double calc_maximal_edge_angle (const D3vector &va, const D3vector &vb, const D3vector &vc, const D3vector &vd)
double calc_maximal_face_angle (const D3vector &va, const D3vector &vb, const D3vector &vc, const D3vector &vd)
double Calc_det (const D3vector &V0, const D3vector &V1, const D3vector &V2, const D3vector &V3)
double Calc_bary_weights (const D3vector &V0, const D3vector &V1, const D3vector &V2, const D3vector &V3, const D3vector &V, int i)
int gerade (int N)
int Zweipotenz (int k)


Define Documentation

#define M_PI   3.1415927
 

Definition at line 26 of file math_lib.h.

Referenced by angle_between_vectors(), calc_special_angle(), and main().

#define x0   V0.x
 

Definition at line 256 of file math_lib.h.

#define x1   V1.x
 

Definition at line 260 of file math_lib.h.

#define x2   V2.x
 

Definition at line 264 of file math_lib.h.

#define x3   V3.x
 

Definition at line 268 of file math_lib.h.

#define y0   V0.y
 

Definition at line 257 of file math_lib.h.

#define y1   V1.y
 

Definition at line 261 of file math_lib.h.

#define y2   V2.y
 

Definition at line 265 of file math_lib.h.

#define y3   V3.y
 

Definition at line 269 of file math_lib.h.

#define z0   V0.z
 

Definition at line 258 of file math_lib.h.

#define z1   V1.z
 

Definition at line 262 of file math_lib.h.

#define z2   V2.z
 

Definition at line 266 of file math_lib.h.

#define z3   V3.z
 

Definition at line 270 of file math_lib.h.


Function Documentation

int ABS int  a  )  [inline]
 

Definition at line 118 of file math_lib.h.

double ABS double  a  )  [inline]
 

Definition at line 112 of file math_lib.h.

Referenced by L_infty(), Print_with_Vorzeichen(), Scale_domain::Scale_domain(), and Tell_about_round_of_problem().

double angle_between_faces const D3vector va,
const D3vector vb,
const D3vector vc,
const D3vector vd
[inline]
 

Definition at line 236 of file math_lib.h.

References angle_between_vectors(), and normal_vector_of_triangle().

Referenced by calc_maximal_face_angle().

Here is the call graph for this function:

double angle_between_vectors const D3vector va,
const D3vector vb
[inline]
 

Definition at line 219 of file math_lib.h.

References arccos(), M_PI, norm(), and product().

Referenced by angle_between_faces(), and max_interior_angel_of_triangle().

Here is the call graph for this function:

double arccos const double  y  )  [inline]
 

Definition at line 60 of file math_lib.h.

Referenced by angle_between_vectors().

double Calc_bary_weights const D3vector V0,
const D3vector V1,
const D3vector V2,
const D3vector V3,
const D3vector V,
int  i
[inline]
 

Definition at line 297 of file math_lib.h.

References Calc_det(), and endl().

Referenced by In_tet(), and In_tetbo().

Here is the call graph for this function:

double Calc_det const D3vector V0,
const D3vector V1,
const D3vector V2,
const D3vector V3
[inline]
 

Definition at line 272 of file math_lib.h.

References x0, x1, x2, x3, y0, y1, y2, y3, z0, z1, z2, and z3.

Referenced by Calc_bary_weights().

double calc_maximal_edge_angle const D3vector va,
const D3vector vb,
const D3vector vc,
const D3vector vd
 

Definition at line 39 of file math_lib.cc.

References MAX(), and max_interior_angel_of_triangle().

Referenced by Tetraeder_storage::Check_angles().

Here is the call graph for this function:

double calc_maximal_face_angle const D3vector va,
const D3vector vb,
const D3vector vc,
const D3vector vd
 

Definition at line 49 of file math_lib.cc.

References angle_between_faces(), and MAX().

Referenced by Tetraeder_storage::Check_angles().

Here is the call graph for this function:

D3vector cross_product const D3vector v,
const D3vector w
[inline]
 

Definition at line 204 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

Referenced by normal_vector_of_triangle(), and Six_corner_pyramid::Six_corner_pyramid().

int Find_next_prime int  zahl  ) 
 

Definition at line 67 of file math_lib.cc.

Referenced by Grid_base::Initialize_hash0(), Grid_base::Initialize_hash1(), Grid_base::Initialize_hash2(), Grid_base::Initialize_hash3(), Grid_base::Initialize_hash4(), Parallel_Info::Initialize_hash_proc(), Parallel_Info::Initialize_hash_proc_corner(), Input_data_object::Input_data_object(), Grid_base::Resize_hash0(), and Grid_base::Resize_hash1().

int gerade int  N  )  [inline]
 

Definition at line 315 of file math_lib.h.

double L_infty const D3vector v  )  [inline]
 

Definition at line 191 of file math_lib.h.

References ABS(), MAX(), D3vector::x, D3vector::y, and D3vector::z.

Here is the call graph for this function:

D3vector MAX D3vector  V1,
D3vector  V2
[inline]
 

Definition at line 144 of file math_lib.h.

References MAX(), D3vector::x, D3vector::y, and D3vector::z.

Here is the call graph for this function:

int MAX int  a,
int  b,
int  c
[inline]
 

Definition at line 97 of file math_lib.h.

int MAX int  a,
int  b
[inline]
 

Definition at line 92 of file math_lib.h.

double MAX double  a,
double  b,
double  c
[inline]
 

Definition at line 88 of file math_lib.h.

References MAX().

Here is the call graph for this function:

double MAX double  a,
double  b
[inline]
 

Definition at line 83 of file math_lib.h.

Referenced by calc_maximal_edge_angle(), calc_maximal_face_angle(), Cut_domains::Cut_domains(), Union_domains::distance(), CoExprBinOp< A, B, Op >::Dominant_lev(), DExprAndSim< A, B >::Dominant_lev(), DExprAnd< A, B >::Dominant_lev(), DExprBinOp< A, B, Op >::Dominant_lev(), DExprFunc4< A, B, C, D >::Dominant_lev(), DExprFunc3< A, B, C >::Dominant_lev(), DExprProcedure3< A, B, C >::Dominant_lev(), DExprAndSim< A, B >::Dominant_poi(), DExprAnd< A, B >::Dominant_poi(), DExprBinOp< A, B, Op >::Dominant_poi(), DExprFunc4< A, B, C, D >::Dominant_poi(), DExprFunc3< A, B, C >::Dominant_poi(), DExprProcedure3< A, B, C >::Dominant_poi(), Double_cylinder::Double_cylinder(), DExprBinOp< A, B, Op >::Give_length_of_array_variable_inserted(), DExprBinOp< A, B, Op >::Give_number_var_of_abstract_op(), Parallel_Info::I_am_responsible_for(), L_infty(), CoExprBinOp< A, B, Op >::Level(), DExprAndSim< A, B >::Level(), DExprAnd< A, B >::Level(), DExprBinOp< A, B, Op >::Level(), DExprFunc3< A, B, C >::Level(), DExprProcedure3< A, B, C >::Level(), MAX(), max_interior_angel_of_triangle(), MAX_of_vectors(), Scale_domain::Scale_domain(), DExprAndSim< A, B >::Sice_stencil(), DExprAnd< A, B >::Sice_stencil(), DExprBinOp< A, B, Op >::Sice_stencil(), DExprFunc4< A, B, C, D >::Sice_stencil(), DExprFunc3< A, B, C >::Sice_stencil(), Six_corner_pyramid::Six_corner_pyramid(), Skew_cylinder::Skew_cylinder(), Skew_square::Skew_square(), Skew_squareDTLR::Skew_squareDTLR(), Index3D::Tiefe(), and Union_domains::Union_domains().

double max_interior_angel_of_triangle const D3vector va,
const D3vector vb,
const D3vector vc
[inline]
 

Definition at line 226 of file math_lib.h.

References angle_between_vectors(), and MAX().

Referenced by calc_maximal_edge_angle().

Here is the call graph for this function:

D3vector MIN D3vector  V1,
D3vector  V2
[inline]
 

Definition at line 148 of file math_lib.h.

References MIN(), D3vector::x, D3vector::y, and D3vector::z.

Here is the call graph for this function:

double MIN double  a,
double  b
[inline]
 

Definition at line 106 of file math_lib.h.

Referenced by Cut_domains::Cut_domains(), dis_Skew_squareDTLR(), Cut_domains::distance(), Input_data_object::Input_data_object(), MIN(), MIN_of_vectors(), Six_corner_pyramid::Six_corner_pyramid(), Skew_square::Skew_square(), Skew_squareDTLR::Skew_squareDTLR(), and Union_domains::Union_domains().

double my_atan const double  y  )  [inline]
 

Definition at line 70 of file math_lib.h.

References atan().

Referenced by calc_special_angle().

Here is the call graph for this function:

double my_sqrt const double  y  )  [inline]
 

Definition at line 74 of file math_lib.h.

Referenced by norm().

double my_tan const double  y  )  [inline]
 

Definition at line 66 of file math_lib.h.

References tan().

Referenced by dis_Skew_square(), dis_Skew_squareDTLR(), Poi_Skew_square(), Poi_Skew_squareDTLR(), Skew_square::Skew_square(), and Skew_squareDTLR::Skew_squareDTLR().

Here is the call graph for this function:

double norm const D3vector v  )  [inline]
 

Definition at line 195 of file math_lib.h.

References my_sqrt(), D3vector::x, D3vector::y, and D3vector::z.

Referenced by angle_between_vectors(), normal_vector_of_triangle(), ACLVISToFloat::operator()(), and Six_corner_pyramid::Six_corner_pyramid().

Here is the call graph for this function:

D3vector normal_vector_of_triangle const D3vector va,
const D3vector vb,
const D3vector vc
[inline]
 

Definition at line 210 of file math_lib.h.

References cross_product(), norm(), and z.

Referenced by angle_between_faces().

Here is the call graph for this function:

D3vector operator * const double  f,
const D3vector v
[inline]
 

Definition at line 176 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

D3vector operator * const D3vector v,
const double  f
[inline]
 

Definition at line 172 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

D3vector operator * const D3vector v,
const D3vector w
[inline]
 

Definition at line 156 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

D3vector operator+ const D3vector v,
const D3vector w
[inline]
 

Definition at line 152 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

D3vector operator- const D3vector v,
const D3vector w
[inline]
 

Definition at line 164 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

D3vector operator/ const D3vector v,
const double  f
[inline]
 

Definition at line 168 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

D3vector operator/ const D3vector v,
const D3vector w
[inline]
 

Definition at line 160 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

bool operator< const D3vector v,
const D3vector w
[inline]
 

Definition at line 180 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

bool operator== const D3vector v,
const D3vector w
[inline]
 

Definition at line 183 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

double product const D3vector v,
const D3vector w
[inline]
 

Definition at line 200 of file math_lib.h.

References D3vector::x, D3vector::y, and D3vector::z.

int Zweipotenz int  k  )  [inline]
 

Definition at line 320 of file math_lib.h.

Referenced by Index1D::cart_index(), Grid_base::finest_mesh_size(), Parallel_Info::Generate_processes(), DVar_Extra_Op::Give_Bo2p(), DResDiff< A >::Iterate_Calc_stencil(), DResDiff_Bo< A >::Iterate_Calc_stencil(), Variable::operator=(), DExpr< A >::operator[](), Parallel_Info::Parallel_Info(), Partitioning::Partitioning(), rough_domain::rough_domain(), Index_set::Sort_by(), and Grid_base::transform_coord_org_shift().


Generated on Mon Jan 16 13:36:37 2006 for IPPL by  doxygen 1.4.6