<div dir="ltr">Figured out the cause of the problems. Here's a corrected version, split into two files (more on why below):<div><br></div><div><div>/*********************************************************************</div>
<div> *</div><div> * Minimal crack example: crack2.geo</div><div> *</div><div> *********************************************************************/</div><div><br></div><div>// Characteristic length made large so the number of elements is small</div>
<div>lc = 1;</div><div><br></div><div>// Point: X, Y, Z coordinates, & characteristic length setting elt size</div><div>Point(1) = {0, 0, 0, lc} ;</div><div>Point(2) = {1, 0, 0, lc} ;</div><div>Point(3) = {1, 1, 0, lc} ;</div>
<div>Point(4) = {0, 1, 0, lc} ;</div><div><br></div><div>// Lines defined by lists of numbers:</div><div>Line(1) = {1, 2} ;</div><div>Line(2) = {2, 3} ;</div><div>Line(3) = {3, 4} ;</div><div>Line(4) = {4, 1} ;</div><div>
Line(5) = {1, 3} ;</div><div><br></div><div>// Line loops to construct surfaces</div><div>Line Loop(1) = {1, 2, -5} ;</div><div>Line Loop(2) = {5, 3, 4} ;</div><div><br></div><div>// Surfaces for meshing</div><div>Plane Surface(1) = {1} ;</div>
<div>Plane Surface(2) = {2} ;</div><div><br></div><div>Physical Point(13) = {1, 3};</div><div>Physical Line(105) = {5} ;</div><div>Physical Surface(201) = {1} ;</div><div>Physical Surface(202) = {2} ;</div></div><div><br>
</div><div>// End of file: crack2.geo</div><div><br></div><div><div>// File: crack2a.geo, for post-processing crack2.msh</div><div><br></div><div>// Duplicate nodes around Line 5; a mock crack</div><div>Plugin(Crack).Dimension = 1 ;</div>
<div>Plugin(Crack).PhysicalGroup = 105 ;</div><div>Plugin(Crack).OpenBoundaryPhysicalGroup = 13 ;</div><div>Plugin(Crack).Run ;</div></div><div><br></div><div>// End of file: crack2a.geo</div><div><br></div><div>Having split the file into two parts, to process the mesh correctly and noninteractively:</div>
<div><br></div><div><div>Geoffs-MacBook-Pro:~ goxberry$ gmsh crack2.geo -2</div><div>Info    : Running 'gmsh crack2.geo -2' [Gmsh 2.8.4, 1 node, max. 1 thread]</div><div>Info    : Started on Wed May 14 03:16:00 2014</div>
<div>Info    : Reading 'crack2.geo'...</div><div>Info    : Done reading 'crack2.geo'</div><div>Info    : Meshing 1D...</div><div>Info    : Meshing curve 1 (Line)</div><div>Info    : Meshing curve 2 (Line)</div>
<div>Info    : Meshing curve 3 (Line)</div><div>Info    : Meshing curve 4 (Line)</div><div>Info    : Meshing curve 5 (Line)</div><div>Info    : Done meshing 1D (0.000626 s)</div><div>Info    : Meshing 2D...</div><div>Info    : Meshing surface 1 (Plane, Delaunay)</div>
<div>Info    : Meshing surface 2 (Plane, Delaunay)</div><div>Info    : Done meshing 2D (0.000716925 s)</div><div>Info    : 5 vertices 14 elements</div><div>Info    : Writing 'crack2.msh'...</div><div>Info    : Done writing 'crack2.msh'</div>
<div>Info    : Stopped on Wed May 14 03:16:00 2014</div><div><br></div><div>Geoffs-MacBook-Pro:~ goxberry$ gmsh crack2.msh crack2a.geo -2</div><div>Info    : Running 'gmsh crack2.msh crack2a.geo -2' [Gmsh 2.8.4, 1 node, max. 1 thread]</div>
<div>Info    : Started on Wed May 14 03:16:13 2014</div><div>Info    : Reading 'crack2.msh'...</div><div>Info    : 5 vertices</div><div>Info    : Vertex numbering is dense</div><div>Info    : 8 elements</div><div>
Info    : Done reading 'crack2.msh'</div><div>Info    : Reading 'crack2a.geo'...</div><div>Info    : Running Plugin(Crack)...</div><div>Info    : Done running Plugin(Crack)</div><div>Info    : Done reading 'crack2a.geo'</div>
<div>Info    : Meshing 1D...</div><div>Info    : Done meshing 1D (7e-06 s)</div><div>Info    : Meshing 2D...</div><div>Info    : Done meshing 2D (2.09808e-05 s)</div><div>Info    : 8 vertices 10 elements</div><div>Info    : Writing 'crack2.msh'...</div>
<div>Info    : Done writing 'crack2.msh'</div><div>Info    : Stopped on Wed May 14 03:16:13 2014</div></div><div><br></div><div>Basically, what happened was:</div><div><br></div><div>- post-processing plugins seem to be run first in an input file; since these directives appear to be processed first, if there are no other input files, no physical groups have been defined, hence the errors I was seeing</div>
<div>- if nonzero, OpenBoundaryPhysicalGroup must contain the points (when Dimension = 1; probably lines when Dimension = 2) on the boundary of the physical group being duplicated with the Crack plugin</div><div>- to post-process a mesh non-interactively, run an input file without post-processing commands to obtain a mesh, then merge the output .msh file with an input file containing the post-processing directives (see above)</div>
<div><br></div><div>Hope this helps anyone Googling for help; I couldn't find any examples for the Crack plugin when I searched around. Running the commands interactively was also a big help in debugging.</div><div><br>
</div><div>Cheers,</div><div><br></div><div>Geoff</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, May 13, 2014 at 10:59 AM, Geoff Oxberry <span dir="ltr"><<a href="mailto:goxberry@gmail.com" target="_blank">goxberry@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">The following .geo file describes what I am trying to do:<div><br><div><br></div><div><div><div>/*********************************************************************</div>
<div> *</div><div> * Minimal crack example</div>
<div> *</div><div> *********************************************************************/</div><div><br></div><div>// Characteristic length made large so the number of elements is small</div><div>lc = 1;</div><div><br></div>

