Skip to content

Commit

Permalink
Merge branch 'develop' into feature/add-srf-option
Browse files Browse the repository at this point in the history
  • Loading branch information
Jonathan Bergh committed May 13, 2022
2 parents 5e1ce41 + 5becca9 commit 78d65fe
Show file tree
Hide file tree
Showing 17 changed files with 29 additions and 25 deletions.
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,11 @@
Brought to you by the developers of the CfdOF FreeCAD OpenFOAM integration workbench.

## Release notes
## v1.16.0
* Support added for passive scalar transport solution
* Added support for Detached Eddy Simulation (DES, DDES and IDDES)
* Auto-detection of changes requiring re-writing the case or re-meshing, and prompts to do so when necessary

## v1.15.0
* Added dynamic mesh adaptation functionality
* Added Reporting functions functionality
Expand Down
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,21 @@ www.openfoam.com, and owner of the OPENFOAM® and OpenCFD® trade marks
* Incompressible, laminar flow (simpleFoam, pimpleFoam)
* RANS turbulent flow supporting k-omega SST (incl. transition), k-epsilon, and Spalart-Allmaras models
* LES turbulent flow supporting k-Equation, Smagorinsky and WALE (Wall bounded) models
* DES turbulent flow supporting k-omega SST and Spalart-Allmaras DES, DDES and IDDES variants
* Incompressible free-surface flow (interFoam, multiphaseInterFoam)
* Compressible buoyant flow (buoyantSimpleFoam, buoyantPimpleFoam)
* High-speed compressible flow ([HiSA](https://hisa.gitlab.io))
* Porous regions and porous baffles
* Basic material database
* Flow initialisation with a potential solver
* Solution of arbitrary passive scalar transport functions
#### Meshing
* Cut-cell Cartesian meshing with boundary layers (cfMesh)
* Cut-cell Cartesian meshing with baffles (snappyHexMesh) and implicit / explicit snapping
* Tetrahedral meshing using Gmsh, including conversion to polyhedral dual mesh
* Post-meshing check mesh
* Support for dynamic mesh adaptation for supported solvers
#### Post processing and monitoring
#### Post-processing and monitoring
* Postprocessing using Paraview
* Basic support for force-based function objects (Forces, Force Coefficients)
* Basic support for probes
Expand Down
4 changes: 2 additions & 2 deletions core/functionobjects/reporting/CfdReportingFunctions.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@

# Constants
OBJECT_NAMES = ["Force", "ForceCoefficients", "Probes"]
OBJECT_DESCRIPTIONS = ["Calculate forces on patches", "Calculate force coefficients from patches",
OBJECT_DESCRIPTIONS = ["Calculate forces on patches", "Calculate force coefficients from patches",
"Sample fields at specified locations"]

# GUI
Expand Down Expand Up @@ -198,7 +198,7 @@ def setEdit(self, vobj, mode):
CfdTools.cfdErrorBox("Reporting function must have a parent analysis object")
return False

import core.functionobjects.reporting.TaskPanelCfdReportingFunctions as TaskPanelCfdReportingFunctions
from core.functionobjects.reporting import TaskPanelCfdReportingFunctions as TaskPanelCfdReportingFunctions
import importlib
importlib.reload(TaskPanelCfdReportingFunctions)
taskd = TaskPanelCfdReportingFunctions.TaskPanelCfdReportingFunctions(self.Object)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ def setEdit(self, vobj, mode):
CfdTools.cfdErrorBox("Scalar transport object must have a parent analysis object")
return False

import core.functionobjects.scalartransport.TaskPanelCfdScalarTransportFunctions \
from core.functionobjects.scalartransport import TaskPanelCfdScalarTransportFunctions \
as TaskPanelCfdScalarTransportFunctions
import importlib
importlib.reload(TaskPanelCfdScalarTransportFunctions)
Expand Down
2 changes: 1 addition & 1 deletion core/mesh/dynamic/TaskPanelCfdDynamicMeshRefinement.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
import FreeCAD
import FreeCADGui
from CfdTools import setQuantity, getQuantity, indexOrDefault
import core.mesh.dynamic.CfdDynamicMeshRefinement as CfdDynamicMeshRefinement
from core.mesh.dynamic import CfdDynamicMeshRefinement as CfdDynamicMeshRefinement


class TaskPanelCfdDynamicMeshRefinement:
Expand Down
1 change: 0 additions & 1 deletion data/defaults/system/_functions_DESRegions
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

DESModelRegions1
{
type DESModelRegions;
Expand Down
1 change: 1 addition & 0 deletions data/defaults/system/_functions_scalarTransport
Original file line number Diff line number Diff line change
Expand Up @@ -38,4 +38,5 @@
}
}
}

%}
2 changes: 0 additions & 2 deletions data/defaults/system/controlDict
Original file line number Diff line number Diff line change
Expand Up @@ -77,12 +77,10 @@ functions
%:True
%[system/_functions_reporting%]
%}

