diff --git a/applications/utilities/preProcessing/createViewFactors/Allwmake b/applications/utilities/preProcessing/createViewFactors/Allwmake new file mode 100755 index 0000000000..9de13a5b03 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/Allwmake @@ -0,0 +1,11 @@ +#!/bin/sh +cd "${0%/*}" || exit # Run from this directory + + . "$WM_PROJECT_DIR"/wmake/scripts/AllwmakeParseArguments + +#------------------------------------------------------------------------------ + +wmake $targetType viewFactorModels +wmake $targetType createViewFactors + +#------------------------------------------------------------------------------ diff --git a/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/files b/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/files new file mode 100644 index 0000000000..3f36ae84ca --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/files @@ -0,0 +1,3 @@ +createViewFactors.C + +EXE = $(FOAM_APPBIN)/createViewFactors diff --git a/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/options b/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/options new file mode 100644 index 0000000000..71f2b983ab --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/createViewFactors/Make/options @@ -0,0 +1,7 @@ +EXE_INC = \ + -I../viewFactorModels/lnInclude \ + -I$(LIB_SRC)/finiteVolume/lnInclude + +EXE_LIBS = \ + -lviewFactorModels \ + -lfiniteVolume diff --git a/applications/utilities/preProcessing/createViewFactors/createViewFactors/createViewFactors.C b/applications/utilities/preProcessing/createViewFactors/createViewFactors/createViewFactors.C new file mode 100644 index 0000000000..84ad369a99 --- /dev/null +++ b/applications/utilities/preProcessing/createViewFactors/createViewFactors/createViewFactors.C @@ -0,0 +1,165 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | www.openfoam.com + \\/ M anipulation | +------------------------------------------------------------------------------- + Copyright (C) 2023 OpenCFD Ltd. +------------------------------------------------------------------------------- +License + This file is part of OpenFOAM. + + OpenFOAM is free software: you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + OpenFOAM is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + for more details. + + You should have received a copy of the GNU General Public License + along with OpenFOAM. If not, see . + +Application + createViewFactors + +Group + grpPreProcessingUtilities + +Description + Creates view factors to be used in the view-factor radiation model. + + Operands: + \table + Operand | Type | Location + input | dictionary | \/viewFactorsDict + input | dictionary | \/finalAgglom + output | scalarListList | \/F + output | mapDistribute | \/mapDist + output | labelListList | \/globalFaceFaces + output | volScalarField | \/viewVectorField + output | OBJ | allVisibleFaces.obj + \endtable + + where the dictionaries mean: + \table + Dictionary | Description + viewFactorsDict | Main-control dictionary + finalAgglom | (Optional) Agglomeration addressing (from faceAgglomerate) + F | View factors (matrix) + mapDist | Map used for parallel running + globalFaceFaces | Face addressing + viewVectorField | View factors as a volume field + allVisibleFaces.obj | The visualisation of the rays + \endtable + +Usage + Minimal example in \c /viewFactorsDict: + \verbatim + // Inherited entries + raySearchEngine ; + agglomerate ; + nRayPerFace