WES SHEDDING VORTEX¶
Mesh¶
center hole:
Diameter hole:
Model definitions¶
Code_saturne defines LamVisc (molecular viscocity) which is the dynamic viscosity = \(\eta\) [1]. Here \(\eta = 0.0075\)
Density is \(\rho = 1\)
Setup calculation¶
Files from https://www.code-saturne.org/forum/viewtopic.php?f=12&t=2275&sid=98048c925822c4d513c5c737cdad280
are downloaded to
cd ~/Projects/2018-10-03-oil-damper-functionality/Engineering/2D-numerical/
as:
cylinder.med
cylinder-download.xml
Then:
cd /home/marcel/WIENS/Projects/2018-10-03-oil-damper-functionality/Engineering/2D-numerical/
cd ~/Projects/2018-10-03-oil-damper-functionality/Engineering/2D-numerical/
mkdir cs-VIV-example-2
cd cs-VIV-example-2
code_saturne create -s Tuto_VIV -c VIV
cd ../cs-VIV-example
cp cylinder.med ../cs-VIV-example-2/Tuto_VIV/MESH/cylinder.med
cp cylinder-download.xml ../cs-VIV-example-2/Tuto_VIV/VIV/DATA/Tuto_VIV.xml
cd ../cs-VIV-example-2/Tuto_VIV/VIV/DATA
./SaturneGUI
load the Tuto_VIV.xml file via menu
When simply go to prepare batch calculation and press start calculation will make the calculation to fail. First, you have to go to the mesh page and read the mesh explicitly, then you can go to prepare batch calculation and press start calculation now, the calculation seems to be running
calculation finishes with message finished with exit code 0 in terminal window where GUI was started.
Post-processing¶
goto directory, something like (adapt to your needs):
cd /home/marcel/WIENS/Projects/2018-10-03-oil-damper-functionality/Engineering/2D-numerical/cs-VIV-example-2/Tuto_VIV/VIV/RESU/20181009-1442 cd monitoring
try the following commands one by one to view some plots:
xmgrace -block probes_CourantNb.dat -bxy 2:3 xmgrace -block probes_FourierNb.dat -bxy 2:3 xmgrace -block probes_LamVisc.dat -bxy 2:3 xmgrace -block probes_Mesh_displacement[X].dat -bxy 2:3 xmgrace -block probes_Mesh_Velocity[X].dat -bxy 2:3 xmgrace -block probes_Mesh_Velocity[Y].dat -bxy 2:3 xmgrace -block probes_Mesh_Velocity[Z].dat -bxy 2:3 xmgrace -block probes_mesh_vi1.dat -bxy 2:3 xmgrace -block probes_Pressure.dat -bxy 2:3 xmgrace -block probes_total_pressure.dat -bxy 2:3 xmgrace -block probes_Velocity[X].dat -bxy 2:3 xmgrace -block probes_Velocity[Y].dat -bxy 2:3 xmgrace -block probes_Velocity[Z].dat -bxy 2:3
Open Salome (or Salome_Meca or Salome_CFD)
Load module Paravis (paraview) and select new
menu - file - open paraview file
goto directory /home/marcel/WIENS/Projects/2018-10-03-oil-damper-functionality/Engineering/2D-numerical/cs-VIV-example-2/Tuto_VIV/VIV/RESU/20181009-1442/postprocessing/
select file Results.case OK
in the left pane, select apply
Select +Y view to see all, the pressure distribution should be given by default
press play in the animation pane to see the pressure variation over time
goto menu - view - toolbars
check commmon
select warp by vector from the common toolbar
click apply in the left pane
set scale factor to 1 in left pane
Flow analyis¶
So, to understand what is happening, a theoretical assessment is made. The vibration time of the oscilation is:
Hence, the frequency is:
The Reynolds number is:
The Strouhal number for a cylinder at \(Re = 200\) is approximately \(Sr = 0.2\) [2] So, the frequency of oscillation should be:
Bohl, Technische Stroemungslehre, Vogel, Wuerzburg, page 150
Which seems to be the frequency in Herz. It is slightly different from the frequency calculated above, but that was only for 1 cycle, so lets calculate the frequency over more cycles:
With this frequency, the Strouhal number could be:
This fits better with the Strouhal number graph shown on wikipedia [3]
The undampted frequency of the structure is:
And the damped frequency is:
with:
So that:
The ratio between exciation frequency and natural frequency is:
Not that close for resonant behaviour. The ratio between dynamic amplitude and static amplitude for a damped system is (assuming sine force excitation where force is not influenced by amplitude, as is actually the case here):
Test calculations¶
Several calculations are performed with different parameters, the table below gives the different parameters and the output results
# |
M |
C |
\(\zeta\) |
mesh postpro |
probes |
\(t_{max} [s]\) |
termination |
\(f_{sd} [Hz]\) |
\(\frac{f_{10}}{f_{sd}} [-]\) |
\(A_f [-]\) |
\(A_{max} [-]\) |
|---|---|---|---|---|---|---|---|---|---|---|---|
0 |
5 |
3 |
0.474 |
fixed_mesh |
default |
400 |
OK |
0.089 |
1.332 |
0.675 |
0.104 |
1 |
5 |
3 |
0.474 |
fixed_mesh |
cyl edge |
400 |
OK |
0.089 |
1.332 |
0.675 |
0.104 |
2 |
5 |
3 |
0.474 |
trans_coord |
cyl edge |
400 |
OK |
0.089 |
1.332 |
0.675 |
0.104 |
3 |
3.53 |
3 |
0.565 |
trans_coord |
cyl edge |
400 |
OK |
0.099 |
1.193 |
0.708 |
1.165 |
4 |
1.25 |
3 |
0.949 |
trans_coord |
cyl edge |
14.8 |
X-dir vibration |
0.064 |
1.854 |
0.234 |
N/A |
5 |
1.25 |
0 |
0.000 |
trans_coord |
cyl edge |
12.9 |
X-dir vibration |
0.201 |
0.586 |
1.523 |
N/A |
6 |
1.25 |
1 |
0.316 |
trans_coord |
cyl edge |
13.4 |
X-dir vibration |
0.191 |
0.618 |
1.367 |
N/A |
7 |
2.0 |
1 |
0.250 |
trans_coord |
cyl edge |
218.2 |
Z-dir vibr mesh def |
0.154 |
0.766 |
1.774 |
0.306 |
8 |
1.6 |
1 |
0.280 |
trans_coord |
cyl edge |
239.2 |
Z-dir vibr mesh def |
0.171 |
0.691 |
1.538 |
0.283 |
9 |
3.53 |
1 |
0.188 |
trans_coord |
cyl edge |
400 |
OK |
0.118 |
1.003 |
2.649 |
0.293 |
With the following definitions:
- \(A_{max} [-]\):
The maximum amplitude of the vibration measured in post processing. This is not very accurate as only every \(10^{th}\) step is saved.
- trans_coord:
short for: transient_coordinates, an option to set.
- cyl edge:
6 probes are defined on the North (1) South (1) East (2) West (2) locations around the hole. East as West have 2 nodes, as they are not exactly on 0 or 180 degrees. The purpuse was to track the vibration of the cylinder more closely, but getting to output other coordinates than X are not successful so far.
- X-dir vibration:
from start heavy vibration in X-direction, seems that speed is so high that Mach number is very high, so that pressure lines appear in the solution, like in
Vibration in X-direction (horizontal) showing pressure lines
- Z-dir vibr mesh def:
At some point in the simulation after a very long period of nice vibrations, the solutions becomes unstable. the amplitude in Z-direction becomes larger mesh starts to deform, in combination with low pressures in these deformed meshes. as in
Vibration in Z-direction (vertical) showing mesh deformation and low pressure
- N/A:
Not applicable, because the solution does not go into vibration in Z-direction
Observations¶
Version 0..4 are heavily damped. Hardly any overshoot is expected, see
damper sdofdampedovershoot.png. The cylinder movement is just forced by the flow. The flow goes to a certain maximum amplitude as shown for 3 indamper Displacement in Z-direction of cylinder over time. Clearly amplitude builds up until 50s, then increases linearly to 80s and then tops off to reach a maximum amplitude of 1.165.THIS IS IN LINE WITH LITERATURE… EXPAND FURTHER
In versions 5..9, the mass spring system is more dynamic \(\zeta < 0.32\) Hence, some overshoot near resonance frequency can be expected.
Dynamic over static amplitude overshoot for a single DOF dynamic damped system. When \(\zeta > 0.5\) there is virtually no overshoot.
Displacement in Z-direction of cylinder over time for case 3.
Second tests¶
A sweep is designed through frequency spectrum, to find fluid-structure response for these data:
# |
m |
c |
k |
fs [Hz] |
zeta |
dcorr |
\(f_{sd} [Hz]\) |
\(\frac{f_{10}}{f_{sd}} [-]\) |
\(A_f [-]\) |
\(A_{max} [-]\) |
\(f_{20}\) |
|---|---|---|---|---|---|---|---|---|---|---|---|
21 |
0.034 |
0.131 |
2 |
1.219 |
0.250 |
0.968 |
1.180 |
0.100 |
1.009 |
N/A |
N/A |
22 |
0.136 |
0.261 |
2 |
0.609 |
0.250 |
0.968 |
0.590 |
0.200 |
1.036 |
N/A |
N/A |
23 |
0.307 |
0.392 |
2 |
0.406 |
0.250 |
0.968 |
0.393 |
0.300 |
1.084 |
N/A |
N/A |
24 |
0.546 |
0.522 |
2 |
0.305 |
0.250 |
0.968 |
0.295 |
0.400 |
1.158 |
N/A |
N/A |
10 |
0.853 |
0.653 |
2 |
0.244 |
0.250 |
0.968 |
0.236 |
0.500 |
1.265 |
N/A |
N/A |
11 |
1.228 |
0.784 |
2 |
0.203 |
0.250 |
0.968 |
0.197 |
0.600 |
1.415 |
N/A |
N/A |
12 |
1.671 |
0.914 |
2 |
0.174 |
0.250 |
0.968 |
0.169 |
0.700 |
1.617 |
0.312 |
0.123 |
13 |
2.183 |
1.045 |
2 |
0.152 |
0.250 |
0.968 |
0.147 |
0.800 |
1.858 |
0.318 |
0.122 |
14 |
2.763 |
1.175 |
2 |
0.135 |
0.250 |
0.968 |
0.131 |
0.900 |
2.047 |
0.280 |
0.120 |
15 |
3.411 |
1.306 |
2 |
0.122 |
0.250 |
0.968 |
0.118 |
1 |
2 |
0.241 |
0.119 |
16 |
4.127 |
1.437 |
2 |
0.111 |
0.250 |
0.968 |
0.107 |
1.100 |
1.699 |
0.198 |
0.117 |
17 |
4.912 |
1.567 |
2 |
0.102 |
0.250 |
0.968 |
0.098 |
1.200 |
1.344 |
0.162 |
0.116 |
18 |
5.765 |
1.698 |
2 |
0.094 |
0.250 |
0.968 |
0.091 |
1.300 |
1.055 |
0.131 |
0.116 |
19 |
6.685 |
1.828 |
2 |
0.087 |
0.250 |
0.968 |
0.084 |
1.400 |
0.842 |
0.108 |
0.116 |
20 |
7.675 |
1.959 |
2 |
0.081 |
0.250 |
0.968 |
0.079 |
1.500 |
0.686 |
0.089 |
0.116 |
Nota
case 10..13 the amplitude and frequency is determined using 5 cycles and 90% starting limit, where 14..20 use 20 cycles and 95% starting limit.
These Cases are stored in files: Tuto_VIV_vXX.xml where XX is the version number (#). The cases are run via a script runCodeSaturneCases.sh:
#!/bin/bash
cd ~/WIENS/Projects/2018-10-03-oil-damper-functionality/Engineering/2D-numerical/cs-VIV-example-2/Tuto_VIV/VIV/DATA
code_saturne run -p Tuto_VIV_v10.xml
code_saturne run -p Tuto_VIV_v11.xml
code_saturne run -p Tuto_VIV_v12.xml
code_saturne run -p Tuto_VIV_v13.xml
code_saturne run -p Tuto_VIV_v14.xml
code_saturne run -p Tuto_VIV_v15.xml
code_saturne run -p Tuto_VIV_v16.xml
code_saturne run -p Tuto_VIV_v17.xml
code_saturne run -p Tuto_VIV_v18.xml
code_saturne run -p Tuto_VIV_v19.xml
code_saturne run -p Tuto_VIV_v20.xml
All files are modifications of Tuto_VIV_v09.xml
Observations in the second tests¶
peak resonance seems to happen around \(\frac{f_{10}}{f_{sd}} = 0.8 [-]\), so, there must be considerable damping from the fluid flow. That is also why there is a maximum amplitude.
damper sdofversusSimulated.pnggives the response plotted together with the response of a single DOF damped system response. The real amplitude ratio is not known, as the static force of the fluid-structure system is unknown, so, the amplitude is scaled by a factor 7.0 for shape comparison. There seems to be more damping than \(\zeta=0.25\). But also the amplitude is much larger for the \(\zeta=0.25\) line. Below a certain frequency range, a stable solution cannot be obtained. When using other values, like scaling with factor 4.0 and compare to \(\zeta=0.5\), the dots would cross the line.Scaled amplitude (green dots) plotted together with the amplitude response of a single DOF damped system, showing shape differences in the response.