[Trilinos-Users] Sundance boundary conditions

Andrea Penza pepe.aero at alice.it
Thu Dec 22 08:09:52 MST 2011


Hi all,
working on Sundance with a 2D ExodusII mesh I have trouble to let
identify edges where enforce boundary conditions.
My mesh is made by Icem Cfd because I have no license to work on Cubit.
The problems come when I try to use:

CellFilter edges = new DimensionalCellFilter(1);

CellFilter left = edges.labeledSubset(1);
CellFilter right = edges.labeledSubset(3);
CellFilter top = edges.labeledSubset(2);
CellFilter bottom = edges.labeledSubset(4);

where int 1, 2, 3, and 4 are labels made by the mesher.
This doesn't work if I put labels with Icem and then export in ExodusII
file format.
So I've tried the way to use CELL_PREDICATE like these:

CELL_PREDICATE(LeftPointTest, {return fabs(x[0]) < 1.0e-10;})
CELL_PREDICATE(BottomPointTest, {return fabs(x[1]) < 1.0e-10;})
CELL_PREDICATE(RightPointTest, {return fabs(x[0]-1.0) < 1.0e-10;})
CELL_PREDICATE(TopPointTest, {return fabs(x[1]-1.0) < 1.0e-10;})

CellFilter edges = new DimensionalCellFilter(1);
  
CellFilter left = edges.subset(new LeftPointTest());
CellFilter right = edges.subset(new RightPointTest());
CellFilter top = edges.subset(new TopPointTest());
CellFilter bottom = edges.subset(new BottomPointTest());

This works, but it is really uncomfortable to use because it depends on
the tolerance used and it could lose precision with more complex
geometry, such as curved edges like in my case.
Has anyone some suggestion about it, or has encountered the same problem
before?
Thanks a lot to everyone for your support.
Best regards,

Andrea




More information about the Trilinos-Users mailing list