CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Community Contributions

[OLAFLOW] The OLAFLOW Thread

Register Blogs Community New Posts Updated Threads Search

Like Tree46Likes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   August 7, 2020, 08:36
Default
  #261
Member
 
Haoran Zhou
Join Date: Nov 2019
Posts: 49
Rep Power: 6
Stan Zhou is on a distinguished road
Hi Pablo,

Thanks for your quick reply and the answers are very helpful!

Best regards,

Stan
Stan Zhou is offline   Reply With Quote

Old   August 7, 2020, 23:13
Default
  #262
Senior Member
 
Pablo Higuera
Join Date: Jan 2011
Location: Auckland
Posts: 627
Rep Power: 19
Phicau is on a distinguished road
Hi Tomás and Stan,
you are very welcome. I will be in touch with you Tomás about the courses, but right now all in person courses are paused because of the pandemic.


Hi Paul,
I downloaded the case and tried to run it on 2006 since I do not have 1906 installed. I faced multiple errors with the simulation and was not able to run it. If you convert it to 2006 I will be able to take a look at it and check whether the wavemaker movement (mesh deformation on the main mesh) is compatible with overset grids.


Best,
Pablo
__________________
Check out my new project: olaFlow --> The olaFlow Support Thread
Phicau is offline   Reply With Quote

Old   August 10, 2020, 10:10
Default
  #263
New Member
 
Paul Tournant
Join Date: Feb 2019
Location: Le Havre, France
Posts: 5
Rep Power: 7
PoloLaccro is on a distinguished road
Hi Pablo,


Thank you for your answer

I adapted my case for OF-v2006,
I have an error when I run the overOlaDyMFlow solver, I modified the createField.H file to avoid a problem with the cellmask, I don't know if it's a good idea, but after that the case run. I send you the createField.H file that I modified. Thank you very much again for your answer.



Best regards,
Paul
Attached Files
File Type: gz waveMakerPlanOverset_12.tar.gz (15.1 KB, 12 views)
File Type: h createFields.H (3.0 KB, 6 views)
PoloLaccro is offline   Reply With Quote

Old   August 26, 2020, 15:49
Default
  #264
New Member
 
Isnard Baptiste
Join Date: Jul 2020
Location: France
Posts: 11
Rep Power: 5
Baptiste is on a distinguished road
Hello everyone and hello Pablo.
I use the v2006 version of openfoam to simulate two floats without coupling between the two. I want to use the oversetMesh with 6DoFRigidBody and then the solver overOlaDyMFlow. My simulation simulates about 8s then it crashes because the number of current diverges and I don't understand why. On these first 8 seconds the two floats follow the movement of the waves as desired. I noticed that it is when the first waves reach the outlet that the simulation crashes. So I don't know if this is a bug of olaFlow or me setting my simulation wrong. I have a big doubt about my dynamicMeshDict settings.
I use the following commands:
blockMesh
snappyHexMesh -overwrite
mergeMeshes . ../sphere1 -overwrite
mergeMeshes . ../sphere2 -overwrite
checkMesh
setFields
overOlaDyMFlow

I hope that someone will be able to help me because I don't understand this discrepancy which is also present when I simulate with a finer mesh. Thank you in advance for your answers.


the log during the simulation.
Code:
Courant Number mean: 0.010681 max: 0.893793
Interface Courant Number mean: 0.00098299 max: 0.893793
deltaT = 0.00501741
Time = 7.12958

PIMPLE: iteration 1
forces forces:
    rho: rho
    Not including porosity effects

6-DoF rigid body motion
    Centre of rotation: (0 0 -0.195241)
    Centre of mass: (0 0 -0.195241)
    Orientation: (0.955012 0 -0.296566 0 1 0 0.296566 0 0.955012)
    Linear velocity: (-0 -0 -0.539762)
    Angular velocity: (0 -0.325654 0)
forces forces:
    rho: rho
    Not including porosity effects

6-DoF rigid body motion
    Centre of rotation: (5 0 -0.131994)
    Centre of mass: (5 0 -0.131994)
    Orientation: (0.999527 0 -0.0307501 0 1 0 0.0307501 0 0.999527)
    Linear velocity: (0 0 0.366372)
    Angular velocity: (0 0.00937305 0)
DICPCG:  Solving for cellDisplacementx, Initial residual = 0.00257129, Final residual = 7.95348e-07, No Iterations 22
DICPCG:  Solving for cellDisplacementy, Initial residual = 0, Final residual = 0, No Iterations 0
DICPCG:  Solving for cellDisplacementz, Initial residual = 0.00650337, Final residual = 8.19429e-07, No Iterations 49
inverseDistance : detected 3 mesh regions
    zone:0 nCells:384840  voxels:(37 37 37) bb:(-5.00001 -2.00001 -5.00001) (5.00001 1.13441e-05 -0.0312387)
    zone:1 nCells:23788  voxels:(37 37 37) bb:(-1.00138 -1.00022 -1.20262) (1.00736 0.000117241 -0.153443)
    zone:2 nCells:23788  voxels:(37 37 37) bb:(3.99998 -1.00022 -1.1328) (4.80121 0.000116424 -0.132273)
