Mask reversed element mark does not work?

Altair Forum User
Altair Forum User
Altair Employee
edited October 2020 in Community Q&A

Hi there,

I'm a bit confused. I was successfully using masked elements in my scripts for quite a while but now something is wrong. I created a new database in Abaqus template (see below). And executed the following code:

*createmark elements 1 6*createmark elements 1 reverse*maskentitymark elements 1 0
SURPRISE: No (!) elements are displayed !?!

Can somebody please try and verify that I don't have a problem with my installation - thanks!

Abaqus Input-File test.inp:

**** ABAQUS Input Deck Generated by HyperMesh Version  : 8.0SR1** Generated using HyperMesh-Abaqus Template Version : 8.0sr1****   Template:  ABAQUS/STANDARD 3D***NODE         1,  0.0            ,  0.0            ,  0.0                     2,  20.0           ,  0.0            ,  0.0                     3,  40.0           ,  0.0            ,  0.0                     4,  60.0           ,  0.0            ,  0.0                     5,  0.0            ,  30.0           ,  0.0                     6,  0.0            ,  20.0           ,  0.0                     7,  0.0            ,  10.0           ,  0.0                     8,  60.0           ,  30.0           ,  0.0                     9,  60.0           ,  20.0           ,  0.0                    10,  60.0           ,  10.0           ,  0.0                    11,  20.0           ,  10.0           ,  0.0                    12,  20.0           ,  20.0           ,  0.0                    13,  20.0           ,  30.0           ,  0.0                    14,  40.0           ,  20.0           ,  0.0                    15,  40.0           ,  10.0           ,  0.0                    16,  40.0           ,  30.0           ,  0.0            *ELEMENT,TYPE=S4,ELSET=test         1,         1,         2,        11,         7         2,         7,        11,        12,         6         3,         6,        12,        13,         5         4,         9,        14,        15,        10         5,        10,        15,         3,         4         6,        14,        12,        11,        15         7,        15,        11,         2,         3         8,         8,        16,        14,         9         9,        16,        13,        12,        14*SHELL SECTION, ELSET=test, MATERIAL=tst_mat5.0       ,**HWCOLOR COMP          1    31*MATERIAL, NAME=tst_mat*DENSITY11.1      ,0.0       *ELASTIC, TYPE = ISOTROPIC7777.7     ,0.3       ,0.0       *****
Tagged:

Welcome!

It looks like you're new here. Sign in or register to get started.

Answers

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited January 2008

    try

    hm_createmark elements 1 advanced reverse
  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited January 2008

    try

    hm_createmark elements 1 advanced reverse

    already did that - no difference ...

    tried mark 2 instead of mark 1; tried hm7 and hm8; tried short form (elems) instead of elements; tried all combinantions of hm_createmark and *createmark - NO difference ...

    it's awkward: when using this code with bigger, older hm-databases everything works as it should!?!

    so I think I have to find a workaround maybe something with hm_tabletomark and hm_tabledifference ...

    any suggestions?

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited January 2008

    I think the issue is with '*maskentitymark elements 1 0'. if you put a 'hm_getmark elems 1', before the *maskentitymark command, it shows all the elements but number 6.

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited January 2008

    Hi Cesar,

    the hm_getmark trick did not work. I want to display element 6 and only element 6 ...

    I'm doing a workaround for the reversed mark now, which is slower but works every time:

    proc isolateElems {eIDs} {    eval *createmark elements 1 $eIDs    hm_marktotable elements 1 Selection    *clearmark elements 1    *createmark elements 1 all    hm_marktotable elements 1 MaskEntities    *clearmark elements 1    hm_tabledifference MaskEntities Selection    hm_tabletomark MaskEntities 1 1    *maskentitymark elements 1 0    hm_tableclear Selection    hm_tableclear MaskEntities}isolateElems 6

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited January 2008

    have you look into the '*marknotintersection' command

    Obtains everything but the intersection between two marks and stores everything but the intersection in the first passed mark.

    *createmark elements 1  1 2 3 4*createmark elements 2  4 5 6 7*marknotintersection elements 1 elements 2 *deletemark elements 1 
  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited February 2008

    No I've never noticed the *marknotintersection before - it's nice - still: would be more convenient for me if the mask reverse algorithm would work proper in all cases. because it's the same thing I would do on the HM GUI: select elems reverse the selection and mask them ...

    but thanks for your advice!

Welcome!

It looks like you're new here. Sign in or register to get started.

Welcome!

It looks like you're new here. Sign in or register to get started.