ENH: report filter settings for distance surface (#1631)

This commit is contained in:
Mark Olesen
2021-10-29 19:11:18 +02:00
parent 0c89154729
commit 08588134fb
32 changed files with 168 additions and 110 deletions

View File

@ -1095,6 +1095,13 @@ bool Foam::functionObjects::fieldValues::surfaceFieldValue::read
}
}
if (stSampled == regionType_ && sampledPtr_)
{
Info<< " sampled surface: ";
sampledPtr_->print(Info, 0);
Info<< nl;
}
if (writeFields_)
{
const word formatName(dict.get<word>("surfaceFormat"));

View File

@ -5,7 +5,7 @@
\\ / A nd | www.openfoam.com
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2018-2020 OpenCFD Ltd.
Copyright (C) 2018-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -203,10 +203,10 @@ Foam::tmp<Foam::tensorField> Foam::sampledDistanceSurface::interpolate
}
void Foam::sampledDistanceSurface::print(Ostream& os) const
void Foam::sampledDistanceSurface::print(Ostream& os, int level) const
{
os << "distanceSurface: " << name() << " :";
distanceSurface::print(os);
distanceSurface::print(os, level);
}

View File

@ -265,7 +265,7 @@ public:
// Output
//- Print information
virtual void print(Ostream& os) const;
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -854,10 +854,11 @@ Foam::sampledIsoSurface::interpolate
}
void Foam::sampledIsoSurface::print(Ostream& os) const
void Foam::sampledIsoSurface::print(Ostream& os, int level) const
{
os << "isoSurfacePoint: " << name() << " :"
<< " field :" << isoField_
os << "isoSurface: " << name() << " :";
isoParams_.print(os);
os << " field:" << isoField_
<< " value:" << flatOutput(isoValues_);
}

View File

@ -385,8 +385,8 @@ public:
// Output
//- Write
virtual void print(Ostream& os) const;
//- Print information
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2016-2020 OpenCFD Ltd.
Copyright (C) 2016-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -496,7 +496,7 @@ void Foam::sampledCuttingPlane::createGeometry()
if (debug)
{
print(Pout);
print(Pout, debug);
Pout<< endl;
}
}
@ -746,14 +746,18 @@ Foam::sampledCuttingPlane::interpolate
}
void Foam::sampledCuttingPlane::print(Ostream& os) const
void Foam::sampledCuttingPlane::print(Ostream& os, int level) const
{
os << "sampledCuttingPlane: " << name() << " :"
<< " plane:" << plane_
<< " offsets:" << flatOutput(offsets_)
<< " faces:" << faces().size()
<< " offsets:" << flatOutput(offsets_);
if (level)
{
os << " faces:" << faces().size()
<< " points:" << points().size();
}
}
// ************************************************************************* //

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2016-2020 OpenCFD Ltd.
Copyright (C) 2016-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -365,7 +365,7 @@ public:
// Output
//- Print information
virtual void print(Ostream& os) const;
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -5,7 +5,7 @@
\\ / A nd | www.openfoam.com
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2018-2020 OpenCFD Ltd.
Copyright (C) 2018-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -142,7 +142,7 @@ bool Foam::sampledCuttingSurface::update()
if (debug)
{
cuttingSurface::print(Pout);
cuttingSurface::print(Pout, debug);
Pout<< endl;
}

View File

@ -261,13 +261,6 @@ public:
(
const interpolation<tensor>& interpolator
) const;
// Output
// //- Print information
// void print(Ostream& os) const;
};

View File

@ -5,7 +5,7 @@
\\ / A nd | www.openfoam.com
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2020 OpenCFD Ltd.
Copyright (C) 2020-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -390,13 +390,17 @@ Foam::tmp<Foam::tensorField> Foam::sampledFaceZone::interpolate
}
void Foam::sampledFaceZone::print(Ostream& os) const
void Foam::sampledFaceZone::print(Ostream& os, int level) const
{
os << "faceZone: " << name() << " :"
<< " zones: " << flatOutput(selectionNames_)
<< " faces:" << faces().size()
<< " zones:" << flatOutput(selectionNames_);
if (level)
{
os << " faces:" << faces().size()
<< " points:" << points().size();
}
}
// ************************************************************************* //

