[CIG-SHORT] Pylith - Variable mesh resolution in a CUBIT volume with a cavity

Brad Aagaard baagaard at usgs.gov
Fri Sep 16 08:08:07 PDT 2016


Lucas,

Did you generate the background mesh with the exact same geometry (all 
exterior and interior vertices, edges, surfaces, and volumes) as your 
"final" mesh? In other words, does the background mesh that you use to 
generate the sizing function have the spherical cavity?

Regards,
Brad


On 09/16/2016 06:24 AM, Lucas Holden wrote:
> Hi
>
> I am hoping to get some advice on the use of variable mesh resolution
> when the volume (block) has a spherical cavity within it (e.g.
> representing a magma chamber or dike). I have been using the
> meshing/cubit_cellsize example provided. The example runs successfully
> using the provided geometry.jou, and py files etc for the surface fault
> scenario.
>
> I am stumbling when I try to insert a spherical cavity at the centre of
> the block to represent a magma chamber. My edited geometry file is shown
> below. I have not altered the provided mesh_cellsize.jou,
> exodus_add_properties.py, matprops.spatialdb or mesh_size_analyticfn.jou
> files (as yet).
>
> When I compile the mesh_size_analyticfn.jou file in CUBIT, the software
> lists the following errors.
>
> //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
>
> //home/lucas/PyLith/pylith-2.1.0-linux-x86_64/src/pylith-2.1.0/examples/meshing/edited_cubit_cellsize/mesh_size_analyticfn.jou
> (9)/
>
> //
>
> /Command: volume all sizing function type exodus/
>
> //
>
> /ERROR:
> /home/lucas/PyLith/pylith-2.1.0-linux-x86_64/src/pylith-2.1.0/examples/meshing/edited_cubit_cellsize/mesh_size_analyticfn.jou
> (9)/
>
> //
>
> /nodal sizing data population failed - no storage mesh present./
>
> //
>
> /ERROR:
> /home/lucas/PyLith/pylith-2.1.0-linux-x86_64/src/pylith-2.1.0/examples/meshing/edited_cubit_cellsize/mesh_size_analyticfn.jou
> (9)/
>
> //
>
> /Unable to assign an Exodus sizing function./
>
> //
>
> /
> /
>
> ////
>
> //home/lucas/PyLith/pylith-2.1.0-linux-x86_64/src/pylith-2.1.0/examples/meshing/edited_cubit_cellsize/mesh_size_analyticfn.jou
> (10)/
>
> //
>
> /Command: surface all sizing function type exodus/
>
> //
>
> /ERROR:
> /home/lucas/PyLith/pylith-2.1.0-linux-x86_64/src/pylith-2.1.0/examples/meshing/edited_cubit_cellsize/mesh_size_analyticfn.jou
> (10)/
>
> //
>
> /nodal sizing data population failed - no storage mesh present./
>
> //
>
> /ERROR:
> /home/lucas/PyLith/pylith-2.1.0-linux-x86_64/src/pylith-2.1.0/examples/meshing/edited_cubit_cellsize/mesh_size_analyticfn.jou
> (10)/
>
> //
>
> /Unable to assign an Exodus sizing function./
>
>
> //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
>
> I have watched the relevant CIG workshop youtube videos (2013,2014) on
> variable meshing etc, however have not been able to find a solution. Is
> this related to there being no 'nodes' in the chamber for which to
> calculate the distance to for the analytical function etc or something
> simpler in my geometry.jou setup?
>
> I am grateful for any advice.
>
> Thanks
>
> Lucas
>
> //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /# Set units to SI./
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /${Units('si')}/
>
> //
>
> /#/
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /# Reset geometry./
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /reset/
>
> //
>
> /
> /
>
> //
>
> /# Make sure undo is off to prevent errors in stitching volumes./
>
> //
>
> /undo off/
>
> //
>
> /
> /
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /# Create block/
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /# Block is 100 km x 100 km x 50 km/
>
> //
>
> /${blockLength=100.0*km}/
>
> //
>
> /${blockWidth=100.0*km}/
>
> //
>
> /${blockHeight=50.0*km}/
>
> //
>
> /
> /
>
> //
>
> /brick x {blockLength} y {blockWidth} z {blockHeight}/
>
> //
>
> /# Translate block so the top is at z=0/
>
> //
>
> /volume 1 move x {domain_x} y {domain_y} z {-0.5*blockHeight}/
>
> //
>
> /
> /
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /# Create magma chamber./
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /#{chamber_center_x=domain_x}/
>
> //
>
> /#{chamber_center_y=domain_y}/
>
> //
>
> /#{chamber_center_z=-10.0*km}/
>
> //
>
> /#{chamber_radius=4*km}/
>
> //
>
> /
> /
>
> //
>
> /create sphere radius {chamber_radius}/
>
> //
>
> /volume 2 move x {chamber_center_x} y {chamber_center_y} z
> {chamber_center_z}/
>
> //
>
> /
> /
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /# Chop cylinder with sphere, then delete sphere./
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /chop volume 1 with volume 2/
>
> //
>
> /delete volume 3/
>
> //
>
> /
> /
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /# Imprint all volumes, merging surfaces/
>
> //
>
> /# ----------------------------------------------------------------------/
>
> //
>
> /imprint all/
>
> //
>
> /merge all/
>
> //
>
> /compress ids all/
>
> //
>
> /
> /
>
> //
>
> /# End of file/
>
>
> //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
>
>
> _______________________________________________
> CIG-SHORT mailing list
> CIG-SHORT at geodynamics.org
> http://lists.geodynamics.org/cgi-bin/mailman/listinfo/cig-short
>



More information about the CIG-SHORT mailing list