Overset analysis : nCells : 432416
    calculated   : 427058
    interpolated : 4815 (interpolated from local:3819  mixed local/remote:730  remote:266)
    hole         : 543

Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00767497 )

Execution time for mesh.update() = 2.51 s
alpha.water BC on patch inlet
smoothSolver:  Solving for alpha.water, Initial residual = 0.000186063, Final residual = 5.0477e-11, No Iterations 3
Phase-1 volume fraction = 0.668349  Min(alpha.water) = -3.20914e-22  Max(alpha.water) = 1.00375
Applying the previous iteration compression flux
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
Phase-1 volume fraction = 0.668349  Min(alpha.water) = -1.03065e-22  Max(alpha.water) = 1.0035
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00751351 )

DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.00802394, Final residual = 7.45258e-05, No Iterations 15
time step continuity errors : sum local = 4.06803e-07, global = 2.30936e-07, cumulative = 4.49936e-05
DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.000515334, Final residual = 3.88385e-08, No Iterations 95
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00751351 )

time step continuity errors : sum local = 1.93763e-10, global = 8.17697e-11, cumulative = 4.49936e-05
PIMPLE: iteration 2
alpha.water BC on patch inlet
smoothSolver:  Solving for alpha.water, Initial residual = 0.000114652, Final residual = 3.97672e-11, No Iterations 3
Phase-1 volume fraction = 0.668348  Min(alpha.water) = -1.03065e-22  Max(alpha.water) = 1
Applying the previous iteration compression flux
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
Phase-1 volume fraction = 0.668348  Min(alpha.water) = -8.33406e-21  Max(alpha.water) = 1
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00751389 )

DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.00518126, Final residual = 5.1289e-05, No Iterations 27
time step continuity errors : sum local = 4.55422e-07, global = -3.55904e-07, cumulative = 4.46377e-05
DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.000449179, Final residual = 9.08005e-08, No Iterations 90
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00751389 )

time step continuity errors : sum local = 9.30491e-10, global = -4.75737e-10, cumulative = 4.46373e-05
smoothSolver:  Solving for omega, Initial residual = 0.000200486, Final residual = 2.84176e-09, No Iterations 3
smoothSolver:  Solving for k, Initial residual = 0.000921427, Final residual = 4.49709e-08, No Iterations 3
ExecutionTime = 12010.1 s  ClockTime = 12038 s

Courant Number mean: 0.0106844 max: 0.854315
Interface Courant Number mean: 0.000979434 max: 0.854315
deltaT = 0.00523556
Time = 7.13482

PIMPLE: iteration 1
forces forces:
    rho: rho
    Not including porosity effects

6-DoF rigid body motion
    Centre of rotation: (0 0 -0.198009)
    Centre of mass: (0 0 -0.198009)
    Orientation: (0.954506 0 -0.298193 0 1 0 0.298193 0 0.954506)
    Linear velocity: (-0 -0 -0.517473)
    Angular velocity: (0 -0.325108 0)
forces forces:
    rho: rho
    Not including porosity effects

6-DoF rigid body motion
    Centre of rotation: (5 0 -0.130057)
    Centre of mass: (5 0 -0.130057)
    Orientation: (0.999529 0 -0.0307002 0 1 0 0.0307002 0 0.999529)
    Linear velocity: (0 0 0.373639)
    Angular velocity: (0 0.00970519 0)
DICPCG:  Solving for cellDisplacementx, Initial residual = 0.00266548, Final residual = 8.28228e-07, No Iterations 22
DICPCG:  Solving for cellDisplacementy, Initial residual = 0, Final residual = 0, No Iterations 0
DICPCG:  Solving for cellDisplacementz, Initial residual = 0.00666075, Final residual = 8.42939e-07, No Iterations 49
inverseDistance : detected 3 mesh regions
    zone:0 nCells:384840  voxels:(37 37 37) bb:(-5.00001 -2.00001 -5.00001) (5.00001 1.13441e-05 -0.0312387)
    zone:1 nCells:23788  voxels:(37 37 37) bb:(-1.0014 -1.00022 -1.20543) (1.00741 0.000117241 -0.155846)
    zone:2 nCells:23788  voxels:(37 37 37) bb:(3.99998 -1.00022 -1.13086) (4.80121 0.000116424 -0.130336)
