From fbe607811a18d71343dc42ae5fd4a7da2da4749d Mon Sep 17 00:00:00 2001 From: graham Date: Wed, 21 Jan 2009 17:48:27 +0000 Subject: [PATCH] Adding relaxation calculation that adjusts to changes in runTime controls during a run. Experimenting with primary alignment rotations to achieve boundary alignment. Altering template depth back to 60 after master merge conflict resolution. --- .../mesh/generation/CV3DMesher/CV3D.C | 190 +++++++++++++++--- .../mesh/generation/CV3DMesher/CV3DMesher.C | 35 ++-- wmake/rules/linux64Gcc/c++ | 2 +- 3 files changed, 177 insertions(+), 50 deletions(-) diff --git a/applications/utilities/mesh/generation/CV3DMesher/CV3D.C b/applications/utilities/mesh/generation/CV3DMesher/CV3D.C index 79b3f0424c..81cde7813b 100644 --- a/applications/utilities/mesh/generation/CV3DMesher/CV3D.C +++ b/applications/utilities/mesh/generation/CV3DMesher/CV3D.C @@ -228,6 +228,8 @@ void Foam::CV3D::setVertexAlignmentDirections() { alignmentDirections.setSize(0); } + + vit->alignmentDirections() = alignmentDirections; } } } @@ -259,9 +261,9 @@ Foam::scalar Foam::CV3D::alignmentDistanceWeight(scalar dist) const Foam::scalar Foam::CV3D::faceAreaWeight(scalar faceArea) const { - scalar fl2 = 0.2; + scalar fl2 = 0.36; - scalar fu2 = 1.0; + scalar fu2 = 0.8; scalar m2 = controls_.minCellSize2; @@ -533,11 +535,95 @@ void Foam::CV3D::relaxPoints(const scalar relaxation) dualVertices.setSize(dualVerti); + // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // loop around the Delaunay edges to construct the dual faces. // Find the face-centre and use it to calculate the displacement vector // contribution to the Delaunay vertices (Dv) attached to the edge. Add the // contribution to the running displacement vector of each Dv. + // for + // ( + // Triangulation::Finite_edges_iterator eit = finite_edges_begin(); + // eit != finite_edges_end(); + // ++eit + // ) + // { + // if + // ( + // eit->first->vertex(eit->second)->internalOrBoundaryPoint() + // && eit->first->vertex(eit->third)->internalOrBoundaryPoint() + // ) + // { + // Cell_circulator ccStart = incident_cells(*eit); + // Cell_circulator cc = ccStart; + + // DynamicList