Home / Monte Carlo / Model Building / Validate Model
Validate Model¶
From Excel click...
QXL Monte Carlo New > Design > Create/Modify Design Sheet > Validate Model
Answers one question about the marked workbook: will a simulation of this model run in the fast engine, or will Excel have to recalculate the whole workbook on every trial, and if Excel, exactly why.
There is no dialog and nothing to set. It runs on the workbook as it stands and stores nothing.
Why it matters¶
The report states the reason itself, in the product's own words:
Quantum XL evaluates a simulation one of two ways: with Excel's own calculation engine, or with the Quantum XL Banyan-Tree Math Parser, which is more than 100 times faster.
Every formula in the model has to be translated before the fast engine can run it. If even one cannot be, the whole model falls back to Native Mode, where each trial is a full Excel recalculation. Validate Model tells you that before you start a long run rather than after.
What it does¶
- Reads the markings and traces the workbook, then builds the engine's copy of the model.
- If any formula was refused, that is the whole answer and no simulation is run. The engine could not compile the model, so there is nothing numeric left to check.
- If every formula translated, it runs one short simulation. That is not for the trials: the comparison against Excel only happens inside a prepared run, so a run is the only way to make it.
The four results¶
| Result | What it means |
|---|---|
Result: this model runs in the Quantum XL Banyan-Tree Engine (Fast Mode). |
the model translated and agreed with Excel. Nothing to fix |
Result: this model runs in Native Mode - Excel Calculated Monte Carlo, because the engine cannot compile N of its formulas. |
at least one formula could not be translated. The report names each one |
Result: this model runs in Native Mode - Excel Calculated Monte Carlo, because the engine and Excel did not agree on every value. |
every formula translated, but a value came out different. The report describes the first disagreement |
Result: the model could not be checked. |
the check itself could not be made, and the reason follows on the same line |
Where the answer goes¶
A model that runs in the fast engine gets a message box and no worksheet, because there is no table in that answer. So does a run that failed, and a check that could not be made.
Only a result with something to report gets a worksheet. If there is a refused cell or a
disagreement to show, the report is written to a new sheet called Validate Model.
The report¶
The sheet reads top to bottom. Under the heading is a paragraph naming the reason, then one or both of the sections below.
Cells the engine cannot compile¶
One row per refused formula, with four columns:
| Column | What it holds |
|---|---|
Cell |
where the formula is |
Formula |
the formula itself |
Reason |
why it was refused |
Unsupported Excel functions |
the functions in it the parser does not have |
A formula can be refused for its shape rather than for a function in it, and that row says so instead of leaving the last column blank:
None: this formula was refused for what it is, not for a function in it.
The refusal message for a function names every unsupported function in the formula, not only the first:
The function XLOOKUP is not supported in the Banyan-Tree Math Parser.
The list of functions that do translate is Supported Excel Functions.
Where the engine and Excel disagreed¶
Shown when every formula translated but a value came out different.
The engine describes one disagreement in full, the first it met, and says how many there were altogether. The disagreement is reported at the output, with the formula that produced it.
Reading the result¶
A Native Mode verdict is not an error and the model still runs. It runs slowly, because each trial
is a full Excel recalculation instead of a translated one.
To move a model into the fast engine, change the formulas the report names so they use only supported functions and shapes, then run Validate Model again.
Related¶
- Supported Excel Functions, the functions the parser can compile.
- Mark Input and Mark Output, which define the model this command checks.