Overset analysis : nCells : 432416
    calculated   : 427058
    interpolated : 4815 (interpolated from local:3821  mixed local/remote:728  remote:266)
    hole         : 543

Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00751389 )

Execution time for mesh.update() = 2.38 s
alpha.water BC on patch inlet
smoothSolver:  Solving for alpha.water, Initial residual = 0.000194079, Final residual = 5.73563e-11, No Iterations 3
Phase-1 volume fraction = 0.668378  Min(alpha.water) = -8.33406e-21  Max(alpha.water) = 1
Applying the previous iteration compression flux
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
Phase-1 volume fraction = 0.668378  Min(alpha.water) = -2.89421e-20  Max(alpha.water) = 1
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00734289 )

DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.00800932, Final residual = 5.59405e-05, No Iterations 31
time step continuity errors : sum local = 3.36135e-07, global = 3.17438e-07, cumulative = 4.49547e-05
DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.000791277, Final residual = 9.99602e-08, No Iterations 88
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00734289 )

time step continuity errors : sum local = 4.54526e-10, global = 3.75677e-10, cumulative = 4.49551e-05
PIMPLE: iteration 2
alpha.water BC on patch inlet
smoothSolver:  Solving for alpha.water, Initial residual = 0.000120128, Final residual = 4.38125e-11, No Iterations 3
Phase-1 volume fraction = 0.668376  Min(alpha.water) = -2.89421e-20  Max(alpha.water) = 1
Applying the previous iteration compression flux
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
Phase-1 volume fraction = 0.668376  Min(alpha.water) = 0  Max(alpha.water) = 1
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00734335 )

DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.00556939, Final residual = 5.31079e-05, No Iterations 37
time step continuity errors : sum local = 4.69313e-07, global = -3.942e-07, cumulative = 4.45609e-05
DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.000432787, Final residual = 8.78947e-08, No Iterations 80
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( -0.00734335 )

time step continuity errors : sum local = 1.13017e-09, global = -5.47563e-10, cumulative = 4.45603e-05
smoothSolver:  Solving for omega, Initial residual = 0.000209942, Final residual = 3.35653e-09, No Iterations 3
smoothSolver:  Solving for k, Initial residual = 0.000963983, Final residual = 5.32966e-08, No Iterations 3
ExecutionTime = 12022.6 s  ClockTime = 12050 s

Courant Number mean: 0.0111692 max: 0.819765
Interface Courant Number mean: 0.00102689 max: 0.792375
deltaT = 0.00575911
Time = 7.14058

PIMPLE: iteration 1
forces forces:
    rho: rho
    Not including porosity effects

6-DoF rigid body motion
    Centre of rotation: (0 0 -0.200916)
    Centre of mass: (0 0 -0.200916)
    Orientation: (0.953946 0 -0.299978 0 1 0 0.299978 0 0.953946)
    Linear velocity: (-0 -0 -0.492294)
    Angular velocity: (0 -0.324511 0)
forces forces:
    rho: rho
    Not including porosity effects

6-DoF rigid body motion
    Centre of rotation: (5 0 -0.127882)
    Centre of mass: (5 0 -0.127882)
    Orientation: (0.99953 0 -0.0306433 0 1 0 0.0306433 0 0.99953)
    Linear velocity: (0 0 0.381572)

the log before the Crash.

Code:
Courant Number mean: 9.61061e-05 max: 135.956
Interface Courant Number mean: 3.56171e-05 max: 47.2014
deltaT = 1.31232e-35
Time = 8.15117

PIMPLE: iteration 1
forces forces:
    rho: rho
    Not including porosity effects

6-DoF rigid body motion
    Centre of rotation: (0 0 0.0970353)
    Centre of mass: (0 0 0.0970353)
    Orientation: (0.790348 0 -0.612658 0 1 0 0.612658 0 0.790348)
    Linear velocity: (-0 -0 -1.94601e+12)
    Angular velocity: (0 6.86843e+09 0)
forces forces:
    rho: rho
    Not including porosity effects

6-DoF rigid body motion
    Centre of rotation: (5 0 0.183756)
    Centre of mass: (5 0 0.183756)
    Orientation: (0.999365 0 -0.0356307 0 1 0 0.0356307 0 0.999365)
    Linear velocity: (0 0 7.92543e+08)
    Angular velocity: (0 -168651 0)
