Glutton for punishment, trying to install an operational CfdOF workbench for FreeCAD on MacOS

Are you trying to use your GPU to accelerate the computations? Maybe one of the scripts is trying to but not finding one.

I fooled around with an SFM program, with the idea that it could be the start of a cheap 3D scanner. The image analysis burns a lot of CPU cycles so one of the options is to use your GPU to speed things up....but everything has to be configured correctly. It can depend on what version of GPU you've got, among other things. I ended up with a cloud of points that sorta-kinda replicated the objects but that's as far as I got.

Point is, you may be dealing with some hardware-specific issues.
 
As far as I know, neither FreeCAD nor the CfdOF programs use any GPU computational acceleration. To do that requires some pretty fancy programming and rearchitecting the code to exploit parallelism. OpenMP and OpenMPI are typically CPU based parallel processing, at least they were back in 2010 when I was doing it. As I recall it was easy to parallelize, but hard to get the correct answer. Sometimes the threads don't occur when you expect and they stomp on your results! FreeCAD will run on underpowered hardware like an RPI4, haven't tried it yet on an RPI5.

But I do agree it could be some HW specific thing that's the issue. All I know is this is a first thing in the morning type of problem to work on, rather than a night time issue. Maybe I can get a little further along tomorrow morning, with a decent cup of coffee to encourage me.

Compiling cfmesh shows a lot of warnings, don't know if significant, lots of not being able to find a file. But no errors. Something is wrong at the top level though, segfaults just shouldn't happen.
 
Hmm. This morning worked on this. Started FreeCAD from the console, rather than the GUI, hoping the console would survive the program faulting. I found that the macro I downloaded from the github site had an error in it. I reran the Test Workbench for CfdOF which told me that the project should be ok. I then copied the source file and macros from the same path (used in the Test Workbench output) into my work area. I was able to get the individual and top level macros to run correctly. Previously there was an error. One problem down.

In my delusional state, I thought all I needed to do at that point, was to run the simulation. So I wrote the test case (to file) and ran the mesher. It ran a while, and generated a bunch of warnings, but it was running and doing the meshing thing. After about 46 seconds, it finished "surfacemesh.vtk". Then the script ./Allrun started running and shortly thereafter was rewarded with another Segmentation fault: 11. The GUI vanished and an Apple popup happened, telling me all about the grievous problem. However, the console text window was still intact, preserving some of what had just happened. So better than last time at least. Zipped the console output and posted it for the developer to see. Maybe he can offer a clue.
 
Something is working, despite my blunders and segfaults. The behavior isn't intuitive to me, so can't tell if it is a fluke or not, but the simulation is running. This is a supersonic rocket like object traveling in air. I have 4 cores running now doing the solver. With some luck maybe I will see a bow and stern shock wave in the results. Here are some of the simulation residuals.
Screenshot 2024-05-01 at 2.50.27 PM.png
Only just over a third done with the sim. The fans on my MacBookPro have come on, the sim is making it work. You can see some of the parameters are not reducing in error and have flat lined.
 
Screenshot 2024-05-01 at 4.06.22 PM.png
About 55 minutes to simulate with 4 cores. Still need to play with displaying results. I'd like more contrast. I was playing around some and managed to get Paraview to become non-responsive. Pity, since, it was a nice picture at that point. Oh well, this is the second rendering. You can see the bow wave and the wave off the leading edge of the fins. Pretty neat. High speed turbulent flow model.
 
Back
Top