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

engineFoam new mesh problem

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree1Likes
  • 1 Post By ayhan515

Reply
 
LinkBack Thread Tools Display Modes
Old   October 12, 2011, 08:36
Arrow engineFoam new mesh problem
  #1
New Member
 
Ayhan Eses
Join Date: Mar 2009
Posts: 27
Rep Power: 8
ayhan515 is on a distinguished road
I run tutorial kivaTest case without fail.
I want to increase compression ratio value, like diesel engine, about 20.

I converted existent kiva mesh (otape17) to OpenFoam mesh(polymesh) with kivaToFoam command. It is ok no problem.
Then i converted OpenFoam mesh(polymesh) to a Fluent mesh(*.msh) with foamMeshToFluent command. It is ok no problem.

I deleted polyMesh folder which in constant folder.

This time I converted Fluent mesh(*.msh) to OpenFoam mesh(polymesh) to a by fluent3DMeshToFoam command. It is ok no problem.
I execute engineFoam command. it runs without problem.

Code:
kiva mesh ---->> OpenFoam mesh  ---->>  Fluent Mesh
 (otape17)              (polyMesh)      <<----      (*.msh)  
                                          |
                                          |
                                          v
                                    engineFoam
                                   (works well)
After I changed the Fluent mesh then I convert new Fluent mesh to OpenFoam mesh(polymesh) to a by fluent3DMeshToFoam command. It is ok no problem.

Code:
 New Fluent Mesh   ---->> New OpenFoam mesh     xxxx    engineFoam
    (New.msh)                    (polyMesh)                               (Failed)
When I execute engineFoam command with new mesh. It gave this error message then exit.

Code:
// * * * * * * * * * * * * * * *  * * * * * * * * * * * * * * * //
Create engine time

Create mesh for time = -180

Selecting engineMesh layered


--> FOAM FATAL ERROR: 
cannot find cylinderHead patch

    From function engineMesh::engineMesh(const IOobject& io)
    in file engineMesh/engineMesh/engineMesh.C at line 90.

FOAM exiting
I think problem caused from "cylinderHead patch".

In kivaToFoam command this problem solved by "Transfered xx faces from liner region to cylinder head"


Code:
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
Create time

Reading kiva grid from file "otape17"
Finished reading KIVA file
Transfered 500 faces from liner region to cylinder head

Default patch type set to empty
Writing polyMesh
Writing cell zoning info to file: "/home/ayhan/OpenFOAM/ayhan-2.0.1/run/tutorials/combustion/engineFoam/kivaTest/constant/region0/cellZoning"
End
I suppose solution in the below file
/opt/openfoam201/applications/utilities/mesh/conversion/kivaToFoam/readKivaGrid.H
Code:
// Transfer liner faces that are above the minimum cylinder-head z height
// into the cylinder-head region
if
(
    pFaces[LINER].size()
 && pFaces[LINER][0].size()
 && pFaces[CYLINDERHEAD].size()
 && pFaces[CYLINDERHEAD][0].size()
)
{
    scalar minz = GREAT;

    forAllConstIter(SLList<face>, pFaces[CYLINDERHEAD][0], iter)
    {
        const face& pf = iter();

        forAll(pf, pfi)
        {
            minz = min(minz, points[pf[pfi]].z());
        }
    }

    minz += SMALL;

    SLList<face> newLinerFaces;

    forAllConstIter(SLList<face>, pFaces[LINER][0], iter)
    {
        const face& pf = iter();

        scalar minfz = GREAT;
        forAll(pf, pfi)
        {
            minfz = min(minfz, points[pf[pfi]].z());
        }

        if (minfz > minz)
        {
            pFaces[CYLINDERHEAD][0].append(pf);
        }
        else
        {
            newLinerFaces.append(pf);
        }
    }

    if (pFaces[LINER][0].size() != newLinerFaces.size())
    {
        Info<< "Transfered " << pFaces[LINER][0].size() - newLinerFaces.size()
            << " faces from liner region to cylinder head" << endl;
        pFaces[LINER][0] = newLinerFaces;
    }

    SLList<face> newCylinderHeadFaces;

    forAllConstIter(SLList<face>, pFaces[CYLINDERHEAD][0], iter)
    {
        const face& pf = iter();

        scalar minfz = GREAT;
        forAll(pf, pfi)
        {
            minfz = min(minfz, points[pf[pfi]].z());
        }

        if (minfz < zHeadMin)
        {
            pFaces[LINER][0].append(pf);
        }
        else
        {
            newCylinderHeadFaces.append(pf);
        }
    }

    if (pFaces[CYLINDERHEAD][0].size() != newCylinderHeadFaces.size())
    {
        Info<< "Transfered faces from cylinder-head region to linder" << endl;
        pFaces[CYLINDERHEAD][0] = newCylinderHeadFaces;
    }
}
The question is how can i apply this solving. How can i transfer faces from liner region to cylinder head while i convert new fluent mesh to polyMesh.

Thanks in advance.

