Parameter Operators and Functions
Parameter types of integer, real, and array may be any valid arithmetic expression. Valid expressions consist of the operators +, -, *, /, ^ (for power), parentheses, a set of built-in functions and a set of built-in or user-assigned variables, specified by the ASSIGN command.
- Abs(x)
- Absolute value of x
- Acos(x)
- Principal value of arc cosine of x
- Asin(x)
- Principal value of arc sine of x
- Atan(x)
- Principal value of arc tangent of x
- Atan2(x,y)
- Principal value of arc tangent of y/x
- Ceil(x)
- Smallest integer greater than or equal to x
- Cos(x)
- Cosine of x
- Cosh(x)
- Hyperbolic cosine of x
- Env("s")
- Import environment variables
- Exp(x)
- Exponential of x
- Floor(x)
- Largest integer not greater than x
- Log(x)
- Natural log of x
- Log10(x)
- Base-ten log of x
- Max(x,y)
- Maximum of x and y
- Min(x,y)
- Minimum of x and y
- Mod(x,y)
- Remainder of x/y
- Pow(x,y)
- Value of x raised to the power of y (equivalent to x^y)
- Sin(x)
- Sine of x
- Sinh(x)
- Hyperbolic sine of x
- Sqrt(x)
- Square root of x
- Tan(x)
- Tangent of x
- Tanh(x)
- Hyperbolic tangent of x
- E
- 2.7182818284590452
- PI
- 3.1415926535897931
- EPS
- Machine precision, typically 2.2204460492503131E-16
ASSIGN {
variable = SHIFT
value = Sin (PI/8 + Asin(.3) )
}
MULTIPLIER_FUNCTION( "shifted half sin" ) {
type = cubic_spline
curve_fit_variable = time
curve_fit_values = { 0.0, SHIFT + Sin(0.0*PI) ;
0.1, SHIFT + Sin(0.1*PI) ;
...
1.0, SHIFT + Sin(1.0*PI) ; }
}
cshell-prompt> setenv INLET_VELOCITY 20
SIMPLE_BOUNDARY_CONDITION( "inlet" ) {
...
x_velocity = Env( "INLET_VELOCITY" )
This feature may be combined with any valid arithmetic expression as described above.
foreach vel ( 5 10 15 20 )
echo "Processing velocity " $vel " ..."
setenv INLET_VELOCITY $vel
acuRun
acuTrans -out -to stats > STATS.$vel
end
bash-prompt> PROBLEM="channel"
COORDINATE {
coordinates = Read( Env("PROBLEM") . ".crd" )
}
COORDINATE {
coordinates = Read( "channel.crd" )
}
bash-prompt> EXT="crd"
COORDINATE {
coordinates = Read( Env("PROBLEM") . "." . Env("EXT") )
}