diff --git a/README.html b/README.html index afcf0675..722830ec 100644 --- a/README.html +++ b/README.html @@ -26,10 +26,10 @@ .center {margin-left:auto; margin-right:auto; text-align:center;} p.verse { margin-left: 3% } pre { - border: 1pt solid #AEBDCC; - background-color: #F3F5F7; - padding: 5pt; - font-family: courier, monospace; + border: 1pt solid #AEBDCC; + background-color: #F3F5F7; + padding: 5pt; + font-family: courier, monospace; font-size: 90%; overflow:auto; } @@ -137,7 +137,7 @@ for the JavaScript code in this tag.

1 About OpenFOAM

-

OpenFOAM is a free, open source computational fluid dynamcis (CFD) software +

OpenFOAM is a free, open source computational fluid dynamics (CFD) software package released by the OpenFOAM Foundation. It has a large user base across most areas of engineering and science, from both commercial and academic organisations. OpenFOAM has an extensive range of features to solve anything diff --git a/README.org b/README.org index f363c019..3118d613 100644 --- a/README.org +++ b/README.org @@ -8,7 +8,7 @@ # Copyright (c) 2014 OpenFOAM Foundation. * About OpenFOAM - OpenFOAM is a free, open source computational fluid dynamcis (CFD) software + OpenFOAM is a free, open source computational fluid dynamics (CFD) software package released by the OpenFOAM Foundation. It has a large user base across most areas of engineering and science, from both commercial and academic organisations. OpenFOAM has an extensive range of features to solve anything diff --git a/src/mesh/blockMesh/Make/files b/src/mesh/blockMesh/Make/files index cda173e1..28410a11 100644 --- a/src/mesh/blockMesh/Make/files +++ b/src/mesh/blockMesh/Make/files @@ -7,6 +7,7 @@ curvedEdges/curvedEdge.C curvedEdges/lineEdge.C curvedEdges/polyLineEdge.C curvedEdges/lineDivide.C +curvedEdges/BSplineEdge.C curvedEdges/splineEdge.C blockDescriptor/blockDescriptor.C diff --git a/src/mesh/blockMesh/curvedEdges/BSplineEdge.C b/src/mesh/blockMesh/curvedEdges/BSplineEdge.C new file mode 100644 index 00000000..dca88f31 --- /dev/null +++ b/src/mesh/blockMesh/curvedEdges/BSplineEdge.C @@ -0,0 +1,97 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2014 OpenFOAM Foundation + \\/ M anipulation | +------------------------------------------------------------------------------- +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 . + +\*---------------------------------------------------------------------------*/ + +#include "BSplineEdge.H" +#include "addToRunTimeSelectionTable.H" + + +// * * * * * * * * * * * * * * Static Data Members * * * * * * * * * * * * * // + +namespace Foam +{ + defineTypeNameAndDebug(BSplineEdge, 0); + + addToRunTimeSelectionTable + ( + curvedEdge, + BSplineEdge, + Istream + ); +} + + +// * * * * * * * * * * * * * * * * Constructors * * * * * * * * * * * * * * // + +Foam::BSplineEdge::BSplineEdge +( + const pointField& points, + const label start, + const label end, + const pointField& internalPoints +) +: + curvedEdge(points, start, end), + BSpline(appendEndPoints(points, start, end, internalPoints)) +{} + + +Foam::BSplineEdge::BSplineEdge(const pointField& points, Istream& is) +: + curvedEdge(points, is), + BSpline(appendEndPoints(points, start_, end_, pointField(is))) +{ + token t(is); + is.putBack(t); + + // discard unused start/end tangents + if (t == token::BEGIN_LIST) + { + vector tangent0Ignored(is); + vector tangent1Ignored(is); + } +} + + +// * * * * * * * * * * * * * * * * Destructor * * * * * * * * * * * * * * * // + +Foam::BSplineEdge::~BSplineEdge() +{} + + +// * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // + +Foam::point Foam::BSplineEdge::position(const scalar mu) const +{ + return BSpline::position(mu); +} + + +Foam::scalar Foam::BSplineEdge::length() const +{ + return BSpline::length(); +} + + +// ************************************************************************* // diff --git a/src/mesh/blockMesh/curvedEdges/BSplineEdge.H b/src/mesh/blockMesh/curvedEdges/BSplineEdge.H new file mode 100644 index 00000000..bb1fc553 --- /dev/null +++ b/src/mesh/blockMesh/curvedEdges/BSplineEdge.H @@ -0,0 +1,108 @@ +/*---------------------------------------------------------------------------*\ + ========= | + \\ / F ield | OpenFOAM: The Open Source CFD Toolbox + \\ / O peration | + \\ / A nd | Copyright (C) 2014 OpenFOAM Foundation + \\/ M anipulation | +------------------------------------------------------------------------------- +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 . + +Class + Foam::BSplineEdge + +Description + A curvedEdge interface for B-splines. + +SourceFiles + BSplineEdge.C + +\*---------------------------------------------------------------------------*/ + +#ifndef BSplineEdge_H +#define BSplineEdge_H + +#include "curvedEdge.H" +#include "BSpline.H" + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +namespace Foam +{ + +/*---------------------------------------------------------------------------*\ + Class BSplineEdge Declaration +\*---------------------------------------------------------------------------*/ + +class BSplineEdge +: + public curvedEdge, + public BSpline +{ + // Private Member Functions + + //- Disallow default bitwise copy construct + BSplineEdge(const BSplineEdge&); + + //- Disallow default bitwise assignment + void operator=(const BSplineEdge&); + + +public: + + //- Runtime type information + TypeName("BSpline"); + + + // Constructors + + //- Construct from components + BSplineEdge + ( + const pointField&, + const label start, + const label end, + const pointField& internalPoints + ); + + //- Construct from Istream, setting pointsList + BSplineEdge(const pointField&, Istream&); + + + //- Destructor + virtual ~BSplineEdge(); + + + // Member Functions + + //- Return the point position corresponding to the curve parameter + // 0 <= lambda <= 1 + virtual point position(const scalar) const; + + //- Return the length of the spline curve (not implemented) + virtual scalar length() const; +}; + + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +} // End namespace Foam + +// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * // + +#endif + +// ************************************************************************* // diff --git a/src/thermophysicalModels/radiationModels/radiationModel/viewFactor/viewFactor.C b/src/thermophysicalModels/radiationModels/radiationModel/viewFactor/viewFactor.C index 5cfb6b11..c382f3ed 100644 --- a/src/thermophysicalModels/radiationModels/radiationModel/viewFactor/viewFactor.C +++ b/src/thermophysicalModels/radiationModels/radiationModel/viewFactor/viewFactor.C @@ -531,12 +531,12 @@ void Foam::radiation::viewFactor::calculate() if (i==j) { C[i][j] = invEj - (invEj - 1.0)*Fmatrix_()[i][j]; - q[i] += (Fmatrix_()[i][j] - 1.0)*sigmaT4; + q[i] += (Fmatrix_()[i][j] - 1.0)*sigmaT4 - QrExt[j]; } else { C[i][j] = (1.0 - invEj)*Fmatrix_()[i][j]; - q[i] += Fmatrix_()[i][j]*sigmaT4 - QrExt[j]; + q[i] += Fmatrix_()[i][j]*sigmaT4; } } @@ -580,11 +580,11 @@ void Foam::radiation::viewFactor::calculate() if (i==j) { - q[i] += (Fmatrix_()[i][j] - 1.0)*sigmaT4; + q[i] += (Fmatrix_()[i][j] - 1.0)*sigmaT4 - QrExt[j]; } else { - q[i] += Fmatrix_()[i][j]*sigmaT4 - QrExt[j]; + q[i] += Fmatrix_()[i][j]*sigmaT4; } } }