|
CELIA3D
1.0
Fluid-structure interaction using cut-cells
|
Definition of specific coupling functions. More...
Functions | |
| double | volume_prisme (const Triangle_3 &T1, const Triangle_3 &T2) |
| Computation of the signed volume of a prism. More... | |
| double | volume_tetra (const Tetrahedron &Tet) |
| Computation of the signed colume of a tetrahedron. More... | |
| Point_3 | tr (const Triangle_3 &Tn, const Triangle_3 &Tn1, const Point_3 &Xn) |
| Barycentric transformation of point Xn. More... | |
| Triangle_3 | tr (const Triangle_3 &Tn, const Triangle_3 &Tn1, const Triangle_3 &T) |
| Barycentric transformation of Triangle T. More... | |
| Point_2 | tr (const Triangle_3 &Tn1, const Point_3 &Xn) |
| Transformation of a Point_3 into a Point_2. More... | |
| Triangle_2 | tr (const Triangle_3 &Tn1, const Triangle_3 &T) |
| Transformation of a Triangle_3 into a Triangle_2. More... | |
| Point_3 | tr (const Triangle_3 &Tn1, const Point_2 &Xn) |
| Barycentric transformation of a Point_2 into a Point_3. More... | |
| Triangle_3 | tr (const Triangle_3 &Tn1, const Triangle_2 &T) |
| Barycentric transformation of a Triangle_2 into a Triangle_3. More... | |
| void | Sous_Maillage_2d (const Triangles_2 &Tn, const Triangles_2 &Tn1, Triangles_2 &tri2) |
| Construction of the 2d submesh of two meshes on a triangular 2d face of the solid. More... | |
| void | sous_maillage_faceTn_faceTn1_2d (const Triangle_3 &Tn, const Triangles &tn, const Triangle_3 &Tn1, const Triangles &tn1, const Vector_3 &N, Triangles &T3d_n, Triangles &T3d_n1) |
| Split the face into a submesh of the intersections of the solid face with the fluid grid at times t-dt and t. More... | |
Definition of specific coupling functions.
Computation of fluid forces and torques acting on the solid, modifications of the fluid fluxes, filling of ghost cells, computation of the swept quantity.
| void Sous_Maillage_2d | ( | const Triangles_2 & | Tn, |
| const Triangles_2 & | Tn1, | ||
| Triangles_2 & | tri2 | ||
| ) |
Construction of the 2d submesh of two meshes on a triangular 2d face of the solid.
The goal is to split the solid face into interface triangles such that each triangle is fully enclosed in one single cell at times t-dt and t (npt necessarily the same cell).
Algorithm:
| Tn | Triangles_2 |
| Tn1 | Triangles_2 |
| tri2 | Triangles_2 |
| void sous_maillage_faceTn_faceTn1_2d | ( | const Triangle_3 & | Tn, |
| const Triangles & | tn, | ||
| const Triangle_3 & | Tn1, | ||
| const Triangles & | tn1, | ||
| const Vector_3 & | N, | ||
| Triangles & | T3d_n, | ||
| Triangles & | T3d_n1 | ||
| ) |
Split the face into a submesh of the intersections of the solid face with the fluid grid at times t-dt and t.
From the position of the interface at time t (Tn) and t-dt (Tn1), split the face into triangles fully contained in one single cell at times t and t-dt (not necessarily the same cell).
Algorithm:
| Tn | const Triangle_3: Interface triangle at time t-dt (Particule.triangles_prev) |
| tn | const vector<Triangle_3>: Triangulation of face Tn (Particule.Triangles_interface_prev) |
| Tn1 | const Triangle_3: Interface at time t (Particule.triangles) |
| tn1 | const vector<Triangle_3>: Triangulation of face Tn1 (Particule.Triangles_interface) |
| N | const Vector_3: exterior normal vector to Tn1 (Particule.normales) |
| T3d_n | vector of Triangle_3: Triangular submesh of face Particule.Triangles_interface_prev at time t-dt |
| T3d_n1 | vector of Triangle_3: Triangular submesh of face Particule.Triangles_interface at time t |
| Point_3 tr | ( | const Triangle_3 & | Tn, |
| const Triangle_3 & | Tn1, | ||
| const Point_3 & | Xn | ||
| ) |
Barycentric transformation of point Xn.
Let Xn a point belonging to triangle Tn(A_1,B_1,C_1). The barycentric transform of Xn is the point Xn1 (belonging to triangle Tn1(A_2,B_2,C_2) ) given by:
| Tn | Triangle_3 |
| Tn1 | Triangle_3 |
| Xn | Point_3 |
| Triangle_3 tr | ( | const Triangle_3 & | Tn, |
| const Triangle_3 & | Tn1, | ||
| const Triangle_3 & | T | ||
| ) |
Barycentric transformation of Triangle T.
Calls function tr(Triangle_3, Triangle_3, Point_3) for each triangle vertex.
| Tn | Triangle_3 |
| Tn1 | Triangle_3 |
| T | Triangle_3 |
| Point_2 tr | ( | const Triangle_3 & | Tn1, |
| const Point_3 & | Xn | ||
| ) |
Transformation of a Point_3 into a Point_2.
Let Triangle Tn1(A,B,C), the barycentric transform of Point_3 Xn (belonging to Tn1) into a Point_2 is given by:
| Tn1 | Triangle_3 |
| Xn | Point_3 |
| Triangle_2 tr | ( | const Triangle_3 & | Tn1, |
| const Triangle_3 & | T | ||
| ) |
Transformation of a Triangle_3 into a Triangle_2.
Calls function tr(Triangle_3, Point_3) for each triangle vertex.
| Tn1 | Triangle_3 |
| T | Triangle_3 |
| Point_3 tr | ( | const Triangle_3 & | Tn1, |
| const Point_2 & | Xn | ||
| ) |
Barycentric transformation of a Point_2 into a Point_3.
Let triangle Tn1(A,B,C), the transform of Point_2 Xn(X,Y) into a point_3 (belonging to Tn1) is given by:
| Tn1 | Triangle_3 |
| Xn | Point_2 |
| Triangle_3 tr | ( | const Triangle_3 & | Tn1, |
| const Triangle_2 & | T | ||
| ) |
Barycentric transformation of a Triangle_2 into a Triangle_3.
Calls function tr(Triangle_3, Point_2) for each triangle vertex.
| Tn1 | Triangle_3 |
| T | Triangle_2 |
| double volume_prisme | ( | const Triangle_3 & | T1, |
| const Triangle_3 & | T2 | ||
| ) |
Computation of the signed volume of a prism.
The signed volume of the prism with bases the triangles
and
is given by:
| T1 | Triangle_3 basis of the prism |
| T2 | Triangle_3 basis of prism |
| double volume_tetra | ( | const Tetrahedron & | Tet | ) |
Computation of the signed colume of a tetrahedron.
The signed volume of a tetrahedron
is given by:
| Tet | Tetrahedron |
1.8.11