CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Meshing & Mesh Conversion (https://www.cfd-online.com/Forums/openfoam-meshing/)
-   -   [Commercial meshers] fluentMeshToFoam: "fluent patch type shadow not recognised" (https://www.cfd-online.com/Forums/openfoam-meshing/66876-fluentmeshtofoam-fluent-patch-type-shadow-not-recognised.html)

preibie July 27, 2009 11:21

fluentMeshToFoam: "fluent patch type shadow not recognised"
 
Hallo,

I want to convert a Fluent msh File to OpenFoam. By using fluentMeshToFoam is a mistake (show below). Have anybody an Idea how I can concert a Fluent msh file to openFoam.

Thanks


Code:

/*---------------------------------------------------------------------------*\
| =========                |                                                |
| \\      /  F ield        | OpenFOAM: The Open Source CFD Toolbox          |
|  \\    /  O peration    | Version:  1.5                                  |
|  \\  /    A nd          | Web:      http://www.OpenFOAM.org              |
|    \\/    M anipulation  |                                                |
\*---------------------------------------------------------------------------*/
Exec  : fluentMeshToFoam brick.msh
Date  : Jul 27 2009
Time  : 17:15:35
Host  : Fluent64-2
PID    : 29859
Case  : /home/preibisch/OpenFOAM/preibisch-1.5/run/brick
nProcs : 1

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

Dimension of grid: 3
Number of points: 15410
Reading points
number of faces: 155152
Reading mixed faces
Reading mixed faces
8(c6d 18d8 4 3Reading mixed faces
Reading mixed faces
Reading mixed faces
Number of cells: 74714
Other readCellGroupData: 2 1 123da 1 2
Reading uniform cells
Read zone1:2 name:fluid patchTypeID:fluid
Reading zone data
Read zone1:3 name:periodic.1_shadow patchTypeID:shadow
Reading zone data
Read zone1:4 name:periodic.1 patchTypeID:periodic
Reading zone data
Read zone1:5 name:out patchTypeID:wall
Reading zone data
Read zone1:6 name:inner patchTypeID:wall
Reading zone data
Read zone1:8 name:default-interior patchTypeID:interior
Reading zone data


FINISHED LEXING


dimension of grid: 3
Creating shapes for 3-D cells
Building patch-less mesh...--> FOAM Warning :
    From function polyMesh::polyMesh(... construct from shapes...)
    in file meshes/polyMesh/polyMeshFromShapeMesh.C at line 576
    Found 11448 undefined faces in mesh; adding to default patch.
done.

Building boundary and internal patches.
Creating patch 0 for zone: 3 start: 1 end: 3180 type: shadow name: periodic.1_shadow


fluent patch type shadow not recognised.#0  Foam::error::printStack(Foam::Ostream&) in "/home/preibisch/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
#1  Foam::error::abort() in "/home/preibisch/OpenFOAM/OpenFOAM-1.5/lib/linux64GccDPOpt/libOpenFOAM.so"
#2  main in "/home/preibisch/OpenFOAM/OpenFOAM-1.5/applications/bin/linux64GccDPOpt/fluentMeshToFoam"
#3  __libc_start_main in "/lib64/libc.so.6"
#4  __gxx_personality_v0 in "/home/preibisch/OpenFOAM/OpenFOAM-1.5/applications/bin/linux64GccDPOpt/fluentMeshToFoam"


    From function fluentToFoam::main(int argc, char *argv[])
    in file fluentMeshToFoam.L at line 1337.

FOAM aborting


Schag July 27, 2009 11:38

Hi,

it seems that OpenFOAM doesn't recognize the type Shadow from Fluent (Gambit?).
You can have a look at lines 1260 to 1340 of fluentMeshToFoam.L (thank you Henrik to make me open this file earlier today), shadow is not an option for a patch from fluent to openFoam.
What does "shadow" means for you? Is it an internal face, a patch, fan, wall...?

Regards,

Julien

preibie July 28, 2009 02:54

it is an internal wall i think, but how can I fix that problem?

Schag July 28, 2009 03:11

First, I don't think fluentMeshToFoam keeps internal faces (it didn't ever work for me, but I have to confess that I was not very persistent). Do you really need them?

Then, in Gambit, when creating boundary conditions, just choose another type than shadow (in this case, internal for example). If you don't need them, just don't mark them as boundary conditions.

Hope it helps...

Julien

preibie July 28, 2009 04:00

I found the "mistake": when you define a pair of two walls for periodic boundary conditions on gambit one of this two walls is a shadow wall. I defined them to a simple wall and fluentMeshToFoam run without problems.

But how I define a periodic boundary condition?:confused:

Schag July 28, 2009 04:02

Are you speaking about cyclic BC?

preibie July 28, 2009 04:19

I think yes. When a fluid element fly out of the domain by crossing one of this two walls. He comes in the domain again by crossing the other wall. Is this the definition for cyclic BC?

Schag July 28, 2009 04:31

I'm not familiar with cyclic BC, but I think this is the definition yes.

Maybe you should take a look there:
http://www.cfd-online.com/Forums/ope...-boundary.html

This topic seems to deal with your problem. I cannot do much more, sorry, I did not use cyclic BC yet. Good luck.

sivakumar October 4, 2012 15:13

Hi there,
I am trying to mesh the fan passage in gambit.
I dont know what is the problem in the mesh, its giving the following error.

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

Dimension of grid: 3
Number of points: 808911
Reading points
number of faces: 2358500
Reading mixed faces
Reading mixed faces
8(fa1 1f40 4 3Reading mixed faces
Reading mixed faces
8(4651 6d60 6 5Reading mixed faces
Reading mixed faces
Reading mixed faces
Reading mixed faces
Reading mixed faces
Reading mixed faces
Reading mixed faces
Reading mixed faces
Reading mixed faces
Number of cells: 775000
Other readCellGroupData: 2 1 bd358 1 4
Reading uniform cells
Read zone1:2 name:fluid patchTypeID:fluid
Reading zone data
Read zone1:3 name:periodic_1_shadow patchTypeID:shadow
Reading zone data
Read zone1:4 name:periodic_1 patchTypeID:periodic
Reading zone data
Read zone1:5 name:periodic_2_shadow patchTypeID:shadow
Reading zone data
Read zone1:6 name:periodic_2 patchTypeID:periodic
Reading zone data
Read zone1:7 name:top_3 patchTypeID:wall
Reading zone data
Read zone1:8 name:top_2 patchTypeID:wall
Reading zone data
Read zone1:9 name:top_1 patchTypeID:wall
Reading zone data
Read zone1:10 name:center_2 patchTypeID:wall
Reading zone data
Read zone1:11 name:center_1 patchTypeID:wall
Reading zone data
Read zone1:12 name:fan patchTypeID:fan
Reading zone data
Read zone1:13 name:outlet patchTypeID:pressure-outlet
Reading zone data
Read zone1:14 name:inlet patchTypeID:velocity-inlet
Reading zone data
Read zone1:16 name:default-interior patchTypeID:interior
Reading zone data


FINISHED LEXING


dimension of grid: 3
Creating shapes for 3-D cells
Building patch-less mesh...--> FOAM Warning :
From function polyMesh::polyMesh(... construct from shapes...)
in file meshes/polyMesh/polyMeshFromShapeMesh.C at line 614
Found 67000 undefined faces in mesh; adding to default patch.
done.

Building boundary and internal patches.
Creating patch 0 for zone: 3 start: 1 end: 4000 type: shadow name: periodic_1_shadow


--> FOAM FATAL ERROR:
fluent patch type shadow not recognised.

From function fluentToFoam::main(int argc, char *argv[])
in file fluentMeshToFoam.L at line 1344.

FOAM aborting

#0 Foam::error::printStack(Foam::Ostream&) in "/home/cerecam/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#1 Foam::error::abort() in "/home/cerecam/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#2
in "/home/cerecam/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/bin/fluentMeshToFoam"
#3 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
#4
in "/home/cerecam/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/bin/fluentMeshToFoam"
Aborted (core dumped)

I dont know what is the shadow, I didnt define anything like that.

can you please help me sort out this issue.

thanks and regards,
Siva

Bombolati October 4, 2012 18:02

Hi Siva, in my mesh the shadow patch was a patch that was coupled with an other one. For example you design a cylinder,to reduce the dimension of the file you do a clove of this cylinder. Now you have two sides that were the same surface before you do the clove,for example L1. In the mesher (as gambit) you assign a periodic boundary condition to L1 and its "brother". When you convert the mesh, OF sees L1 and L1_shadow. I hope that this hint will be useful.

sivakumar October 5, 2012 03:44

Hi Bombolati,
Thanks for your reply, i got the information regarding the shadow.
If it gives the full converted mesh then, i can edit the necessary files. but now its not converting the whole mesh, its giving the fatal error in between and it stopped converting the mesh.

see the message,

--> FOAM FATAL ERROR:
fluent patch type shadow not recognised.

From function fluentToFoam::main(int argc, char *argv[])
in file fluentMeshToFoam.L at line 1344.

FOAM aborting

#0 Foam::error::printStack(Foam::Ostream&) in "/home/cerecam/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#1 Foam::error::abort() in "/home/cerecam/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/lib/libOpenFOAM.so"
#2
in "/home/cerecam/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/bin/fluentMeshToFoam"
#3 __libc_start_main in "/lib/x86_64-linux-gnu/libc.so.6"
#4
in "/home/cerecam/OpenFOAM/OpenFOAM-2.0.1/platforms/linux64GccDPOpt/bin/fluentMeshToFoam"
Aborted (core dumped)

what should i do now? please give me your idea.

Thanks and regards,
Siva

blacksquirrel October 5, 2012 03:54

Hello Siva,

You can try to simplify your boundary conditions in gambit, like using only velocity inlet, pressure outlet and wall for everything else (e.g. periodic boundarys).

And after you converted the mesh with Fluent(3D)MeshToFoam you can use the createPatch utility to create the patches you need from your "walls".

sivakumar October 5, 2012 04:01

Hi,
Thanks, nice idea. i will try now, then i will post result

thanks.

Siva

sivakumar October 5, 2012 06:47

Hi blacksquirrel,
As per you idea, I have generated the mesh with wall boundary condition.
Now i wan to use the createPatch utility, can you please explain it.
In which folder i need to execute the command?

blacksquirrel October 5, 2012 07:18

Hello Siva,

You execute createPatch from your "case" folder. It reads everything from the createPatchDict (http://openfoamwiki.net/index.php/CreatePatch) in the "case"/system folder.

What kind of boundaries do you want to create? Cyclic boundaries? I explained it in this thread:
http://www.cfd-online.com/Forums/ope...patchdict.html

wyldckat October 5, 2012 08:34

Greetings to all!
Quote:

Originally Posted by blacksquirrel (Post 385062)
What kind of boundaries do you want to create? Cyclic boundaries? I explained it in this thread:
http://www.cfd-online.com/Forums/ope...patchdict.html

FYI, I've moved that thread to here: http://www.cfd-online.com/Forums/ope...patchdict.html - I think it's easier to find it in the future, if it's located in the right sub-forum ;)

Best regards,
Bruno

sivakumar October 5, 2012 10:28

Hi there,
I have converted the .msh in to foam.
I got 2 errors,
firstly as follows,

--> FOAM FATAL ERROR:
face 6439 area does not match neighbour by 0.0103693% -- possible face ordering problem.
patch:OLR0 my area:0.000199448 neighbour area:0.000199427 matching tolerance:0.0001
Mesh face:1370739 fc:(0.0966635 -0.0215988 0.729129)
Neighbour fc:(0.0967883 -0.5304 0.500736)
If you are certain your matching is correct you can increase the 'matchTolerance' setting in the patch dictionary in the boundary file.
Rerun with cyclic debug flag set for more information.

then I have increased the matchTolerance 0.0001 to 0.001
then executed paraFoam

after that I am getting the error as follows,



--> FOAM FATAL ERROR:
More than six unsigned transforms detected:
6(((0 0 0) (1 1.57813e-06 -0.000193506 -0.000137946 0.707107 -0.707107 0.000135714 0.707107 0.707107) 1) ((0 0 0) (0.999999 3.64383e-05 -0.00152133 -0.00110151 0.707109 -0.707104 0.00104998 0.707105 0.707108) 1) ((0 0 0) (0.999996 7.7863e-05 -0.00275828 -0.00200544 0.707113 -0.707098 0.00189536 0.7071 0.707111) 1) ((0 0 0) (0.999992 0.000140037 -0.00401223 -0.00293604 0.70712 -0.707087 0.00273811 0.707093 0.707115) 1) ((0 0 0) (1 -0.000137946 0.000135714 1.57813e-06 0.707107 0.707107 -0.000193506 -0.707107 0.707107) 1) ((0 0 0) (0.999999 -0.00110151 0.00104998 3.64383e-05 0.707109 0.707105 -0.00152133 -0.707104 0.707108) 1))

From function void Foam::globalIndexAndTransform::determineTransforms ()
in file primitives/globalIndexAndTransform/globalIndexAndTransform.C at line 225.

can you guys help me.

Thanks,
Siva

blacksquirrel October 8, 2012 03:40

hello Siva,

I assume these errors occur while using the createPatch utility?

Then look in your createPatchDict. What is written in the "transform" options?
(e.g.
transform rotational;
rotationAxis (1 0 0);
rotationCentre (0 0 0); )

You maybe don't need to transform anything, so you can delete/comment the transform options.

sivakumar October 8, 2012 07:10

Dear blacksquirrel,
I am giving you the createPatchDict and my boundary file.
please have a look.
my createPatchDict :

// Patches to create.
patches
(
{
// Name of new patch
name ILR0;

// Dictionary to construct new patch from
patchInfo
{
type cyclic;
neighbourPatch ILR1;

// Optional non-default tolerance to be able to define cyclics
// on bad meshes
matchTolerance 1E-3;
}

// How to construct: either from 'patches' or 'set'
constructFrom patches;

// If constructFrom = patches : names of patches. Wildcards allowed.
patches (ILR_shadow);

}
{
// Name of new patch
name ILR1;

// Dictionary to construct new patch from
patchInfo
{
type cyclic;
neighbourPatch ILR0;

// Optional non-default tolerance to be able to define cyclics
// on bad meshes
matchTolerance 1E-3;
}

// How to construct: either from 'patches' or 'set'
constructFrom patches;

// If constructFrom = patches : names of patches. Wildcards allowed.
patches (ILR);

}
{
// Name of new patch
name OLR0;

// Dictionary to construct new patch from
patchInfo
{
type cyclic;
neighbourPatch OLR1;

// Optional non-default tolerance to be able to define cyclics
// on bad meshes
matchTolerance 1E-3;
}

// How to construct: either from 'patches' or 'set'
constructFrom patches;

// If constructFrom = patches : names of patches. Wildcards allowed.
patches (OLR_shadow);

}
{
// Name of new patch
name OLR1;

// Dictionary to construct new patch from
patchInfo
{
type cyclic;
neighbourPatch OLR0;

// Optional non-default tolerance to be able to define cyclics
// on bad meshes
matchTolerance 1E-3;
}

// How to construct: either from 'patches' or 'set'
constructFrom patches;

// If constructFrom = patches : names of patches. Wildcards allowed.
patches (OLR);

}
);

// ************************************************** *********************** /

my boundary file is:

FoamFile
{
version 2.0;
format ascii;
class polyBoundaryMesh;
location "1/polyMesh";
object boundary;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

12
(
fan
{
type wall;
nFaces 2800;
startFace 1357300;
}
top2
{
type wall;
nFaces 5600;
startFace 1360100;
}
top1
{
type wall;
nFaces 800;
startFace 1365700;
}
top0
{
type wall;
nFaces 2800;
startFace 1366500;
}
center1
{
type wall;
nFaces 5600;
startFace 1369300;
}
center0
{
type wall;
nFaces 2800;
startFace 1374900;
}
outlet
{
type patch;
nFaces 2000;
startFace 1377700;
}
inlet
{
type patch;
nFaces 2000;
startFace 1379700;
}
ILR0
{
type cyclic;
nFaces 3500;
startFace 1381700;
matchTolerance 0.001;
neighbourPatch ILR1;
}
ILR1
{
type cyclic;
nFaces 3500;
startFace 1385200;
matchTolerance 0.001;
neighbourPatch ILR0;
}
OLR0
{
type cyclic;
nFaces 7000;
startFace 1388700;
matchTolerance 0.001;
neighbourPatch OLR1;
}
OLR1
{
type cyclic;
nFaces 7000;
startFace 1395700;
matchTolerance 0.001;
neighbourPatch OLR0;
}
)

// ************************************************** *********************** //

please help me to sort out this problem,

And what are the further steps I need to follow?

Thank you,
Siva

blacksquirrel October 8, 2012 07:41

I'm sorry, for me those two files look fine. Can you post a picture of your gambit mesh? Your error message said, that ILR and ILR_shadow (or OLR with shadow) doesn't match exactly. I had a similar error once and had to rotate one patch to match the other one.

sivakumar October 8, 2012 08:11

Hello blacksquirrel,
can you please give me your mail id, so that i will send my mesh file via sendspace.

thanks,
Siva

sivakumar October 8, 2012 08:42

Hello blacksquirrel,
I have up loaded the file in send space, I think you have received the email from send space.

please have a look and tell me what was wrong.

Thank you very much for your time.
Siva

blacksquirrel October 8, 2012 09:06

Ok, I received your mesh. I've only used simple (rectangular) channels for my simulations, so now I'm guessing, too.

Somewhere you have to tell OpenFOAM that it needs to rotate patch ILR to match ILR_shadow.

You can try this:

transform rotational;
rotationAxis (1 0 0); //adjust this to your case
//rotationCentre (0 0 0);

If this doesn't work, then I'm clueless. I'm sorry.

sivakumar October 8, 2012 12:33

Hello blacksquirrel,
Thanks for your reply, I want try the previous reply from you.
you said that we can create the cyclic BC using the createPatch utility.

I am bit confused to edit the createPatchDict.

can you please help me to edit.

after creating the wall boundary my boundary file look like this,

12
(
outlet
{
type patch;
nFaces 6400;
startFace 6276800;
}
inlet
{
type patch;
nFaces 6400;
startFace 6283200;
}
top2
{
type wall;
nFaces 16000;
startFace 6289600;
}
top1
{
type wall;
nFaces 2400;
startFace 6305600;
}
top0
{
type wall;
nFaces 8000;
startFace 6308000;
}
center1
{
type wall;
nFaces 16000;
startFace 6316000;
}
center0
{
type wall;
nFaces 8000;
startFace 6332000;
}
OR
{
type wall;
nFaces 16000;
startFace 6340000;
}
OL
{
type wall;
nFaces 16000;
startFace 6356000;
}
FAN
{
type wall;
nFaces 7200;
startFace 6372000;
}
IFR
{
type wall;
nFaces 8000;
startFace 6379200;
}
IFL
{
type wall;
nFaces 8000;
startFace 6387200;
}
)


in that I am able to see the "patch" to "cyclic" but how to do "wall" to "cyclic"


can you please guide me.


Thanks and Regards,
Sivakumar

sivakumar October 8, 2012 14:57

Hi Guys,
I have solved the problem, Its simple issue.
I didn’t edit the 0 folder files according to my boundary file.
after editing the 0 folder files, now I am able to see the mesh in paraFoam.

Thank you very much for your help.

soon i will come with another problem.

thank you guys,
Sivakumar

syn1993530 March 29, 2017 04:09

please help me to sort out this problem
 
Create time



--> FOAM FATAL IO ERROR:
cannot open file

file: /home/syn/solids4foamphilip/tutorials/nonLinGeomSolidFoam/plateHole/system/system/controlDict at line 0.

From function regIOobject::readStream()
in file db/regIOobject/regIOobjectRead.C at line 61.

FOAM exiting

__________________________________________________ ___________________________

please help me to sort out this problem,

And what are the further steps I need to follow?

Thank you,
SYN

JulienS March 29, 2017 04:16

Are you trying to lauch FluentMeshToFoam from your system folder?
That can explain that it cannot find the "controlDict" located in a "system/system/" folder. You have to lauch fluentMeshToFoam from the root of your case.

syn1993530 March 29, 2017 04:31

Thank you for your help.And I have lauch FluentMeshToFoam from my system folder.However, it still exist this problem.


syn@syn-Lenovo:~$ fe32
syn@syn-Lenovo:~$ cd /home/syn/solids4foamphilip/tutorials/nonLinGeomSolidFoam/plateHole/system/
syn@syn-Lenovo:~/solids4foamphilip/tutorials/nonLinGeomSolidFoam/plateHole/system$ fluentMeshToFoam 1.msh
/*---------------------------------------------------------------------------*\
| ========= | |
| \\ / F ield | foam-extend: Open Source CFD |
| \\ / O peration | Version: 3.2 |
| \\ / A nd | Web: http://www.foam-extend.org |
| \\/ M anipulation | For copyright notice see file Copyright |
\*---------------------------------------------------------------------------*/
Build : 3.2-334ba0562a2c
Exec : fluentMeshToFoam 1.msh
Date : Mar 29 2017
Time : 16:31:08
Host : syn-Lenovo
PID : 3648
CtrlDict : "/home/syn/solids4foamphilip/tutorials/nonLinGeomSolidFoam/plateHole/system/system/controlDict"
Case : /home/syn/solids4foamphilip/tutorials/nonLinGeomSolidFoam/plateHole/system
nProcs : 1
SigFpe : Enabling floating point exception trapping (FOAM_SIGFPE).

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



--> FOAM FATAL IO ERROR:
cannot open file

file: /home/syn/solids4foamphilip/tutorials/nonLinGeomSolidFoam/plateHole/system/system/controlDict at line 0.

From function regIOobject::readStream()
in file db/regIOobject/regIOobjectRead.C at line 61.

FOAM exiting

syn@syn-Lenovo:~/solids4foamphilip/tutorials/nonLinGeomSolidFoam/plateHole/system$

JulienS March 29, 2017 04:56

Maybe my previous advice was not clear enough.
You cannot launch FluentMeshToFoam from the system folder. You have to launch it from the root of your case!


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