IFC Checker

What does the Model Correctness Index mean?

The Model Correctness Index is the share of tested elements that pass, reduced by up to 20 percent when parts of the model are left untested. It runs from 0.00 to 1.00 and always comes with the number of untested elements, because Untested is not Pass.

Find the index on Results

  1. Run a check.
  2. On Results, read the index in the analytical view, and the untested, failed and passed counts under it.
  3. Point at the small i beside the index. A card says what the number is, gives the formula and works it through with this check's own numbers.
  4. If a model-level check fails, read it in the notice under the page title.
  5. If the index is withheld, read the reason in its place.
  6. In a check of several models, find each model's own index in the Model table, and the index for all in its last row (the Model section).

How it is counted

An element is tested when at least one specification of the test applies to it. It passes when it meets every requirement of every specification that applies to it.

  • A specification is one block of the IDS. It says which elements it is about, for example all walls, and what those elements must have. The IDS editor shows a specification as one or more rules.
  • Index = (passed / tested) × (1 − 0.2 × untested / elements).
  • 1,000 elements with 300 failed and 200 untested give 0.60: 500 of the 800 tested elements pass (0.625), and the 200 untested, a fifth of the model, take 4 percent off (0.625 × 0.96 = 0.60).
  • On the sample model, IFC Checker sample checks give 0.79, with 1,219 of 1,245 elements tested.

Failures count in full, unless you mark them as not an issue. Marks you make by hand move the counts and the index, and Failed then also says how many the test found on its own. Untested elements cost something, and approving them for the session takes that cost away.

Several models

A check of several models has one index for all of them: the same formula on the elements of every model together, each model with its own approvals. Each model's own index is in its row of the Model table. The index for all is withheld while a model of the check gave no result, and for the reasons below in any model, except a model where nothing was tested: its elements count as untested.

The untested count under the index

Under the index, Untested says how many elements no specification of the test applies to, and Failed and Passed say how the tested ones did. An element no specification applies to is Untested, never Pass, so an index on a few tested elements says little about the rest of the model. Untested elements lists them, with a line under its index such as "Tested 1,219 of 1,245 elements (98%)".

Two decimals, cut

The index shows two decimals and is cut, never rounded up: 0.9992 shows as 0.99. So 1.00 appears only when every tested element passed and every untested element was approved, or none was left untested.

Model-level checks

Some requirements are about the model as a whole, for example that at least one element of a kind must exist. When one of them fails, is in doubt or warns, the notice under the page title says so, with why. While one of them fails, the index shows at most 0.99, so 1.00 still means everything passed.

When the index is withheld

When a result cannot be trusted as complete, the index is withheld and the reason is shown in its place. The rest of the results still show. The reasons, in this order:

  • part of the model file could not be read;
  • a specification could not be evaluated;
  • the unit of a measured value could not be confirmed, so some results are in doubt;
  • nothing was tested.