<div>// Point: X, Y, Z coordinates, & characteristic length setting elt size</div><div>Point(1) = {0, 0, 0, lc} ;</div><div>Point(2) = {1, 0, 0, lc} ;</div><div>Point(3) = {1, 1, 0, lc} ;</div><div>Point(4) = {0, 1, 0, lc} ;</div>

<div><br></div><div>// Lines defined by lists of numbers:</div><div>Line(1) = {1, 2} ;</div><div>Line(2) = {2, 3} ;</div><div>Line(3) = {3, 4} ;</div><div>Line(4) = {4, 1} ;</div><div>Line(5) = {1, 3} ;</div><div><br></div>

<div>// Line loops to construct surfaces</div><div>Line Loop(1) = {1, 2, -5} ;</div><div>Line Loop(2) = {5, 3, 4} ;</div><div><br></div><div>// Surfaces for meshing</div><div>Plane Surface(1) = {1} ;</div><div>Plane Surface(2) = {2} ;</div>

<div><br></div><div>Physical Line(105) = {5} ;</div><div>Physical Surface(201) = {1} ;</div><div>Physical Surface(202) = {2} ;</div><div><br></div><div>// Duplicate nodes around Line 5; a mock crack</div><div>Plugin(Crack).Dimension = 1 ;</div>

<div>Plugin(Crack).PhysicalGroup = 1 ;</div><div>Plugin(Crack).OpenBoundaryPhysicalGroup = 1 ;</div><div>Plugin(Crack).Run ;</div></div><div><br></div><div>// End of file</div><div><br></div><div>However, when I try to mesh this geometry, I get an error during the processing:</div>

<div>Physical group 105 (dimension 1) is empty</div><div><br></div><div><div>Geoffs-MacBook-Pro:~ goxberry$ gmsh crack.geo -2</div><div>Info    : Running 'gmsh crack.geo -2' [Gmsh 2.8.4, 1 node, max. 1 thread]</div>

<div>Info    : Started on Tue May 13 10:52:25 2014</div><div>Info    : Reading 'crack.geo'...</div><div>Info    : Running Plugin(Crack)...</div><div>Error   : Physical group 105 (dimension 1) is empty</div><div>Info    : Done running Plugin(Crack)</div>

<div>Info    : Done reading 'crack.geo'</div><div>Info    : Meshing 1D...</div><div>Info    : Meshing curve 1 (Line)</div><div>Info    : Meshing curve 2 (Line)</div><div>Info    : Meshing curve 3 (Line)</div><div>

Info    : Meshing curve 4 (Line)</div><div>Info    : Meshing curve 5 (Line)</div><div>Info    : Done meshing 1D (0.000602 s)</div><div>Info    : Meshing 2D...</div><div>Info    : Meshing surface 1 (Plane, Delaunay)</div>
<div>
Info    : Meshing surface 2 (Plane, Delaunay)</div><div>Info    : Done meshing 2D (0.000666142 s)</div><div>Info    : 5 vertices 14 elements</div><div>Info    : Writing 'crack.msh'...</div><div>Info    : Done writing 'crack.msh'</div>

<div>Info    : Stopped on Tue May 13 10:52:25 2014</div></div><div><br></div><div>How should I correct my input file so it duplicates the nodes along Physical Line 105 (equivalently, Line 5)?</div><div><br></div><div>Thanks,</div>

<div><br></div><div>Geoff</div><span class="HOEnZb"><font color="#888888"><div><br></div>-- <br><div dir="ltr"><span></span>Geoffrey Oxberry, Ph.D., E.I.T.<br><a href="mailto:goxberry@gmail.com" target="_blank">goxberry@gmail.com</a><br>
<span></span></div>
</font></span></div></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr"><span></span>Geoffrey Oxberry, Ph.D., E.I.T.<br><a href="mailto:goxberry@gmail.com" target="_blank">goxberry@gmail.com</a><br><span></span></div>

</div>