<div dir="ltr">Hello,<div><br></div><div>Attached is the file with the tests I ran on it. I attempted to create a custom macro to connect the surfaces, but got issues with duplicates entities. It might require separate For Loops instead of nested. Everything is the comments of the .GEO file</div><div><br></div><div>Thanks to you Florian, for presenting an interesting challenge</div></div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><font face="'courier new', monospace">-------------------------<br><b>Félix Salazar</b><br><a href="mailto:felix.a.salazar@gmail.com" target="_blank">felix.a.salazar@gmail.com</a></font><br><div><span style="font-family:'courier new',monospace">-------------------------<br></span></div></div></div>
<br><div class="gmail_quote">On Fri, Apr 22, 2016 at 3:15 AM, Florian Hoffmann <span dir="ltr"><<a href="mailto:florian.hoffmann@inutech.de" target="_blank">florian.hoffmann@inutech.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    Dear Felix,<br>
    <br>
    thanks a lot for your efforts and detailed information.<br>
    Its a pity, but what can one do if the feature is just not
    supported.<br>
    <br>
    Would you mind sending me the modified .geo file please ?<br>
    <br>
    Thank you.<br>
    <br>
    Best regards,<br>
    <br>
    Florian<div><div class="h5"><br>
    <br>
    <div>Am 21.04.2016 um 17:56 schrieb Felix
      Salazar:<br>
    </div>
    <blockquote type="cite">
      <p dir="ltr">Hello again,</p>
      <p dir="ltr">I might be wrong, but unless there's an experimental
        Extrude feature that allows tapered/extrusion, I don't think it
        is possible. You could write directly to Christophe to check
        this, and maybe suggest the feature, if it's not already under
        development.</p>
      <p dir="ltr">What I did is this:<br>
        * avoid Extrude. Commented the lines in your .GEO.<br>
        * use a dilate on a duplicate of the original circle, setting
        the Geometry. CopyMeshMethod=1, so it is also transfinite<br>
        * Added manually the lines, surfaces and volumes, setting them
        transfinite.</p>
      <p dir="ltr">I only did it with one quadrant, on the GUI. But it
        is probably possible to obtain the vertex and line numbers of
        the copied/dilated surface using a combination of the array[ ]
        and probably the Boundary{ } function.</p>
      <p dir="ltr">I won't be as elegant as your current script, though.</p>
      <p dir="ltr">Good luck</p>
      <div class="gmail_quote">On Apr 21, 2016 11:12 AM, <a href="mailto:felix.a.salazar@gmail.com" target="_blank"></a><a href="mailto:felix.a.salazar@gmail.com" target="_blank">felix.a.salazar@gmail.com</a>
        wrote:<br type="attribution">
        <blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
          <p dir="ltr">Dear Florian,</p>
          <p dir="ltr">That's a very nice .GEO file. Very organized. The
            problem is the dilation. When you Extrude the entities,
            you're assigning those entities mesh information. Then, you
            modify the geometry, it no longer remains connected. The
            lines, determined by the position of the vertex, looks
            correct. But if you show the geometrical surfaces, they are
            still the ones created with the extrusion, with the
            exception of the dilated one. Hence, when gmsh reach a
            surface whose mesh coordinates are known from the geometry,
            i.e. the one opposite to the extrusion, it finds
            discrepancies.</p>
          <p dir="ltr">I look at the documentation, and to my knowledge,
            there's no option that could easily help you. Even if you
            remove the Layers and create an unstructured mesh, just as a
            test, would cause errors, at least in my gmsh version.</p>
          <p dir="ltr">I'm thinking of an alternative. Let me do some
            test and I'll get back to you.</p>
          <p dir="ltr">Sorry for the delay. Time zones I guess...</p>
          <div class="gmail_quote">On Apr 21, 2016 4:48 AM, "Florian
            Hoffmann" <<a href="mailto:florian.hoffmann@inutech.de" target="_blank">florian.hoffmann@inutech.de</a>>
            wrote:<br type="attribution">
            <blockquote style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
              <div bgcolor="#FFFFFF" text="#000000"> Dear Felix,<br>
                <br>
                thank you very much for your quick response.<br>
                Please find attached a simplified example highlighting
                my problem.<br>
                It is a simple cylinder with an internal block
                structure. The 3D geometry is obtained by extruding
                several surfaces (=blocks for hexaeder meshing).
                Extrusion is done in line 161 of the *.geo file.<br>
                With the variable 'withDilate' in line 186 one can
                switch on/off the dilate command I was trying to obtain
                the frustum-like outline with.<br>
                I also attached two screenshot showing my problem when
                meshing: On the left hand side there is the cylinder
                (Extrude only) and on the right hand side one can see
                the conical frustum (Extrude+Dilate) but one can also
                see the problem with the mesh.<br>
                If you could point me to the bits that I would have to
                change/add in order to make this work, that would be
                really really making my day.<br>
                <br>
                Thank you very much.<br>
                <br>
                Best regards,<br>
                <br>
                Florian
                <div><br>
                  <br>
                  <br>
                  <br>
                  <br>
                  <div>Am 21.04.2016 um 06:18 schrieb Felix Salazar:<br>
                  </div>
                  <blockquote type="cite">
                    <p dir="ltr">Hello,</p>
                    <p dir="ltr">I did something similar not too long
                      ago. My geometry had a basic structure, and for
                      different cases, the angles and lengths of the
                      sections varied. Just make sure that Extrude
                      ReturnLateralEntities option is on, and check the
                      contents of the extruded array.  Start with the
                      B->C extrusion only, and make sure that you're
                      using the Layers option in the extrusion, to get
                      your structured mesh. Depending on your options,
                      you might need to explicitly recombine your
                      elements to get hexas. Could we see your .GEO
                      file? Just from the B-B surface to the extrusion?
                      You can remove the details of the A-A section, to
                      protect IP</p>
                    <div class="gmail_quote">On Apr 20, 2016 5:47 PM,
                      "Florian Hoffmann" <<a href="mailto:florian.hoffmann@inutech.de" target="_blank">florian.hoffmann@inutech.de</a>>

                      wrote:<br type="attribution">
                      <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                        <div style="word-wrap:break-word">Dear all,
                          <div><br>
                          </div>
                          <div><br>
                          </div>
                          <div>I would like to generate a block
                            structured hexaeder-only-3D-mesh for a
                            geometry consisting of several conical
                            frustums. Something like this:<br>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div>  __________ </div>
                            <div>  \                 /</div>
                            <div>   |               |<br>
                                  \             / <br>
                                   |           |          </div>
                            <div>C_|           | _ C      <br>
                                   \          /            ^  extrude
                              B->C<br>
                              B _ \____/  _ B    _|_</div>
                            <div>A _  |___|   _ A</div>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div>Section A-A has a non-circular
                              cross-section, and section B-B and all
                              others above have circular cross-section.
                              I successfully created A-A and the
                              circular cross-section B-B. Both consist
                              of several surfaces/blocks (see attached
                              picture). In my *.geo script I try to work
                              with variables. There I collect the IDs of
                              all surfaces forming the cross-section B-B
                              (= the bottom of the first conical
                              frustum) in an array
                              (=cross_section_BB_surfaces[]).
                              Nevertheless, when I try to Extrude+Dilate
                              these surfaces in order to build the first
                              conical frustum (=B-B -> C-C), during
                              meshing I get several errors about „Could
                              not find extruded vertex …“ .
                              Extrusion-only of B-B to C-C (without
                              Dilate) works fine, but this would just
                              give me a cylinder outline and it is not
                              what I want.</div>
                            <div>Since I need a block structured mesh
                              and also because A-A has a non-circular
                              cross-section (see bottom plane of
                              geometry in attached picture) I would
                              really like to make use of the extrude
                              command for creation of C-C and the other
                              frustum above.</div>
                            <div><br>
                            </div>
                            <div>(1) Is there a way to make this work
                              (without having to create all frustums
                              including their blocked structure by hand)
                              ?</div>
                            <div><br>
                            </div>
                            <div>(2) If not, can anybody think of a
                              solution for how to script this in an
                              efficient and handable way ?</div>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div>Thanks a lot.</div>
                            <div><br>
                            </div>
                            <div>Cheers Flo</div>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div><br>
                            </div>
                            <div><img src="cid:part4.01020805.07050209@inutech.de" height="710" width="1262"></div>
                          </div>
                          <br>
                          <br>
                          <div>
                            <div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
                              <div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
                                <div style="color:rgb(0,0,0);letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;word-wrap:break-word">
                                  <div>
                                    <div style="margin:0in 0in 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:x-small;font-family:Arial"><span style="font-size:10pt" lang="DE">Mit freundlichen
                                          Grüßen<br>
                                          --</span></span><strong><strong><span><span style="font-size:12pt" lang="FR"><br>
                                              Dr.-Ing. Florian Hoffmann</span></span></strong></strong><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">inuTech

                                        GmbH                   </span><span style="font-family:Helvetica;font-size:12px">Phone    : <a href="tel:%2B49-%280%29911-323843-22" value="+4991132384322" target="_blank">+49-(0)911-323843-22</a></span><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">Fuerther

                                        Strasse 212         Fax        :
                                        <a href="tel:%2B49-%280%29911-323843-43" value="+4991132384343" target="_blank">+49-(0)911-323843-43</a></span><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">90429

                                        Nuernberg               E-Mai l
                                          :<span> </span></span><a href="mailto:florian.hoffmann@inutech.de" target="_blank"></a><a href="mailto:florian.hoffmann@inutech.de" target="_blank">florian.hoffmann@inutech.de</a><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">Germany

                                                                 
                                         Internet  : </span><a href="http://www.inutech.de" target="_blank"></a><a href="http://www.inutech.de" target="_blank">http://www.inutech.de</a><br style="font-family:Helvetica;font-size:12px">
                                      <br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">inuTech

                                        GmbH</span><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">Sitz

                                        / Registered Office: Nuernberg</span><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">Handelsregister

                                        / Companies' Register: AG
                                        Nürnberg HRB Nr. 19026</span><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">Geschäftsführer

                                        / Managing Director: Frank Vogel</span><br style="font-family:Helvetica;font-size:12px">
                                      <br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">*****************************************************************</span><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">DIFFPACK

                                        - THE NEW GENERATION OF
                                        SIMULATION-SOFTWARE!</span><br style="font-family:Helvetica;font-size:12px">
                                      <br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">Go

                                        to </span><a href="http://www.diffpack.com" style="font-family:Helvetica;font-size:12px" target="_blank"></a><a href="http://www.diffpack.com" target="_blank">http://www.diffpack.com</a><span style="font-family:Helvetica;font-size:12px"> to read the details</span><br style="font-family:Helvetica;font-size:12px">
                                      <span style="font-family:Helvetica;font-size:12px">*****************************************************************</span></div>
                                  </div>
                                </div>
                              </div>
                            </div>
                          </div>
                          <br>
                        </div>
                        <br>
                        _______________________________________________<br>
                        gmsh mailing list<br>
                        <a href="mailto:gmsh@onelab.info" target="_blank">gmsh@onelab.info</a><br>
                        <a href="http://onelab.info/mailman/listinfo/gmsh" rel="noreferrer" target="_blank">http://onelab.info/mailman/listinfo/gmsh</a><br>
                        <br>
                      </blockquote>
                    </div>
                  </blockquote>
                  <br>
                </div>
                <pre cols="72"><font color="#888888">-- 
