CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

Transitioning from 2D to 3D Simulation of flow-induced Rotation in OpenFOAM using AMI

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   May 13, 2024, 11:42
Default Transitioning from 2D to 3D Simulation of flow-induced Rotation in OpenFOAM using AMI
  #1
New Member
 
Ilyes SAYAD
Join Date: Jul 2021
Posts: 21
Rep Power: 5
highpressure is on a distinguished road
Greetings everyone,


I've successfully run a 2D model for the flow-induced rotation of a wind turbine using the AMI technique in OpenFOAM. However, I'm currently facing challenges in transitioning to a 3D simulation. Despite adjusting the boundary conditions and experimenting with various mesh refinements, I'm unable to achieve successful results.


Here is what I get when I launch the simulation:



Code:
ilyes@Vostro-3420:~/OpenFOAM/ilyes-2312/run/TEST/TEST_9$ ./runTutorial 
START mesh generation .....
END mesh generation .....
START Processing .....
-----> Copy 0.orig directory to new 0 directory
-----> Decompose case on 4 cores
-----> RenumberMesh for parallelisation optimization 
hwloc/linux: Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
-----> Run de solver pimpleFoam on 4 cores on :
lun. 13 mai 2024 11:35:46 CEST
hwloc/linux: Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
--> FOAM IOWarning :
    Found [v1612] 'functionObjectLibs' entry instead of 'libs' in dictionary "system/controlDict/functions/yplus"

    This keyword is 84 months old.

[1] [2] [stack trace]
[2] =============
[stack trace]
[1] =============
[2] #1  [1] #Foam::sigFpe::sigHandler(int)1  Foam::sigFpe::sigHandler(int) in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so
[2] #2  ? in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so
[1] #2  ? in /lib/x86_64-linux-gnu/libc.so.6
 in /lib/x86_64-linux-gnu/libc.so.6
[1] #3  Foam::divide(Foam::Field<double>&, double const&, Foam::UList<double> const&)[2] #3  Foam::divide(Foam::Field<double>&, double const&, Foam::UList<double> const&) in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so
[1] #4   in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so
[2] #4  ?? in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
[1] #5   in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
[2] #5  ?? in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
[2] #6   in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
[1] #6  ?? in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
[2] #7  ? in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
[1] #7  ? in /lib/x86_64-linux-gnu/libc.so.6
[2] #8  __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
[1] #8  __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
[2] #9   in /lib/x86_64-linux-gnu/libc.so.6
[1] #9  ?? in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
[2] =============
[Vostro-3420:22322] *** Process received signal ***
[Vostro-3420:22322] Signal: Floating point exception (8)
[Vostro-3420:22322] Signal code:  (-6)
[Vostro-3420:22322] Failing at address: 0x3e900005732
[Vostro-3420:22322] [ 0] /lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x709dede42520]
[Vostro-3420:22322] [ 1] /lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x12c)[0x709dede969fc]
[Vostro-3420:22322] [ 2] /lib/x86_64-linux-gnu/libc.so.6(raise+0x16)[0x709dede42476]
[Vostro-3420:22322] [ 3] /lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x709dede42520]
[Vostro-3420:22322] [ 4] /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam6divideERNS_5FieldIdEERKdRKNS_5UListIdEE+0x24)[0x709deeb942f4]
[Vostro-3420:22322] [ 5] pimpleFoam(+0x42e4b)[0x5f582df97e4b]
[Vostro-3420:22322] [ 6] pimpleFoam(+0x3a632)[0x5f582df8f632]
[Vostro-3420:22322] [ 7] pimpleFoam(+0x1b51f)[0x5f582df7051f]
[Vostro-3420:22322] [ 8] /lib/x86_64-linux-gnu/libc.so.6(+0x29d90)[0x709dede29d90]
[Vostro-3420:22322] [ 9] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80)[0x709dede29e40]
[Vostro-3420:22322] [10] pimpleFoam(+0x21e75)[0x5f582df76e75]
[Vostro-3420:22322] *** End of error message ***
 in /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/bin/pimpleFoam
