Dear All,
I've solved this problem by dividing my problem domain into
several volumes (each have one element type on its own mesh) and
define each as a different composite. After that I wrote all these
composites in my DOMAIN definition as below:
<DOMAIN>
C[0,1] </DOMAIN>
It may be beneficial (especially for inexperienced Nektar users)
to add an example problem to Nektar's web site about how to deal
with such a situation.
Regards,
Kamil
29.07.2014 11:13 tarihinde, Chris Cantwell yazdı:
Dear
Kamil,
Nektar++ is capable of using a mesh comprising of multiple types
of elements (e.g. tets, prisms and hexes simultaneously). In many
situations this is actually beneficial to the simulation, for
example, in resolving boundary layers using prisms, but filling
the remainder of the domain using tets.
There is no generic way in gmsh to convert all elements of an
existing mesh to be of a specific type. If you want a single type
of element you must design your geometry accordingly (e.g. use
Recombine/transfinite lines where you want quad faces to enforce
prismatic/hex elements).
Cheers,
Chris
On 28/07/14 21:03, Kamil ÖZDEN wrote:
Hi Dr. Moxey,
I also run the script and see the same result. May be it is
possible to
write a script for Gmsh to convert the different element types
into one
type. However, I want to learn the relation of this issue with
Nektar++
before making trials on Gmsh.
So I want to learn the answer of this question: "Is it possible
to
generate a problem in Nektar++ with a mesh including different
element
types (quads+hexas+prisms etc.) or should I always generate a
mesh with
single element type for my problem to convert into .xml and use
in
Nektar++?"
Regards,
Kamil
28.07.2014 20:37 tarihinde, David Moxey yazdı:
Hi Kamil,
I have run Sergey's script and get a mesh of various element
types --
if you look in the Gmsh statistics it should show 48 tets, 8
hexes and
32 prisms.
Thanks,
Dave
On 2014-07-28 18:51, Kamil ÖZDEN wrote:
Hi Sergey,
As far as I understood this is an example script to show
how
hexahedras are converted to tetrahedras and I have to write
like this
kind of a script for each different mesh. Am I right?
Isn't there any way to directly solve this issue (generate
a problem
with a mesh including different element types
(quads+hexas+prisms
etc.)) in Nektar++ without doing modifications in Gmsh?
Regards,
Kamil
28.07.2014 07:09 tarihinde, Sergey Yakovlev yazdı:
Hi Kamil,
You can generate a mesh using gmsh that would contain
hexes, prisms
and tetrahedrals. You can do transition from
hexahedral layer to tetrahedral layer through the layer of
prisms.
Here is an example of gmsh script:
======================================================================
N=2;
Point(1)={-1,-1,0};
bline[]=Extrude{1,0,0}{Point{1};Layers{N};};//prism region
boundary
prism_surf[]=Extrude{0,2,0}{Line{bline[1]};Layers{N};};//prism
region base (meshed with triangles)
prism_vol1[]=Extrude{0,0,1}{Surface{prism_surf[1]};Layers{N};Recombine;};//prism
volume
tet_vol[]=Extrude{0,0,1}{Surface{prism_vol1[0]};Layers{N};};//no
recombine, hence getting tet part
h_side[]={prism_vol1[3],tet_vol[3]};
hex_vol[]=Extrude{1,0,0}{Surface{h_side[0]};Layers{N};Recombine;};//recombine
gives us hexes
prism_vol2[]=Extrude{1,0,0}{Surface{h_side[1]};Layers{N};Recombine;};//recombine
gives us prisms
side1[]={prism_vol1[5],tet_vol[5]};//x=1
side2[]={hex_vol[0],prism_vol2[0]};//x=1
side3[]={hex_vol[3],prism_vol2[3],prism_vol1[4],tet_vol[4]};//y=1
side4[]={hex_vol[5],prism_vol2[5],prism_vol1[2],tet_vol[2]};//y=-1
side5[]={prism_vol2[4],tet_vol[0]};//z=1
side6[]={hex_vol[2],prism_surf[1]};//z=-1
Physical Surface(1)={side1[]};
Physical Surface(2)={side2[]};
Physical Surface(3)={side3[]};
Physical Surface(4)={side4[]};
Physical Surface(5)={side5[]};
Physical Surface(6)={side6[]};
//domain[]={hex_vol[1],prism_vol1[1],tet_vol[1],prism_vol2[1]};
Physical Volume(1111)={hex_vol[1]};
Physical Volume(1112)={prism_vol1[1],prism_vol2[1]};
Physical Volume(1113)={tet_vol[1]};
======================================================================
Save the above to the some_name.geo file and run "gmsh -3
some_name.geo". This should give you the mesh file that
you can later convert to Nektar++ xml format. After that
you just
need to insert initial/boundary conditions, exact
solution, etc.
I've used it for testing with discontinuous Galerkin
Helmholtz
solver and it didn't work, but
it maybe that the prisms are better supported in case of
continuous
Galerkin.
On Sun, Jul 27, 2014 at 6:26 AM, Kamil ÖZDEN
<kamil.ozden.me@gmail.com> wrote:
Dear All,
Is there any way to generate a problem in Nektar++ with
a mesh
including different element types (quads+hexas+prisms
etc.)?
Regards,
Kamil
_______________________________________________
Nektar-users mailing list
Nektar-users@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/nektar-users
[1]
--
Best regards,
Sergey
Links:
------
[1] https://mailman.ic.ac.uk/mailman/listinfo/nektar-users
_______________________________________________
Nektar-users mailing list
Nektar-users@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/nektar-users
_______________________________________________
Nektar-users mailing list
Nektar-users@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/nektar-users
_______________________________________________
Nektar-users mailing list
Nektar-users@imperial.ac.uk
https://mailman.ic.ac.uk/mailman/listinfo/nektar-users