3296 |
} |
} |
3297 |
// Now we must create the association between bc and surfMeshes |
// Now we must create the association between bc and surfMeshes |
3298 |
|
|
3299 |
// This map contains the association between bc and the surface meshes it |
std::set<const SurfaceMesh*> treatedMeshes; // Mesh whose fictitious cells have been set |
|
// uses. (For each variable). |
|
|
bcMeshAssociation.bcSetSize(problem.numberOfUnknown()); |
|
3300 |
|
|
3301 |
for (size_t i=0; i<problem.numberOfUnknown(); ++i) { |
for (size_t i=0; i<problem.numberOfUnknown(); ++i) { |
3302 |
const BoundaryConditionSet& bcSet |
const BoundaryConditionSet& bcSet |
3314 |
if(bs.structMesh(k)) { |
if(bs.structMesh(k)) { |
3315 |
bcMeshAssociation.addPDEBoundaryConditionAndMesh(i,&BC,&SMesh.surfaceMeshOfQuadrangles(k)); |
bcMeshAssociation.addPDEBoundaryConditionAndMesh(i,&BC,&SMesh.surfaceMeshOfQuadrangles(k)); |
3316 |
} |
} |
3317 |
|
if (treatedMeshes.find(&SMesh.surfaceMeshOfQuadrangles(k)) == treatedMeshes.end()) { |
3318 |
|
treatedMeshes.insert(&SMesh.surfaceMeshOfQuadrangles(k)); |
3319 |
|
SMesh.surfaceMeshOfQuadrangles(k).computesFictitiousCells(); |
3320 |
|
} |
3321 |
} |
} |
3322 |
break; |
break; |
3323 |
} |
} |
3333 |
const BoundarySurfaceMesh& bs |
const BoundarySurfaceMesh& bs |
3334 |
= dynamic_cast<const BoundarySurfaceMesh&>(B); |
= dynamic_cast<const BoundarySurfaceMesh&>(B); |
3335 |
bcMeshAssociation.addPDEBoundaryConditionAndMesh(i,&BC,bs.surfaceMesh()); |
bcMeshAssociation.addPDEBoundaryConditionAndMesh(i,&BC,bs.surfaceMesh()); |
3336 |
|
if (treatedMeshes.find(&(*bs.surfaceMesh())) == treatedMeshes.end()) { |
3337 |
|
treatedMeshes.insert(&(*bs.surfaceMesh())); |
3338 |
|
(*bs.surfaceMesh()).computesFictitiousCells(); |
3339 |
|
} |
3340 |
break; |
break; |
3341 |
} |
} |
3342 |
default: { |
default: { |