4. Files fixed#
Order catalog:
from.commons import*
from.. language.DataStructure import*
from.. language.Syntax import*
CONV_MAIL_MED = MACRO (
name=" CONV_MAIL_MED ",
op= OPS ("code_aster.macrocommands.conv_mail_med_ops.conv_mail_med_ops"),
sd_prod=table_sdaster,
reentrant="n",
fr=tr ("Convert a ASTER, GMSH, or GIBI mesh to the MED format. "),
UNITE_IN = SIMP (status="o", typ="I"),
FORMAT_IN = SIMP (status="f", typ=" TXM ", typ=" ", default=" ASTER ", into =(" ASTER "," GIBI "," GMSH "," ")),
UNITE_OUT = SIMP (status="f", typ="i", default=80),
INFO = SIMP (status="f", typ="I", into =( 1, 2), default=1),
)
Body of the macro command code_aster/macrocommands/conv_mail_med_ops.py
:
from.Cata.Syntax import _F
from.. codeCommands import CREA_TABLE, IMPR_RESU, LIRE_MAILLAGE
from.. Messages import UTMESS
def conv_mail_med_ops (self, UNITE_IN,, FORMAT_IN,, UNITE_OUT, **args):
"" "Convert a mesh from ASTER, GMSH, or GIBI format to MED format and
Return some mesh properties.
Arguments:
**args (dict): User's keywords.
Returns:
Table: Object containing some characteristics of the mesh.
"""
args = _F (args)
info = args.get (" INFO ", 1)
INFO is mandatory so:
# info = args [" INFO "]
# or adding INFO in arguments also works
# print the information message
UTMESS ("I", "MESH_1 ", valk= FORMAT_IN, vali =( UNITE_IN, UNITE_OUT))
# read the input mesh
mesh = LIRE_MAILLAGE (FORMAT = FORMAT_IN, UNITE = UNITE_IN, INFO =info)
# write the mesh into a MED file
IMPR_RESU (FORMAT =" MED ", UNITE = UNITE_OUT, RESU =_F (MAILLAGE =mesh))
# extract some mesh characteristics
nbnodes = mesh.getNumberOfNodes ()
nbcells = mesh.getNumberOfCells ()
# fill the output table
tab = CREA_TABLE (
LISTE =(
_F (PARA =( "NB_NOEUDS ",),), LISTE_I =( nbnodes,)),
_F (PARA =( "NB_MAILLES ",),), LISTE_I =( nbcells,)),
)
)
Return Tab