TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
Paroi_frottante_simple.h
1/****************************************************************************
2* Copyright (c) 2021, CEA
3* All rights reserved.
4*
5* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
6* 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
7* 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
8* 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
9*
10* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
11* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
12* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
13*
14*****************************************************************************/
15
16#ifndef Paroi_frottante_simple_included
17#define Paroi_frottante_simple_included
18
19#include <TRUSTTab.h>
20#include <Frottement_global_impose.h>
21#include <Cond_lim_base.h>
22#include <Correlation_base.h>
23#include <TRUST_Ref.h>
24
25
26/*! @brief Classe Paroi_frottante_simple Cette condition limite correspond a un flux impose pour une condition aux limites adaptative faible de l'equation de
27 *
28 * transport de QDM.
29 * Le coefficient de frottement est calcule a partir de la correlation de loi de paroi adaptative.
30 *
31 * @sa Neumann
32 */
34{
35
36 Declare_instanciable(Paroi_frottante_simple);
37
38public :
39 void completer() override ;
40 virtual int initialiser(double temps) override;
41 virtual int avancer(double temps) override {return 1;}; // Avancer ne fait rien car le champ est modifie dans mettre_a_jour
42 void mettre_a_jour(double tps) override;
43 void me_calculer();
44 virtual double coefficient_frottement(int i) const override {return valeurs_coeff_(i,0);};
45 virtual double coefficient_frottement(int i,int j) const override {return valeurs_coeff_(i,j);};
46 virtual double coefficient_frottement_grad(int i) const override {return valeurs_coeff_grad_(i,0);};
47 virtual double coefficient_frottement_grad(int i,int j) const override {return valeurs_coeff_grad_(i,j);};
48 virtual void liste_faces_loi_paroi(IntTab&) override;
49
50protected :
51 virtual double fac_coeff_grad(double y_p) const { return 1.;};
52 OBS_PTR(Correlation_base) correlation_loi_paroi_;
53
54 DoubleTab valeurs_coeff_;
56};
57
58#endif
Classe Frottement_global_impose Classe de base pour des conditions aux limites de type Navier (v.
Classe Paroi_frottante_simple Cette condition limite correspond a un flux impose pour une condition a...
OBS_PTR(Correlation_base) correlation_loi_paroi_
virtual void liste_faces_loi_paroi(IntTab &) override
void completer() override
NE FAIT RIEN A surcharger dans les classes derivees.
virtual double coefficient_frottement(int i) const override
void mettre_a_jour(double tps) override
Effectue une mise a jour en temps de la condition aux limites.
virtual int initialiser(double temps) override
Initialisation en debut de calcul.
virtual double fac_coeff_grad(double y_p) const
virtual double coefficient_frottement_grad(int i, int j) const override
virtual int avancer(double temps) override
Tourne la roue de la CL.
virtual double coefficient_frottement(int i, int j) const override
virtual double coefficient_frottement_grad(int i) const override