<expression>

Creates an expression that can be called from a data type or other expression.

Input

id
Unique expression ID
args
Comma-separated list of input variables

Parent

<analysis>

Example

<expression id="MeanStress" args="p1;p3;answer">
    <attributes description="To calculate mean Stress"
 short_label="MeanStress" bind="ELEM"
 format="scalar" visible="true" >
        <arg id="p1" description="Principal major(P1)"
       rtype="VALUE" etype="ELEM" vtype="SCALAR"
       type="table"/>
        <arg id="p3" description="Principal minor(P3)"
       rtype="VALUE" etype="ELEM" vtype="SCALAR"
       type="table"/>
        <arg id="answer" description="Alternating Stress"
       rtype="VALUE" etype="ELEM" vtype="SCALAR"
       type="table"/>
    </attributes>

    <define id="const" format="scalar" bind="elements"/>
    <call name="Add" lhs="@p1" rhs="@p3" answer="@answer" />
    <call name="Constant" value="2" table="const" />
    <call name="Divide" lhs="@answer" rhs="const" 
answer="@answer"/>
</expression>

<expression id="PartAreaExpr" args="aggregate,answer">
    <call name="Area" elems="elements"                                        
                   coords="subcase[0]::coordinates"

Comments

  1. All expression IDs must be unique in the analysis.
  2. An expression ID must not conflict with the built-in operator.
  3. Arguments are de-referenced by the '@' character.
  4. An expression can have an optional attributes child element which allows the expression to be called from the HyperView Expression Builder. The attributes block is optional, and is used to describe the output of the expression (must contain an argument called answer), and the input types and their descriptions.
  5. f an expression calls another expression, the called expression must occur before the caller in the XML file.
  6. An expression can be hidden from the Expression Builder by changing the visible attribute to “false”.
  7. The <arg> element must contain an ID, description, and type attribute (“table” or “string”).
  8. The <arg type=”table” /> form requires ID, description, rtype (record type), etype (entity type), vtype (value type).
  9. The <arg type=”string” /> form requires ID, description, value (along with type). Default values can be specified by setting value to a non-empty string.