Multiparameter sweep

Launches several simulations covering all combinations of parameters values as indicated by the user. If, for example, our model has 2 parameters with the following default values, p1=10 and p2=100; and we want to perturb them as:

- p1: 2 iterations of ±5% perturbation
  - 10*(1-5/100) = 9.5
  - 10*(1+5/100) = 10.5
- p2: 3 iterations of ±10% perturbation
  - 100*(1-10/100) = 95
  - 100
  - 100 *(1+10/100) = 110

This will result in 6 iterations (2 values for p1 and 3 for p2). The corresponding simulations will be:

- Simulation 1: p1 = 9.5, p2 = 90
- Simulation 2: p1 = 9.5, p2 = 100
- Simulation 3: p1 = 9.5, p2 = 110
- Simulation 4: p1 = 10.5, p2 = 90
- Simulation 5: p1 = 10.5, p2 = 100
- Simulation 6: p1 = 10.5, p2 = 110
- Simulation 7: p1 = 10, p2 = 100 (a standard unperturbed run is always included)

Known limitations

Only parameters and variables of type Real are recognized. Renamings like 'type MyType = Real' are not supported either.

Arrays of any type are also not yet supported.