🎉Community Raffle - Win $25

An exclusive raffle opportunity for active members like you! Complete your profile, answer questions and get your first accepted badge to enter the raffle.
Join and Win

Mask reversed element mark does not work?

User: "Altair Forum User"
Altair Employee
Updated by Altair Forum User

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       *****

Find more posts tagged with

Sort by:
1 - 6 of 61
    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    try

    hm_createmark elements 1 advanced reverse
    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    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?

    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    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.

    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    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

    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    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 
    User: "Altair Forum User"
    Altair Employee
    OP
    Updated by Altair Forum User

    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!