Tutorial 2 _ yes and no

A subforum specific to the development of the OpenFoam-based workbenches ( Cfd https://github.com/qingfengxia/Cfd and CfdOF https://github.com/jaheyns/CfdOF )

Moderator: oliveroxtoby

ljb
Posts: 43
Joined: Tue Sep 04, 2018 3:56 pm

Tutorial 2 _ yes and no

Post by ljb »

I can’t get this one to work as written (with snappyHexMesh as the solver).
(error = inconsistent patch and patchField types)

It works fine with the solver gmsh. Well, except the results in Paraview look a little different than the image in the tutorial.
I haven’t tried it with cfMesh yet. When I got it to work with gmsh I decided to try it with sHM again. This was still a no go, and my logs are attached. I had to cull some text from the Report View to fit within character count constraint.

OS: Windows 10
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.17.13528 (Git)
Build type: Release
Branch: releases/FreeCAD-0-17
Hash: 5c3f7bf8ec51e2c7187789f7edba71a7aa82a88b
Python version: 2.7.14
Qt version: 4.8.7
Coin version: 4.0.0a
OCC version: 7.2.0
Locale: English/UnitedStates (en_US)


Analysis control - Status

Code: Select all

0.0: Checking dependencies...
0.0: OpenFOAM case writer is called
1.0: Write OpenFOAM case is completed
0.1: Starting solver command:
0.1: C:\PROGRA~1\BLUECF~1\OPENFO~1.X\..\msys64\usr\bin\bash --login -O expand_aliases -c cd "/c/users/lb17/appdata/local/tempFC/case_1809251430" && ./Allrun
0.2: Solver started
10.1: OpenFOAM IO error: inconsistent patch and patchField types for file: C:/users/lb17/appdata/local/tempFC/case_1809251430/0/U.boundaryField.defaultFaces from line 53 to line 19. 
10.2: Simulation exited with error

Python Console

Code: Select all

Python 2.7.14 (default, Jan 16 2018, 16:11:42) [MSC v.1800 64 bit (AMD64)] on win32
Type 'help', 'copyright', 'credits' or 'license' for more information.
>>> import WebGui
>>> from StartPage import StartPage
>>> 
>>> class WebPage(object):
>>>     def __init__(self):
>>>         self.browser=WebGui.openBrowserWindow('Start page')
>>>         self.browser.setHtml(StartPage.handle(), App.getResourceDir() + 'Mod/Start/StartPage/')
>>>     def onChange(self, par, reason):
>>>         if reason == 'RecentFiles':
>>>             self.browser.setHtml(StartPage.handle(), App.getResourceDir() + 'Mod/Start/StartPage/')
>>> 
>>> class WebView(object):
>>>     def __init__(self):
>>>         self.pargrp = FreeCAD.ParamGet('User parameter:BaseApp/Preferences/RecentFiles')
>>>         self.webPage = WebPage()
>>>         self.pargrp.Attach(self.webPage)
>>>     def __del__(self):
>>>         self.pargrp.Detach(self.webPage)
>>> 
>>> webView=WebView()
>>> 
>>> App.newDocument("Unnamed")
>>> App.setActiveDocument("Unnamed")
>>> App.ActiveDocument=App.getDocument("Unnamed")
>>> Gui.ActiveDocument=Gui.getDocument("Unnamed")
>>> Gui.activateWorkbench("PartWorkbench")
>>> App.ActiveDocument.addObject("Part::Box","Box")
>>> App.ActiveDocument.ActiveObject.Label = "Cube"
>>> App.ActiveDocument.recompute()
>>> Gui.SendMsgToActiveView("ViewFit")
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Length = '5 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Length = '50 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Length = '500 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Width = '5 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Width = '50 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Width = '500 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Height = '4 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Height = '40 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Height = '400 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box").Height = '4000 mm'
>>> App.ActiveDocument.addObject("Part::Box","Box")
>>> App.ActiveDocument.ActiveObject.Label = "Cube"
>>> App.ActiveDocument.recompute()
>>> Gui.SendMsgToActiveView("ViewFit")
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Length = '5 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Length = '50 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Length = '500 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Width = '5 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Width = '50 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Width = '500 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Height = '1 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Height = '10 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Height = '100 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Height = '1000 mm'
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Placement = App.Placement(App.Vector(0,0,1),App.Rotation(App.Vector(0,0,1),0))
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Placement = App.Placement(App.Vector(0,0,15),App.Rotation(App.Vector(0,0,1),0))
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Placement = App.Placement(App.Vector(0,0,150),App.Rotation(App.Vector(0,0,1),0))
>>> FreeCAD.getDocument("Unnamed").getObject("Box001").Placement = App.Placement(App.Vector(0,0,1500),App.Rotation(App.Vector(0,0,1),0))
>>> Gui.activeDocument().activeView().viewFront()
>>> Gui.activateWorkbench("CfdOFWorkbench")
>>> import FemGui
>>> import CfdAnalysis
>>> analysis = CfdAnalysis.makeCfdAnalysis('CfdAnalysis')
>>> FemGui.setActiveAnalysis(analysis)
>>> import CfdPhysicsSelection
>>> analysis.addObject(CfdPhysicsSelection.makeCfdPhysicsSelection())
>>> import CfdFluidMaterial
>>> analysis.addObject(CfdFluidMaterial.makeCfdFluidMaterial('FluidProperties'))
>>> import CfdInitialiseFlowField
>>> analysis.addObject(CfdInitialiseFlowField.makeCfdInitialFlowField())
>>> import CfdSolverFoam
>>> analysis.addObject(CfdSolverFoam.makeCfdSolverFoam())
>>> import CfdMesh
>>> CfdMesh.makeCfdMesh('Box_Mesh')
>>> App.ActiveDocument.ActiveObject.Part = App.ActiveDocument.Box
>>> FemGui.getActiveAnalysis().addObject(App.ActiveDocument.ActiveObject)
>>> 
>>> FreeCAD.ActiveDocument.Box_Mesh.CharacteristicLengthMax = '50 mm'
>>> FreeCAD.ActiveDocument.Box_Mesh.MeshUtility = 'snappyHexMesh'
>>> FreeCAD.ActiveDocument.Box_Mesh.ElementDimension = '3D'
>>> FreeCAD.ActiveDocument.Box_Mesh.CellsBetweenLevels = 3
>>> FreeCAD.ActiveDocument.Box_Mesh.EdgeRefinement = 0
>>> FreeCAD.ActiveDocument.Box_Mesh.PointInMesh = {'y': 0.0, 'x': 0.0, 'z': 0.0}
>>> 
>>> FreeCAD.ActiveDocument.Box_Mesh.CharacteristicLengthMax = '50 mm'
>>> FreeCAD.ActiveDocument.Box_Mesh.MeshUtility = 'snappyHexMesh'
>>> FreeCAD.ActiveDocument.Box_Mesh.ElementDimension = '3D'
>>> FreeCAD.ActiveDocument.Box_Mesh.CellsBetweenLevels = 3
>>> FreeCAD.ActiveDocument.Box_Mesh.EdgeRefinement = 0
>>> FreeCAD.ActiveDocument.Box_Mesh.PointInMesh = {'y': 0.0, 'x': 0.0, 'z': 0.0}
>>> 
>>> FreeCAD.ActiveDocument.Box_Mesh.CharacteristicLengthMax = '50 mm'
>>> FreeCAD.ActiveDocument.Box_Mesh.MeshUtility = 'snappyHexMesh'
>>> FreeCAD.ActiveDocument.Box_Mesh.ElementDimension = '3D'
>>> FreeCAD.ActiveDocument.Box_Mesh.CellsBetweenLevels = 3
>>> FreeCAD.ActiveDocument.Box_Mesh.EdgeRefinement = 0
>>> FreeCAD.ActiveDocument.Box_Mesh.PointInMesh = {'y': 0.0, 'x': 0.0, 'z': 0.0}
>>> import CfdMeshRegion
>>> CfdMeshRegion.makeCfdMeshRegion(App.ActiveDocument.Box_Mesh)
>>> Gui.getDocument("Unnamed").getObject("Box").Visibility=False
>>> referenceList = []
>>> referenceList.append(('Box001','Face6'))
>>> referenceList.append(('Box001','Face3'))
>>> referenceList.append(('Box001','Face2'))
>>> referenceList.append(('Box001','Face1'))
>>> referenceList.append(('Box001','Face4'))
>>> referenceList.append(('Box001','Face5'))
>>> FreeCAD.ActiveDocument.MeshRegion.References = referenceList
>>> 
>>> FreeCAD.ActiveDocument.MeshRegion.RelativeLength = 0.75
>>> FreeCAD.ActiveDocument.MeshRegion.RefinementThickness = '0 mm'
>>> FreeCAD.ActiveDocument.MeshRegion.NumberLayers = 0
>>> FreeCAD.ActiveDocument.MeshRegion.ExpansionRatio = 0.0
>>> FreeCAD.ActiveDocument.MeshRegion.FirstLayerHeight = '0 mm'
>>> FreeCAD.ActiveDocument.MeshRegion.RefinementLevel = 1
>>> FreeCAD.ActiveDocument.MeshRegion.RegionEdgeRefinement = 1
>>> FreeCAD.ActiveDocument.MeshRegion.Baffle = False
>>> FreeCAD.ActiveDocument.MeshRegion.Internal = False
>>> FreeCAD.ActiveDocument.MeshRegion.InternalRegion = {'Radius1': 0.001, 'Point1': {'y': 0, 'x': 0.0, 'z': 0}, 'Point2': {'y': 0, 'x': 0.0, 'z': 0}, 'Radius2': 0.001, 'Center': {'y': 0, 'x': 0.0, 'z': 0}, 'BoxLengths': {'y': 0.001, 'x': 0.001, 'z': 0.001}, 'Type': 'Box', 'SphereRadius': 0.001}
>>> 
>>> FreeCAD.ActiveDocument.Box_Mesh.CharacteristicLengthMax = '50 mm'
>>> FreeCAD.ActiveDocument.Box_Mesh.MeshUtility = 'snappyHexMesh'
>>> FreeCAD.ActiveDocument.Box_Mesh.ElementDimension = '3D'
>>> FreeCAD.ActiveDocument.Box_Mesh.CellsBetweenLevels = 3
>>> FreeCAD.ActiveDocument.Box_Mesh.EdgeRefinement = 0
>>> FreeCAD.ActiveDocument.Box_Mesh.PointInMesh = {'y': 0.0, 'x': 0.0, 'z': 0.0}
>>> 
>>> FreeCAD.ActiveDocument.Box_Mesh.CharacteristicLengthMax = '50 mm'
>>> FreeCAD.ActiveDocument.Box_Mesh.MeshUtility = 'snappyHexMesh'
>>> FreeCAD.ActiveDocument.Box_Mesh.ElementDimension = '3D'
>>> FreeCAD.ActiveDocument.Box_Mesh.CellsBetweenLevels = 3
>>> FreeCAD.ActiveDocument.Box_Mesh.EdgeRefinement = 0
>>> FreeCAD.ActiveDocument.Box_Mesh.PointInMesh = {'y': 0.0, 'x': 0.0, 'z': 0.0}
>>> 
>>> FreeCAD.ActiveDocument.Box_Mesh.CharacteristicLengthMax = '50 mm'
>>> FreeCAD.ActiveDocument.Box_Mesh.MeshUtility = 'snappyHexMesh'
>>> FreeCAD.ActiveDocument.Box_Mesh.ElementDimension = '3D'
>>> FreeCAD.ActiveDocument.Box_Mesh.CellsBetweenLevels = 3
>>> FreeCAD.ActiveDocument.Box_Mesh.EdgeRefinement = 0
>>> FreeCAD.ActiveDocument.Box_Mesh.PointInMesh = {'y': 0.0, 'x': 0.0, 'z': 0.0}
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+1"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+18"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+180"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+1809"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+18092"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+180925"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+1809251"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+18092514"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+180925143"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case+1809251430"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case1809251430"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case-1809251430"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case1809251430"
>>> FreeCAD.getDocument("Unnamed").getObject("OpenFOAM").InputCaseName = "case_1809251430"
>>> referenceList = []
>>> referenceList.append(('Box001','Face6'))
>>> referenceList.append(('Box001','Face3'))
>>> referenceList.append(('Box001','Face2'))
>>> referenceList.append(('Box001','Face1'))
>>> referenceList.append(('Box001','Face4'))
>>> referenceList.append(('Box001','Face5'))
>>> FreeCAD.ActiveDocument.MeshRegion.References = referenceList
>>> 
>>> FreeCAD.ActiveDocument.MeshRegion.RelativeLength = 0.75
>>> FreeCAD.ActiveDocument.MeshRegion.RefinementThickness = '0 mm'
>>> FreeCAD.ActiveDocument.MeshRegion.NumberLayers = 0
>>> FreeCAD.ActiveDocument.MeshRegion.ExpansionRatio = 0.0
>>> FreeCAD.ActiveDocument.MeshRegion.FirstLayerHeight = '0 mm'
>>> FreeCAD.ActiveDocument.MeshRegion.RefinementLevel = 1
>>> FreeCAD.ActiveDocument.MeshRegion.RegionEdgeRefinement = 1
>>> FreeCAD.ActiveDocument.MeshRegion.Baffle = False
>>> FreeCAD.ActiveDocument.MeshRegion.Internal = False
>>> FreeCAD.ActiveDocument.MeshRegion.InternalRegion = {'Radius1': 0.001, 'Point1': {'y': 0, 'x': 0.0, 'z': 0}, 'Point2': {'y': 0, 'x': 0.0, 'z': 0}, 'Radius2': 0.001, 'Center': {'y': 0, 'x': 0.0, 'z': 0}, 'BoxLengths': {'y': 0.001, 'x': 0.001, 'z': 0.001}, 'Type': 'Box', 'SphereRadius': 0.001}
>>> Gui.getDocument("Unnamed").getObject("Box").Visibility=False
>>> 
>>> FreeCAD.ActiveDocument.Box_Mesh.CharacteristicLengthMax = '50 mm'
>>> FreeCAD.ActiveDocument.Box_Mesh.MeshUtility = 'snappyHexMesh'
>>> FreeCAD.ActiveDocument.Box_Mesh.ElementDimension = '3D'
>>> FreeCAD.ActiveDocument.Box_Mesh.CellsBetweenLevels = 3
>>> FreeCAD.ActiveDocument.Box_Mesh.EdgeRefinement = 0
>>> FreeCAD.ActiveDocument.Box_Mesh.PointInMesh = {'y': 0.0, 'x': 0.0, 'z': 0.0}
>>> import CfdZone
>>> FemGui.getActiveAnalysis().addObject(CfdZone.makeCfdPorousZone())
>>> App.activeDocument().recompute()
>>> p = FreeCAD.ActiveDocument.PorousZone.porousZoneProperties
>>> p['PorousCorrelation'] = 'DarcyForchheimer'
>>> p['D'] = [0.0,0.0,0.0]
>>> p['F'] = [0.0,0.0,0.0]
>>> p['e1'] = [1.0,0.0,0.0]
>>> p['e2'] = [0.0,1.0,0.0]
>>> p['e3'] = [0.0,0.0,1.0]
>>> p['OuterDiameter'] = 0.0
>>> p['TubeAxis'] = [0.0,0.0,1.0]
>>> p['TubeSpacing'] = 0.0
>>> p['SpacingDirection'] = [1.0,0.0,0.0]
>>> p['AspectRatio'] = 1.7
>>> p['VelocityEstimate'] = 0.0
>>> FreeCAD.ActiveDocument.PorousZone.porousZoneProperties = p
>>> FreeCAD.ActiveDocument.PorousZone.partNameList = ['Box001']
>>> sl = []
>>> sl.append(FreeCAD.ActiveDocument.Box001)
>>> FreeCAD.ActiveDocument.PorousZone.shapeList = sl
>>> Gui.getDocument("Unnamed").getObject("Box").Visibility=True
>>> import CfdFluidBoundary
>>> FemGui.getActiveAnalysis().addObject(CfdFluidBoundary.makeCfdFluidBoundary())
>>> 
>>> # Values are converted to SI units and stored (eg. m/s)
>>> bc = FreeCAD.ActiveDocument.CfdFluidBoundary.BoundarySettings
>>> bc['BoundaryType'] = 'outlet'
>>> bc['BoundarySubtype'] = 'staticPressure'
>>> bc['ThermalBoundaryType'] = 'fixedValue'
>>> bc['VelocityIsCartesian'] = True
>>> bc['Ux'] = 0.0
>>> bc['Uy'] = 0.0
>>> bc['Uz'] = 0.0
>>> bc['VelocityMag'] = 0.0
>>> bc['DirectionFace'] = ''
>>> bc['ReverseNormal'] = False
>>> bc['MassFlowRate'] = 0.0
>>> bc['VolFlowRate'] = 0.0
>>> bc['Pressure'] = 0.0
>>> bc['SlipRatio'] = 0.0
>>> bc['Temperature'] = 290.0
>>> bc['HeatFlux'] = 0.0
>>> bc['HeatTransferCoeff'] = 0.0
>>> bc['TurbulenceInletSpecification'] = 'intensityAndLengthScale'
>>> bc['TurbulentKineticEnergy'] = 0.01
>>> bc['SpecificDissipationRate'] = 0.994837673637
>>> bc['TurbulenceIntensity'] = 0.1
>>> bc['TurbulenceLengthScale'] = 0.1
>>> bc['PressureDropCoeff'] = 0.0
>>> bc['ScreenWireDiameter'] = 0.0001
>>> bc['ScreenSpacing'] = 0.0
>>> bc['PorousBaffleMethod'] = 0
>>> FreeCAD.ActiveDocument.CfdFluidBoundary.BoundarySettings = bc
>>> FreeCAD.ActiveDocument.CfdFluidBoundary.Label = 'outlet'
>>> FreeCAD.ActiveDocument.CfdFluidBoundary.References = []
>>> FreeCAD.ActiveDocument.CfdFluidBoundary.References.append(('Box', 'Face5'))
>>> FreeCAD.ActiveDocument.recompute()
>>> FemGui.getActiveAnalysis().addObject(CfdFluidBoundary.makeCfdFluidBoundary())
>>> 
>>> # Values are converted to SI units and stored (eg. m/s)
>>> bc = FreeCAD.ActiveDocument.CfdFluidBoundary001.BoundarySettings
>>> bc['BoundaryType'] = 'wall'
>>> bc['BoundarySubtype'] = 'fixed'
>>> bc['ThermalBoundaryType'] = 'fixedValue'
>>> bc['VelocityIsCartesian'] = True
>>> bc['Ux'] = 0.0
>>> bc['Uy'] = 0.0
>>> bc['Uz'] = 0.0
>>> bc['VelocityMag'] = 0.0
>>> bc['DirectionFace'] = ''
>>> bc['ReverseNormal'] = False
>>> bc['MassFlowRate'] = 0.0
>>> bc['VolFlowRate'] = 0.0
>>> bc['Pressure'] = 0.0
>>> bc['SlipRatio'] = 0.0
>>> bc['Temperature'] = 290.0
>>> bc['HeatFlux'] = 0.0
>>> bc['HeatTransferCoeff'] = 0.0
>>> bc['TurbulenceInletSpecification'] = 'intensityAndLengthScale'
>>> bc['TurbulentKineticEnergy'] = 0.01
>>> bc['SpecificDissipationRate'] = 0.994837673637
>>> bc['TurbulenceIntensity'] = 0.1
>>> bc['TurbulenceLengthScale'] = 0.1
>>> bc['PressureDropCoeff'] = 0.0
>>> bc['ScreenWireDiameter'] = 0.0001
>>> bc['ScreenSpacing'] = 0.0
>>> bc['PorousBaffleMethod'] = 0
>>> FreeCAD.ActiveDocument.CfdFluidBoundary001.BoundarySettings = bc
>>> FreeCAD.ActiveDocument.CfdFluidBoundary001.Label = 'wall'
>>> FreeCAD.ActiveDocument.CfdFluidBoundary001.References = []
>>> FreeCAD.ActiveDocument.CfdFluidBoundary001.References.append(('Box', 'Face1'))
>>> FreeCAD.ActiveDocument.CfdFluidBoundary001.References.append(('Box', 'Face4'))
>>> FreeCAD.ActiveDocument.CfdFluidBoundary001.References.append(('Box', 'Face2'))
>>> FreeCAD.ActiveDocument.CfdFluidBoundary001.References.append(('Box', 'Face3'))
>>> FreeCAD.ActiveDocument.recompute()
>>> FemGui.getActiveAnalysis().addObject(CfdFluidBoundary.makeCfdFluidBoundary())
>>> 
>>> # Values are converted to SI units and stored (eg. m/s)
>>> bc = FreeCAD.ActiveDocument.CfdFluidBoundary002.BoundarySettings
>>> bc['BoundaryType'] = 'inlet'
>>> bc['BoundarySubtype'] = 'uniformVelocity'
>>> bc['ThermalBoundaryType'] = 'fixedValue'
>>> bc['VelocityIsCartesian'] = True
>>> bc['Ux'] = 0.0
>>> bc['Uy'] = 0.0
>>> bc['Uz'] = 0.001
>>> bc['VelocityMag'] = 0.0
>>> bc['DirectionFace'] = ''
>>> bc['ReverseNormal'] = True
>>> bc['MassFlowRate'] = 0.0
>>> bc['VolFlowRate'] = 0.0
>>> bc['Pressure'] = 0.0
>>> bc['SlipRatio'] = 0.0
>>> bc['Temperature'] = 290.0
>>> bc['HeatFlux'] = 0.0
>>> bc['HeatTransferCoeff'] = 0.0
>>> bc['TurbulenceInletSpecification'] = 'intensityAndLengthScale'
>>> bc['TurbulentKineticEnergy'] = 0.01
>>> bc['SpecificDissipationRate'] = 0.994837673637
>>> bc['TurbulenceIntensity'] = 0.1
>>> bc['TurbulenceLengthScale'] = 0.1
>>> bc['PressureDropCoeff'] = 0.0
>>> bc['ScreenWireDiameter'] = 0.0001 
>>> bc['ScreenSpacing'] = 0.0
>>> bc['PorousBaffleMethod'] = 0
>>> FreeCAD.ActiveDocument.CfdFluidBoundary002.BoundarySettings = bc
>>> FreeCAD.ActiveDocument.CfdFluidBoundary002.Label = 'inlet'
>>> FreeCAD.ActiveDocument.CfdFluidBoundary002.References = []
>>> FreeCAD.ActiveDocument.CfdFluidBoundary002.References.append(('Box', 'Face6'))
>>> FreeCAD.ActiveDocument.recompute()
>>> Gui.getDocument("Unnamed").getObject("CfdFluidBoundary002").Visibility=False
>>> Gui.getDocument("Unnamed").getObject("CfdFluidBoundary002").Visibility=True
>>> Gui.getDocument("Unnamed").getObject("CfdFluidBoundary001").Visibility=False
>>> Gui.getDocument("Unnamed").getObject("CfdFluidBoundary001").Visibility=True
>>> Gui.getDocument("Unnamed").getObject("CfdFluidBoundary").Visibility=False
>>> Gui.getDocument("Unnamed").getObject("CfdFluidBoundary").Visibility=True
>>> 
>>> mat = FreeCAD.ActiveDocument.FluidProperties
>>> mat.Density = '1.2 kg/m^3'
>>> mat.DynamicViscosity = '1.8e-05 kg/(m*s)'
>>>

Report View

Code: Select all

Run Gui init script
Init: Running FreeCADGuiInit.py start script...
Init: Searching modules...
Init: Initializing C:\Program Files\FreeCAD 0.17\Mod\Sketcher... done
Init: Initializing C:\Program Files\FreeCAD 0.17\Mod\ReverseEngineering... done

 ...

Init: Initializing C:\Program Files\FreeCAD 0.17\Mod\Inspection... done
Init: Initializing C:\Program Files\FreeCAD 0.17\Mod\Drawing... done
Module: Part
Loading Part module... done
Loading Fem module... done
Loading GUI of Fem module... done
Init: Initializing C:\Users\LB17\AppData\Roaming\FreeCAD\Mod\CfdOF... done
Init: Loading FreeCAD GUI
Init: Running FreeCADGuiInit.py start script... done
Init: Activating default workbench StartWorkbench
Loading GUI of Web module... done
Loading GUI of Start module... done
Loading Start module... done
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
QNetworkAccessFileBackendFactory: URL has no schema set, use file:// for files
Init: Showing main window
Main window restored
Show main window
Toolbars restored
3Dconnexion device not attached.
Init: Entering event loop
Init: Processing command line files
Loading GUI of Part module... done
Loading MeshPart module... done
Loading Mesh module... done

Starting meshing ...

Part to mesh: Name --> Box, Label --> Cube, ShapeType --> Solid
CharacteristicLengthMax: 50.0
ElementDimension: 3D
No mesh regions.
Populating mesh dictionaries in folder c:\users\lb17\appdata\local\tempFC\meshCase
Successfully wrote meshCase to folder c:\users\lb17\appdata\local\tempFC\meshCase
Executing: C:\PROGRA~1\BLUECF~1\OPENFO~1.X\..\msys64\usr\bin\bash --login -O expand_aliases -c cd "/c/users/lb17/appdata/local/tempFC/meshCase" && ./Allmesh
Setting environment for OpenFOAM 5.x mingw-w64 Double Precision (of5-64), using MSMPI71 - please wait...
Environment is now ready. Notes:
- You can change between installed versions by running: ofmenu
- You can change to other predefined versions by running: ofmenuNew
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | OpenFOAM: The Open Source CFD Toolbox |
| \\ / O peration | Version: 5.x |
| \\ / A nd | Web: www.OpenFOAM.org |
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
/* Windows 32 and 64 bit porting by blueCAPE: http://www.bluecape.com.pt *\
| Based on Windows porting (2.0.x v4) by Symscape: http://www.symscape.com |
\*---------------------------------------------------------------------------*/
Build : 5.x-963176928289
Exec : C:/PROGRA~1/BLUECF~1/OpenFOAM-5.x/platforms/mingw_w64GccDPInt32Opt/bin/blockMesh.exe
Date : Sep 25 2018
Time : 16:21:49
Host : "BAKER17"
PID : 11632
I/O : uncollated
Case : C:/users/lb17/appdata/local/tempFC/meshCase
nProcs : 1
SigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Creating block mesh from
"C:/users/lb17/appdata/local/tempFC/meshCase/system/blockMeshDict"
Creating block edges
No non-planar block faces defined
Creating topology blocks
Creating topology patches

Creating block mesh topology
--> FOAM Warning : 
From function Foam::polyMesh::polyMesh(const Foam::IOobject&, const Foam::Xfer<Foam::Field<Foam::Vector<double> > >&, const cellShapeList&, const faceListList&, const wordList&, const Foam::PtrList<Foam::dictionary>&, const Foam::word&, const Foam::word&, bool)
in file meshes/polyMesh/polyMeshFromShapeMesh.C at line 871
Found 6 undefined faces in mesh; adding to default patch.

Check topology

Basic statistics
Number of internal faces : 0
Number of boundary faces : 6
Number of defined boundary faces : 6
Number of undefined boundary faces : 0
Checking patch -> block consistency

 ...
 
feature point : 8
feature edge : 388
nearest surface : 0
rest : 3006

--> FOAM Warning : Displacement (-0.000184930013810865 -0.000184930013810864 -0.00184930013810863) at mesh point 2315 coord (0.0184930013810863 0.0184930013810863 0.0184930013810863) points through the surrounding patch faces
Smoothing displacement ...
Iteration 0
Iteration 10
Iteration 20
Iteration 30
Iteration 40
Iteration 50
Iteration 60
Iteration 70
Iteration 80
Iteration 90
Displacement smoothed in = 0.263 s


Moving mesh ...

Iteration 0
Moving mesh using displacement scaling : min:1 max:1
Checking faces in error :
non-orthogonality > 65 degrees : 0
faces with face pyramid volume < 1e-013 : 0
faces with face-decomposition tet quality < -1 : 0
faces with concavity > 80 degrees : 0
faces with skewness > 4 (internal) or 20 (boundary) : 0
faces with interpolation weights (0..1) < 0.05 : 0
faces with volume ratio of neighbour cells < 0.01 : 0
faces with face twist < 0.01 : 0
faces on cells with determinant < 0.001 : 0
Successfully moved mesh
Moved mesh in = 0.182 s

 ...
 
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Reading surfaceFeatureExtractDict

Surface : "Box_Geometry.stl"


Feature line extraction is only valid on closed manifold surfaces.
Statistics:
Triangles : 12
Vertices : 8
Bounding Box : (0 0 0) (0.5 0.5 4)


Constructing feature set from included angle 150
Selecting edges purely based on geometric tests: no

Initial feature set:
feature points : 8
feature edges : 12
of which
region edges : 12
external edges : 0
internal edges : 0


Final feature set:
points : 8
of which
convex : 8
concave : 0
mixed : 0
non-feature : 0
edges : 12
of which
external edges : 12
internal edges : 0
flat edges : 0
open edges : 0
multiply connected : 0

Writing extendedFeatureEdgeMesh to "C:/users/lb17/appdata/local/tempFC/meshCase/constant/extendedFeatureEdgeMesh/Box_Geometry.extendedFeatureEdgeMesh"

Writing featureEdgeMesh to "C:/users/lb17/appdata/local/tempFC/meshCase/constant/triSurface/Box_Geometry.eMesh"

Surface : "MeshRegion.stl"


Feature line extraction is only valid on closed manifold surfaces.
Statistics:
Triangles : 12
Vertices : 8
Bounding Box : (0 0 1.5) (0.5 0.5 2.5)


Constructing feature set from included angle 150
Selecting edges purely based on geometric tests: no

Initial feature set:
feature points : 8
feature edges : 12
of which
region edges : 12
external edges : 0
internal edges : 0

 ...
 
 
| \\/ M anipulation | |
\*---------------------------------------------------------------------------*/
/* Windows 32 and 64 bit porting by blueCAPE: http://www.bluecape.com.pt *\
| Based on Windows porting (2.0.x v4) by Symscape: http://www.symscape.com |
\*---------------------------------------------------------------------------*/
Build : 5.x-963176928289
Exec : C:/PROGRA~1/BLUECF~1/OpenFOAM-5.x/platforms/mingw_w64GccDPInt32Opt/bin/potentialFoam.exe -initialiseUBCs
Date : Sep 25 2018
Time : 16:39:54
Host : "BAKER17"
PID : 14240
I/O : uncollated
Case : C:/users/lb17/appdata/local/tempFC/case_1809251430
nProcs : 1
SigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster (fileModificationSkew 10)
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Create mesh for time = 0


potentialFlow: Operating solver in PISO mode

Reading velocity field U





--> FOAM FATAL IO ERROR: 

inconsistent patch and patchField types for 

patch type empty and patchField type slip



file: C:/users/lb17/appdata/local/tempFC/case_1809251430/0/U.boundaryField.defaultFaces from line 53 to line 19.



From function static Foam::tmp<Foam::fvPatchField<Type> > Foam::fvPatchField<Type>::New(const Foam::fvPatch&, const Foam::DimensionedField<Type, Foam::volMesh>&, const Foam::dictionary&) [with Type = Foam::Vector<double>]

in file X:/OpenFOAM-5.x/src/finiteVolume/fields/fvPatchFields/fvPatchField/fvPatchFieldNew.C at line 160.



FOAM exiting

Attachments
Tutorial2_v7.FCStd
(15.58 KiB) Downloaded 59 times
thschrader
Veteran
Posts: 3158
Joined: Sat May 20, 2017 12:06 pm
Location: Germany

Re: Tutorial 2 _ yes and no

Post by thschrader »

I made some changes in your file, should work now.
Tutorial2_v7_new.FCStd
(16.24 KiB) Downloaded 95 times
ljb
Posts: 43
Joined: Tue Sep 04, 2018 3:56 pm

Re: Tutorial 2 _ yes and no

Post by ljb »

Thank you thschrader,

Unfortunately I am getting the same error.

From the status window ...

0.0: Checking dependencies...
0.0: OpenFOAM case writer is called
1.0: Write OpenFOAM case is completed
0.1: Starting solver command:
0.1: C:\PROGRA~1\BLUECF~1\OPENFO~1.X\..\msys64\usr\bin\bash --login -O expand_aliases -c cd "/c/users/lb17/appdata/local/tempFC/case_1809260830" && ./Allrun
0.2: Solver started
12.5: OpenFOAM IO error: inconsistent patch and patchField types for file: C:/users/lb17/appdata/local/tempFC/case_1809260830/0/U.boundaryField.defaultFaces from line 52 to line 19.
12.5: Simulation exited with error

The only change I noticed in the new file was the location of the point_in_mesh - from 0,0,0 to 100,200,300.
Not sure about the inlet velocity. I might have been using 1 mm/s instead of 1000 mm/s (with my successful gmsh run). And that might explain why my post-processing picture was different. (Pressure change spread over most of the length of the long box, instead of concentrated at the central small box.)

Were there other changes?

Would you like to see all the logs, or just specific info?

LB
ljb
Posts: 43
Joined: Tue Sep 04, 2018 3:56 pm

Re: Tutorial 2 _ yes and no

Post by ljb »

FYI

I ran the tutorial again, using the gmsh solver and 1000 mm/s for the input velocity (z direction).

As before, it works like a hose.

The pressure drop is still spread along the whole length of the large cube, but not as evenly as before. IOW, the input pressure stays constant a little longer, and the output pressure hits min a little sooner.

I suppose this is a "graphic" demonstration of the differences among various solvers : - ).
Last edited by ljb on Wed Sep 26, 2018 3:33 pm, edited 1 time in total.
User avatar
oliveroxtoby
Posts: 840
Joined: Fri Dec 23, 2016 9:43 am
Location: South Africa

