Input File
To access a user-defined function in AcuTrace, you must reference it in the input file.
USER_EQUATION( "energy" ) {
num_variables = 1
user_values = {5.0, 0.015}
user_string = {"test"}
type = evolve
}
This user equation command defines a user equation with one component governed by an evolution equation. The right hand side of the evolution equation is found by evaluating usrEner. Note that the value of the user_function parameter is exactly the name of the function (routine) used in the C program written by you. The parameters user_values and user_strings are used to pass parameters to the user function. In this example, two floating-point numbers and one string are passed to the function. The order of these parameters is preserved, for example the first user value is 5.0 and the second is 0.015.
particle = massless
user_equations = {energy}
}
USER_EQUATION_INITIAL_CONDITION (energy) {
particle_seed = seeds
user_equation = energy
type = constant
constant_values = { 10.0 }
}
Note that the value of the user_equation parameter in the USER_EQUATION_INITIAL_CONDITION command is the qualifier used in the USER_EQUATION command, not the name of the C function.
AUTO_SOLUTION_STRATEGY {
max_time = 0.0
max_segments = 10000
}
TIME_SEQUENCE {
...
staggers = {particle, energy}
...
}
STAGGER(energy) {
equation = user_equation
user_equation = energy
}
If the user equation is not so referenced, it simply retains its initial values throughout the analysis. See the AcuTrace Command Reference Manual for more details on the inputs for user-defined functions.