55 |
{ |
{ |
56 |
MemoryManager MM; |
MemoryManager MM; |
57 |
|
|
58 |
|
|
59 |
|
|
60 |
bool performAssembling =MM.ReserveMatrix(__A, |
bool performAssembling =MM.ReserveMatrix(__A, |
61 |
problem().numberOfUnknown(), |
problem().numberOfUnknown(), |
62 |
__degreeOfFreedomSet.size()); |
__degreeOfFreedomSet.size()); |
116 |
} |
} |
117 |
} |
} |
118 |
|
|
119 |
void PenalizedFictitousDomain::Discretize (ConstReferenceCounting<Problem> Pb) |
void PenalizedFictitousDomain::Discretize (ConstReferenceCounting<Problem> givenProblem) |
120 |
{ |
{ |
121 |
__problem = Pb; |
ffout(2) << "Adding Characteristic function of the domain to PDEs ... " << std::flush; |
122 |
|
ConstReferenceCounting<UserFunction> u = new ConstUserFunction(1.); |
123 |
|
|
124 |
|
// __problem = (*givenProblem) * u; |
125 |
|
__problem = givenProblem; |
126 |
|
ffout(2) << "done\n"; |
127 |
|
|
128 |
switch (mesh().type()) { |
switch (mesh().type()) { |
129 |
case Mesh::cartesianHexahedraMesh: { |
case Mesh::cartesianHexahedraMesh: { |
130 |
this->__discretize<Structured3DMesh>(); |
this->__discretize<Structured3DMesh>(); |