# Warnings

One of the features of the Project Module is the Warnings option. Below is the general layout which you might find if there are errors within your project.

Warnings are generated when the Valispace calculation algorithm detects possible inconsistencies with the current state of the formulas and values it is using. They intend to make you aware of these issues and provide a suggestion for fixing them.

Each warning has a 'code' for reference which is a four-digit number. In general, the following high-level categories of warnings have been identified:

**1000-1999**: various warnings not belonging to other categories**2000-2999**: calculation warning**2100-2199**: unit conversion-related warnings

**3000-3999**: requirements related to warnings**4000-4999**: mode dependency and link matrix warnings

Let’s go through what each of the warnings means in Valispace:

## Warning: 2000

Warning 2000 is created if a Vali with no Valitype has a calculation of children (e.g. soc()) in its formula. Only a Vali with a Valitype should use a calculation of children.

**2000**: 'Vali formula contains calculation of children, but Vali has no type. No children were found.'

## Warnings: 2110, 2115 and 2120

Warnings 2110 and 2120 are created when unit conversion is enabled and the units specified are not in the default unit list or the custom-defined units. See unit conversion for more on the unit conversion logic. They correspond to UndefinedUnitErrors in the Pint library.

Warning 2115 is created when an unsupported unit was entered (for example `%, -, $`

). This Vali will be treated as dimensionless, so the raw value will be used for any calculations. See unit conversion for the list of supported and unsupported units.

**2110**: 'Undefined unit specified for this Vali'

**2115**: 'Unsupported unit specified for this Vali'

**2120**: 'Using Vali with undefined unit'

## Warnings: 2150 and 2160

Warning 2150 is created when unit conversion is enabled and the dimensionality of the units inside a formula does not match (for example you try to add meters to kilograms).

Warning 2160 is created when the dimensionality of the formula result does not match with the unit of the Vali itself (for example you add two Valis in meter and the result Vali has a unit of a kilogram).

See unit conversion for more on the unit conversion logic. They correspond to DimensionalityErrors in the Pint library.

**2150**: 'Dimensionality error in the formula'

**2160**: 'Dimensionality error between formula and unit'

## Warnings: 3100 and 3200

Warning 3100 is created when the worst-case positive value is above the maximum user-defined requirement.

Warning 3200 is created when the worst-case negative value is below the minimum user-defined requirement.

**3100**: 'Worst case positive value is above the maximum requirement'

**3200**: 'Worst case negative value is below the minimum requirement'

## Warnings: 4000 and 4010

Warning 4000 is created when there are missing links between the modelists.

Warning 4010 is created when the formula of a Vali that is not mode dependent refers to a Vali that is mode dependent. This can in many cases leads to unexpected calculation results.

**4000**: 'There is a missing link between modelists'

**4010**: 'This Vali is using {name}, which is a mode-dependent Vali.',

'This Vali has children which are mode-dependent Valis.',

'this Vali is using a mode-dependent Vali in its formula, should it also be mode dependent?'.

Example: mode dependent power consumption.

In this example, the Fan component has a power consumption Vali that is a single value whereas its children components, Motor and speed_controller have PowerConsumption matrices that are mode-dependent. The Fan power consumption has a standard sum of children’s formula. However, which mode of its children should it account for?

The recommended way to fix this is to make the Fan power consumption mode dependent. The ‘modes' page explains how to do this. Then a link can be made between the Fan and its children’s modes.