ParMooN
 All Classes Functions Variables Friends Pages
TNSE3D_LESParamRout.h
1 // ======================================================================
2 // @(#)TNSE3D_LESParamRout.h 1.2 05/05/00
3 //
4 // common declaration for all time dependent Navier-Stokes problems
5 // ======================================================================
6 
7 #ifndef __TNSE3D_LESPARAMROUT__
8 #define __TNSE3D_LESPARAMROUT__
9 
10 // ========================================================================
11 // parameters: u1old, u2old, u3old
12 // ========================================================================
13 void TimeNSParamsVelo3D(double *in, double *out);
14 
15 int TimeNSN_FESpacesVeloLES = 1;
16 int TimeNSN_FctVeloLES = 3;
17 int TimeNSN_ParamFctVeloLES = 1;
18 int TimeNSN_FEValuesVeloLES = 3;
19 int TimeNSN_ParamsVeloLES = 3;
20 int TimeNSFEFctIndexVeloLES[3] = { 0, 1, 2 };
21 MultiIndex3D TimeNSFEMultiIndexVeloLES[3] = { D000, D000, D000 };
22 ParamFct *TimeNSFctVeloLES[1] = { TimeNSParamsVelo3D };
23 int TimeNSBeginParamVeloLES[1] = { 0 };
24 
25 
26 // ========================================================================
27 // parameters: u1old, u2old, gradient(u1), gradient(u2)
28 // ========================================================================
29 void TimeNSParamsVelo_GradVelo3D(double *in, double *out);
30 
31 int TimeNSN_FESpacesVelo_GradVeloLES = 1;
32 int TimeNSN_FctVelo_GradVeloLES = 3;
33 int TimeNSN_ParamFctVelo_GradVeloLES = 1;
34 int TimeNSN_FEValuesVelo_GradVeloLES = 12;
35 int TimeNSN_ParamsVelo_GradVeloLES = 12;
36 int TimeNSFEFctIndexVelo_GradVeloLES[12] = { 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2};
37 MultiIndex3D TimeNSFEMultiIndexVelo_GradVeloLES[12] = { D000, D000, D000,
38  D100, D100, D100,
39  D010, D010, D010,
40  D001, D001, D001};
41 ParamFct *TimeNSFctVelo_GradVeloLES[1] = { TimeNSParamsVelo_GradVelo3D };
42 int TimeNSBeginParamVelo_GradVeloLES[1] = { 0 };
43 
44 // ========================================================================
45 // parameters: gradient(u1), gradient(u2), gradient(u3)
46 // ========================================================================
47 void TimeNSParamsGradVelo3D(double *in, double *out);
48 
49 int TimeNSN_FESpacesGradVelo = 1;
50 int TimeNSN_FctGradVelo = 3;
51 int TimeNSN_ParamFctGradVelo = 1;
52 int TimeNSN_FEValuesGradVelo = 12;
53 int TimeNSN_ParamsGradVelo = 9;
54 int TimeNSFEFctIndexGradVelo[12] = { 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2};
55 MultiIndex3D TimeNSFEMultiIndexGradVelo[12] = { D000, D000, D000,
56  D100, D100, D100,
57  D010, D010, D010,
58  D001, D001, D001};
59 ParamFct *TimeNSFctGradVelo[1] = { TimeNSParamsGradVelo3D };
60 int TimeNSBeginParamGradVelo[1] = { 0 };
61 
62 // ========================================================================
63 // Classical LES
64 // turbulent viscosity \|u - g_\delta \ast u\|_2
65 // ========================================================================
66 void TimeNSParamsVelo_GradVeloNuT4_3D(double *in, double *out);
67 
68 int TimeNSN_FESpacesVelo_GradVeloNuT4 = 2;
69 int TimeNSN_FctVelo_GradVeloNuT4 = 6;
70 int TimeNSN_ParamFctVelo_GradVeloNuT4 = 1;
71 int TimeNSN_FEValuesVelo_GradVeloNuT4 = 12;
72 int TimeNSN_ParamsVelo_GradVeloNuT4 = 15;
73 int TimeNSFEFctIndexVelo_GradVeloNuT4[15] = { 0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2,
74  3, 4, 5};
75 MultiIndex3D TimeNSFEMultiIndexVelo_GradVeloNuT4[15] = { D000, D000, D000,
76  D100, D100, D100,
77  D010, D010, D010,
78  D001, D001, D001,
79  D000, D000, D000};
80 ParamFct *TimeNSFctVelo_GradVeloNuT4[1] = { TimeNSParamsVelo_GradVeloNuT4_3D };
81 int TimeNSBeginParamVelo_GradVeloNuT4[1] = { 0 };
82 
83 // ========================================================================
84 // Galdi/Layton with convolution, rhs assembling, without g_\delta \ast u
85 // ========================================================================
86 void TimeNSParamsRHSLES3D(double *in, double *out);
87 
88 int TimeNSN_FESpacesRHSGL00Convolution = 2;
89 int TimeNSN_FctRHSGL00Convolution = 9;
90 int TimeNSN_ParamFctRHSGL00Convolution = 1;
91 int TimeNSN_FEValuesRHSGL00Convolution = 6;
92 int TimeNSN_ParamsRHSGL00Convolution = 6;
93 int TimeNSFEFctIndexRHSGL00Convolution[6] = { 3, 4, 5, 6, 7, 8};
94 MultiIndex3D TimeNSFEMultiIndexRHSGL00Convolution[6] = { D000, D000, D000,
95  D000, D000, D000};
96 ParamFct *TimeNSFctRHSGL00Convolution[1] = { TimeNSParamsRHSLES3D };
97 int TimeNSBeginParamRHSGL00Convolution[1] = { 0 };
98 
99 // ========================================================================
100 // Galdi/Layton with convolution, rhs assembling,
101 // turbulent viscosity \|u - g_\delta \ast u\|_2
102 // ========================================================================
103 void TimeNSParamsRHSGL00ConvolutionNuT4_3D(double *in, double *out);
104 int TimeNSN_FESpacesRHSGL00ConvolutionNuT4 = 3;
105 int TimeNSN_FctRHSGL00ConvolutionNuT4 = 12;
106 int TimeNSN_ParamFctRHSGL00ConvolutionNuT4 = 1;
107 int TimeNSN_FEValuesRHSGL00ConvolutionNuT4 = 24;
108 int TimeNSN_ParamsRHSGL00ConvolutionNuT4 = 21;
109 int TimeNSFEFctIndexRHSGL00ConvolutionNuT4[21] = { 0, 1, 2, 0, 1, 2,
110  0, 1, 2, 0, 1, 2,
111  3, 4, 5, 6, 7, 8,
112  9, 10, 11};
113 MultiIndex3D TimeNSFEMultiIndexRHSGL00ConvolutionNuT4[21] = { D000, D000, D000,
114  D100, D100, D100,
115  D010, D010, D010,
116  D001, D001, D001,
117  D000, D000, D000,
118  D000, D000, D000,
119  D000, D000, D000};
120 ParamFct *TimeNSFctRHSGL00ConvolutionNuT4[1] = { TimeNSParamsRHSGL00ConvolutionNuT4_3D };
121 int TimeNSBeginParamRHSGL00ConvolutionNuT4[1] = { 0 };
122 
123 
124 // ========================================================================
125 // parameters for Galdi/Layton model with auxiliary problem
126 // ========================================================================
127 
128 int TimeNSN_FESpacesGL00AuxProblem = 1;
129 int TimeNSN_FctGL00AuxProblem = 9;
130 int TimeNSN_ParamFctGL00AuxProblem = 1;
131 int TimeNSN_FEValuesGL00AuxProblem = 6;
132 int TimeNSN_ParamsGL00AuxProblem = 6;
133 int TimeNSFEFctIndexGL00AuxProblem[6] = { 3, 4, 5, 6, 7, 8};
134 MultiIndex3D TimeNSFEMultiIndexGL00AuxProblem[6] = { D000, D000, D000,
135  D000, D000, D000};
136 ParamFct *TimeNSFctGL00AuxProblem[1] = { TimeNSParamsRHSLES3D };
137 int TimeNSBeginParamGL00AuxProblem[1] = { 0 };
138 
139 
140 // ========================================================================
141 // parameters for Galdi/Layton model with auxiliary problem
142 // turbulent viscosity \|u - g_\delta \ast u\|_2
143 // ========================================================================
144 
145 void TimeNSParamsGL00AuxProblemNuT4_3D(double *in, double *out);
146 
147 int TimeNSN_FESpacesGL00AuxProblemNuT4 = 2;
148 int TimeNSN_FctGL00AuxProblemNuT4 = 12;
149 int TimeNSN_ParamFctGL00AuxProblemNuT4 = 1;
150 int TimeNSN_FEValuesGL00AuxProblemNuT4 = 24;
151 int TimeNSN_ParamsGL00AuxProblemNuT4 = 21;
152 int TimeNSFEFctIndexGL00AuxProblemNuT4[21] = { 0, 1, 2, 0, 1, 2,
153  0, 1, 2, 0, 1, 2,
154  3, 4, 5, 6, 7, 8,
155  9, 10, 11};
156 MultiIndex3D TimeNSFEMultiIndexGL00AuxProblemNuT4[21] = { D000, D000, D000,
157  D100, D100, D100,
158  D010, D010, D010,
159  D001, D001, D001,
160  D000, D000, D000,
161  D000, D000, D000,
162  D000, D000, D000};
163 ParamFct *TimeNSFctGL00AuxProblemNuT4[1] = { TimeNSParamsRHSGL00ConvolutionNuT4_3D };
164 int TimeNSBeginParamGL00AuxProblemNuT4[1] = { 0 };
165 
166 
167 int TimeNSN_FESpacesVelo;
168 int TimeNSN_FctVelo;
169 int TimeNSN_ParamFctVelo;
170 int TimeNSN_FEValuesVelo;
171 ParamFct *TimeNSFctVelo[1];
172 int TimeNSFEFctIndexVelo[3];
173 MultiIndex3D TimeNSFEMultiIndexVelo[3];
174 int TimeNSN_ParamsVelo;
175 int TimeNSBeginParamVelo[1];
176 
177 
178 #endif
179