The Envyo application implements an equation parser based on the Shunting yard algorithm and is available as an MIT license [6]. This equation parser has been modified to work with common LS-DYNA application variables such as histories, eff. plast. strains, stresses, temperatures, etc. Variables are declared, using the & symbol and commands are executed in the order of input. The following variables are available:
| &HISV#i |
History variable at position i. |
| &EPS |
Effective plastic strain (the last entry in *INITIAL_STRESS_SHELL which may have a different meaning than eff. plast. strain). |
| &ELELENGTH |
Element length of the current element. |
| &SIG_IJ |
Components of the second order stress tensor. |
| &SIG_INIT | Enables initializing a specific stress value that refers to all stress components. |
| &T | Enables modifying temperature initial values or curves stored on nodes. |
| &ADD ELE HISV#i | Element history variable from file i will be used. |
| &LookupTable#1 | Lookup table from file i will be used. |
| exp | Exponent. An alternative input would be e**. |
The following example illustrates the usage of the equation parser in combination with the lookup tables. The commands following the additional history and lookup table definition are executed in the order of input:
| &HISV#i | History variable at position i. |
| &EPS | Effective plastic strain (the last entry in *INITIAL_STRESS_SHELL which may have a different meaning than eff. plast. strain). |
| &ELELENGTH | Element length of the current element. |
| &SIG_IJ | Components of the second order stress tensor. |
| &SIG_INIT | Enables initializing a specific stress value that refers to all stress components. |
| exp | Exponent. An alternative input would be e**. |
Example
The following example illustrates the usage of the equation parser. The commands following the additional history are executed in the order of input:
&HISV#4 = abs(&HISV#3-&HISV#2)*0.000467354 &HISV#8 = &HISV#2 &HISV#9 = &ELELENGTH MAX_NUM_HISV = 8
The value of history variable #4 is calculated using the absolute value of history #3 - #2, times a scale factor. Following these operations, the history variable #8 is assigned the value at history variable #2, and the element length will be stored at history variable #9. Only eight history variables will be written to the final result file due to MAX_NUM_HISV.
The temperature stored on nodes as fixed initial values and/or curves as tempertature over time are transferred from Celsius degrees to Kelvin degrees.