[CIG-SHORT] How to mesh an interior small surface?
Charles Williams
willic3 at gmail.com
Mon Apr 30 15:31:30 PDT 2018
Hi Tu,
Your first option works for me using Trelis 16.5. What version of Cubit/Trelis are you using?
Here’s the mesh quality information (I haven’t done any smoothing yet):
quality volume all condition no. global draw histogram draw mesh
Tet quality, 40492714 elements:
Condition No. ranges from 1.000e+00 to 2.776e+00 (40492714 entities)
Red ranges from 2.523e+00 to 2.776e+00 (7 entities)
Magenta ranges from 2.269e+00 to 2.523e+00 (17 entities)
DkYellow ranges from 2.015e+00 to 2.269e+00 (164 entities)
Yellow ranges from 1.761e+00 to 2.015e+00 (8650 entities)
Green ranges from 1.508e+00 to 1.761e+00 (1064716 entities)
Cyan ranges from 1.254e+00 to 1.508e+00 (8111154 entities)
Blue ranges from 1.000e+00 to 1.254e+00 (31308006 entities)
Volume 1 Tet quality, 40492714 elements:
------------------------------------
Function Name Average Std Dev Minimum (id) Maximum (id)
----------------- --------- --------- -------------- -------------
Condition No. 1.182e+00 1.262e-01 1.000e+00 (24410247) 2.776e+00 (16856351)
------------------------------------
Journaled Command: quality volume all condition no. global draw histogram draw mesh
Of course, this is quite a large mesh. I think you are eventually going to want to use a sizing function to reduce the mesh size.
Cheers,
Charles
p.s. In my version of Trelis, the size assigned to surface 7 remains at 10 m; however, depending on your version number, it is possible that the surface 7 size could be overridden by the ‘volume all’ statement. I would reverse the order of those two commands.
> On 29/04/2018, at 8:34 PM, tu xiang <tuxiang2016 at outlook.com> wrote:
>
> Hi,
> I have constructed an ellipsoid magma chamber in a volume:
> # -*- Python -*- (syntax highlighting)
> # ----------------------------------------------------------------------
> # ----------------------------------------------------------------------
> # Set units to SI.
> # ----------------------------------------------------------------------
> #{Units('si')}
> #
> # ----------------------------------------------------------------------
> # Reset geometry and turn undo off.
> # ----------------------------------------------------------------------
> reset
> undo off
> #
> # ----------------------------------------------------------------------
> # Create magma chamber.
> # ----------------------------------------------------------------------
> #{chamber_center_x=0.0*m}
> #{chamber_center_y=0.0*m}
> #{chamber_center_z=-380.0*m}
> #{chamber_radius=50.0*m}
> #{phi=250}
> #{alpha=10}
>
> # Create sphere, then move it to proper location.
> create sphere radius {chamber_radius}
> volume 1 move x {chamber_center_x} y {chamber_center_y} z {chamber_center_z}
> volume 1 scale x 5 y 1 z 1
> #rotate volume 1 about z {phi}
> body all rotate {alpha} about y
> body all rotate {phi} about z
>
> # ----------------------------------------------------------------------
> # Create box defining domain.
> # ----------------------------------------------------------------------
> #{domain_x=3.0*km}
> #{domain_y=3.0*km}
> #{domain_z=3.0*km}
> #{domain_center_x=0.0}
> #{domain_center_y=0.0}
> #{domain_center_z=-0.5*domain_z}
>
> # Create box, then move it to correct position.
> brick x {domain_x} y {domain_y} z {domain_z}
> volume 2 move x {domain_center_x} y {domain_center_y} z {domain_center_z}
>
> # ----------------------------------------------------------------------
> # Chop cylinder with sphere, then delete sphere.
> # ----------------------------------------------------------------------
> chop volume 2 with volume 1
> delete volume 3
>
> # ----------------------------------------------------------------------
> # Imprint and merge all volumes.
> # ----------------------------------------------------------------------
> merge all
>
> # ----------------------------------------------------------------------
> # Compress ID's.
> # ----------------------------------------------------------------------
> compress ids all
>
> I adopted the following two meshing methods to generate grid mesh.
> First:
> # ----------------------------------------------------------------------
> # Assign sizes to different regions and define meshing scheme.
> # ----------------------------------------------------------------------
> #{min_size=10.0*m}
> #{int_size=20.0*m}
>
> surface 7 size {min_size}
> volume all size {int_size}
>
> volume all scheme tetmesh
>
> # ----------------------------------------------------------------------
> # Generate the mesh.
> # ----------------------------------------------------------------------
> mesh surface all
> mesh volume all
>
> Second:
> ${dx=15.0*m}
> volume all size {dx}
> volume all scheme tetmesh
> mesh surface all
> mesh volume all
>
> Although I vary the values of min_size, int_size, dx, the trelis reports that:
> Poor Quality Tet Generated!
> (For example, the shape metric for Tet 1405 is 0.031918 .)
> The threshold for a Tet is 0.200000
> Deleting invalid mesh.
> To retain the invalid mesh next time, set keep invalid mesh on.
> ERROR: Volume 1 (Volume 1) meshing unsuccessful.
>
> I also failed to mesh the volume with Sizing Functions (Skeleton Sizing).
>
> I would like to know is there any methods to solve the problem?
>
> Hope someone would give me some help.
>
> Best regards,
>
> Tu Xiang
> _______________________________________________
> CIG-SHORT mailing list
> CIG-SHORT at geodynamics.org <mailto:CIG-SHORT at geodynamics.org>
> http://lists.geodynamics.org/cgi-bin/mailman/listinfo/cig-short <http://lists.geodynamics.org/cgi-bin/mailman/listinfo/cig-short>
Charles Williams I Geodynamic Modeler
GNS Science I Te Pῡ Ao
1 Fairway Drive, Avalon 5010, PO Box 30368, Lower Hutt 5040, New Zealand
Ph 0064-4-570-4566 I Mob 0064-22-350-7326 I Fax 0064-4-570-4600
http://www.gns.cri.nz/ <http://www.gns.cri.nz/> I Email: C.Williams at gns.cri.nz <mailto:your.email at gns.cri.nz>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.geodynamics.org/pipermail/cig-short/attachments/20180501/74ea268f/attachment-0001.html>
More information about the CIG-SHORT
mailing list