DICPCG:  Solving for cellDisplacementx, Initial residual = 0.0263145, Final residual = 9.61785e-07, No Iterations 41
DICPCG:  Solving for cellDisplacementy, Initial residual = 0, Final residual = 0, No Iterations 0
DICPCG:  Solving for cellDisplacementz, Initial residual = 0.00785397, Final residual = 9.42835e-07, No Iterations 37
inverseDistance : detected 3 mesh regions
    zone:0 nCells:384840  voxels:(37 37 37) bb:(-5.00001 -2.00001 -5.00001) (5.00001 1.13441e-05 -0.0312387)
    zone:1 nCells:23788  voxels:(37 37 37) bb:(-1.00668 -1.00022 -0.920245) (1.01723 0.000117288 0.209848)
    zone:2 nCells:23788  voxels:(37 37 37) bb:(3.99998 -1.00022 -0.81714) (4.80137 0.000116424 0.183429)
Overset analysis : nCells : 432416
    calculated   : 427056
    interpolated : 4816 (interpolated from local:3722  mixed local/remote:813  remote:281)
    hole         : 544

Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( 0.0441978 )

Execution time for mesh.update() = 2.46 s
alpha.water BC on patch inlet
smoothSolver:  Solving for alpha.water, Initial residual = 1.87093e-05, Final residual = 7.54055e-16, No Iterations 3
Phase-1 volume fraction = 0.664191  Min(alpha.water) = -592.027  Max(alpha.water) = 441.086
Applying the previous iteration compression flux
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
Phase-1 volume fraction = 0.664191  Min(alpha.water) = -591.819  Max(alpha.water) = 81.4569
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( 0.0441978 )

DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.737662, Final residual = 0.00720823, No Iterations 200
time step continuity errors : sum local = 1.2337e-23, global = 7.53078e-24, cumulative = 3.6607e-05
DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.0102754, Final residual = 7.6213e-08, No Iterations 548
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( 0.0441978 )

time step continuity errors : sum local = 1.19765e-26, global = -1.16671e-26, cumulative = 3.6607e-05
PIMPLE: iteration 2
alpha.water BC on patch inlet
smoothSolver:  Solving for alpha.water, Initial residual = 7.85003e-05, Final residual = 1.20071e-10, No Iterations 4
Phase-1 volume fraction = 0.664188  Min(alpha.water) = -4.92729e-54  Max(alpha.water) = 1.09933
Applying the previous iteration compression flux
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
MULES: Correcting alpha.water
alpha.water BC on patch inlet
Phase-1 volume fraction = 0.664188  Min(alpha.water) = -1.41717e-54  Max(alpha.water) = 1.01982
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( 0.0441978 )

DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.662083, Final residual = 0.00641316, No Iterations 269
time step continuity errors : sum local = 1.49182e-21, global = 1.43781e-22, cumulative = 3.6607e-05
DILUPBiCGStab:  Solving for p_rgh, Initial residual = 0.146793, Final residual = 1.74675e-05, No Iterations 1000
Velocity BC on patch inlet
3D_2D Absorption BC on patch outlet
"Correction Levels" 1( 0.0441978 )

time step continuity errors : sum local = 2.35761e-23, global = 2.10182e-23, cumulative = 3.6607e-05
smoothSolver:  Solving for omega, Initial residual = 0.000228342, Final residual = 1.66199e-08, No Iterations 3
smoothSolver:  Solving for k, Initial residual = 5.61889e-06, Final residual = 1.27576e-10, No Iterations 3
ExecutionTime = 15762.8 s  ClockTime = 15800 s

Courant Number mean: 0.000110915 max: 630.6
Interface Courant Number mean: 3.96238e-05 max: 630.6
deltaT = 1.87295e-38
Time = 8.15117
Sincerely,
Baptiste
Attached Files
File Type: zip double_float.zip (172.2 KB, 14 views)
Baptiste is offline   Reply With Quote

Old   September 2, 2020, 03:09
Default
  #265
New Member
 
Isnard Baptiste
Join Date: Jul 2020
Location: France
Posts: 11
Rep Power: 5
Baptiste is on a distinguished road
Hello,

the problem with my simulation from the previous post is that my oversetMesh doesn't move uniformly and there is a mesh deformation inside de oversetPatch and and can't find the solution to have my overset mesh which move why my rigidBody.

There is a solution?

Thank you for your answers and have a nice day.
Baptiste
Attached Images
File Type: jpg capture.jpg (177.7 KB, 17 views)
Baptiste is offline   Reply With Quote

Old   September 2, 2020, 05:08
Default
  #266
Senior Member
 
Pablo Higuera
Join Date: Jan 2011
Location: Auckland
Posts: 627
Rep Power: 19
Phicau is on a distinguished road
Hi Paul and Isnard,
sorry, this is a busy time with teaching in NZ, I will take a look at your cases.
A quick question for you both, why are you interested in running the moving wavemaker? From my own experience the moving wavemaker is only necessary when you require very high fidelity with physical experiments, at the cost of being up to 40% slower due to the mesh deformation routines required. The coolness factor plays a role too, but apart from that you can get as good results and much faster with the static boundary wave generation.