Mit freundlichen Grüßen
--
Dr.-Ing. Florian Hoffmann
inuTech GmbH            Phone    : <a href="tel:%2B49-%280%29911-323843-22" value="+4991132384322" target="_blank">+49-(0)911-323843-22</a></font><div>
Fuerther Strasse 212    Fax      : <a href="tel:%2B49-%280%29911-323843-43" value="+4991132384343" target="_blank">+49-(0)911-323843-43</a>
90429 Nuernberg         E-Mai l  : <a href="mailto:florian.hoffmann@inutech.de" target="_blank">florian.hoffmann@inutech.de</a>
Germany                 Internet : <a href="http://www.inutech.de" target="_blank">http://www.inutech.de</a>

inuTech GmbH
Sitz / Registered Office: Nuernberg
Handelsregister / Companies' Register: AG Nürnberg HRB Nr. 19026
Geschäftsführer / Managing Director: Frank Vogel

*****************************************************************
DIFFPACK - THE NEW GENERATION OF SIMULATION-SOFTWARE!

Go to <a href="http://www.diffpack.com" target="_blank">http://www.diffpack.com</a> to read the details
*****************************************************************
</div></pre>
              </div>
            </blockquote>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <br>
    <pre cols="72">-- 
Mit freundlichen Grüßen
--
Dr.-Ing. Florian Hoffmann
inuTech GmbH            Phone    : <a href="tel:%2B49-%280%29911-323843-22" value="+4991132384322" target="_blank">+49-(0)911-323843-22</a>
Fuerther Strasse 212    Fax      : <a href="tel:%2B49-%280%29911-323843-43" value="+4991132384343" target="_blank">+49-(0)911-323843-43</a>
90429 Nuernberg         E-Mai l  : <a href="mailto:florian.hoffmann@inutech.de" target="_blank">florian.hoffmann@inutech.de</a>
Germany                 Internet : <a href="http://www.inutech.de" target="_blank">http://www.inutech.de</a>

inuTech GmbH
Sitz / Registered Office: Nuernberg
Handelsregister / Companies' Register: AG Nürnberg HRB Nr. 19026
Geschäftsführer / Managing Director: Frank Vogel

*****************************************************************
DIFFPACK - THE NEW GENERATION OF SIMULATION-SOFTWARE!

Go to <a href="http://www.diffpack.com" target="_blank">http://www.diffpack.com</a> to read the details
*****************************************************************
</pre>
  </div></div></div>

</blockquote></div><br></div>