%{%(scalarTransportFunctionsEnabled%)
%:True
%[system/_functions_scalarTransport%]
%}

%{%(physics/TurbulenceModel%)
%:kOmegaSSTDES kOmegaSSTDDES kOmegaSSTIDDES SpalartAllmarasDES SpalartAllmarasDDES SpalartAllmarasIDDES
%[system/_functions_DESRegions%]
Expand Down
2 changes: 1 addition & 1 deletion demos/Duct/04-screen.fcmacro
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import CfdMeshRefinement
CfdMeshRefinement.makeCfdMeshRefinement(App.ActiveDocument.Fusion_Mesh)
FreeCAD.ActiveDocument.MeshRefinement.RelativeLength = 0.5
FreeCAD.ActiveDocument.MeshRefinement.RefinementThickness = '0 mm'
FreeCAD.ActiveDocument.MeshRefinement.NumberLayers = 1
FreeCAD.ActiveDocument.MeshRefinement.NumberLayers = 0
FreeCAD.ActiveDocument.MeshRefinement.ExpansionRatio = 1.2
FreeCAD.ActiveDocument.MeshRefinement.FirstLayerHeight = '0 mm'
FreeCAD.ActiveDocument.MeshRefinement.RegionEdgeRefinement = 1.0
Expand Down
2 changes: 1 addition & 1 deletion demos/UAV/02-firstAnalysis.fcmacro
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ referenceList = FreeCAD.ActiveDocument.MeshRefinement.ShapeRefs = [
'Face74', 'Face75', 'Face76'))]
FreeCAD.ActiveDocument.MeshRefinement.RelativeLength = 0.25
FreeCAD.ActiveDocument.MeshRefinement.RefinementThickness = '100 mm'
FreeCAD.ActiveDocument.MeshRefinement.NumberLayers = 1
FreeCAD.ActiveDocument.MeshRefinement.NumberLayers = 0
FreeCAD.ActiveDocument.MeshRefinement.ExpansionRatio = 1.2
FreeCAD.ActiveDocument.MeshRefinement.FirstLayerHeight = '0 mm'
FreeCAD.ActiveDocument.MeshRefinement.RegionEdgeRefinement = 1.0
Expand Down
4 changes: 2 additions & 2 deletions demos/UAV/03-refineMesh.fcmacro
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ FreeCAD.ActiveDocument.MeshRefinement001.ShapeRefs = [

FreeCAD.ActiveDocument.MeshRefinement001.RelativeLength = 0.25
FreeCAD.ActiveDocument.MeshRefinement001.RefinementThickness = '0 mm'
FreeCAD.ActiveDocument.MeshRefinement001.NumberLayers = 1
FreeCAD.ActiveDocument.MeshRefinement001.NumberLayers = 0
FreeCAD.ActiveDocument.MeshRefinement001.ExpansionRatio = 1.2
FreeCAD.ActiveDocument.MeshRefinement001.FirstLayerHeight = '0 mm'
FreeCAD.ActiveDocument.MeshRefinement001.RegionEdgeRefinement = 1.0
Expand All @@ -36,7 +36,7 @@ FreeCAD.ActiveDocument.MeshRefinement002.ShapeRefs = [
'Face31', 'Face32', 'Face45', 'Face46', 'Face47', 'Face48', 'Face49', 'Face50', 'Face51', 'Face52', 'Face53', 'Face75'))]
FreeCAD.ActiveDocument.MeshRefinement002.RelativeLength = 0.02
FreeCAD.ActiveDocument.MeshRefinement002.RefinementThickness = '1 mm'
FreeCAD.ActiveDocument.MeshRefinement002.NumberLayers = 1
FreeCAD.ActiveDocument.MeshRefinement002.NumberLayers = 0
FreeCAD.ActiveDocument.MeshRefinement002.ExpansionRatio = 1.2
FreeCAD.ActiveDocument.MeshRefinement002.FirstLayerHeight = '0 mm'
FreeCAD.ActiveDocument.MeshRefinement002.RegionEdgeRefinement = 1.0
Expand Down
2 changes: 1 addition & 1 deletion metadata.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ description=Computational Fluid Dynamics (CFD) analysis based on OpenFOAM
about=Simple workflow to get started with CFD analysis.
Supports incompressible laminar and turbulent flow, basic multiphase flow,
and cut-cell cartesian meshing
version=1.15.1
version=1.16.1
tracker=https://forum.freecadweb.org/viewforum.php?f=37&sid=3d90858d2ff441bd10475a693b55643a
repository=https://gitlab.com/opensimproject/cfdof
license=LGPL
Expand Down
2 changes: 1 addition & 1 deletion package.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<package format="1">
<name>CfdOF</name>
<description>Computational Fluid Dynamics (CFD) for FreeCAD based on OpenFOAM</description>
<version>1.15.1</version>
<version>1.16.1</version>
<maintainer email="oliveroxtoby@gmail.com">Oliver Oxtoby</maintainer>
<license file="LICENSE">LGPL-2</license>
<url type="repository" branch="master">https://gitlab.com/opensimproject/CfdOF</url>
Expand Down
1 change: 0 additions & 1 deletion testFiles/cases/LESStep/case/constant/turbulenceProperties
Original file line number Diff line number Diff line change
Expand Up @@ -85,5 +85,4 @@ LES