@All,
An important announcement, the library of multiphase turbulent models for waves that I maintain aside from olaFlow is now fully compatible with OpenFOAM 8/dev and 2006+. Enjoy!


https://github.com/phicau/olaFlow_su...enceMultiphase


Best,
Pablo
__________________
Check out my new project: olaFlow --> The olaFlow Support Thread
Phicau is offline   Reply With Quote

Old   September 2, 2020, 05:58
Default
  #267
New Member
 
Isnard Baptiste
Join Date: Jul 2020
Location: France
Posts: 11
Rep Power: 5
Baptiste is on a distinguished road
Thank you for your answer Pablo.

I'm just trying to simulate that to use 6DOFmotionSolver with more than one body. It's just a test for my next simulation which will be a simulation for a Naval company and I need to be precise. But here I just try to adapt the floattingBody tutorial for two bodies but I am completely stuck.

I am therefore waiting for your help, which will undoubtedly be invaluable.
Thanks in advance for your help.

Baptiste
Baptiste is offline   Reply With Quote

Old   September 3, 2020, 21:54
Default
  #268
tcl
New Member
 
Tomas Cuevas
Join Date: Feb 2019
Posts: 4
Rep Power: 7
tcl is on a distinguished road
Pablo,

I found some time to come back to wave modelling with olaFlow.

I'm running an irregular sea state on a wave flume, the mesh resolution and dimensions are the same you used in your paper: Enhancing active wave absorption in RANS models. The wave parameters are: Hm0 = 0.05, Tp = 3 and depth = 0.4. The wave components using a jonswsap spectrum and 512 frequencies. The case setup is attached.

The significant wave height computed from the wave components is approx 0.05m.

I'm using the function interfaceHeight to extract times series of the surface elevation 7.5, 8, and 9m away from the inlet. The results are quite different from the CB, see a figure attached. The significant wave height of the outputs is close to 0.024. In the three output points, Hs is similar. I've computed Hs as the average of the higher third peak to peak amplitudes.

I don't know why my results are so different from the BC, any guidance you can give me will be very appreciated.

Cheers
Tomás
tcl is offline   Reply With Quote

Old   September 9, 2020, 10:44
Default
  #269
New Member
 
Paul Tournant
Join Date: Feb 2019
Location: Le Havre, France
Posts: 5
Rep Power: 7
PoloLaccro is on a distinguished road
Quote:
Originally Posted by Phicau View Post
Hi Paul and Isnard,
sorry, this is a busy time with teaching in NZ, I will take a look at your cases.
A quick question for you both, why are you interested in running the moving wavemaker? From my own experience the moving wavemaker is only necessary when you require very high fidelity with physical experiments, at the cost of being up to 40% slower due to the mesh deformation routines required. The coolness factor plays a role too, but apart from that you can get as good results and much faster with the static boundary wave generation.

Pablo

Hi Pablo



Good luck with your teaching. I decided to use this wave generation method because I am working on a WEC system close to a breackwater. The presence of the breackwater induces a strong reflection, which can go up to a reflection coefficient of 1. I understood that the wave generation method with a static boundary does not allow a suitable absorption of the waves in strong reflection. This is why I am interested in this method.
During this time, I am working on another way to control the movement of the buoy using sliding interfaces as in the tutorial :


"tutorials/multiphase/compressibleInterDyMFoam/laminar/sphereDrop"


Thank you very much for you reply and your time,
Have nice day


Best regards,


Paul
PoloLaccro is offline   Reply With Quote

Old   September 10, 2020, 17:58
Default
  #270
Senior Member
 
Pablo Higuera
Join Date: Jan 2011
Location: Auckland
Posts: 627
Rep Power: 19
Phicau is on a distinguished road
Hi Paul,
whenever reflections and re-reflections are significant the system becomes quite chaotic fast, but the static boundary wave generation can have active wave absorption connected and handle even the most reflective cases (I have run standing wave cases without issues). You should try this approach before discarding it.
In the end, if the waves are not very close to the deep water regime, the wave absorption will work just right. For the record, active wave absorption for the piston wavemaker is based on the same (shallow water wave) theory, and the absorption for the flap wavemaker has not been released yet.


Best,
Pablo
__________________
Check out my new project: olaFlow --> The olaFlow Support Thread
Phicau is offline   Reply With Quote

Old   September 12, 2020, 20:44
Default
  #271
New Member
 
Sergio Croquer
Join Date: Jan 2011
Posts: 15
Rep Power: 15
sercro is on a distinguished road
Hello Pablo

Good to know that it works now with OF2006! Thanks for keeping the code up to date.

I was not aware that there are training courses for olaFlow. I might be interested in that as well!

