CELIA3D  1.0
Fluid-structure interaction using cut-cells
Data Structures | Functions
solide.hpp File Reference

Definition of solid classes. Specific coupling members are preceded by a "warning" sign. More...

#include "intersections.hpp"

Go to the source code of this file.

Data Structures

class  Vertex
 Vertex class. More...
 
class  Face
 Face class. More...
 
class  Particule
 Particule class. More...
 
class  Solide
 Solide class. More...
 

Functions

bool inside_box (const Bbox &cell, const Point_3 &P)
 Check whether point P is in the Bbox cell. More...
 
bool box_inside_convex_polygon (const Particule &S, const Bbox &cell)
 Check whether cell is fully contained in S. More...
 
bool inside_convex_polygon (const Particule &S, const Point_3 &P)
 Check whether point P is inside the convex polygon S. More...
 
double Error (Solide &S1, Solide &S2)
 Compute the error for the semi-implicit scheme. More...
 
void Copy_f_m (Solide &S1, Solide &S2)
 Copy values of fluid forces Ff and torques Mf from S2 to S1. More...
 
bool box_inside_tetra (const Tetrahedron &tetra, const Bbox &cell)
 Check whether cell is fully contained in tetra. More...
 
bool inside_tetra (const Tetrahedron &tetra, const Point_3 &P)
 

Detailed Description

Definition of solid classes. Specific coupling members are preceded by a "warning" sign.

Authors
Laurent Monasse and Maria Adela Puscas

Function Documentation

bool box_inside_convex_polygon ( const Particule S,
const Bbox cell 
)

Check whether cell is fully contained in S.

Returns true if cell is fully contained in S and false otherwise.

Parameters
SParticule
cellBbox
Warning
Specific coupling procedure !
Returns
bool
bool box_inside_tetra ( const Tetrahedron tetra,
const Bbox cell 
)

Check whether cell is fully contained in tetra.

Returns true if cell is fully contained in tetra and false otherwise.

Parameters
tetraTetrahedron
cellBbox
Warning
Specific coupling procedure !
Returns
bool
void Copy_f_m ( Solide S1,
Solide S2 
)

Copy values of fluid forces Ff and torques Mf from S2 to S1.

Function used in the semi-implicit scheme fixed-point procedure.

Parameters
S1Solide at time t
S2Solide at iteration k of the fixed-point procedure
Warning
Specific coupling procedure !
Returns
void
double Error ( Solide S1,
Solide S2 
)

Compute the error for the semi-implicit scheme.

The function is used as a stopping criterion in the semi-implicit scheme:

\begin{eqnarray*} error = max( \, \Vert S1.solide[i].Dx - S2.solide[i].Dx \, \Vert_{\infty} + h_{max} \Vert \, S1.solide[i].e - S2.solide[i].e \, \Vert_{\infty})_i \end{eqnarray*}


\begin{eqnarray*} h_{max}=& max(abs(S1.max\_x - S1.min\_x),abs(S1.max\_y - S1.min\_y), \\ & abs(S1.max\_z - S1.min\_z), abs(S2.max\_x - S2.min\_x),\\ & abs(S2.max\_y - S2.min\_y),abs(S2.max\_z - S2.min\_z)). \end{eqnarray*}

Parameters
S1Solide at iteration k of the fixed-point procedure
S2Solide at iteration k-1 of the fixed-point procedure
Warning
Specific coupling procedure !
Returns
double
bool inside_box ( const Bbox cell,
const Point_3 P 
)

Check whether point P is in the Bbox cell.

Returns true if P is inside cell and false otherwise.

Parameters
cellBbox
PPoint_3
Warning
Specific coupling procedure !
Returns
bool
bool inside_convex_polygon ( const Particule S,
const Point_3 P 
)

Check whether point P is inside the convex polygon S.

Returns true if P is inside S and false otherwise.

Parameters
SParticule
PPoint_3
Warning
Specific coupling procedure !
Returns
bool
bool inside_tetra ( const Tetrahedron tetra,
const Point_3 P 
)