STFunc-expressionWorks with VSimBase, VSimEM, VSimPD, VSimPA, and VSimMD licenses.
Function that can be defined by an arbitrary mathematical expression.
expression (string)Expression to be evaluated, involving the arithmetic operators + (addition), - (subtraction), * (multiplication), / (division), and ** (exponentiation), and the below functions of position and/or time:
| Function | Mathematical Description | General Description |
|---|---|---|
| pow(x,y) | \(x^y\) | exponential, arbitrary base |
| exp(x) | \(e^x\) | exponential, base \(e\) |
| sin(x) | \(\sin\left(x\right)\) | sine |
| cos(x) | \(\cos\left(x\right)\) | cosine |
| tan(x) | \(\tan\left(x\right)\) | tangent |
| asin(x) | \(\arcsin\left(x\right)\), \(x \in \left[-1,1\right]\) | inverse sine |
| acos(x) | \(\arccos\left(x\right)\), \(x \in \left[-1,1\right]\) | inverse cosine |
| atan(x) | \(\arctan\left(x\right)\), \(x \in \left[-\pi/2,\pi/2\right]\) | inverse tangent |
| atan2(y,x) | \(\arctan\left(y/x\right)\); \(x\) and \(y\) not both 0, | inverse tangent, returns angles in correct quadrant |
| \(x=0\) returns \(\pm \pi/2\) | ||
| sinh(x) | \(\sinh\left(x\right)\) | hyperbolic sine |
| cosh(x) | \(\cosh\left(x\right)\) | hyperbolic cosine |
| tanh(x) | \(\tanh\left(x\right)\) | hyperbolic tangent |
| ln(x) | \(\log_e\left(x\right)\) | logarithm, base \(e\) |
| log(x) | \(\log_e\left(x\right)\) | logarithm, base \(e\) |
| log10(x) | \(\log_{10}\left(x\right)\) | logarithm, base \(10\) |
| mod(x,y) | \(x - \lfloor x/y \rfloor y\) | floating point remainder |
| inv(x) | \(-x\) | additive inverse |
| H(x) | \(H\left(x\right)=\left\{\begin{array}{lr}0 & , x<0\\0.5 & , x=0\\1 & , x>0\end{array}\right.\) | Heaviside step function |
| J0(x) | \(J_0\left(x\right)\) | Bessel function of the first kind, order 0 |
| J1(x) | \(J_1\left(x\right)\) | Bessel function of the first kind, order 1 |
| J2(x) | \(J_2\left(x\right)\) | Bessel function of the first kind, order 2 |
| J3(x) | \(J_3\left(x\right)\) | Bessel function of the first kind, order 3 |
| abs(x) | \(\left|x\right|\) | absolute value |
| sqrt(x) | \(\sqrt{x}\) | square root |
| rand(x) | uniform random number in \(\left[0, 1\right)\), independent of \(x\) | |
| gauss(x,y) | Gaussian random number with standard deviation \(x\) and mean \(y\) | |
| ceil(x) | \(\lceil x \rceil\) | smallest integer not less than x |
| floor(x) | \(\lfloor x \rfloor\) | largest integer not greater than x |
| min(x,y) | \(x\) if \(x \le y\), else \(y\) | minimum |
| max(x,y) | \(x\) if \(x \ge y\), else \(y\) | maximum |
<STFunc component0>
kind = expression
expression = 100.*sin(2.0e9*t)
</STFunc>