Regards,
Phicau likes this.
sercro is offline   Reply With Quote

Old   October 13, 2020, 17:51
Default olaFlow installation failed
  #272
Member
 
Grivalszki Péter
Join Date: Mar 2019
Location: Budapest, Hungary
Posts: 39
Rep Power: 7
GrivalszkiP is on a distinguished road
Hi,

I can not install OlaFlow, it crashes with these errors:

Code:
gpeter@DESKTOP-DKDTKSQ:~/olaFlow$ ./allMake
wmake libso genAbs/waveGeneration
    ln: ./lnInclude
Making dependency list for source file wavemakerMovement.C
wmkdepend: parse error while scanning 'wavemakerMemberFun.H' ... perhaps missing a final newline
wmkdepend: could not open 'PointPatchFieldMapper.H' for source file 'wavemakerMovement/wavemakerMovement.C': No such file or directory
wmkdepend: parse error while scanning 'newWriting.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'classicWriting.H' ... perhaps missing a final newline
Making dependency list for source file waveVelocityFvPatchVectorField.C
wmkdepend: parse error while scanning 'memberFun.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'profileStokesI.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'profileStokesII.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'profileStokesIII.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'profileStreamFunction.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'newWriting.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'classicWriting.H' ... perhaps missing a final newline
Making dependency list for source file waveAlphaFvPatchScalarField.C
wmkdepend: parse error while scanning 'memberFun.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'newWriting.H' ... perhaps missing a final newline
wmkdepend: parse error while scanning 'classicWriting.H' ... perhaps missing a final newline
g++ -std=c++11 -m64 -pthread -DOPENFOAM=2006 -DWM_DP -DWM_LABEL_SIZE=32 -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-attributes -Wno-unknown-pragmas  -O3  -DNoRepository -ftemplate-depth-100 -DOFVERSION=2006 -DOFFLAVOUR=2 -I/home/gpeter/OpenFOAM/OpenFOAM-v2006/src/finiteVolume/lnInclude -I./waveVelocity/velProfiles -I../common -I../common/checks -I../common/calculateWaterLevel -iquote. -IlnInclude -I/home/gpeter/OpenFOAM/OpenFOAM-v2006/src/OpenFOAM/lnInclude -I/home/gpeter/OpenFOAM/OpenFOAM-v2006/src/OSspecific/POSIX/lnInclude   -fPIC -c waveAlpha/waveAlphaFvPatchScalarField.C -o Make/linux64Gcc63DPInt32Opt/waveAlpha/waveAlphaFvPatchScalarField.o
In file included from /home/gpeter/OpenFOAM/ThirdParty-v2006/platforms/linux64/gcc-6.3.0/include/c++/6.3.0/x86_64-pc-linux-gnu/bits/c++config.h:507:0,
                 from /home/gpeter/OpenFOAM/ThirdParty-v2006/platforms/linux64/gcc-6.3.0/include/c++/6.3.0/cstddef:49,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/OpenFOAM/lnInclude/Hasher.H:49,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/OpenFOAM/lnInclude/string.H:54,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/OpenFOAM/lnInclude/word.H:46,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/OpenFOAM/lnInclude/wordList.H:49,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/OpenFOAM/lnInclude/patchIdentifier.H:41,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/OpenFOAM/lnInclude/polyPatch.H:45,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/finiteVolume/lnInclude/fvPatch.H:42,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/finiteVolume/lnInclude/fvPatchField.H:50,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/finiteVolume/lnInclude/fixedValueFvPatchField.H:59,
                 from /home/gpeter/OpenFOAM/OpenFOAM-v2006/src/finiteVolume/lnInclude/fixedValueFvPatchFields.H:31,
                 from waveAlpha/waveAlphaFvPatchScalarField.H:80,
                 from waveAlpha/waveAlphaFvPatchScalarField.C:48:
/home/gpeter/OpenFOAM/ThirdParty-v2006/platforms/linux64/gcc-6.3.0/include/c++/6.3.0/x86_64-pc-linux-gnu/bits/os_defines.h:39:22: fatal error: features.h: No such file or directory
 #include <features.h>
                      ^
compilation terminated.
make: *** [/home/gpeter/OpenFOAM/OpenFOAM-v2006/wmake/rules/General/transform:35: Make/linux64Gcc63DPInt32Opt/waveAlpha/waveAlphaFvPatchScalarField.o] Error 1
\n\nOlaFlow project wave generation boundary conditions compilation failed
I use OF v2006 and Ubuntu Bash for Windows 10. I just reinstalled them, but the bash and OF works perfectly. How can I solve this?

Thank you in advance!
GrivalszkiP is offline   Reply With Quote

Old   October 13, 2020, 21:15
Default
  #273
