7 #ifndef __TNSE2D_PARAMROUT__
8 #define __TNSE2D_PARAMROUT__
13 MultiIndex2D TimeNSAllDerivatives[3] = { D00, D10, D01 };
23 void TimeNSParams2(
double *in,
double *out);
25 int TimeNSN_FESpaces2 = 1;
27 int TimeNSN_ParamFct2 = 1;
28 int TimeNSN_FEValues2 = 2;
29 int TimeNSN_Params2 = 2;
30 int TimeNSFEFctIndex2[2] = { 0, 1 };
31 MultiIndex2D TimeNSFEMultiIndex2[2] = { D00, D00 };
32 ParamFct *TimeNSFct2[1] = { TimeNSParams2 };
33 int TimeNSBeginParam2[1] = { 0 };
59 void TimeNSParamsVelo_GradVelo(
double *in,
double *out);
60 int TimeNSN_FESpacesVelo_GradVelo = 1;
61 int TimeNSN_FctVelo_GradVelo = 2;
62 int TimeNSN_ParamFctVelo_GradVelo = 1;
63 int TimeNSN_FEValuesVelo_GradVelo = 6;
64 int TimeNSN_ParamsVelo_GradVelo = 6;
65 int TimeNSFEFctIndexVelo_GradVelo[6] = { 0, 1, 0, 1, 0, 1 };
66 MultiIndex2D TimeNSFEMultiIndexVelo_GradVelo[6] = { D00, D00, D10, D10, D01, D01 };
67 ParamFct *TimeNSFctVelo_GradVelo[1] = { TimeNSParamsVelo_GradVelo };
68 int TimeNSBeginParamVelo_GradVelo[1] = { 0 };
73 void TimeNSParamsVelo_GradVelo_ALE(
double *in,
double *out);
74 int TimeNSN_FESpacesVelo_GradVelo_ALE = 2;
75 int TimeNSN_FctVelo_GradVelo_ALE = 4;
76 int TimeNSN_ParamFctVelo_GradVelo_ALE = 1;
77 int TimeNSN_FEValuesVelo_GradVelo_ALE = 8;
78 int TimeNSN_ParamsVelo_GradVelo_ALE = 8;
79 int TimeNSFEFctIndexVelo_GradVelo_ALE[8] = { 0, 1, 0, 1, 0, 1, 2, 3 };
80 MultiIndex2D TimeNSFEMultiIndexVelo_GradVelo_ALE[8] = { D00, D00, D10, D10, D01, D01, D00, D00};
81 ParamFct *TimeNSFctVelo_GradVelo_ALE[1] = { TimeNSParamsVelo_GradVelo_ALE };
82 int TimeNSBeginParamVelo_GradVelo_ALE[1] = { 0 };
88 void TimeNSParamsVelo_GradVelo_ConvVelo(
double *in,
double *out);
89 int TimeNSN_FESpacesVelo_GradVelo_ConvVelo = 2;
90 int TimeNSN_FctVelo_GradVelo_ConvVelo = 4;
91 int TimeNSN_ParamFctVelo_GradVelo_ConvVelo = 1;
92 int TimeNSN_FEValuesVelo_GradVelo_ConvVelo = 8;
93 int TimeNSN_ParamsVelo_GradVelo_ConvVelo = 8;
94 int TimeNSFEFctIndexVelo_GradVelo_ConvVelo[8] = { 0, 1, 0, 1, 0, 1, 2, 3 };
95 MultiIndex2D TimeNSFEMultiIndexVelo_GradVelo_ConvVelo[8] = { D00, D00, D10,
98 ParamFct *TimeNSFctVelo_GradVelo_ConvVelo[1] = { TimeNSParamsVelo_GradVelo_ConvVelo };
99 int TimeNSBeginParamVelo_GradVelo_ConvVelo[1] = { 0 };
105 void TimeNSParamsVelo_GradVeloNuT4(
double *in,
double *out);
106 int TimeNSN_FESpacesVelo_GradVeloNuT4 = 2;
107 int TimeNSN_FctVelo_GradVeloNuT4 = 4;
108 int TimeNSN_ParamFctVelo_GradVeloNuT4 = 1;
109 int TimeNSN_FEValuesVelo_GradVeloNuT4 = 8;
110 int TimeNSN_ParamsVelo_GradVeloNuT4 = 8;
111 int TimeNSFEFctIndexVelo_GradVeloNuT4[8] = { 0, 1, 0, 1, 0, 1, 2, 3 };
112 MultiIndex2D TimeNSFEMultiIndexVelo_GradVeloNuT4[8] = { D00, D00, D10, D10, D01, D01, D00, D00 };
113 ParamFct *TimeNSFctVelo_GradVeloNuT4[1] = { TimeNSParamsVelo_GradVeloNuT4 };
114 int TimeNSBeginParamVelo_GradVeloNuT4[1] = { 0 };
119 void TimeNSParamsGL00Convolution(
double *in,
double *out);
120 int TimeNSN_FESpacesGL00Convolution = 2;
121 int TimeNSN_FctGL00Convolution = 5;
122 int TimeNSN_ParamFctGL00Convolution = 1;
123 int TimeNSN_FEValuesGL00Convolution = 9;
124 int TimeNSN_ParamsGL00Convolution = 9;
125 int TimeNSFEFctIndexGL00Convolution[9] = { 0, 1, 0, 1, 0, 1, 2, 3, 4 };
126 MultiIndex2D TimeNSFEMultiIndexGL00Convolution[9] = { D00, D00, D10, D10, D01, D01,
128 ParamFct *TimeNSFctGL00Convolution[1] = { TimeNSParamsGL00Convolution };
129 int TimeNSBeginParamGL00Convolution[1] = { 0 };
146 void TimeNSParamsRHSLES(
double *in,
double *out);
147 int TimeNSN_FESpacesRHSGL00Convolution = 2;
148 int TimeNSN_FctRHSGL00Convolution = 5;
149 int TimeNSN_ParamFctRHSGL00Convolution = 1;
150 int TimeNSN_FEValuesRHSGL00Convolution = 3;
151 int TimeNSN_ParamsRHSGL00Convolution = 3;
152 int TimeNSFEFctIndexRHSGL00Convolution[3] = { 2, 3, 4 };
153 MultiIndex2D TimeNSFEMultiIndexRHSGL00Convolution[3] =
155 ParamFct *TimeNSFctRHSGL00Convolution[1] = { TimeNSParamsRHSLES };
156 int TimeNSBeginParamRHSGL00Convolution[1] = { 0 };
162 void TimeNSParamsRHSGL00ConvolutionNuT4(
double *in,
double *out);
163 int TimeNSN_FESpacesRHSGL00ConvolutionNuT4 = 3;
164 int TimeNSN_FctRHSGL00ConvolutionNuT4 = 7;
165 int TimeNSN_ParamFctRHSGL00ConvolutionNuT4 = 1;
166 int TimeNSN_FEValuesRHSGL00ConvolutionNuT4 = 11;
167 int TimeNSN_ParamsRHSGL00ConvolutionNuT4 = 11;
168 int TimeNSFEFctIndexRHSGL00ConvolutionNuT4[11] = { 0, 1, 0, 1, 0, 1, 2, 3, 4, 5, 6 };
169 MultiIndex2D TimeNSFEMultiIndexRHSGL00ConvolutionNuT4[11] =
170 { D00, D00, D10, D10, D01, D01, D00, D00, D00, D00, D00};
171 ParamFct *TimeNSFctRHSGL00ConvolutionNuT4[1] = { TimeNSParamsRHSGL00ConvolutionNuT4 };
172 int TimeNSBeginParamRHSGL00ConvolutionNuT4[1] = { 0 };
178 int TimeNSN_FESpacesGL00AuxProblem = 1;
179 int TimeNSN_FctGL00AuxProblem = 5;
180 int TimeNSN_ParamFctGL00AuxProblem = 1;
181 int TimeNSN_FEValuesGL00AuxProblem = 3;
182 int TimeNSN_ParamsGL00AuxProblem = 3;
183 int TimeNSFEFctIndexGL00AuxProblem[3] = { 2, 3, 4};
184 MultiIndex2D TimeNSFEMultiIndexGL00AuxProblem[3] = { D00, D00, D00};
185 ParamFct *TimeNSFctGL00AuxProblem[1] = { TimeNSParamsRHSLES };
186 int TimeNSBeginParamGL00AuxProblem[1] = { 0 };
193 void TimeNSParamsGL00AuxProblemNuT4(
double *in,
double *out);
194 int TimeNSN_FESpacesGL00AuxProblemNuT4 = 2;
195 int TimeNSN_FctGL00AuxProblemNuT4 = 7;
196 int TimeNSN_ParamFctGL00AuxProblemNuT4 = 1;
197 int TimeNSN_FEValuesGL00AuxProblemNuT4 = 11;
198 int TimeNSN_ParamsGL00AuxProblemNuT4 = 11;
199 int TimeNSFEFctIndexGL00AuxProblemNuT4[11] = { 0, 1, 0, 1, 0, 1, 2, 3, 4, 5, 6 };
200 MultiIndex2D TimeNSFEMultiIndexGL00AuxProblemNuT4[11] = { D00, D00, D10, D10, D01, D01,
201 D00, D00, D00, D00, D00 };
202 ParamFct *TimeNSFctGL00AuxProblemNuT4[1] = { TimeNSParamsGL00AuxProblemNuT4 };
203 int TimeNSBeginParamGL00AuxProblemNuT4[1] = { 0 };
205 void TimeNSParamsGL00AuxProblemPaper2(
double *in,
double *out);
206 int TimeNSN_FESpacesGL00AuxProblemPaper2 = 1;
207 int TimeNSN_FctGL00AuxProblemPaper2 = 8;
208 int TimeNSN_ParamFctGL00AuxProblemPaper2 = 1;
209 int TimeNSN_FEValuesGL00AuxProblemPaper2 = 13;
210 int TimeNSN_ParamsGL00AuxProblemPaper2 = 11;
211 int TimeNSFEFctIndexGL00AuxProblemPaper2[13] = { 0, 1, 0, 1, 0, 1, 2, 3, 4, 5, 6, 6, 7};
212 MultiIndex2D TimeNSFEMultiIndexGL00AuxProblemPaper2[13] = { D00, D00, D10, D10, D01, D01,
213 D00, D00, D00, D10, D10, D01, D01};
214 ParamFct *TimeNSFctGL00AuxProblemPaper2[1] = { TimeNSParamsGL00AuxProblemPaper2 };
215 int TimeNSBeginParamGL00AuxProblemPaper2[1] = { 0 };
220 void TimeNSParamsGrad(
double *in,
double *out);
222 int TimeNSN_FESpacesGrad = 1;
223 int TimeNSN_FctGrad = 2;
224 int TimeNSN_ParamFctGrad = 1;
225 int TimeNSN_FEValuesGrad = 6;
226 int TimeNSN_ParamsGrad = 4;
227 int TimeNSFEFctIndexGrad[6] = { 0, 1, 0, 1, 0, 1 };
228 MultiIndex2D TimeNSFEMultiIndexGrad[6] = { D00, D00, D10, D10, D01, D01 };
229 ParamFct *TimeNSFctGrad[1] = { TimeNSParamsGrad };
230 int TimeNSBeginParamGrad[1] = { 0 };
235 void TimeNSParams_VMS_SmallRhs2D(
double *in,
double *out);
237 int TimeNSN_FESpaces_VMS_SmallRhs = 3;
238 int TimeNSN_Fct_VMS_SmallRhs = 5;
239 int TimeNSN_ParamFct_VMS_SmallRhs = 1;
240 int TimeNSN_FEValues_VMS_SmallRhs = 13;
241 int TimeNSN_Params_VMS_SmallRhs = 13;
242 int TimeNSFEFctIndex_VMS_SmallRhs[13] = { 0, 1, 0, 1, 0, 1, 2, 3,
244 MultiIndex2D TimeNSFEMultiIndex_VMS_SmallRhs[13] = { D00, D00,
252 ParamFct *TimeNSFct_VMS_SmallRhs[1] = { TimeNSParams_VMS_SmallRhs2D };
253 int TimeNSBeginParam_VMS_SmallRhs[1] = { 0 };
255 void TimeNSParams_VMS_LargeRhs2D(
double *in,
double *out);
257 int TimeNSN_FESpaces_VMS_LargeRhs = 3;
258 int TimeNSN_Fct_VMS_LargeRhs = 5;
259 int TimeNSN_ParamFct_VMS_LargeRhs = 1;
260 int TimeNSN_FEValues_VMS_LargeRhs = 13;
261 int TimeNSN_Params_VMS_LargeRhs = 13;
262 int TimeNSFEFctIndex_VMS_LargeRhs[13] = { 0, 1, 0, 1, 0, 1, 2, 3,
264 MultiIndex2D TimeNSFEMultiIndex_VMS_LargeRhs[13] = { D00, D00,
272 ParamFct *TimeNSFct_VMS_LargeRhs[1] = { TimeNSParams_VMS_LargeRhs2D };
273 int TimeNSBeginParam_VMS_LargeRhs[1] = { 0 };
278 void TimeNSParams_NLGalerkin_VMS_1_2D(
double *in,
double *out);
280 int TimeNSN_FESpaces_NLGalerkin_VMS_1 = 2;
281 int TimeNSN_Fct_NLGalerkin_VMS_1 = 4;
282 int TimeNSN_ParamFct_NLGalerkin_VMS_1 = 1;
283 int TimeNSN_FEValues_NLGalerkin_VMS_1 = 4;
284 int TimeNSN_Params_NLGalerkin_VMS_1 = 4;
285 int TimeNSFEFctIndex_NLGalerkin_VMS_1[4] = { 0, 1, 2, 3 };
286 MultiIndex2D TimeNSFEMultiIndex_NLGalerkin_VMS_1[4] = { D00, D00, D00, D00 };
287 ParamFct *TimeNSFct_NLGalerkin_VMS_1[1] = { TimeNSParams_NLGalerkin_VMS_1_2D };
288 int TimeNSBeginParam_NLGalerkin_VMS_1[1] = { 0 };
294 void TimeNSParamsVelo_GradVeloOld2(
double *in,
double *out);
295 int TimeNSN_FESpacesVelo_GradVeloOld2 = 1;
296 int TimeNSN_FctVelo_GradVeloOld2 = 6;
297 int TimeNSN_ParamFctVelo_GradVeloOld2 = 1;
298 int TimeNSN_FEValuesVelo_GradVeloOld2 = 10;
299 int TimeNSN_ParamsVelo_GradVeloOld2 = 10;
300 int TimeNSFEFctIndexVelo_GradVeloOld2[10] = { 0, 1, 0, 1, 0, 1, 2, 3, 4, 5 };
301 MultiIndex2D TimeNSFEMultiIndexVelo_GradVeloOld2[10] = { D00, D00, D10, D10, D01, D01,
303 ParamFct *TimeNSFctVelo_GradVeloOld2[1] = { TimeNSParamsVelo_GradVeloOld2 };
304 int TimeNSBeginParamVelo_GradVeloOld2[1] = { 0 };
310 void TimeNSParamsVeloPos(
double *in,
double *out);
312 int TimeNSN_FESpacesVeloPos = 1;
313 int TimeNSN_FctVeloPos = 2;
314 int TimeNSN_ParamFctVeloPos = 1;
315 int TimeNSN_FEValuesVeloPos = 2;
316 int TimeNSN_ParamsVeloPos = 4;
317 int TimeNSFEFctIndexVeloPos[2] = { 0, 1 };
318 MultiIndex2D TimeNSFEMultiIndexVeloPos[2] = { D00, D00 };
319 ParamFct *TimeNSFctVeloPos[1] = { TimeNSParamsVeloPos };
320 int TimeNSBeginParamVeloPos[1] = { 0 };
325 void MovingTNSParams(
double *in,
double *out);
327 int MovingTNSN_FESpaces = 2;
328 int MovingTNSN_Fct = 4;
329 int MovingTNSN_ParamFct = 1;
330 int MovingTNSN_FEValues = 4;
331 int MovingTNSN_Params = 3;
332 int MovingTNSFEFctIndex[4] = { 0, 1, 2, 3 };
333 MultiIndex2D MovingTNSFEMultiIndex[4] = { D00, D00, D00, D00 };
334 ParamFct *MovingTNSFct[1] = { MovingTNSParams };
335 int MovingTNSBeginParam[1] = { 0 };
343 void MovingTNSParams_Axial3D(
double *in,
double *out);
345 int MovingTNSN_FESpaces_Axial3D = 2;
346 int MovingTNSN_Fct_Axial3D = 4;
347 int MovingTNSN_ParamFct_Axial3D = 1;
348 int MovingTNSN_FEValues_Axial3D = 4;
349 int MovingTNSN_Params_Axial3D = 4;
350 int MovingTNSFEFctIndex_Axial3D[4] = { 0, 1, 2, 3 };
351 MultiIndex2D MovingTNSFEMultiIndex_Axial3D[4] = { D00, D00, D00, D00 };
352 ParamFct *MovingTNSFct_Axial3D[1] = { MovingTNSParams_Axial3D };
353 int MovingTNSBeginParam_Axial3D[1] = { 0 };
360 void MovingTNSParams_Axial3D_HeatLine(
double *in,
double *out);
362 int MovingTNSN_FESpaces_Axial3D_HeatLine = 3;
363 int MovingTNSN_Fct_Axial3D_HeatLine = 7;
364 int MovingTNSN_ParamFct_Axial3D_HeatLine = 1;
365 int MovingTNSN_FEValues_Axial3D_HeatLine = 11;
366 int MovingTNSN_Params_Axial3D_HeatLine = 8;
367 int MovingTNSFEFctIndex_Axial3D_HeatLine[11] = { 0, 0, 0, 1, 2, 3, 4, 1, 2, 3, 4};
368 MultiIndex2D MovingTNSFEMultiIndex_Axial3D_HeatLine[11] = { D00, D10, D01, D00, D00, D00, D00, D01, D10, D01, D10};
369 ParamFct *MovingTNSFct_Axial3D_HeatLine[1] = { MovingTNSParams_Axial3D_HeatLine };
370 int MovingTNSBeginParam_Axial3D_HeatLine[1] = { 0 };
376 void ParamsFct_HeatLine(
double *in,
double *out);
378 int N_FESpaces_HeatLine = 2;
379 int N_FEFct_HeatLine = 5;
380 int N_ParamFct_HeatLine = 1;
381 int N_FEValues_HeatLine = 7;
382 int N_Parameters_HeatLine = 7;
383 int FEFctIndex_HeatLine[7] = { 0, 0, 0, 1, 2, 1, 2};
384 MultiIndex2D FEValueMultiIndex_HeatLine[7] = {D00, D10, D01, D00, D00, D01, D10};
385 ParamFct *ParamFct_HeatLineAll[1] = { ParamsFct_HeatLine };
386 int BeginParam_HeatLine[1] = { 0 };
392 void TimeNSParams4(
double *in,
double *out);
393 int TimeNSN_FESpaces4 = 1;
394 int TimeNSN_Fct4 = 4;
395 int TimeNSN_FEValues4 = 4;
396 int TimeNSN_Params4 = 4;
397 int TimeNSFEFctIndex4[4] = { 0, 1, 2, 3 };
398 MultiIndex2D TimeNSFEMultiIndex4[4] = { D00, D00, D00, D00 };
400 int TimeNSN_ParamFct4 = 1;
401 ParamFct *TimeNSFct4[1] = { TimeNSParams4 };
402 int TimeNSBeginParam4[1] = { 0 };
408 void BoundConditionAuxProblem(
int i,
double t, BoundCond &cond)
414 void BoundValueAuxProblem(
int BdComp,
double Param,
double &value)
423 void ho_BoundCondition(
int i,
double t, BoundCond &cond)
428 void ho_BoundValue(
int BdComp,
double Param,
double &value)