CG
Version 25
Main Page
Namespaces
Classes
Files
File List
File Members
cg.v25
ins
src
insFactors.h
Go to the documentation of this file.
1
#ifndef INSFACTORS_H
2
#define INSFACTORS_H
3
4
#include "
InsParameters.h
"
5
#include "
ApproximateFactorization.h
"
6
7
#define USE_COMBINED_FACTORS
8
9
namespace
CGINS_ApproximateFactorization {
10
11
enum
InsFactorModes
{
12
solveRHS
=0,
13
solveLHS
,
14
addExplicit
15
};
16
#if 0
17
enum
SpaceApproximations {
18
finite_difference=0,
19
compact
20
};
21
#endif
22
enum
FactorTypes
{
23
R_Factor
=0,
24
RR_Factor
,
25
Diagonal_Factor
,
26
Merged_Factor
,
27
numberOfFactorTypes
28
};
29
30
class
INS_Factor
:
public
CG_ApproximateFactorization::Factor
{
31
public
:
32
INS_Factor
(
const
int
dir
,
const
FactorTypes
ft
,
const
InsParameters
¶meters_);
33
virtual
~INS_Factor
();
34
35
virtual
void
solveRightHandSide
(
const
real &dt,
const
GridFunction
&
u
,
GridFunction
&u_star);
36
virtual
void
solveLeftHandSide
(
const
real &dt,
const
GridFunction
&u,
GridFunction
&u_star);
37
virtual
void
addExplicitContribution
(
const
real &dt,
const
GridFunction
&u, realCompositeGridFunction &
f
);
38
39
private
:
40
// disallow construction w/o an INS parameters object
41
INS_Factor
() :
CG_ApproximateFactorization::Factor
(0), type(
R_Factor
), parameters(0) {}
42
const
FactorTypes
type;
43
const
InsParameters
*parameters;
44
};
45
46
};
47
48
#endif
Generated on Fri Jan 4 2013 10:19:22 for CG by
1.8.3