Senior Member
 
Pablo Higuera
Join Date: Jan 2011
Location: Auckland
Posts: 627
Rep Power: 19
Phicau is on a distinguished road
Hi Grivalszki,
this line over here:
Code:
/home/gpeter/OpenFOAM/ThirdParty-v2006/platforms/linux64/gcc-6.3.0/include/c++/6.3.0/x86_64-pc-linux-gnu/bits/os_defines.h:39:22: fatal error: features.h: No such file or directory
 #include <features.h>
seems to indicate that the problem is in your OpenFOAM installation and not in olaFlow, most probably with OF third party materials.

I am not sure why this failed but depending on how you installed OpenFOAM the pre-compiled versions sometimes may work but present similar flaws when doing things out of the box.

I suggest that you install by compiling the code yourself and if it still doesn't work after you can always open a thread in the installation subforum.

Best,
Pablo
GrivalszkiP likes this.
__________________
Check out my new project: olaFlow --> The olaFlow Support Thread
Phicau is offline   Reply With Quote

Old   October 14, 2020, 13:34
Default
  #274
Member
 
Grivalszki Péter
Join Date: Mar 2019
Location: Budapest, Hungary
Posts: 39
Rep Power: 7
GrivalszkiP is on a distinguished road
Hi! I reinstalled Ubuntu bash, OF v2006 (compiling the code myself), but still the same:
OlaFlow compiled successfully, but it came with several errors like i posted. Then I try a tutorial, and it comes with this:

Quote:
gpeter@DESKTOP-DKDTKSQ:~/olaFlow/tutorials/wavemakerFlume$ ./runCaseFlap
mkdir: cannot create directory ‘0’: File exists
blockMesh meshing...
Preparing 0 folder...
Setting the fields...
Creating flap wavemaker movement...
Traceback (most recent call last):
File "flapWaveGen.py", line 3, in <module>
import numpy as np
ImportError: No module named numpy
Running...


--> FOAM FATAL IO ERROR:
Cannot open include file "/home/gpeter/olaFlow/tutorials/wavemakerFlume/constant/wavemakerMovement.txt" while reading dictionary "/home/gpeter/olaFlow/tutorials/wavemakerFlume/constant/wavemakerMovementDict"

file: /home/gpeter/olaFlow/tutorials/wavemakerFlume/constant/wavemakerMovementDict at line 21.

From static bool Foam::functionEntries::includeEntry::execute(bool, Foam::dictionary&, Foam::Istream&)
in file db/dictionary/functionEntries/includeEntry/includeEntry.C at line 170.

FOAM exiting
GrivalszkiP is offline   Reply With Quote

Old   October 14, 2020, 17:49
Default
  #275
Senior Member
 
Pablo Higuera
Join Date: Jan 2011
Location: Auckland
Posts: 627
Rep Power: 19
Phicau is on a distinguished road
Hi Peter,
this is a different error. The solution that I provided solved the previous error and now olaFlow has been compiled correctly.
The new issue has to do with Python dependencies. To generate the movement of the flap wavemaker you need to have the Numpy package installed for your Python distribution. This is usually very easy and can be sorted out with a fast google search.


Best,
Pablo
GrivalszkiP likes this.
__________________
Check out my new project: olaFlow --> The olaFlow Support Thread

Last edited by Phicau; October 15, 2020 at 18:06.
Phicau is offline   Reply With Quote

Old   November 11, 2020, 20:13
Default
  #276
New Member
 
wangyang
Join Date: Jun 2019
Posts: 9
Rep Power: 6
wo315 is on a distinguished road
Quote:
Originally Posted by Phicau View Post
Hi Stan,
yes, in olaFlow c is usually fixed to 0.34. It would be very easy to modify the code to add the factor that depends on porosity.
That term is Surface Tension.
The BC depends on what is your setup: no-slip wall, free-slip wall (equivalent to symmetry AFAIK) or cyclic.


Hi Tomás,
the problem is that linux is case sensitive and your variable names start with a capital letter. Please use the same names as in the example on olaFlow's reference folder.
irreg45degTank is a 3D spectrum which should be very similar to the one shown in my paper "Realistic Wave Generation and Active Wave Absorption for Navier-*Stokes Models. Application to OpenFOAM®".
Regarding overtopping, it is easy to extend the python scripts provided to calculate it. We normally distribute such additional scripts as part of the olaFlow training course. Perhaps in the future I will find time and include them as part of the public distribution.


Hi All,
olaFlow is now fully compatible with the latest versions of OpenFOAM (8 & v2006).


Best,
Pablo
Hi Pablo

Can you give me anything about the olaFlow training course?
Thank you

Yang Wang
wo315 is offline   Reply With Quote