Re: Tutorial 2 _ yes and no

Post by oliveroxtoby »

ljb wrote: Wed Sep 26, 2018 1:38 pm Thank you thschrader,

Unfortunately I am getting the same error.

From the status window ...

0.0: Checking dependencies...
0.0: OpenFOAM case writer is called
1.0: Write OpenFOAM case is completed
0.1: Starting solver command:
0.1: C:\PROGRA~1\BLUECF~1\OPENFO~1.X\..\msys64\usr\bin\bash --login -O expand_aliases -c cd "/c/users/lb17/appdata/local/tempFC/case_1809260830" && ./Allrun
0.2: Solver started
12.5: OpenFOAM IO error: inconsistent patch and patchField types for file: C:/users/lb17/appdata/local/tempFC/case_1809260830/0/U.boundaryField.defaultFaces from line 52 to line 19.
12.5: Simulation exited with error

The only change I noticed in the new file was the location of the point_in_mesh - from 0,0,0 to 100,200,300.
Not sure about the inlet velocity. I might have been using 1 mm/s instead of 1000 mm/s (with my successful gmsh run). And that might explain why my post-processing picture was different. (Pressure change spread over most of the length of the long box, instead of concentrated at the central small box.)

Were there other changes?

Would you like to see all the logs, or just specific info?