[1] =============
[Vostro-3420:22321] *** Process received signal ***
[Vostro-3420:22321] Signal: Floating point exception (8)
[Vostro-3420:22321] Signal code:  (-6)
[Vostro-3420:22321] Failing at address: 0x3e900005731
[Vostro-3420:22321] [ 0] /lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x7bfa85042520]
[Vostro-3420:22321] [ 1] /lib/x86_64-linux-gnu/libc.so.6(pthread_kill+0x12c)[0x7bfa850969fc]
[Vostro-3420:22321] [ 2] /lib/x86_64-linux-gnu/libc.so.6(raise+0x16)[0x7bfa85042476]
[Vostro-3420:22321] [ 3] /lib/x86_64-linux-gnu/libc.so.6(+0x42520)[0x7bfa85042520]
[Vostro-3420:22321] [ 4] /usr/lib/openfoam/openfoam2312/platforms/linux64GccDPInt32Opt/lib/libOpenFOAM.so(_ZN4Foam6divideERNS_5FieldIdEERKdRKNS_5UListIdEE+0x24)[0x7bfa85d942f4]
[Vostro-3420:22321] [ 5] pimpleFoam(+0x42e4b)[0x5fe8f26bde4b]
[Vostro-3420:22321] [ 6] pimpleFoam(+0x3a632)[0x5fe8f26b5632]
[Vostro-3420:22321] [ 7] pimpleFoam(+0x1b51f)[0x5fe8f269651f]
[Vostro-3420:22321] [ 8] /lib/x86_64-linux-gnu/libc.so.6(+0x29d90)[0x7bfa85029d90]
[Vostro-3420:22321] [ 9] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80)[0x7bfa85029e40]
[Vostro-3420:22321] [10] pimpleFoam(+0x21e75)[0x5fe8f269ce75]
[Vostro-3420:22321] *** End of error message ***
--------------------------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code. Per user-direction, the job has been aborted.
--------------------------------------------------------------------------
--------------------------------------------------------------------------
mpirun noticed that process rank 1 with PID 0 on node Vostro-3420 exited on signal 8 (Floating point exception).
--------------------------------------------------------------------------
-----> End of solver calculation on :
lun. 13 mai 2024 12:24:07 CEST
END Processing .....
Geometry


Below is a sketch of the geometry:






To simplify the geometry, I've modeled only one blade of the turbine, with the cylinder representing the rotating domain.


Mesh

Meshed blade:





Meshed cylinder:




I generated a meshing domain slice in ParaView to illustrate refinement zones:






I've included the output from checkMesh:


Code:
/*---------------------------------------------------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2312                                  |
|   \\  /    A nd           | Website:  www.openfoam.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
Build  : _e651d635-20240208 OPENFOAM=2312 patch=240220 version=2312
Arch   : "LSB;label=32;scalar=64"
Exec   : checkMesh
Date   : May 13 2024
Time   : 11:34:51
Host   : Vostro-3420
PID    : 22274
I/O    : uncollated
Case   : /home/ilyes/OpenFOAM/ilyes-2312/run/TEST/TEST_9
nProcs : 1
trapFpe: Floating point exception trapping enabled (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using  timeStampMaster (fileModificationSkew 5, maxFileModificationPolls 20)
allowSystemOperations : Allowing user-supplied system call operations

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

--> FOAM Warning : 
    From static Foam::instantList Foam::timeSelector::select0(Foam::Time&, const Foam::argList&)
    in file db/Time/timeSelector.C at line 258
    No time specified or available, selecting 'constant'
Create mesh for time = constant

Check mesh...

Time = constant

Mesh stats 
    points:           469344
    faces:            1285682
    internal faces:   1227722
    cells:            408471
    faces per cell:   6.153201
    boundary patches: 8
    point zones:      1
    face zones:       1
    cell zones:       1

Overall number of cells of each type:
    hexahedra:     380293
    prisms:        5148
    wedges:        0
    pyramids:      0
    tet wedges:    0
    tetrahedra:    0
    polyhedra:     23030
    Breakdown of polyhedra by number of faces:
        faces   number of cells
            5   50
            6   5612
            9   13019
           12   3546
           15   738
           18   58
           21   7

Checking topology...
    Boundary definition OK.
    Cell to face addressing OK.
    Point usage OK.
    Upper triangular ordering OK.
    Face vertices OK.
   *Number of regions: 2
    The mesh has multiple regions which are not connected by any face.
  <<Writing region information to "constant/cellToRegion"
  <<Writing region 0 with 243108 cells to cellSet region0
  <<Writing region 1 with 165363 cells to cellSet region1

Checking patch topology for multiply connected surfaces...
                   Patch    Faces   Points  Surface topology
                   inlet     1600     1681  ok (non-closed singly connected)
                  outlet     4192     4333  ok (non-closed singly connected)
                   sides     3992     4206  ok (non-closed singly connected)
                savonius    18358    18385      ok (closed singly connected)
                    AMI1    13294    13568  ok (non-closed singly connected)
                    AMI2    13294    13616  ok (non-closed singly connected)
                   front     1618     1706  ok (non-closed singly connected)
                    back     1612     1697  ok (non-closed singly connected)
                    ".*"    57960    58612      ok (closed singly connected)


Checking faceZone topology for multiply connected surfaces...
                FaceZone    Faces   Points                  Surface topology
                rotating    26588    27088      ok (closed singly connected)

Checking basic cellZone addressing...
                CellZone        Cells       Points       VolumeBoundingBox
               rotating            0            0            0 (1e+150 1e+150 1e+150) (-1e+150 -1e+150 -1e+150)

Checking basic pointZone addressing...
               PointZone  PointsBoundingBox
            frozenPoints       0(1e+150 1e+150 1e+150) (-1e+150 -1e+150 -1e+150)

Checking geometry...
    Overall domain bounding box (-3 -2 -1.2) (5 2 2.8)
    Mesh has 3 geometric (non-empty/wedge) directions (1 1 1)
    Mesh has 3 solution (non-empty) directions (1 1 1)
    Boundary openness (-3.186349e-15 4.898541e-17 -9.984182e-17) OK.
    Max cell openness = 3.734119e-16 OK.
    Max aspect ratio = 4.0863 OK.
    Minimum face area = 8.407083e-05. Maximum face area = 0.0206844.  Face area magnitudes OK.
    Min volume = 1.183581e-06. Max volume = 0.002070235.  Total volume = 127.897.  Cell volumes OK.
    Mesh non-orthogonality Max: 50.44086 average: 7.786349
    Non-orthogonality check OK.
    Face pyramids OK.
    Max skewness = 3.129919 OK.
    Coupled point location match (average 0) OK.

Mesh OK.

 End
pimpleFoam


Additionally, here's the last lines from pimpleFOAM's output (Complete file is attached). Upon examining the angular velocity, it's evident that the solver crashes when the blade initiates movement, suggesting a potential issue with the AMI.


Code:
PIMPLE: iteration 1
forces forces:
    rho: rhoInf
    Freestream density (rhoInf) set to 1
    Not including porosity effects

Rigid-body motion of the savonius
    Centre of rotation: (0 0 0)
    Orientation: (1 0 -5.956335e-09 0 1 0 5.956335e-09 0 1)
    Linear velocity: (0 0 0)
    Angular velocity: (0 1.286568e-05 0)
AMI: Creating AMI for source:AMI1 and target:AMI2
AMI: Patch source faces: 13294
AMI: Patch target faces: 13294
AMI: distributed
AMI: Patch source sum(weights) min:1 max:2.681251 average:1.0022
AMI: Patch target sum(weights) min:0 max:1.698393 average:1.001558
GAMG:  Solving for pcorr, Initial residual = 1, Final residual = 0.005250233, No Iterations 11
GAMG:  Solving for pcorr, Initial residual = 0.1069417, Final residual = 0.008501056, No Iterations 1
time step continuity errors : sum local = 6.112589e-12, global = -1.720449e-14, cumulative = 5.16529e-08
smoothSolver:  Solving for Ux, Initial residual = 0.0004921374, Final residual = 2.998566e-06, No Iterations 1
smoothSolver:  Solving for Uy, Initial residual = 0.00401671, Final residual = 2.892695e-05, No Iterations 1
 smoothSolver:  Solving for Uz, Initial residual = 0.004266973, Final residual = 2.545442e-05, No Iterations 1
Case file and log files



For a more comprehensive understanding, I've attached the complete case file below and log files from a previous simulation.


Thank you in advance for any assistance you can provide.


Best regards,
Attached Files
File Type: zip log_files.zip (167.7 KB, 1 views)
File Type: zip Case_file_3D_AMI.zip (71.0 KB, 3 views)
highpressure is offline   Reply With Quote

Old   May 23, 2024, 06:19
Default
  #2
New Member
 
Ilyes SAYAD
Join Date: Jul 2021
Posts: 21
Rep Power: 5
highpressure is on a distinguished road
Any help ?
highpressure is offline   Reply With Quote

Old   May 23, 2024, 21:47
Default
  #3
Senior Member
 
Will Kernkamp
Join Date: Jun 2014
Posts: 371
Rep Power: 14
wkernkamp is on a distinguished road
I looked at your material and replicated the problem. Looks to me that the geometry is not a smooth cylinder. So the movement may cause some mismatch. That is how far I got.
wkernkamp is offline   Reply With Quote

Old   May 27, 2024, 06:59
Default
  #4
New Member
 
Ilyes SAYAD
Join Date: Jul 2021
Posts: 21
Rep Power: 5
highpressure is on a distinguished road
Hello Will;


Thank you for your reply.



I also think it's a mesh-related problem, but I don't know how to properly mesh the cylinder to get 90° edges and perfect surfaces using snappyHexMesh.


I've managed to get a few iterations with angular velocity, but pimpleFoam crashes after some time. Here is what I've done so far:


1 - I added a surfaceFeatureExtract file and included these lines in snappyHexMesh :

Code:
// Explicit feature edge refinement
    // ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    features (
    
    { file "savonius.eMesh"; level 2;} // Note: better: level 3
    { file "rotating.eMesh"; level 3;} // Note: better: level 3
    
    );
2 - I added "Feature snapping" paraleters to snapControls;

Code:
        // Feature snapping

//        //- Number of feature edge snapping iterations.
//        //  Leave out altogether to disable.
        nFeatureSnapIter 60; //10;
//
//        //- Detect (geometric only) features by sampling the surface
//        //  (default=false).
        implicitFeatureSnap false;
//
//        //- Use castellatedMeshControls::features (default = true)
        explicitFeatureSnap true;
//
//        //- Detect points on multiple surfaces (only for explicitFeatureSnap)
        multiRegionFeatureSnap false;

A screenshot of the cylinder and the updated case file are attached.





If I refine the mesh too much, pimpleFoam doesn't even start, and I get an error message :



Code:
mpirun noticed that process rank 2 with PID 0 on node Vostro-3420 exited on signal 9 (Killed).
I'm running this simulation on a small laptop (an Intel Core i5, with 8GB of RAM). Could hardware limitations be the problem ?


Thank you in advance,
Attached Images
File Type: jpg Capture d’écran du 2024-05-27 11-44-25.jpg (51.7 KB, 1 views)
File Type: png Capture d’écran du 2024-05-27 11-43-32.png (19.5 KB, 1 views)
Attached Files
File Type: zip Case_file_3D_AMI_updated.zip (92.1 KB, 0 views)
highpressure is offline   Reply With Quote

Reply


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
Unsteady Subsonic Nozzle Flow Simulation Issue with SU2 Madsskjaerbaek SU2 3 April 17, 2024 10:41
Flow induced rotation in turbines harish100603 OpenFOAM 2 January 27, 2024 15:35
[Tutorials] Flow induced rotation with AMI and 6DOF Tobi OpenFOAM Community Contributions 12 December 30, 2023 04:27
Issues on the simulation of high-speed compressible flow within turbomachinery dowlee OpenFOAM Running, Solving & CFD 11 August 6, 2021 07:40
Simulation of Flow induced vibration on an elastically mounted bluff body in a cross pradeepta FLUENT 2 September 17, 2009 08:18


All times are GMT -4. The time now is 11:29.