Old   November 12, 2020, 15:31
Default
  #277
Senior Member
 
Pablo Higuera
Join Date: Jan 2011
Location: Auckland
Posts: 627
Rep Power: 19
Phicau is on a distinguished road
Hi Yang Wang,
please flip me an email: https://olaflow.github.io/contact/


Best,
Pablo
__________________
Check out my new project: olaFlow --> The olaFlow Support Thread
Phicau is offline   Reply With Quote

Old   December 15, 2020, 21:58
Default Question about the 'useTransient' in createPorosity.H
  #278
Member
 
Haoran Zhou
Join Date: Nov 2019
Posts: 49
Rep Power: 6
Stan Zhou is on a distinguished road
Hi Pablo,

I have a few questions while reading the file 'createPorosity.H' and 'UEqn.H'.

1) The default value of 'useTransient' is 'false'. Does it mean that the oscillation flow is not considered in porous media? And in what situations should we switch it to 'true'?

2) In 'UEqn.H', the momentum conservation equation includes the transient formulation '(1.0 + useTransMask * 7.5 / KCPorField)'. The KCPorField is equal to KC number which is set to 1.0 in default. The 'useTransMask' is given as 'if ( useTransient ) {useTransMask[item] = 1.0;}' which means 'useTransMask' is 1.0 while 'useTransient' is true. However, what is the value of 'useTransMask' when 'useTransient' is 'false' as default?

Best regards,

Stan
Stan Zhou is offline   Reply With Quote

Old   January 16, 2021, 08:34
Default Different simulation results with the same initial conditions using olaFlow
  #279
Member
 
Haoran Zhou
Join Date: Nov 2019
Posts: 49
Rep Power: 6
Stan Zhou is on a distinguished road
Hi Pablo,

These days I've been doing a simulation about a breakwater on the porous seabed using olaFlow. The schematic diagram of the numerical model is shown in the attachment. There are two kinds of porous media in the seabed and there are rubble mound in front of the breakwater.

The turbulence model I chose was KEpsilon and the wave theory adopted was Stokes V. The number of mesh grids are about 1800000. My main focus of the simulation is the pressure or force on the breakwater. As the first simulation result is a bit lower than I expected, I ran a second case with the same mesh and initial conditions. The wave profile of the two cases is similar. However, the pressure at the same point on the breakwater is two times of the first case.

I'm quite confused about this problem. Why could two cases with the same mesh and initial settings lead to different numerical results? Is the problem caused by the wrong choice of turbulence model? Or it is because the mesh near the breakwater is coarse which lead to the convergence of the wrong result?

Thanks in advance!

Sincerely,
Stan Zhou
Attached Images
File Type: jpg figure 1.jpg (30.1 KB, 27 views)

Last edited by Stan Zhou; January 22, 2021 at 06:10. Reason: The attachment hasn't been uploaded
Stan Zhou is offline   Reply With Quote

Old   January 25, 2021, 20:42
Default
  #280
Senior Member
 
Pablo Higuera
Join Date: Jan 2011
Location: Auckland
Posts: 627
Rep Power: 19
Phicau is on a distinguished road
Hi Stan,
1) You are right, 'useTransient' is false by default, therefore the oscillatory flow enhancement is disconnected. This is to allow using the porous media friction in cases such as the dam break tutorial included in olaFlow, in which the flow is not oscillatory. If can connected in cases in which you have oscillatory flow and you want to consider the turbulence enhancement created by the oscillatory flow. In that case you set 'useTransient' to true and you also need to provide the value for KC in the dictionary.

2) The default value of 'useTransMask' is 0, so it will have no effect if not intended to. Similarly, 'KC' default value is 1, to prevent dividing by 0, but that is irrelevant because 'useTransMask' is 0 already.

3) I suggest that you take a look here: How to give enough info to get help There are thousands of things that can contribute to getting unexpected values. I would suggest you starting with a simpler mesh/case to validate the case and select the porous media parameters. A quick sanity check is that the hydrostatic pressure is alright; if that is not the case you know you have probably done something wrong.

Best,
Pablo
__________________
Check out my new project: olaFlow --> The olaFlow Support Thread
Phicau is offline   Reply With Quote

Reply

Tags
olaflow, waves


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Divergence detected in AMG solver: k when udf loaded google9002 Fluent UDF and Scheme Programming 3 November 7, 2019 23:34
udf problem jane Fluent UDF and Scheme Programming 37 February 20, 2018 04:17
UDF velocity profile willroca Fluent UDF and Scheme Programming 2 January 10, 2016 03:13
Error messages atg enGrid 7 August 30, 2013 11:16
Phase locked average in run time panara OpenFOAM 2 February 20, 2008 14:37


All times are GMT -4. The time now is 20:07.