View File

@ -5,7 +5,7 @@
\\ / A nd | www.openfoam.com
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2020 OpenCFD Ltd.
Copyright (C) 2020-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -322,7 +322,7 @@ public:
// Output
//- Print information
virtual void print(Ostream& os) const;
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -772,14 +772,18 @@ Foam::tmp<Foam::tensorField> Foam::sampledMeshedSurface::interpolate
}
void Foam::sampledMeshedSurface::print(Ostream& os) const
void Foam::sampledMeshedSurface::print(Ostream& os, int level) const
{
os << "meshedSurface: " << name() << " :"
<< " surface:" << surfaceName_
<< " faces:" << faces().size()
<< " surface:" << surfaceName_;
if (level)
{
os << " faces:" << faces().size()
<< " points:" << points().size()
<< " zoneids:" << zoneIds().size();
}
}
// ************************************************************************* //

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2016-2020 OpenCFD Ltd.
Copyright (C) 2016-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -380,8 +380,8 @@ public:
// Output
//- Write
virtual void print(Ostream& os) const;
//- Print information
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2018-2020 OpenCFD Ltd.
Copyright (C) 2018-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -233,7 +233,7 @@ bool Foam::sampledPatch::update()
if (debug)
{
print(Pout);
print(Pout, debug);
Pout<< endl;
}
@ -414,13 +414,17 @@ Foam::tmp<Foam::tensorField> Foam::sampledPatch::interpolate
}
void Foam::sampledPatch::print(Ostream& os) const
void Foam::sampledPatch::print(Ostream& os, int level) const
{
os << "sampledPatch: " << name() << " :"
<< " patches: " << flatOutput(selectionNames_)
<< " faces:" << faces().size()
<< " patches:" << flatOutput(selectionNames_);
if (level)
{
os << " faces:" << faces().size()
<< " points:" << points().size();
}
}
// ************************************************************************* //

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2016-2020 OpenCFD Ltd.
Copyright (C) 2016-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -349,8 +349,8 @@ public:
// Output
//- Write
virtual void print(Ostream&) const;
//- Print information
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2013 OpenFOAM Foundation
Copyright (C) 2018-2020 OpenCFD Ltd.
Copyright (C) 2018-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -228,13 +228,17 @@ Foam::tmp<Foam::tensorField> Foam::sampledPatchInternalField::interpolate
}
void Foam::sampledPatchInternalField::print(Ostream& os) const
void Foam::sampledPatchInternalField::print(Ostream& os, int level) const
{
os << "sampledPatchInternalField: " << name() << " :"
<< " patches:" << patchNames()
<< " faces:" << faces().size()
<< " patches:" << patchNames();
if (level)
{
os << " faces:" << faces().size()
<< " points:" << points().size();
}
}
// ************************************************************************* //

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2018 OpenCFD Ltd.
Copyright (C) 2018-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -202,7 +202,7 @@ public:
// Output
//- Print information
virtual void print(Ostream& os) const;
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2017-2020 OpenCFD Ltd.
Copyright (C) 2017-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -203,7 +203,7 @@ bool Foam::sampledPlane::update()
if (debug)
{
print(Pout);
print(Pout, debug);
Pout<< endl;
}
@ -301,15 +301,19 @@ Foam::tmp<Foam::tensorField> Foam::sampledPlane::interpolate
}
void Foam::sampledPlane::print(Ostream& os) const
void Foam::sampledPlane::print(Ostream& os, int level) const
{
os << "sampledPlane: " << name() << " :"
<< " origin:" << plane::origin()
<< " normal:" << plane::normal()
<< " triangulate:" << triangulate_
<< " faces:" << faces().size()
<< " triangulate:" << triangulate_;
if (level)
{
os << " faces:" << faces().size()
<< " points:" << points().size();
}
}
// ************************************************************************* //

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2016-2019 OpenCFD Ltd.
Copyright (C) 2016-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -291,7 +291,7 @@ public:
// Output
//- Print information
virtual void print(Ostream& os) const;
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -49,7 +49,6 @@ const Foam::wordList Foam::sampledSurface::surfaceFieldTypes
});
// * * * * * * * * * * * * Protected Member Functions * * * * * * * * * * * //
void Foam::sampledSurface::clearGeom() const
@ -219,7 +218,7 @@ Foam::tmp<Foam::tensorField> Foam::sampledSurface::sample
}
void Foam::sampledSurface::print(Ostream& os) const
void Foam::sampledSurface::print(Ostream& os, int level) const
{
os << type();
}
@ -229,7 +228,8 @@ void Foam::sampledSurface::print(Ostream& os) const
Foam::Ostream& Foam::operator<<(Ostream& os, const sampledSurface& s)
{
s.print(os);
// Print with more information
s.print(os, 1);
os.check(FUNCTION_NAME);
return os;
}

