From 3392965aba382f8ec1175113d8dc42c93cec0584 Mon Sep 17 00:00:00 2001 From: mattijs Date: Thu, 17 Aug 2017 12:47:45 +0100 Subject: [PATCH] ENH: scaling: added scaling to various sampling routines. See #514. --- .../sets/cellSources/surfaceToCell/surfaceToCell.C | 11 +++++++++-- .../sets/pointSources/surfaceToPoint/surfaceToPoint.C | 7 +++++-- .../sets/pointSources/surfaceToPoint/surfaceToPoint.H | 3 +++ 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.C b/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.C index 4188bf15d2..45af7eb248 100644 --- a/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.C +++ b/src/meshTools/sets/cellSources/surfaceToCell/surfaceToCell.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -435,7 +435,14 @@ Foam::surfaceToCell::surfaceToCell ), nearDist_(readScalar(dict.lookup("nearDistance"))), curvature_(readScalar(dict.lookup("curvature"))), - surfPtr_(new triSurface(surfName_)), + surfPtr_ + ( + new triSurface + ( + surfName_, + dict.lookupOrDefault("scale", -1) + ) + ), querySurfPtr_(new triSurfaceSearch(*surfPtr_)), IOwnPtrs_(true) { diff --git a/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.C b/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.C index 81d4ccf1b7..21f06de20f 100644 --- a/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.C +++ b/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.C @@ -3,7 +3,7 @@ \\ / F ield | OpenFOAM: The Open Source CFD Toolbox \\ / O peration | \\ / A nd | Copyright (C) 2011-2016 OpenFOAM Foundation - \\/ M anipulation | + \\/ M anipulation | Copyright (C) 2017 OpenCFD Ltd. ------------------------------------------------------------------------------- License This file is part of OpenFOAM. @@ -59,7 +59,7 @@ void Foam::surfaceToPoint::combine(topoSet& set, const bool add) const { cpuTime timer; - triSurface surf(surfName_); + triSurface surf(surfName_, scale_); Info<< " Read surface from " << surfName_ << " in = "<< timer.cpuTimeIncrement() << " s" << endl << endl; @@ -131,6 +131,7 @@ Foam::surfaceToPoint::surfaceToPoint : topoSetSource(mesh), surfName_(surfName), + scale_(1.0), nearDist_(nearDist), includeInside_(includeInside), includeOutside_(includeOutside) @@ -147,6 +148,7 @@ Foam::surfaceToPoint::surfaceToPoint : topoSetSource(mesh), surfName_(fileName(dict.lookup("file")).expand()), + scale_(dict.lookupOrDefault("scale", 1.0)), nearDist_(readScalar(dict.lookup("nearDistance"))), includeInside_(readBool(dict.lookup("includeInside"))), includeOutside_(readBool(dict.lookup("includeOutside"))) @@ -163,6 +165,7 @@ Foam::surfaceToPoint::surfaceToPoint : topoSetSource(mesh), surfName_(checkIs(is)), + scale_(1.0), nearDist_(readScalar(checkIs(is))), includeInside_(readBool(checkIs(is))), includeOutside_(readBool(checkIs(is))) diff --git a/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.H b/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.H index 548ffdbc64..d800574069 100644 --- a/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.H +++ b/src/meshTools/sets/pointSources/surfaceToPoint/surfaceToPoint.H @@ -67,6 +67,9 @@ class surfaceToPoint //- Name of surface file const fileName surfName_; + //- Optional scaling for surface + const scalar scale_; + //- If > 0 : include points with distance to surface less than nearDist. const scalar nearDist_;