LB
Can you double-check? The file sent by thschrader works fine for me without any changes.
Please provide all the information requested in this post before reporting problems with CfdOF.
ljb
Posts: 43
Joined: Tue Sep 04, 2018 3:56 pm

Re: Tutorial 2 _ yes and no

Post by ljb »

I can.
I will.
ljb
Posts: 43
Joined: Tue Sep 04, 2018 3:56 pm

Re: Tutorial 2 _ yes and no

Post by ljb »

I did.

But ...

from status window
0.0: Checking dependencies...
0.0: OpenFOAM case writer is called
0.3: Error writing case:
0.3: [Errno 2] No such file or directory: 'c:\\users\\lb17\\appdata\\local\\tempFC\\meshCase\\system\\blockMeshDict'
0.3: Write case setup file failed

Remember, I'm still a beginner.

I opened the 'new' file, brought up the analysis control dialog, and invoked Write.

I obviously skipped a step somewhere.

LB
User avatar
oliveroxtoby
Posts: 840
Joined: Fri Dec 23, 2016 9:43 am
Location: South Africa

Re: Tutorial 2 _ yes and no

Post by oliveroxtoby »

ljb wrote: Wed Sep 26, 2018 3:41 pm I did.

But ...

from status window
0.0: Checking dependencies...
0.0: OpenFOAM case writer is called
0.3: Error writing case:
0.3: [Errno 2] No such file or directory: 'c:\\users\\lb17\\appdata\\local\\tempFC\\meshCase\\system\\blockMeshDict'
0.3: Write case setup file failed

Remember, I'm still a beginner.

I opened the 'new' file, brought up the analysis control dialog, and invoked Write.

I obviously skipped a step somewhere.

LB
Please re-do the writing of the mesh first - it's probably trying to re-use the mesh case that was last written using gmsh.
Please provide all the information requested in this post before reporting problems with CfdOF.
thschrader
Veteran
Posts: 3158
Joined: Sat May 20, 2017 12:06 pm
Location: Germany

Re: Tutorial 2 _ yes and no

Post by thschrader »

Hi ljb,
your original file runs fine on my machine, even with your „wrong“
inlet-values (mm vs m). I only changed the SHM-start point in mesh dialog
from 0,0,0 to 100,200,300. Strange... :?
your_model.JPG
your_model.JPG (114.45 KiB) Viewed 2683 times
ljb
Posts: 43
Joined: Tue Sep 04, 2018 3:56 pm

Re: Tutorial 2 _ yes and no

Post by ljb »

Thanks thschrader, oliver,

Strange?

That's more or less SOP as far as I can tell.

I'll re-run the mesh part.

After i finish my pizza.

LB
Post Reply