maxDeltaRatio 1.1;
}

}
12 changes: 6 additions & 6 deletions testFiles/cases/Projectile/meshCase/system/meshDict
Original file line number Diff line number Diff line change
Expand Up @@ -23,25 +23,25 @@ objectRefinements
{
MeshRefinement002
{
cellSize 0.00675;
additionalRefinementLevels 6;
type insideSurface;
closedSurfaceFile "constant/triSurface/MeshRefinement002.stl";
}
MeshRefinement003
{
cellSize 0.0135;
additionalRefinementLevels 5;
type insideSurface;
closedSurfaceFile "constant/triSurface/MeshRefinement003.stl";
}
MeshRefinement004
{
cellSize 0.027;
additionalRefinementLevels 4;
type insideSurface;
closedSurfaceFile "constant/triSurface/MeshRefinement004.stl";
}
MeshRefinement005
{
cellSize 0.027;
additionalRefinementLevels 4;
type insideSurface;
closedSurfaceFile "constant/triSurface/MeshRefinement005.stl";
}
Expand All @@ -51,13 +51,13 @@ surfaceMeshRefinement
{
MeshRefinement
{
cellSize 0.003375;
additionalRefinementLevels 7;
surfaceFile "constant/triSurface/MeshRefinement.stl";
refinementThickness 0.005;
}
MeshRefinement001
{
cellSize 0.001575;
additionalRefinementLevels 8;
surfaceFile "constant/triSurface/MeshRefinement001.stl";
refinementThickness 0.005;
}
Expand Down
6 changes: 3 additions & 3 deletions testFiles/cases/UAV/meshCase/system/meshDict
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ objectRefinements
{
MeshRefinement001
{
cellSize 0.025;
additionalRefinementLevels 2;
type insideSurface;
closedSurfaceFile "constant/triSurface/MeshRefinement001.stl";
}
Expand All @@ -33,13 +33,13 @@ surfaceMeshRefinement
{
MeshRefinement
{
cellSize 0.002;
additionalRefinementLevels 6;
surfaceFile "constant/triSurface/MeshRefinement.stl";
refinementThickness 0.001;
}
MeshRefinement002
{
cellSize 0.002;
additionalRefinementLevels 6;
surfaceFile "constant/triSurface/MeshRefinement002.stl";
refinementThickness 0.001;
}
Expand Down
2 changes: 1 addition & 1 deletion testFiles/cases/ViscousTubeBundle/meshCase/system/meshDict
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ surfaceMeshRefinement
{
MeshRefinement
{
cellSize 0.005;
additionalRefinementLevels 1;
surfaceFile "constant/triSurface/MeshRefinement.stl";
refinementThickness 0.005;
}
Expand Down

0 comments on commit 78d65fe

Please sign in to comment.