View File

@ -54,15 +54,16 @@ Description
Property | Description | Required | Default
name | Alternative name | no |
enabled | Enable/disable the surface? | no | yes
interpolate | Sample to nodes instead of faces | no | false
interpolate | Interpolate to nodes instead of faces | no | false
invariant | Invariant with geometry change (use with caution!) | no | false
\endtable
Note
The invariant switch is an advanced feature to declare that the surface is
unaffected by changes in the general mesh geometry. For example, if sampling
on a static patch while some other motion occurs elsewhere. If used improperly,
there is a significant possibility for problems (caveat emptor).
The invariant switch is an advanced feature to declare that the surface
is unaffected by changes in the general mesh geometry. For example, if
sampling on a static patch while some other motion occurs elsewhere. If
used improperly, there is a significant possibility for problems
(caveat emptor).
SourceFiles
sampledSurface.C
@ -288,31 +289,31 @@ public:
// Access
//- Access to the underlying mesh
const polyMesh& mesh() const
const polyMesh& mesh() const noexcept
{
return mesh_;
}
//- Name of surface
const word& name() const
const word& name() const noexcept
{
return name_;
}
//- Surface is enabled
bool enabled() const
bool enabled() const noexcept
{
return enabled_;
}
//- Surface is invariant with geometry change (caution)
bool invariant() const
bool invariant() const noexcept
{
return invariant_;
}
//- Using interpolation to surface points
bool isPointData() const
bool isPointData() const noexcept
{
return isPointData_;
}
@ -564,13 +565,13 @@ public:
// Write
//- Print information
virtual void print(Ostream& os) const;
virtual void print(Ostream& os, int level=0) const;
// Housekeeping
//- Same as isPointData()
bool interpolate() const { return isPointData_; }
bool interpolate() const noexcept { return isPointData_; }
};

View File

@ -470,9 +470,12 @@ bool Foam::sampledSurfaces::read(const dictionary& dict)
}
if (actions_[surfi] & ACTION_SURF_MESH)
{
Info<< ", store as surfMesh (deprecated)";
Info<< ", store as surfMesh (DEPRECATED)";
}
Info<< nl;
Info<< " ";
s.print(Info, 0);
Info<< nl;
}
Info<< nl;
}

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2018-2020 OpenCFD Ltd.
Copyright (C) 2018-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -286,14 +286,19 @@ Foam::tmp<Foam::tensorField> Foam::sampledThresholdCellFaces::interpolate
}
void Foam::sampledThresholdCellFaces::print(Ostream& os) const
void Foam::sampledThresholdCellFaces::print(Ostream& os, int level) const
{
os << "sampledThresholdCellFaces: " << name() << " :"
<< " field:" << fieldName_
<< " lowerLimit:" << lowerThreshold_
<< " upperLimit:" << upperThreshold_;
//<< " faces:" << faces().size() // possibly no geom yet
// Possibly no geom yet...
// if (level)
// {
// os << " faces:" << faces().size()
// << " points:" << points().size();
// }
}

