Am I thinking about this the right way?

I’ve spent a lot of time working through SimScale tutorials so I believe I’ve learned the basics but since this is my first attempt at a simulation completely from scratch I would be grateful if anyone would like to highlight flaws in my strategy and, hopefully, recommend a better approach!

My simulation runs end-to-end and can be found here.

My use-case is a simple air speed sensor to be used in an open-flow setting. The sensor consists of a simple 3-bladed radial impeller which in real-life would pivot between two jewel bearings.

My simulation goal was to do a coarse parameter sweep to minimise starting air speed i.e. the air speed at which the impeller will overcome breakaway / static friction and start to turn.

My metric of interest therefore is moment about the rotation axis, with the goal to maximise it.

My secondary goal was to estimate the impeller’s ‘natural’ rotational speed as a function of design parameters.

Simulation Strategy

  • Since this is a low-speed use case c.0.5 - 1m/s I opted for an incompressible fluid simulation.

  • I am interested in moment as a function of design parameters, therefore I created 35 variants of the impeller design. In each variant I vary three parameters: impeller diameter, impeller height, curvature of the blades.

  • The impellers are arrayed in the x - z plane with sufficient spacing between that the air-flow of each does not interfere. I did it this way to speed up the design parameter sweep.

  • For each impeller variant I used a separate rotating MRF zone which I created using cylinders based on the impeller faces as per tutorials.

  • A force and moment result is attached to each of the faces associated with the impeller variants (which I have set up as topological entity sets).

  • The air speed simulated is 2m/s which is a little above the starting air speed I am looking for but I hoped this would amplify differences in moment produced by different design parameters. I assume that this relationship will still hold at lower air-speeds still, of the order 0.3m/s to 0.5m/s.

  • I ran two simulations. In one the rotational speed of the rotating zone is set to zero, this is the exact setting I’m interested in as should give me starting moment about the z-axis. This simulation is titled All Models, 2m/s, starting (last one in the project).

  • In the second simulation I set the rotational rate to 3600 degrees / second or 10hz. The reason for this I explain below.

  • I export all of the results after simulation and take the average pressure_moment_z over the last 50 seconds for each design variant as my steady state moment estimate.

Challenges encountered / where I think I got something wrong
Initially I wanted to profile the rotational speed as a function of air speed, however it seems that SimScale only allows us to fix the rate of rotation, not for it to be an output. I assume this is because this approach greatly reduces the need to input more parameters about the system e.g. friction for bearings.

Reading a few articles on pump-profiling I think I can achieve the same estimate by flipping the problem around. Instead, measure torque as a function of angular velocity for a constant air flow. The rotational speed at which torque is zero corresponds to the ‘natural’ rotational speed in the absence of bearing friction. Is this correct, or am I miles off?

Based on the tutorials I expected to see torque output in the force and moment charts / datasets but I do not have this, even in the case where I have a non-zero rotational speed. I have assumed that pressure_moment_z is equivalent to torque but I think this is quite incorrect.

I expected the moment for each model in the 10hz simulation (all rotating zones at 3600 degrees/second) to be lower than in the stationary case as per my reasoning about pump-profiles. It is effectively identical to the stationary case, making me more suspicious that I have an error in my reasoning. Again, I think I need torque but I don’t seem to be able to output it.

Based on tutorials I anticipated being able to profile at least air-speed (velocity inlet 1) and angular velocity of my rotating zones but this option/input is missing. I don’t know if this is because I am currently using the community edition to learn or if I set something incorrectly.

Other Questions

  • My models are quite small (c.20 - 40mm diameter), rotational speeds very low (0 - 10hz) and fluid flow rates slow (2m/s) compared with the tutorials and many examples I’ve found. Is SimScale still valid in this range or is it better to scale up my simulations for more reliable results?

  • Is it entirely wrong to have a rotating zone and then set the rotational rate to zero to simulate the starting scenario?

Many thanks for bearing with the long post. I appreciate any and all guidance!

Hello tmonk,

thanks for reaching out to us here in the forum.

That’s a very interesting simulation project.

In regards to your setup, I would suggest doing the following investigations in order to prove your setup.

  1. Run a mesh sensitivity study on a single rotor.
    Mesh Sensitivity Study for CFD Simulations | Knowledge Base | SimScale

  2. Run a comparison with just two rotors. Run each rotor individually to know the single rotor results and compare if the distance between the rotors is enough, in order to ensure that they don’t influence each other.

  3. In regards to running an MRF with rotational Speed set to 0.
    This will not make a difference, It might be better to not have a rotational region but it should not influence the results.

Please let me hear your thoughts on this.

Best regards

Hi Sebastian,

Many thanks for the suggestions. I’m running a mesh sensitivity study as we speak and will shortly look at an isolated rotor as you recommend to test this assumption explicitly.

Will report back shortly.

I had a couple of challenges with losing assignments for each new mesh variant but think I’ve figured out how to avoid this by copying settings from my original, successful mesh. For this evening at least I’ve run out of time so will look to revisit tomorrow pm (hopefully).

One question on mesh refinement. In the Knowledge Base article it talks about using the Hex-Dominant Parametric algorithm presumably because of the increased level of control. Presumably I could use the same overall approach with either the Hex-Dominant or Standard Algorithms? I would still see if increasing detail translates into a significant gain in result stability, albeit without being able to make any direct extrapolation of the asymptotic value, correct?