Last edited by ayhan515; October 13, 2011 at 01:54.
ayhan515 is offline   Reply With Quote

Old   October 18, 2011, 09:03
Arrow
  #2
New Member
 
Ayhan Eses
Join Date: Mar 2009
Posts: 27
Rep Power: 8
ayhan515 is on a distinguished road
I used checkMesh command now. The output is below.

Code:
/*---------------------------------------------------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.0.1                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
Build  : 2.0.1-51f1de99a4bc
Exec   : checkMesh
Date   : Oct 18 2011
Time   : 15:46:26
Host   : ubuntu
PID    : 2780
Case   : /home/ayhan/OpenFOAM/ayhan-2.0.1/run/tutorials/combustion/engineFoam/kivaTest-fluent-11-10-2011
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster
allowSystemOperations : Disallowing user-supplied system call operations

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

Create polyMesh for time = -180

Time = -180

Mesh stats
    points:           30742
    faces:            85742
    internal faces:   79522
    cells:            27544
    boundary patches: 3
    point zones:      0
    face zones:       1
    cell zones:       1

Overall number of cells of each type:
    hexahedra:     27544
    prisms:        0
    wedges:        0
    pyramids:      0
    tet wedges:    0
    tetrahedra:    0
    polyhedra:     0

Checking topology...
    Boundary definition OK.
    Cell to face addressing OK.
    Point usage OK.
    Upper triangular ordering OK.
    Face vertices OK.
    Number of regions: 1 (OK).

Checking patch topology for multiply connected surfaces ...
    Patch               Faces    Points   Surface topology                  
    piston              1326     1400     ok (non-closed singly connected)  
    liner               2710     2858     ok (non-closed singly connected)  
    cylinderhead        2184     2260     ok (non-closed singly connected)  

Checking geometry...
    Overall domain bounding box (-0.046 -0.0459845 -0.0089896) (0.046 0.0459845 0.20335)
    Mesh (non-empty, non-wedge) directions (1 1 1)
    Mesh (non-empty) directions (1 1 1)
    Boundary openness (2.0111e-20 -4.34397e-19 6.81738e-20) OK.
    Max cell openness = 2.54332e-16 OK.
    Max aspect ratio = 68.0635 OK.
    Minumum face area = 4.94833e-07. Maximum face area = 8.23324e-05.  Face area magnitudes OK.
    Min volume = 6.14138e-10. Max volume = 2.72275e-07.  Total volume = 0.00126259.  Cell volumes OK.
    Mesh non-orthogonality Max: 86.981 average: 37.3601
   *Number of severely non-orthogonal faces: 5320.
    Non-orthogonality check OK.
  <<Writing 5320 non-orthogonal faces to set nonOrthoFaces
    Face pyramids OK.
    Max skewness = 3.89796 OK.

Mesh OK.

End
Code:
/*---------------------------------------------------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  2.0.1                                 |
|   \\  /    A nd           | Web:      www.OpenFOAM.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
Build  : 2.0.1-51f1de99a4bc
Exec   : engineFoam
Date   : Oct 18 2011
Time   : 15:47:49
Host   : ubuntu
PID    : 2985
Case   : /home/ayhan/OpenFOAM/ayhan-2.0.1/run/tutorials/combustion/engineFoam/kivaTest-fluent-11-10-2011
nProcs : 1
sigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).
fileModificationChecking : Monitoring run-time modified files using timeStampMaster
allowSystemOperations : Disallowing user-supplied system call operations

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

Create mesh for time = -180

Selecting engineMesh layered


--> FOAM FATAL ERROR: 
cannot find cylinderHead patch

    From function engineMesh::engineMesh(const IOobject& io)
    in file engineMesh/engineMesh/engineMesh.C at line 90.

FOAM exiting
Quote:
I still get same error when i try to use engineFoam.
While i am writing this above message i noticed these
Quote:
cylinderhead 2184 2260 ok (non-closed singly connected)
and
Quote:
cannot find cylinderHead patch
Then i changed cylinderhead to cylinderHead in boundary file of polyMesh folder.
Then now engineFoam is working. I am really shame on myself.
songwukong likes this.
ayhan515 is offline   Reply With Quote

Old   May 1, 2012, 04:29
Default
  #3
New Member
 
Wang
Join Date: Sep 2010
Posts: 6
Rep Power: 6
enjoybitter is on a distinguished road
Good Experience!
Thanks for your sharing.
enjoybitter is offline   Reply With Quote

Reply

Thread Tools
Display Modes

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 On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
snappyHexMesh won't work - zeros everywhere! sc298 OpenFOAM Native Meshers: snappyHexMesh and Others 2 March 27, 2011 21:11
Dynamic Mesh Problem. Tom Clark FLUENT 9 July 7, 2010 07:56
[GAMBIT] Problem with mesh. Please Help... maziboss ANSYS Meshing & Geometry 1 September 28, 2009 02:24
mesh generation problem Ellen FLUENT 7 February 18, 2009 22:20
mesh control problem TUM CFX 4 July 27, 2001 16:17


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