|
[Sponsors] |
[Commercial meshers] Native OpenFOAM interface in Pointwise |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
January 16, 2009, 13:31 |
Native OpenFOAM interface in Pointwise
|
#1 |
Senior Member
Chris Sideroff
Join Date: Mar 2009
Location: Ottawa, ON, CAN
Posts: 434
Rep Power: 22 |
The CAE mesher, Pointwise (same name as company), released on January 14, 2009, now has a native OpenFOAM export interface. This means users no longer have to export their grids to an intermediate format and use one of the conversion applications from OpenFOAM.
Pointwise, Inc. has received increasing interest in using Pointwise and Gridgen with OpenFOAM. Since participating in the OpenFOAM Workshop this past summer in Milan, Pointwise, Inc has maintained active communication with Prof. Jasak. Prof. Jasak visited Pointwise, Inc in early November 2008 and implemented the native interface. The latest release of Pointwise is the first public version with the OpenFOAM interface. Many people know Pointwise, Inc for Gridgen. However, Pointwise our next generation meshing software for CAE from Pointwise, Inc. and has been in production use for more than a year. We have combined the reliable CFD meshing in Gridgen with modern software techinques to bring you the eponymous Pointwise - a major advancement in gridding capability. In addition to the high quality grid techniques we have always had, you will appreciate Pointwise's flat interface, automated grid assembly, and full undo and redo capabilities. Drop me a line if you want to know more about Pointwise. Thanks, Chris And before anyone asks, Yes, I work for Pointwise. |
|
January 16, 2009, 13:36 |
Thanks, on my way to the downl
|
#2 |
Member
Dennis Kingsley
Join Date: Mar 2009
Location: USA
Posts: 45
Rep Power: 17 |
Thanks, on my way to the download page....
|
|
January 21, 2009, 20:48 |
I finally got a few moments to
|
#3 |
Member
Dennis Kingsley
Join Date: Mar 2009
Location: USA
Posts: 45
Rep Power: 17 |
I finally got a few moments to try the new Pointwise native OpenFOAM interface. I exported one of my more complicated unstructured grids.
The test case has 0.5 million points and 2.8m tets. The bc I defined for the Fluent export were correctly translated to the OpenFOAM solver in Pointwise and was exported correctly. CheckMesh shows the grids properties are slightly better than the translated Fluent grid. The case is running now. I am not a Pointwise employee, however I have been using gridgen for 10yrs and was one of the people who contacted Pointwise to support OF natively. |
|
January 22, 2009, 09:40 |
Dennis, thanks for your feedba
|
#4 |
Senior Member
Chris Sideroff
Join Date: Mar 2009
Location: Ottawa, ON, CAN
Posts: 434
Rep Power: 22 |
Dennis, thanks for your feedback. I'm glad to hear it is working well for you.
I was hoping Eric Patterson might chime in as well ... you there Eric? |
|
January 22, 2009, 18:24 |
Hey Chris,
I'm here. I'm
|
#5 |
Senior Member
|
Hey Chris,
I'm here. I'm also using Pointwise and am very glad that you added the direct OpenFOAM export. However, I've been using Pointwise software for even longer than Dennis, and I'm having a hard time moving from Gridgen to Pointwise (Gridgen doesn't have the OpenFOAM parser, right?). Eric |
|
January 22, 2009, 18:46 |
Eric, correct - there is no na
|
#6 |
Senior Member
Chris Sideroff
Join Date: Mar 2009
Location: Ottawa, ON, CAN
Posts: 434
Rep Power: 22 |
Eric, correct - there is no native interface to OpenFOAM in Gridgen but I can help you out with your Gridgen to Pointwise transition in two ways.
1. Pointwise can read and write Gridgen's file. So you can do your work in Gridgen, open the grid in Pointwise and export to OpenFOAM. 2. To help long time Gridgen users transition more gradually into Pointwise, we have included "Gridgen" preferences into the latest version of Pointwise (v16.02). Specifically the preferences are scene manipulation and entity selection. You can find them in Edit > Preferences (Windows and Linux) and Pointwise > Preferences (Mac). Hope that helps, Chris |
|
January 23, 2009, 15:31 |
Hi Dennis Kingsley
I
|
#7 |
Senior Member
|
Hi Dennis Kingsley
I am not that lucky. When I use checkMesh to check the grid exported from Pointwise the following errors always appear even with very simple grids. FOAM FATAL ERROR : index 1944 out of range 0 ... 1943#0 Foam::error::printStack(Foam:stream&) at ~/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/OSspecific/Unix/printStack.C:203 #1 Foam::error::abort() at ~/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/lnInclude/error.C:231 #2 Foam:stream& Foam::operator<<>(Foam:stream&, Foam::errorManip<foam::error>) at ~/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/lnInclude/errorManip.H:86 #3 Foam::UList<int>::checkIndex(int) const at ~/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/lnInclude/UListI.H:107 #4 Foam::UList<int>::operator[](int) at ~/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/lnInclude/UListI.H:123 #5 Foam::polyMesh::initMesh() at ~/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/meshes/polyMesh/polyMeshCalcFaceCells.C:5 2 #6 Foam::polyMesh::polyMesh(Foam::IOobject const&) at ~/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/meshes/polyMesh/polyMesh.C:225 #7 main at ~/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/lnInclude/createPolyMesh.H:13 #8 __libc_start_main in "/lib/libc.so.6" #9 Foam::regIOobject::readIfModified() in "/home/sujunwei/OpenFOAM/OpenFOAM-1.4.1/applications/bin/linuxGccDPDebug/checkMe sh" From function UList<t>::checkIndex(const label) in file /home/sujunwei/OpenFOAM/OpenFOAM-1.4.1/src/OpenFOAM/lnInclude/UListI.H at line 107. Where is the problem? Best, Junwei |
|
January 23, 2009, 17:16 |
I only tested with OF-1.5.x, b
|
#8 |
Member
Dennis Kingsley
Join Date: Mar 2009
Location: USA
Posts: 45
Rep Power: 17 |
I only tested with OF-1.5.x, based on the fact that the error is "index out of range" I would suspect there is a difference in the way OF-1.4.1 reads the grid.
|
|
January 23, 2009, 18:47 |
I've also only run Pointwise g
|
#9 |
Senior Member
|
I've also only run Pointwise generated meshes with 1.5.x. I just tried to run the Pointwise tutorial TransitionDuct with 1.4.1-dev, and it choked. First off, it doesn't like the "type Unspecified;" in the polymesh/boundary file. However, even after tweaking these, I still ended up with a segmentation fault.
Hrv, since you implemented this parser for Pointwise, any idea why backward compatibility would be broken? |
|
January 23, 2009, 19:28 |
Yes, the mesh format has chang
|
#10 |
Senior Member
Hrvoje Jasak
Join Date: Mar 2009
Location: London, England
Posts: 1,907
Rep Power: 33 |
Yes, the mesh format has changed: now the neighbour array only covers internal faces (as it should)., Therefore, you cannot move any mesh from OF-1.5 back to 1.4 and the Pointwise converter is written for 1.5
If you want a fixing tool, it should be easy to write: - read constant/polyMesh/owner - read constant/polyMesh.neighbour - resize neighbour array to the size of the owner and pad it with -1. - write out the new neighbour array and all will be well. Hope this helps, Hrv
__________________
Hrvoje Jasak Providing commercial FOAM/OpenFOAM and CFD Consulting: http://wikki.co.uk |
|
January 26, 2009, 08:55 |
Just an example for that kind
|
#11 |
Assistant Moderator
Bernhard Gschaider
Join Date: Mar 2009
Posts: 4,225
Rep Power: 51 |
Just an example for that kind of fixing tool using PyFoam (use it only with small to medium size meshes because PyFoam was not designed to effectively parse huge lists):
import sys from os import path from PyFoam.RunDictionary.ParsedParameterFile import ParsedParameterFile dirName=sys.argv[1] nf=ParsedParameterFile(path.join(dirName,"neighbou r"),listDictWithHeader=True) of=ParsedParameterFile(path.join(dirName,"owner"), listDictWithHeader=True) oLen=len(of.content) nLen=len(nf.content) if nLen<oLen: ....print "Extending neighbour from",nLen,"to",oLen ....nf.content+=[-1]*(oLen-nLen) ....nf.writeFile() else: ....print "Nothing done" (the .... are just there to preserve pythony formatting on the message board. Remove them)
__________________
Note: I don't use "Friend"-feature on this forum out of principle. Ah. And by the way: I'm not on Facebook either. So don't be offended if I don't accept your invitation/friend request |
|
January 26, 2009, 10:29 |
@Chris: I spent the weekend g
|
#12 |
Senior Member
|
@Chris: I spent the weekend going through the Pointwise tutorials, and reading the manual. I think I'll be able to ditch Gridgen for Pointwise. I really like a number of the features, including the layer manager and masking. Are any of the core Gridgen features not included? Looks like the core grid generation algorithms are pretty much the same.
@Bernhard: thanks. Speaking of Python, I should note that pyFoamCreateBoundaryPatches.py is also useful for adding all of the B.C.s from the Pointwise-created boundary file, thus reducing the amount of handwork in the editor. It's too bad the pyFoam tool doesn't clean up and delete the boundary conditions that may be from the cloned case. This would be pretty easy to script, though. As a first test, I created a 1.25M cell hybrid mesh for a zero-Froude number (i.e., no free surface waves) model 5415 calculation (Model 5415 website). The real challenge in these ship hull meshes is the sharp edge at the deck.... |
|
January 26, 2009, 10:42 |
Eric,
The core algorithms a
|
#13 |
Senior Member
Chris Sideroff
Join Date: Mar 2009
Location: Ottawa, ON, CAN
Posts: 434
Rep Power: 22 |
Eric,
The core algorithms are pretty much the same in Pointwise. One that has improved, is the block elliptic solver - you can now set internal block boundaries to "float", analogous to floating boundaries for the domain elliptic solver. As of 16.02, there are only two major features that have not transitioned from Gridgen to Pointwise. They are Solid Meshing (import/creation solid models) and Anisotropic Tet/Tri meshing (fully-unstructured viscous boundary layers). The former is currently being implemented. Note, the layer manager in Pointwise allows grid entities as well - very helpful for complex grids. |
|
January 26, 2009, 11:05 |
Hehe ... I was waiting for you
|
#15 |
Senior Member
Chris Sideroff
Join Date: Mar 2009
Location: Ottawa, ON, CAN
Posts: 434
Rep Power: 22 |
Hehe ... I was waiting for you to ask about that.
Yes, Anisotropic Tet/Tri meshing will be coming to Pointwise. However, we felt that the necessary precursor to it was Solid Meshing (importing native CAD solids, importing IGES b-rep solids and creating quilts/solids in the mesher). Aniso meshing will work without the existence of quilts and solid models but the workflow for aniso meshing is much more positive with it, so we decided to implement solid meshing first with aniso meshing to follow. |
|
January 26, 2009, 11:14 |
Hi Eric!
The option --clear
|
#16 |
Assistant Moderator
Bernhard Gschaider
Join Date: Mar 2009
Posts: 4,225
Rep Power: 51 |
Hi Eric!
The option --clear-unused to pyFoamCreateBoundaryPatches.py should do what you want to (remove all boundaries from the field that are not found in the boundary-file). I don't know since when it is there (but I think for the last 2 or 3 releases) Bernhard
__________________
Note: I don't use "Friend"-feature on this forum out of principle. Ah. And by the way: I'm not on Facebook either. So don't be offended if I don't accept your invitation/friend request |
|
January 26, 2009, 11:46 |
Eric,
One more thing I forg
|
#17 |
Senior Member
Chris Sideroff
Join Date: Mar 2009
Location: Ottawa, ON, CAN
Posts: 434
Rep Power: 22 |
Eric,
One more thing I forgot to mention about aniso meshing. The most time consuming part of meshing tends to be the surface mesh generation as the volume mesh quality is directly dependent on it. The aniso volume mesher in Gridgen is typically the last step you do before exporting your grid, i.e. set a few parameters, click button, wait a minute or two for aniso mesh to finish, export to solver. As such, you can do all the geomety/surface meshing in Pointwise and use Gridgen strictly to create the aniso volume. This is my recommend workaround for those who want to limit their use of Gridgen until aniso meshing is implemented in Pointwise. |
|
January 26, 2009, 12:23 |
Hi Eric!
The option --cle
|
#18 | |
Senior Member
|
Quote:
|
||
January 26, 2009, 15:53 |
Hi Eric!
Stuff like that ha
|
#19 |
Assistant Moderator
Bernhard Gschaider
Join Date: Mar 2009
Posts: 4,225
Rep Power: 51 |
Hi Eric!
Stuff like that happens: "ah, that would be a cool feature, let's add it. <open> The first change should go there .... wait a minute: the change is already there .... when did I? ... Memo to self: check --help before adding anything" And this happened more than once to me Bernhard
__________________
Note: I don't use "Friend"-feature on this forum out of principle. Ah. And by the way: I'm not on Facebook either. So don't be offended if I don't accept your invitation/friend request |
|
January 29, 2009, 08:23 |
Hi,
how much euros do I hav
|
#20 |
Member
Marco Müller
Join Date: Mar 2009
Location: Germany
Posts: 94
Rep Power: 17 |
Hi,
how much euros do I have to pay for a licence of pointwise (in germany)? At about... Just for thinking about... The homepage suggests me, that it is for free... ;) Thanks Marco |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Map of the OpenFOAM Forum - Understanding where to post your questions! | wyldckat | OpenFOAM | 10 | September 2, 2021 06:29 |
Out File does not show Imbalance in % | Mmaragann | CFX | 5 | January 20, 2017 11:20 |
Setting rotating frame of referece. | RPFigueiredo | CFX | 3 | October 28, 2014 05:59 |
Error finding variable "THERMX" | sunilpatil | CFX | 8 | April 26, 2013 08:00 |
Native OpenFOAM interface in Pointwise | Chris Sideroff | Main CFD Forum | 0 | January 16, 2009 13:37 |