View File

@ -6,7 +6,7 @@
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2011-2016 OpenFOAM Foundation
Copyright (C) 2016-2020 OpenCFD Ltd.
Copyright (C) 2016-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -278,7 +278,7 @@ public:
// Output
//- Print information
virtual void print(Ostream& os) const;
virtual void print(Ostream& os, int level=0) const;
};

View File

@ -5,7 +5,7 @@
\\ / A nd | www.openfoam.com
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2018-2020 OpenCFD Ltd.
Copyright (C) 2018-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -167,12 +167,15 @@ void Foam::cuttingSurface::performCut
}
void Foam::cuttingSurface::print(Ostream& os) const
void Foam::cuttingSurface::print(Ostream& os, int level) const
{
os << " surface:" << surfaceName()
<< " faces:" << Mesh::surfFaces().size()
os << " surface:" << surfaceName();
if (level)
{
os << " faces:" << Mesh::surfFaces().size()
<< " points:" << Mesh::points().size();
}
}
// ************************************************************************* //

View File

@ -5,7 +5,7 @@
\\ / A nd | www.openfoam.com
\\/ M anipulation |
-------------------------------------------------------------------------------
Copyright (C) 2018 OpenCFD Ltd.
Copyright (C) 2018-2021 OpenCFD Ltd.
-------------------------------------------------------------------------------
License
This file is part of OpenFOAM.
@ -133,8 +133,7 @@ public:
// Output
//- Print information
void print(Ostream& os) const;
void print(Ostream& os, int level=0) const;
};

View File

@ -734,19 +734,26 @@ void Foam::distanceSurface::createGeometry()
if (debug)
{
print(Pout);
print(Pout, debug);
Pout<< endl;
}
}
void Foam::distanceSurface::print(Ostream& os) const
void Foam::distanceSurface::print(Ostream& os, int level) const
{
os << " surface:" << surfaceName()
<< " distance:" << distance()
<< " faces:" << surface().surfFaces().size()
<< " topology:" << topoFilterNames_[topoFilter_];
isoParams_.print(os);
if (level)
{
os << " faces:" << surface().surfFaces().size()
<< " points:" << surface().points().size();
}
}
// ************************************************************************* //

View File

@ -392,7 +392,7 @@ public:
// Output
//- Print information
void print(Ostream& os) const;
void print(Ostream& os, int level=0) const;
};

View File

@ -180,4 +180,12 @@ void Foam::isoSurfaceParams::setClipBounds(const boundBox& bb)
}
void Foam::isoSurfaceParams::print(Ostream& os) const
{
os << " isoMethod:" << algorithmNames[algo_]
<< " regularise:" << filterNames[filter_]
<< " snap:" << snap_;
}
// ************************************************************************* //

View File

@ -69,6 +69,7 @@ namespace Foam
// Forward Declarations
class dictionary;
class Ostream;
/*---------------------------------------------------------------------------*\
Class isoSurfaceSelector Declaration
@ -241,6 +242,12 @@ public:
//- Set optional clipping bounding box
void setClipBounds(const boundBox& bb);
// Information
//- Print information about the settings
void print(Ostream& os) const;
};

View File

@ -267,7 +267,7 @@ Foam::tmp<Foam::tensorField> Foam::sampledInterface::interpolate
}
void Foam::sampledInterface::print(Ostream& os) const
void Foam::sampledInterface::print(Ostream& os, int level) const
{
os << "sampledInterface: " << name();
}

View File

@ -267,8 +267,8 @@ public:
// Output
//- Write
virtual void print(Ostream&) const;
//- Print information
virtual void print(Ostream& os, int level=0) const;
};