Skip to content

Error Messages and Other Simulation Messages

Navigation:
  • Home
  • Error Messages and Other Simulation Messages

Introduction

You get error messages during the simulation with TOP-Energy and can’t get any further? This article describes the errors in more detail and suggests solutions.

If errors occur during the simulation this can have various causes. The most important clue are the error messages and warnings shown in the Simulator message window and in the Simulation form under Metrics → Messages. In contrast to the component-related model messages, the Simulation messages refer to generic and syntactic problems.

If there is a large number of error messages activate the priority view to get an overview (see following figure). On the other hand, if the information is not sufficient you can increase the log level to level 4 (debug).

General Messages

Message:

The simulation has started.

Description:

This message appears immediately after the simulation has started. The message contains a current time stamp.


Message:

TOP-Energy …

Description:

This message appears from log level 4 and indicates the version and release number of the TOP-Energy used.


Message:

The CSV file containing the simulation results was saved.

Description:

A CSV file with the simulation results was saved in the user directory. It contains averages, minima, and maxima for all primitives included in the simulation model.

This functionality can be enabled in the Simulation options menu (to be opened via Advanced settings on the Extras ribbon) under Save simulation results as CSV file.


Message:

The message with ID . . . occured . . . times during the simulation.
Only the first . . . messages were displayed.

Description:

This message appears if another message occurs very frequently. This can happen, for example, in a time-dependent simulation if a certain error occurs in each time step.
To keep the log window clear, the same error is not output unnecessarily often.

Solution proposal:

  • How often one and the same message is output per equation system when solving can be defined in the Simulator window under the tab Settings → Messages → In case of recurrences display identical messages per equation system no more than: . . .
  • Note the previous error messages with the ID shown. Often these have a common cause. Especially the very first error message is of importance.
  • Check if you have selected a log level that is too high by mistake. Typically this should be set to 3 (common) or 4 (debug).

Message:

The simulation was canceled by the user.

Description:

This message appears when the user cancels the simulation.

Message:

The simulation was completed.

Description:

This message appears immediately after the end of the simulation. The message contains a current time stamp.

Message:

TOP-Energy wishes you a Merry Christmas and a Happy New Year … .

Description:

The message appears a few days before Christmas.

Treatment:

  • Do not forget to buy gifts and a Christmas tree in time.
  • Only a few more weeks, then the new TOP-Energy will be released!

Reading Components and Material Models

The components are described in the modeling language PML which has a simple syntax. If this is not observed an error occurs which generally leads to the termination of the simulation. For example, it may be a misspelled unit or a not declared variable used in an equation.

The error message displayed includes a link to the component, the model section, and the line number in which the error occurred.

Message:

The selected simulation node is invalid.

Message:

Reading simulation data of . . .

Description:

Subsequently, all data of the selected simulation, in particular all components and material models used, are read in.


Message:

An undefined variable has been used in the model description.

Description:

An undeclared variable was used in the model equations.

Solution proposal:

  • All variables used must be defined in the declaration section. More information about the syntax is described here.
  • The declaration and use must be case-sensitive.

Message:

A variable with unexpected type was used. Variable: . . .

Message:

A function call is invalid. Please check the syntax of the function. Function: . . .

Description:

An invalid identifier was used in a function call.

Solution proposal:

  • Check the spelling of the function. When you use this function you must take upper and lower case letters into account.
  • If necessary, check the variable on which the function was called. Some functions can only be called on certain variable types (e.g., characteristic curves).
  • The identifiers and syntax for functions can be found in the documentation for the PML.

Message:

A variable is being registered which cannot be associated to any component. It is also not defined in a global context. Variable: . . .

Message:

Internal error: . . .

Message:

You are using a variable with invalid return type. Variable: . . .

Message:

A variable in the declaration was given the type . . . This type is not valid in the model description.

Message:

An error occured while reading the variable . . . The unit . . . of the variable is not valid.

Description:

You have tried to declare a variable whose unit is unknown in Top-Energy.
The unit may not be registered in Top-Energy. This may be the case in particular when units are untypical of industrial energy systems, such as Becquerel [Bq].

Solution proposal:

  • Check the unit of the variable for spelling errors.
  • A complete list of all registered units can be found here.
  • If the correctly written unit is not registered you have the option of expressing the desired unit in SI units.
  • Only the monetary units Euro [EUR] and Cent [ct] are permitted in the modeling.
    These are automatically replaced in the forms by the monetary units selected in the options.

Message:

An error occured while reading the variable . . . The associated unit . . . is not valid.

Description:

You have tried to declare a number with an unknown unit.
The unit may not be registered in Top-Energy. This may be the case in particular when units are untypical of industrial energy systems, such as Becquerel [Bq].

Solution proposal:

  • Check the unit of the variable for spelling errors.
  • A complete list of all registered units can be found here.
  • If the correctly written unit is not registered you have the option of expressing the desired unit in SI units.
  • Only the monetary units Euro [EUR] and Cent [ct] are permitted in the modeling.
    These are automatically replaced in the forms by the monetary units selected in the options.

Message:

Reading simulation data of … .

Description:

This message is displayed immediately before the component is read.

Message:

The variable . . . is repeatedly declared.

Description:

The declared variables must have a unique name within a component.

Solution proposal:

  • Please remove the multiple declared variables or rename them.

Message:

(. . .-)variables cannot be multiplied/divided.
Left hand side: . . . Right hand side: . . .

Description:

Variables of certain types such as DateTime, Duration, Container, or Text cannot be multiplied or divided.

Solution proposal:

  • Variables of type Duration can be converted into a variable of type Number with unit s using the function toNumber(). Multiplication or division is then possible.
  • For variables of type DateTime there are various date functions which return a variable of type Number with the day, month, or year. Multiplication or division with this is possible.
  • For variables of other types, it is not possible to convert them into a number variable. Remove the multiplication or division with these variables.

Message:

. . . is a structural optimization component.

Description:

As soon as there is a structural optimization component in the model, all time steps are coupled with each other in the optimization.
Thus, a large optimization problem is calculated for all time steps, while a small optimization problem is solved for each time step in the operation optimization.

Please use structural optimization components only if you really want to optimize the size of plants and not the operation of the energy system.

Message:

Two expressions are multiplied which were declared as linear.
Expression 1: . . . Expression 2: . . .

Description:

Linear variables must not be multiplied with each other.

Solution proposal:

  • You should represent linear equations in the form \(a_1x_1+\ldots +a_nx_n==a_{n+1}\), where the linear variables \(x_1,\ldots ,x_n\) are of type Number/Binary/Integer and have a corresponding modifier Linear/Steady.
    The coefficients \(a_1,\ldots ,a_{n+1}\) are expressions that do not contain linear variables.
    For linear inequalities, the equals sign is replaced by >= or <=.
  • You can read more about linear models here.

Message:

An expression is divided by a linear variable.
Divident: . . . Divisor: . . .

Description:

In a division, a linear symbol appears in the divisor.

Solution proposal:

  • You should represent linear equations in the form \(a_1x_1+\ldots +a_nx_n==a_{n+1}\), where the linear variables \(x_1,\ldots ,x_n\) are of type Number/Binary/Integer and have a corresponding modifier Linear/Steady.
    The coefficients \(a_1,\ldots ,a_{n+1}\) are expressions that do not contain linear variables.
    For linear inequalities, the equals sign is replaced by >= or <=.
  • You can read more about linear models here.

Message:

Linear expressions must not be potentiated.
Expression 1: . . . Expression 2: . . .

Description:

An attempt was made to potentiate a linear variable. Linear expressions must not be potentiated.

Solution proposal:

  • You should represent linear equations in the form \(a_1x_1+\ldots +a_nx_n==a_{n+1}\), where the linear variables \(x_1,\ldots ,x_n\) are of type Number/Binary/Integer and have a corresponding modifier Linear/Steady.
    The coefficients \(a_1,\ldots ,a_{n+1}\) are expressions that do not contain linear variables.
    For linear inequalities, the equals sign is replaced by >= or <=.
  • You can read more about linear models here.

Message:

Linear expressions cannot be used in . . . expressions.
Expression: . . .

Description:

An attempt was made to use a linear variable in a logical expression, an if-else expression, or a case expression.

Solution proposal:

  • You should represent linear equations in the form \(a_1x_1+\ldots +a_nx_n==a_{n+1}\), where the linear variables \(x_1,\ldots ,x_n\) are of type Number/Binary/Integer and have a corresponding modifier Linear/Steady.
    The coefficients \(a_1,\ldots ,a_{n+1}\) are expressions that do not contain linear variables.
    For linear inequalities, the equals sign is replaced by >= or <=.
  • You can read more about linear models here.

Message:

Reading components and pins.

Description:

In the following, the data of the components and their structural links in the scheme are read.

Message:

An exponent has unit . . . Exponents with units cannot be processed.

Description:

An exponent with a unit was used in an equation. This is not possible because the expression does not have a valid unit.

Solution proposal:

  • Normalize the relevant exponent to a unitless size.
  • For exponents that are variable or non-integer constants, the base should also be unitless.

Message:

The base has a unit . . . In this case, the processing of non-integer exponents is not possible.

Description:

In a potency, the base has a unit and the exponent is variable or a non-integer constant. This is not possible because the expression does not have a valid unit.

Solution proposal:

  • Normalize the base to a unitless size.
  • Alternatively, you can replace the exponent with an integer constant.

Message:

. . . variables cannot be potentiated. The call is: . . . ^ . . .

Description:

Variables of certain types such as DateTime, Duration, Container, or Text cannot be potentiated.

Solution proposal:

  • Variables of type Duration can be converted into a variable of type Number with unit s using the function toNumber(). Potentiation with integer exponents is then possible.
  • For variables of type DateTime there are various date functions which return a variable of type Number with the day, month, or year. This can then be potentiated.
  • For variables of other types, it is not possible to convert them into a Number variable. Remove the potency with these variables.

Message:

The scheme contains more than one Electricity_Tariff_CHP_Surcharge component. Note that these components must apply to separate energy circuits. A balanced component (electric grid and/or electricity demand) must not occur in more than one Electricity_Tariff_CHP_Surcharge component.

Solution proposal:

Message:

An error occured while converting two operands in a comparison. Left hand side: . . . Right hand side: . . .

Description:

In a relation, the units or variable types on both sides are incompatible.

Solution proposal:

  • Check and correct the units.
  • A complete list of all registered units can be found here.
  • Check the variable types on both sides of the relation. Different types such as DateTime, Duration, Container, or Text cannot be processed.

Message:

The right hand value in the assignment to . . . is not convertible into the desired unit. Right hand side: . . .

Description:

In an assignment, the unit of the expression on the right side cannot be converted to the unit of the variable on the left side.

Solution proposal:

  • Check and correct the units.
  • A complete list of all registered units can be found here.

Message:

The unit of the right hand side cannot be converted into the unit of the left hand side in an equation. Left hand side: . . . Unit of left hand side: . . . Right hand side: . . . Unit of right hand side: . . .

Description:

In an equation, the units on both sides are incompatible.

Solution proposal:

  • Check and correct the units.
  • A complete list of all registered units can be found here.

Message:

Expressions cannot be converted into each other in an equation of the linear optimization. Equation: . . .

Description:

In an equation, the units on both sides are incompatible.

Solution proposal:

  • You should represent linear equations in the form \(a_1x_1+\ldots +a_nx_n==a_{n+1}\), where the linear variables \(x_1,\ldots ,x_n\) are of type Number/Binary/Integer and have a corresponding modifier Linear/Steady.
    The different expressions \(a_1x_1,\ldots ,a_nx_n\) and \(a_{n+1}\) must be convertible to the same unit.
  • A complete list of all registered units can be found here.

Message:

The following expressions cannot be processed in an addition. Left hand side: . . . Right hand side: . . .

Description:

The summands of an addition cannot be calculated because their variable types or units are incompatible.

Solution proposal:

  • Check the units and variable types in the individual summands.
  • A complete list of all registered units can be found here.

Message:

The following expressions cannot be processed in a subtraction. Left hand side: . . . Right hand side: . . .

Description:

The operands of a subtraction cannot be calculated because their variable types or units are incompatible.

Solution proposal:

  • Check the units and variable types of the two operands.
  • A complete list of all registered units can be found here.

Message:

The condition of an if-statement is not convertible into a boolean expression. Condition: . . .

Description:

An invalid condition was specified in a section-wise equation.

Solution proposal:

  • Check the syntax used in the condition. Typically, a relation should be used there.
  • More information about sectional equations can be found here.

Message:

Option, Text, and DateTime variables must not be used in subtractions. Expression: . . .

Description:

Variables of certain types like DateTime, Option, or Text cannot be subtracted.

Solution proposal:

  • For variables of type DateTime there are various date functions which return a variable of type Number with the day, month, or year. This can then be subtracted.
  • For variables of other types it is not possible to convert them into a number variable. Remove the subtraction with these variables.

Message:

Parts of an . . .-expression are not convertible into a boolean expression. Left hand side: . . . Right hand side: . . .

Description:

Invalid operands were specified in a logical operation.

Solution proposal:

  • Check the syntax used in the logical expression. Typically, relations should be used there.
  • More information about piecewise equations can be found here.

Message:

Reading and evaluating the model descriptions.

Description:

Subsequently, the model descriptions contained in the various components are read and transferred to an internal format. Here the syntax is checked for correctness.

You can read more about the model description language PML here.

Message:

Error while reading and evaluating the model descriptions.

Description:

An error occurred when reading the model descriptions. Please note previous error messages.

Message:

The block structure of the . . .-statement is wrong.

Description:

The block structure of a userInput, userOutput, or case statement was not adhered to.

Solution proposal:

  • Check the block structure. Each begin . . . statement must have exactly one end . . . statement.
  • The blocks must not be nested within each other.

Message:

Expression contains an unknown modifier.

Message:

You are using an invalid reference. Please check the selection in the form of the component.

Message:

An assignment refers to the unknown variable . . . Right hand side: . . .

Description:

The variable on the left side of an assignment is not declared.

Solution proposal:

  • Please check the declaration of the relevant variable.
  • When using declared variables, upper and lower case must be taken into account.

Message:

You are using an identifier in a state declaration which does not correspond to any pin. Identifier: . . .

Description:

The identifier of a state variable could not be assigned to a pin in the corresponding component.

Solution proposal:

  • Check the name of the state variable. The corresponding component must have a pin that has the same name.
  • The variable names are case-sensitive.
  • You can read more about the connection of material models here.

Message:

Internal error: invalid return type in an assignment.

Message:

Internal error: The expression type of the function . . . could not be found in the symbol table.

Message:

Internal error: Unregistered expression type.

Message:

The function . . . can only be used as statement.

Description:

A function was used in an expression but must be called as an instruction

function name(Arg1, Arg2, . . .);

Solution proposal:

  • Replace the function call with a statement as shown above.
  • The identifiers and syntax for functions can be found in the documentation for the PML.

Message:

The function . . . does not contain the required number of arguments.

Description:

Too many or too few arguments were used in a function call.

Solution proposal:

  • Check the function call. Add missing or remove unnecessary arguments.
  • The identifiers and syntax for functions can be found in the documentation for the PML.

Message:

The argument no. … of the function … does not have the required type or unit. Argument: …

Description:

An argument used in a function call has the wrong type or unit.

Solution proposal:

  • Check the corresponding argument regarding type and unit.
  • The identifiers and syntax for functions can be found in the documentation for the PML.

Message:

The variable … has the same name as a PML-function/subcomponent.

Solution proposal:

  • Check the name of the variable.

Message:

A generate . . . statement contains an unknown variable. Variable: . . .

Description:

In a function for creating a balance equation, a state variable was passed that cannot be assigned.

Solution proposal:

  • Check the spelling of the variable names in the arguments of the generate . . . function.
  • Upper and lower case letters must be taken into account.
  • You can read more about functions for creating balance equations here.

Message:

generate . . . was called without a valid pin. The given pin is: . . .

Description:

Functions for creating balance equations such as generatePinSum, generatePinEquality, generateOutPinEquality, or generateIntensivePropertyBalance can only be used in material models.

Solution proposal:

  • Please check the function call.
  • You can find more about creating balance equations here.

Message:

A generate . . . statement was used in a net containing bidirectional pins.

Description:

A function for creating a balance equation was used in a network with bidirectional pins, but requires directional pins to be evaluated.

Solution proposal:

  • Some functions like generateOutPinEquality or generateIntensivePropertyBalance can only be used in networks with directed pins.
  • You can read more about functions for creating balance equations here
    .

Message:

A Correspondence/setProportion statement is invalid.

Description:

Incompatible units or variable types were used in a Correspondence or setProportion statement.

Solution proposal:

  • In a Correspondence statement, a linear and a non-linear variable must be passed. The units of the variables passed must be convertible into each other.
  • In a setProportion statement, two linear variables and an expression describing the factor between these variables must be passed. The factor must not contain any linear symbols.
    The unit of the first variable must be convertible into the unit of the product resulting from the second variable and the factor.

Message:

Absolute units are used in the section . . . of the component . . . Please use only the relative unit [K] for temperatures in the model.

Description:

No absolute units such as [′degC] or [′K] may appear in a multiplication or division.

Solution proposal:

  • Replace the symbol of the absolute unit by a difference whose result has the corresponding relative unit.
    For example, a temperature T in [′K] should usually be replaced by (T – 0[′K]) or (T – 273.15[′K]).
  • A complete list of all registered units can be found here.

Message:

An equation of the linear optimization does not have a linear structure. Maybe a linear variable in the equation was accidentally not declared as “Linear Number”. Equation: . . .

Description:

Either no linear variables were found in a linear equation or inequation or the equation has the wrong structure.

Solution proposal:

  • Use the equals sign = instead of == if it is an ordinary equation that does not contain linear variables.
  • You should represent linear equations in the form \(a_1x_1+\ldots +a_nx_n==a_{n+1}\), where the linear variables \(x_1,\ldots ,x_n\) are of type Number/Binary/Integer and have a corresponding modifier Linear/Steady.
    The coefficients \(a_1,\ldots ,a_{n+1}\) are expressions that do not contain linear variables.
    For linear inequalities, the equals sign is replaced by >= or <=.

Message:

The initial value . . . cannot be used.

Description:

An error occurred when reading a start value in a variable declaration.

Solution proposal:

  • Please check the specified inital value.
  • More about the declaration of variables with start values can be found here.

Message:

An initial value cannot be used for the variable . . .

Description:

An initial value could not be set because the variable has the wrong type.

Solution proposal:

  • Please check the variable declaration. Initial values can only be used for variables of type Number.
  • More about the declaration of variables with start values can be found here.

Message:

The range . . . cannot be used.

Description:

An error occurred when reading a range of values in a variable declaration.

Solution proposal:

  • Please check the specified value range.
  • More about the declaration of variables with value ranges can be found here.

Message:

A range cannot be used for the variable . . .

Description:

A value range could not be set because the variable has the wrong type.

Solution proposal:

  • Please check the variable declaration. Value ranges can only be used for variables of type Number.
  • More about the declaration of variables with value ranges can be found here.

Message:

A syntactical error occured in the model description.

Description:

A syntax error has occurred in the PML that cannot be identified more precisely.
Component, model section, and line in which the error occurred are also displayed.

Solution proposal:

  • Examine the relevant line for syntax errors. You can read more about the PML syntax here.

Message:

The section . . . of the component . . . contains invalid end if statements. Please use exactly one end if for each if condition.

Description:

Several end if were used in a piecewise equation or assignment.

Solution proposal:

  • Please end each if-else construct with exactly one end if.
  • More on the use of piecewise equations can be found here.

Message:

The function calculateRatio is called on the variable . . . of the component . . . This function will not be supported in future releases. Please use the time series function weightedMean instead.

Description:

In one model the function calculateRatio was used which will no longer be supported in future versions of TOP-Energy.

Solution proposal:

Please replace the call of calculateRatio with a quotient of mean values which can be calculated using the time series function weightedMean().

For example, the call

\(TermOfPayment.calculateRatio(“KWK”, “FLH”,KWK/1[h], FLH/1[h/a]);\)

can be replaced by

\(TermOfPayment := KWK.weightedMean() / FLH.weightedMean();\).

More about the use of time series functions can be found here.

Message:

Some units are missing in section . . . of the component . . . Please insert a compatible unit in square brackets in the declaration when connecting a Number to a primitive.

Description:

In the declaration a Number variable was linked with a primitive. However, no compatible unit was specified.

Solution proposal:

  • Please always specify a unit when declaring Number variables. If the variable is linked to a primitive the specified unit must be compatible with the unit of the primitive.
  • More about linking number variables with primitives can be found here.
  • A complete list of all registered units can be found here.

Message:

Reading and evaluating the material model components.

Description:

Subsequently, the model descriptions contained in the material models are read and transferred to an internal format.

You can read more about the integration of material models here.

Message:

A case-statement cannot be evaluated, since the variable . . . in the condition contains a time series.

Description:

The warning appears if a time series is used in the valuation of a case condition.

Solution proposal:

  • If the case condition is a relation (e.g., a==0) any number variables that occur must not be time-dependent. Otherwise it is impossible to evaluate the condition.
  • Possibly this is a modelling error.
  • You can work around this problem by replacing the input time series with a fixed value.

Message:

Error while reading and evaluating material models.

Description:

An error occurred when reading the material models. Please note previous error messages.

Message:

The simulation model contains one or several structural optimization components. All time steps are viewed simultaneously during optimization.

Description:

As soon as there is a structural optimization component in the model, all time steps are coupled with each other in the optimization.
Thus, a large optimization problem is calculated for all time steps, while a small optimization problem is solved for each time step in the operation optimization.

Please use structural optimization components only if you really want to optimize the size of plants and not only the operation of the energy system.

Reading the Structure and Validating the Input Data

After the PML has been read, the data are transferred to an internal structure. Checks are carried out again, e.g., whether the linked contents (time series, characteristic curves . . .) are consistent with the variable types.

Message:

Generating structure equations.

Description:

Subsequently, the material models are copied to the corresponding pins, and state variables for the pins are generated.

You can read more about the integration of material models here.

Message:

Error while generating the structure equations.

Description:

An error occurred when generating the structure equations for material models. Please note previous error messages.

Message:

During the structural analysis, a pin was found that is not connected to any component. It is assumed that no mass and energy flows are transported across the pin. Name of the pin: . . .

Description:

The warning occurs if a component has different connection options for a material model. As a rule, some connections then remain free.

It is assumed in the simulation that no material flows are transported via the free pins.

A typical example is the selection via different output pins in the Fuel_Tariff_Natural_Gas_Germany of whether the fuel supplied should be taxed or not.

Message:

A connection between the pins . . . and . . . is not possible, since they transport different materials.

Message:

The pin … contains a … declaration. This is not compatible with the pin type.

Message:

A primitive does not exist. Please check the model description. Path of the attribute: . . .

Description:

In the declaration, a variable was linked to a primitive whose path is invalid.

Solution proposal:

  • Please check the path of the primitive in the variable declaration.
  • More about linking number variables, options, and characteristic curves with primitives can be found here.
  • You can read more about the integration of material models via state variables here.

Message:

The units of the PinNumbers … and … are not convertible, even though the corresponding pins are connected by a net.

Solution proposal:

  • Please check the units of the PinNumbers.

Message:

The PinNumbers … and … have different units … and … , even though the corresponding pins are connected by a net. The simulation may run faster if equal units are used.

Message:

At least one pin is not connected to the net. Pin: . . .

Description:

A pin on a component has not yet been connected to a material model. But the connection is absolutely necessary for the simulation.

Solution proposal:

  • Connect the pin to a suitable material model.

Message:

It is not possible to connect the primitive . . . to the . . .-variable . . . of the component . . . because the primitive has a different type or does not exist.

Description:

In the declaration, a variable was linked to a primitive that has an invalid path or type.

Solution proposal:

  • Please check the path of the primitive and the variable type in the declaration. The variable type must be the same as the primitive type.
  • More about linking number variables, options, and characteristic curves with primitives can be found here.

Message:

A reference to a component property model could not be established in a pin variable. Please check the model description if you forgot the state declaration. Name of the variable: . . .

Description:

A serious error has occurred.

Solution proposal:

  • Please check that you have declared the variable with the type State.
  • You can read more about the integration of material models via state variables here.

Message:

A unit cannot be generated from the primitive … because the primitive has the wrong type or does not exist.

Solution proposal:

  • Please check that the primitive with which the control variable is linked is used in the model.
  • More about the use of programmable controls can be found here.

Message:

Connecting a primitive to a variable is not possible. Path of the primitive: . . .

Description:

An attempt has been made to associate a variable with a primitive for which this is not possible.

Solution proposal:

  • Certain variable types, such as Container or Text, cannot be linked to primitives.
  • Please check the variable type and remove the link with the primitive from the declaration if necessary.

Message:

Connecting a primitive to a pin is not possible. Path of the primitive: . . .

Message:

A primitive is already connected to a variable. A second connection will not be established. Path of the primitive: . . .

Description:

An attempt was made to connect a variable with a primitive that is already connected with another variable.

Solution proposal:

  • You can link each primitive to at most one variable.
  • Please check the variable declaration.
  • More about linking number variables, options, and characteristic curves with primitives can be found here.

Message:

It was tried to assign a value to an option primitive in the model description.

Message:

Error while reading the primitive … in the component . . .

Description:

An error occurred when reading a primitive.

Solution proposal:

  • Please check the content of the primitive in the template editor for invalid values or units.
  • You may be able to fix the problem by updating the component.

Message:

The variable . . . of the component . . . has a modifier and has not numeric type. Modifiers are only allowed for numeric types.

Description:

An attempt has been made to set a modifier (Linear/Steady) to the variable . . . of the component . . . that does not have a number type.

Modifiers such as Linear or Steady are used to declare linear variables and are only allowed for variables of type Binary, Integer, or Number.

Solution proposal:

  • Please check the variable type and remove the invalid modifier from the declaration if necessary.
  • More about the declaration of linear variables can be found here.

Message:

The . . . variable . . . of the component . . . has an invalid modifier. Only . . . are allowed.

Description:

The binary/integer variable has an invalid modifier. Only Linear and Steady are allowed.

Message:

Input error of the variable … in the component … : The input value is not defined. The cause is an invalid link, e.g., to the ETA or to the master data.

Description:

The input value is linked to a deleted master data set or a deleted time series and therefore undefined.

Solution proposal:

Specify a new value, a new time series, or a link to an existing master data set for the parameter.

Message:

The function … is used more than once on the characteristic … . This is not allowed.

Message:

The characteristic . . . is used in a function, but contains no values.

Description:

An attempt has been made to evaluate a characteristic curve which contains no values or only one value.

Solution proposal:

  • Check the characteristic curve and enter values if necessary.
  • You can read more about characteristic curves and their use here.

Message:

An invalid interpolation type was used for the characteristic . . . Please use Linear, Step, or Spline.

Description:

The second argument in the getYFromX function, which is optional and describes the type of interpolation, should take one of the values Linear, Step, or Spline. Linear is used by default.

Solution proposal:

  • Please check the function call.
  • More about characteristic curves and characteristic curve functions can be found here.

Message:

The characteristic … consists of more than 5 entries (supporting points). To avoid longer run times, please reduce the number of supporting points.

Message:

Internal error: . . .

Message:

Connecting the primitive . . . to the number. . . of the component. . . is not possible because their units are incompatible.

Description:

In the declaration, the unit of the linked primitive is not compatible with the variable unit.

Solution proposal:

  • If a variable is linked with a primitive, the unit of the variable must be convertible into the unit of the primitive.
  • More about linking number variables with primitives can be found here.
  • A complete list of all registered units can be found here.

Message:

Connecting the primitive . . . to the number . . . of the component . . . is not possible because their ranges are incompatible.

Description:

The value range of a variable specified in the declaration does not overlap with the value range of the linked primitive.

Solution proposal:

  • Please check the specified value range.
  • More about the declaration of variables with value ranges can be found here.

Message:

The target expression . . . is not registered. The term . . . is assigned to other costs.

Description:

An unknown target function contribution was used. This is assigned to other costs.

Solution proposal:

  • Please check the spelling of the target function contribution. Upper and lower case letters must be taken into account.
  • A complete list of all registered target function contributions (target expressions) can be found here.

Message:

The control component . . . is taken into account only when optimizing operating costs. The settings within the component are ignored and the operation of the energy system is optimized.

Description:

The simulation model contains a Priority component. However, the operational optimization is not optimized according to operational costs.

Solution proposal:

  • If the specified priority component is to be used, please use operatinal costs as the target function.
  • You can set the target function for operational optimization in the form of the Simulation node under General under the tab Simulation and optimization.
  • You can find out more about the use of priority here.

Message:

The control component . . . is used with a time frame for optimizing operations. This can lead to wrong results.

Description:

The simulation model contains a Priority. At the same time, a Look-ahead (time frame) is used in operational optimization.

Solution proposal:

  • If the preset priority is to be used you should dispense with a look-ahead time frame. Otherwise it slows down the simulation and can cause erroneous results.
  • You can set the look-ahead time frame for the operational optimization in the simulation ribbon.
  • You can find out more about the use of priority here.

Structure of the Systems of Equations to Be Solved

When large underdetermined systems of equations occur, usually input data have been forgotten. When searching for such forgotten inputs, you should check the Output variables with identifiers under the Unsolvable tab in the Simulator window. Although the simulation is carried out, all output variables are not calculated in underdetermined systems of equations. As a rule, such an incomplete result is useless.

Message:

An equation is redundant and thus not considered when solving the equation system. The equation is: . . .

Description:

A redundancy check is performed before block decomposition, and redundant equations are removed from the model.

In general, these are superfluous mass flow balances in closed circuits.

Message:

Creating equation systems which have to be solved.

Description:

Subsequently, a calculation sequence for the various variables is determined. In particular, it results which variables can be calculated from the input data.

This is done by a block decomposition in which the equations are grouped into small systems of equations (blocks). You can read more about this here.

Message:

Unsolvable (underconstrained) equation systems have been found in the decomposition. Please check the components for missing input data.

Description:

Underdetermined systems of equations have arisen during block decomposition. These cannot be solved.
This can have various causes, such as missing input data or errors in the model.

Solution proposal:

  • In the Simulator window, under Unsolvable, navigate to the under-determined blocks and examine them for missing input data.
    Erroneously forgotten entries appear there in the result variables.
  • For self-created components, missing model equations can cause under-determined blocks.
  • The individual underdetermined blocks are displayed in the message window at log level 4 (debug).
  • More details about the block decomposition and the different block types can be found here.

Message:

An overconstrained block of dimension . . . (variables/equations) has been found in the decomposition.

Description:

The block decomposition resulted in an overdetermined system of equations.
A solution is sought in which all equations are fulfilled in the best possible way.

Solution proposal:

  • Use the link in the message to navigate to the overdetermined block. Check it for unnecessary input data.
    Pay particular attention to whether output data were specified as input by mistake.
  • Overdetermined blocks can also be caused by redundant model equations.
  • You can read more about the block decomposition and the different block types here.

Message:

An underconstrained block of dimension . . . (variables/equations) has been found in the decomposition.

Description:

The block decomposition has resulted in an underdetermined system of equations, which cannot be solved.
This can have various causes, such as missing input data or errors in the model.

Solution proposal:

  • Use the link in the message to navigate to the underconstrained block. Check it for missing input data.
    Erroneously forgotten entries appear there in the result variables.
  • For self-created components, missing model equations can cause underdetermined blocks.
  • You can read more about the block decomposition and the different block types here.

Message:

An underconstrained assignment has been found in the decomposition.

Description:

The block decomposition resulted in an underdetermined allocation. This cannot be resolved.
This can have various causes, such as missing input data or errors in the model.

Solution proposal:

  • Use the link in the message to navigate to the underdetermined assignment. Check it for missing input data.
    Erroneously forgotten entries appear under already calculated variables without value.
  • For self-created components, missing model equations can cause underdetermined blocks.
  • You can read more about the block decomposition and the different block types here.

Message:

The linear equation system is unsolvable. Underconstrained coefficients have been found in the decomposition.

Description:

The block decomposition resulted in underdetermined coefficients in the linear optimization problem.
The optimization problem is only processed if all coefficients of the equations, inequalities, and target function are calculated.

Solution proposal:

  • Using the link in the message, navigate to the block that contains the linear optimization problem. Check it for missing input data.
    Erroneously forgotten entries appear under already calculated variables without value.
  • For self-created components, missing model equations can cause underdetermined coefficients.
  • You can read more about the block decomposition and the different block types here.

Message:

An error occured in the block decomposition. An invalid variable was found.

Message:

The primitive . . . from the input data of the component . . . occurs in an underconstrained block. Please check if you accidentally forgot to input data.

Description:

An underdetermined equation system contains non-existent input data from the form of a component.

Solution proposal:

  • Please check whether you have forgotten the entry by mistake. Enter a value if necessary.
  • You can read more about the block decomposition and the different block types here.

Message:

The primitive … from the output data of the component … occurs in an overconstrained block. Please check if you really want to use the given user input in the output data.

Description:

An overdetermined equation system contains an entry in the output data in the form of a component.

Solution proposal:

  • Please check whether you have accidentally entered the value in the output data and remove it if necessary.
  • You can read more about the block decomposition and the different block types here.

Message:

The variable . . . of the component . . . is extracted from the linear variable . . . by a correspondence.

Description:

The message appears when a result from the linear optimization problem is transferred to the corresponding non-linear variable.

Time Dependency

A typical error are not overlapping periods of the time series. In this case, the simulation period is empty and the simulation is not performed. However, the problem can easily be solved by editing the corresponding time series.

Message:

Determining the simulation time steps.

Description:

This section checks whether input data are available in the form of time series.

In a time-dependent simulation, the simulation period corresponds to the average of the periods of all input time series.

Message:

An error occured while evaluating the time series in the simulation.

Description:

An error occurred while reading the time-dependent input data. Please note the previous error messages.

Message:

The following data values contain time series which are used to determine the simulated time period: . . .

Description:

All time-dependent input data are listed.

In this way it is possible to find time series stored in the project which influence the simulation period.

Message:

The simulated time frame is restricted by a filter.

Description:

The simulation period can be restricted by a filter to a smaller section or a coarser time grid.
The corresponding settings can be found in the filter group of the simulation ribbon.

Solution proposal:

  • If you do not want to use a filter, you can deactivate it by choosing No filter.
  • You can read more about time-dependent simulations here.

Message:

The simulation is time dependent. It consists of . . . time steps in the period . . .

Description:

The message appears if the simulation is time-dependent. The simulation period displayed is helpful for navigating between the individual time steps in the user interface.

Solution proposal:

  • You can read more about time-dependent simulations here.

Message:

The input time series . . . from the component . . . contains . . . empty data points within the simulated time period. No results will be calculated for these time steps.

Description:

The error occurs if input time series contain empty data points within the period to be simulated. At the corresponding times, all simulation results that depend on such a time series cannot be calculated.

Solution proposal:

  • Check all input time series (cooling demand, heat demand, electricity demand . . .) for empty data points and replace them with valid data.
  • You can read more about time-dependent simulations here.

Message:

The input time series … from the component … contains … data points which violate the lower/upper bound.

Message:

The time zones of the input time series do not coincide. The time zone . . . is used for the time dependent simulation results.

Description:

The message appears if the time zones of the input time series differ. The time zone of the time series that was read first is then used for the simulation results.

Solution proposal:

  • Check the time zones of all input time series (cooling demand, heat demand, electricity demand . . .).
  • You can read more about time-dependent simulations here.

Message:

The variables of the simulation system are not defined for a common time period.

Description:

The error occurs if the periods of the input time series do not overlap.

Solution proposal:

  • Check all input time series (cooling demand, heat demand, electricity demand . . .).
    If their time periods do not overlap simulation is not possible.
  • The input time series must be either all abstract or all concrete.

Message:

The simulation is considered time independent, because there is exactly one time step.

Solution proposal:

Message:

The time steps of the input time series do not coincide. Altogether . . . data points were ignored and . . . data points were complemented.

Description:

The warning occurs if the times of the input time series are not identical. The simulation is carried out for the time period in which all time series overlap.
Data points of input time series outside this overlapping period are ignored, and data points missing within this overlapping period are completed by interpolation of the data.

Solution proposal:

Message:

All time steps have been removed by the chosen filter.

Description:

After applying the filter for the simulation period, no points in time remained to be simulated.

Solution proposal:

  • Check the settings of the filter in the group filter of the simulation ribbon. If necessary, you can also deactivate the filter completely with the setting no filter.
  • You can read more about time-dependent simulations here.

Preparation for Solving the Equations

In order to accelerate the subsequent calculation of the results, the previously created systems of equations are symbolically simplified and generated as binary code.

Message:

Simplifying equation systems.

Description:

In the following, the equations from the model descriptions are symbolically simplified.
This makes it possible to calculate the result variables more accurately and faster.

Message:

The simulation requires at least . . . GB available memory.

Description:

At this point it is estimated how much memory the simulation requires. This is particularly important for large simulation models with extensive time series.

Solution proposal:

  • It is recommended not to use significantly more than 8760 time steps in the simulation.

Message:

Generating the binary code.

Description:

For the equations to be solved, C code is generated and executed, which is stored in the user directory in a temp folder as “simalgo*.cpp”.
The character * in the file name is replaced by a unique ID. After the simulation the created files will be deleted.

Message:

Compiler call of the binary code: . . .

Description:

The message shows the exact call to compile the binary code that describes the equations to be solved.

Message:

Linker call of the binary code: . . .

Description:

The message shows the exact call to link the binary code that describes the equations to be solved.

Message:

An internal error occured while loading the DLL of the simulation system.

Message:

Unloading the model library failed.

Message:

Error while generating the binary code.

Description:

The binary code is generated and executed in a temp folder of the user directory. An error occurred.

Solution proposal:

  • Please check whether you have write permissions in your user directory. The path used is approximately C:\Users\$userer name$\AppData\Roaming\TOP-Energy\$EnergyFrames version$\eSim.
  • Restart the simulation. If the error occurs repeatedly, please contact support.

Message:

An error occured when processing the initialization section. The input variable . . . does not have a valid value.

Message:

The solver used in the current strategy was not found. Please check if the correct strategy was chosen.

Calculation of Results

Errors may occur during the calculation of individual blocks, possibly only in a few time steps. Because the systems of equations depend on the results of blocks already calculated, the cause of the error may lie in a previous block. Therefore the navigation over already calculated variables under the tab solvable equations is useful. Some typical errors are listed below:

  • A system of equations does not converge. The error occurs exclusively in systems that are solved numerically.
  • The solution of a system of equations violates an operational limit. In many generating plants, a PML message is generated stating which operating limit was exceeded in which component.
  • A partial load characteristic curve cannot be evaluated for a point. This often occurs as a consequence of exceeded operating limits.
  • A value range is violated. This happens occasionally when calculating states with systems switched off.

Message:

Calculating simulation results . . .

Description:

The message appears when the simulator starts solving the equation systems.
Depending on the size of the simulation model and the number of time steps, this may take some time.

Message:

The value . . . could not be loaded, because its unit is not convertible into the expected unit.

Message:

The value . . . could not be loaded. It has an invalid data status.

Message:

Internal error: . . .

Message:

A value could not be written back into a primitive: . . .

Description:

An error occurred when writing the result of a variable back into the linked primitive.

Solution proposal:

  • Please check the content of the primitive in the template editor for invalid values or units.
  • You may be able to fix the problem by updating the component.

Message:

A value different from zero and one has been calculated for a binary variable. The value is set to True. Variable: . . . Calculated value: . . .

Description:

A value was calculated for a binary variable that is neither zero nor one.

Solution proposal:

  • Please check the equation in which the binary variable is calculated.
  • Possibly it is a subsequent error, and a wrong value has been calculated for one of the variables that occur in the binary variable equation system.
    Navigate to Solvable equations to see for which other variables incorrect values have been determined. Check the input data of all related components.

Message:

A non-integer value has been calculated for an integer variable. The value is rounded to the next integer. Variable: . . . Calculated value: . . .

Description:

A value was calculated for an integer variable that is not an integer.

Solution proposal:

  • Please check the equation in which the integer variable is calculated.
  • Possibly it is a subsequent error, and for one of the variables occurring in the system of equations of the integer variables, an incorrect value was calculated.
    Navigate to Solvable equations to see for which other variables incorrect values have been determined. Check the input data of all associated components.

Message:

An invalid value has been calculated for the variable . . .

Description:

An error occurred while calculating the variable.
Possibly it was divided by zero, or a root with negative radicant was calculated.

Solution proposal:

  • Set the log level to 4 debug. Then occurring null divisions and negative roots are output as warning.
  • For a small system of equations, you can also find the error cause by looking at the solvable equations.
  • Possibly it is a subsequent error and for one of the variables occurring in the system of equations, an incorrect value was calculated.
    By navigating to solvable equations, you can see for which other variables incorrect values have been determined. Check the input data of all related components.

Message:

A calculated variable already has a calculated value. The previous value is kept. Variable: . . . Previous value: . . . Newly calculated value: . . .

Description:

The message appears when a variable that has already been calculated is calculated in the above equation system.

Solution proposal:

  • In the model description, check if the equation that the variable calculates or any other equation is superfluous.

Message:

The equation system is unsolvable. This error is often caused by functions with restricted range.

Description:

A system of equations could not be solved numerically due to an erroneous iteration.

Solution proposal:

  • The error is often triggered by functions with a restricted definition and value range, such as log or sqrt.
    In this case, check the start values of the result variables. These should correspond to a physically meaningful value by which the functions used can be evaluated.
  • Activate the Advanced solution search via the Extras ribbon in the Sulationim section of the Advanced settings.

Message:

The overconstrained equation system does not have a unique solution. This may indicate redundant equations or a nonphysical solution.

Description:

The overdetermined equation system just calculated has several solutions. It is unclear which of the solutions makes physical sense.

Solution proposal:

  • Examine the equation system for superfluous input data.
    Pay particular attention to whether output data were specified as input by mistake.
  • Overdetermined blocks can also be caused by redundant model equations.
    You can read more about the block decomposition and the different block types here.
  • Check the start values of the result variables. These should correspond to a physically meaningful value.

Message:

An error defined in the model occured.

or

A model specific error/warning has occured in component . . . :

Description:

Such a message is generated by the model in the simulation. You should pay attention to the content!

Message:

The overconstrained equation system did not converge. Either it is unsolvable or the initial values are badly chosen.

Description:

The just calculated (overdetermined) partial equation system could not be solved.

Solution proposal:

  • Examine the equation system for superfluous input data.
    In particular, make sure that output data were not mistakenly specified as input.
  • Overdetermined blocks can be caused by redundant model equations.
    You can read more about the block decomposition and the different block types here.
  • Check the start values of the result variables. These should correspond to a physically meaningful value.

Message:

A solution has been found which violates at least one of the equations. The following equation of the system is not satisfied (error: . . .): . . .

Description:

In a numerically solved system of equations only a solution was found which does not fulfill all equations of the system.

Solution proposal:

Message:

A solution has been found which violates at least one of the equations. Because the equation system is overconstrained the solution is nonetheless kept. Please check the input data for inconsistencies. The following equation is not satisfied (error: . . .): . . .

Description:

In an overdetermined system of equations only a solution was found which does not fulfill all equations of the system.

Solution proposal:

  • Examine the equation system for superfluous input data.
    In particular, make sure that output data were not mistakenly specified as input.
  • You can read more about the block decomposition and the different block types here.
  • Check the start values of the result variables. These should correspond to a physically meaningful value.

Warning:

The solution of the equation system is not unique. This may indicate redundant equations or a nonphysical solution.

Description:

The system of equations has several solutions. When solving with the Newton method, it is unclear whether the solution determined makes physical sense.

Solution proposal:

  • Check the start values of the result variables. These should correspond to a physically meaningful value.

Error:

The characteristic . . . cannot be evaluated for the value . . . The function getXFromY/getYFromX returns an error. The component . . . is operated outside the valid scope.

Description:

An attempt was made to evaluate a characteristic curve outside its definition range.

Solution proposal:

  • Check the Input data of the component.
  • You can read more about characteristic curves and their use here.

Message:

The characteristic . . . is not unique for the value . . .

Description:

The evaluation of a characteristic curve is not unambiguous. The characteristic . . . is for the X-value/Y-value . . . not unique.

Solution proposal:

  • Check the characteristic curve.
  • You can read more about characteristic curves and their use here.

Message:

eSim_createParamList: An unsupported parameter type was used.

Message:

A value outside the valid range has been calculated for a variable. Variable: . . . Calculated value: . . . Bound of the range: . . .

Description:

The specified value range was violated for a calculated variable.

Solution proposal:

  • Note previous error messages in the priority view.
  • Possibly it is a subsequent error.
    By navigating to solvable equations, you can see for which other variables incorrect values have been determined.
    Check the input data of all related components.
  • More on the use of value ranges can be found in the article on the declaration of variables.

Message:

The property model function . . . could not be evaluated.

Message:

The property model function . . . did not converge after 50 iterations. The last valid value is used for . . .

Description:

For the calculation of material values (e.g., steam states, caloric air and exhaust gas values), material value polynomials according to the IAPS formulation of 1984 (Kestin and Sengers 1986, DOI: 10.1063/1.555772) are used. These are determined by numerical iteration. If the values are particularly unfavorable, no solution is found.

Solution proposal:

  • It is possible that a starting value is chosen unfavorably.
  • In the Simulator window, click on the blue linked number of the block that is indicated in the message because the problem occurs in it. In the right window you will get a reference to the component in which the problem is located (e.g. state default steam). Make sure that you have entered plausible values in this component and that there is no confusion of [%] and [1] as well as superheat and absolute temperature or similar.
  • For informationen on solving the problem for the steam turbine, see the linked article.
  • Information for experts: If you model your own components, you can alternatively perform a different calculation sequence of the material value polynomials or adapt the starting values.

Message:

The property model function . . . did not converge after 50 iterations. The operating point seems to be invalid.

Description:

The state point seems to be invalid.

Message:

Error while calculating the property model: . . .

Message:

The value … was assigned to the primitive … . Because the value is close to zero, it is set to 0.0.

Description:

This message appears if a very small value (< 1e-08) was calculated for a result variable that is linked to a primitive.
Such small values are usually caused by numerical inaccuracies. The variable is assigned the value zero.

Message:

The exponential function cannot be evaluated with argument . . . The result is too big.

Description:

An attempt was made to evaluate the exponential function with an argument that is too large.
Typically, the argument used is wrong.

Solution proposal:

  • Check the input data of the component to which the argument belongs.
  • Possibly it is a subsequent error. Navigate to Solvable equations to see for which other variables incorrect values were determined.
    Check the input data of all associated components.

Message:

The logarithm (base 10/base e) cannot be evaluated with argument . . .

Description:

An attempt was made to evaluate the logarithm function with a negative argument.
Typically, the argument used is wrong.

Solution proposal:

  • Check the input data of the component to which the argument belongs.
  • Possibly it is a subsequent error. Navigate to Solvable equations to see for which other variables incorrect values were determined.
    Check the input data of all associated components.

Message:

A negative root occured in block . . .

Description:

An attempt was made to evaluate the root function with a negative argument.
Typically, the argument used is wrong.

Solution proposal:

  • Check the input data of the component to which the argument belongs.
  • Possibly it is a subsequent error. Navigate to Solvable equations to see for which other variables incorrect values were determined.
    Check the input data of all associated components.

Message:

Function could not be evaluated.

Message:

A zero division occured in block . . .

Description:

When calculating a variable, division by zero was performed.

Solution proposal:

  • The warning often occurs in borderline cases in the model, for example when calculating the efficiency of a component that is switched off.
    Usually, the zero division can be ignored if the simulation was successful and all variables were calculated.
  • Otherwise, please check the input data of the corresponding component.
  • Possibly it is a subsequent error and for one of the variables occurring in the denominator, an incorrect value was calculated.
    Navigate to solvable equations to see for which other variables incorrect values were determined.
    Check the input data of all associated components.

Message:

The LU-decomposition of the Jacobian contains a singular matrix.

Description:

During the LU decomposition of the Jacobian matrix a singular matrix was found.

Message:

Matrix and vector cannot be multiplied because the dimensions do not match.

Message:

The function . . . was called for the variable . . . of the component . . . which has not numeric type.

Description:

A function was called for a not real-valued variable.

Message:

The equation system . . . seems to have multiple solutions. The redundancy check yields a second solution. Results of the variables: . . .

Description:

The system of equations has several solutions. It is unclear which of the solutions makes physical sense.

Solution proposal:

  • Check the start values of the result variables. These should correspond to a physically meaningful value.

Message:

. . .

Description:

An error occurred when solving a system of equations using the Newton method.

Solution proposal:

  • The error is often triggered by functions with a restricted definition and value range, such as log or sqrt.
    In this case, check the start values of the result variables. These should correspond to a physically meaningful value by which the functions used can be evaluated.
  • Activate the Advanced solution search in the options menu of the simulator (Extras ribbon → Advanced settings → Simulation).

Message:

The equation system could not be solved yet. The solution search is continued with the partially simplified equations.

Description:

The message appears if Advanced solution search is activated when solving an equation system numerically.
In this case, after a few iterations, a partially simplified system is used for calculation.

Message:

The csv-file containing the simulation results was saved.

Description:

A CSV file containing the simulation results has been saved in the user directory. It contains averages, minima, and maxima for all primitives included in the simulation model.

This functionality can be activated in the Simulation Options Menu under Extras → Advanced Settings → Simulation → General settings → Output simulation results as CSV file.

Message:

Cannot plug in key . . . into the option . . .

Message:

No time series are used.

Description:

A date or time variable is used although it is not time-dependent.

Solution proposal:

  • System variables such as .system.stepWidth or .system.time are only set if the simulation is time-dependent.
    Please enter time series in the Input data.

Message:

The variable . . . does not have a valid value. A period of a year is assumed for calculation of the integral. The simulation must be time dependent. Please insert at least one time series in the input data.

Description:

An integral function was used although there is no valid simulation period.

Solution proposal:

  • Check whether time series still need to be defined. A simulation period only exists if the simulation is time-dependent.
  • You can read more about time series functions here.

Linear Optimization

If components in the energy system are wrongly dimensioned or if operational side conditions cannot be fulfilled, it happens that the linear optimization problem cannot be solved in individual time steps.

Message:

You are using the linear optimizer . . . with version . . . and release . . .

Description:

Here you can see which solver is used for the linear optimization problem.

The solver used can be set in the simulation ribbon in the group optimization.

Message:

The linear optimization problem was solved with target value . . . [EUR/a].

Description:

Here you can see the target function value of the linear problem. The unit used depends on the target function selected in the simulation ribbon.

Message:

The linear problem is not solved because some coefficients are missing due to zero divisions which happened earlier.

Message:

The linear problem was saved as LP-file.

or

The linear problem was saved as MPS-file.

 

Description:

An LP or MPS file with the linear problem was saved in the user directory (e.g., Gurobi.lp by default under C:/Users/$Username$/AppData/Roaming/TOP-Energy/EnergyFrames$Version$/eSim).

If the link cannot be opened directly from the error message, open the LP file from the named folder in an editor of your choice, permanently linking LP files to the desired editor so that they are automatically opened in the editor in the future.

This functionality can be activated in the Simulation options menu under Advanced settings (Extras ribbon) Simulation → Linear optimization → Save linear problem as file.

Message:

The CSV-file containing the results of the linear problem was saved.

Description:

A CSV file with the results of the linear problem was saved in the user directory (by default as LpResults.csv under C:/Users/$Username$/AppData/Roaming/TOP-Energy/EnergyFrames$Version$/eSim).

This functionality can be activated in the Simulation options menu under Advanced settings (Extras ribbon) → Simulation → Linear optimization → Save lp-results as CSV file.

Message:

The linear optimization problem is temporally coupled. . . . time steps are considered simultaneously.

Description:

Here you can see how many time steps are considered simultaneously in the linear optimization problem.

A temporal coupling always occurs when performing a structural optimization or when using a look-ahead time frame in optimization.

Message:

The linear optimization problem does not have an optimum. . . . Please check whether the generation capacities are sufficient for the energy demand.

Description:

The linear optimization problem has no valid solution. If the solution space is empty or unconstrained this information is also provided.

Solution proposal:

  • Navigate to the block that contains the linear problem. Check the input data of all components listed under already calculated variables, user input (user entries), and output variables (result variables).
  • NaNs are output for a point in time when the optimization problem cannot be solved for this point in time. This occurs, for example, when capacities are not sufficient to cover demand or when operating conditions limit the operating mode to such an extent that operation is no longer possible.
  • The error often occurs when components are accidentally wrongly dimensioned. This can easily be done by choosing the wrong unit, e.g., Watt instead of Megawatt.
  • The Error Analysis folder in the Component template library contains Balance_Relaxation components. If you include these components in your simulation model, you can find out at which point in the energy system additional heat, cold, or electricity is required.

Message:

An error occured while solving the linear optimization problem.

Message:

The irreducible inconsistent subsystem was saved as ilp-file.

Description:

A file with the minimally inconsistent subproblem was saved in the user directory (by default under C:/Users/$Username$/AppData/Roaming/TOP-Energy/EnergyFrames$Version$/eSim) after the solution space of the linear optimization problem was empty.

This functionality is only available when Gurobi is used as a solver.

If the link cannot be opened directly from the error message, open the ILP file from the named folder in an editor of your choice, permanently linking ILP files to the desired editor so that they are automatically opened in the editor in the future.

Message:

The coefficients of the equation . . . differ in the magnitude of 10^. . . . Big-M values have negative impacts on the numerical properties of the linear optimization problem.

Solution proposal:

Consider the contents of the section Modeling: Limit Maximum Capacity (Big M value) in the article Simulation Time.

Message:

Validation: The . . . in the component exceeds the maximal value . . . by more than . . .

Description:

Immediately before thecalculation of the linear optimization problem, a validity check is performed.

Here it is checked whether in principle the demands for heat, cold, electricity, and steam can be covered by the existing generation capacities. The exact interconnection of the systems is not taken into account.

Solution proposal:

  • Expand the generation capacity of the energy system by increasing the nominal capacity of existing plants or installing new plants.
  • To dispose of excess heat, please use a flexible heat demand or an emergency cooler. If there is excess cold, a flexible cooling demand can also be used.
  • For steam, you must expand the mass flow sinks (e.g., condensate sink or steam demand sink) or sources (e.g., feed water source or source of steam) in the energy system.
  • The validation can be activated in the Simulation ribbon in the group Actions with the button Validate.

Message:

Validation: The . . . exceeds the . . . in the energy system by more than . . .

Description:

Immediately before the linear optimization problem, a validity check is performed.

Here it is checked whether in principle the demands for heat, cold, electricity, and steam can be covered by the existing generation capacities. The exact interconnection of the systems is not taken into account.

Solution proposal:

  • Expand the generation capacity of the energy system by increasing the nominal capacity of existing plants or installing new plants.
  • To dispose of excess heat, please use a flexible heat demand or an emergency cooler. If there is excess cold, a flexible cooling demand can also be used.
  • For steam, you must expand the mass flow sinks (e.g., condensate sink or steam demand sink) or sources (e.g., feed water source or source of steam) in the energy system.
  • The validation can be activated in the Simulation ribbon in the group Actions with the button Validate.

Message:

Solve info: — Runtime: . . . min — Current gap value: . . . % —

Description:

The message informs about the gap value of the current solution every minute in case of major optimization problems.

The percentage gap value is calculated as follows \(\frac{y^*-y_B}{max(|y^*|, |y_B|)}\). Here \(y^*\) denotes the target function value of the best solution found to date. Furthermore, \(y_B\) is the best lower bound for the target function value of each solution. The following always applies \(y^*\geq y_B\).

In the course of the optimization process (Branch and Bound), the solutions and bounds are gradually improved so that the gap value tends towards zero. The procedure stops as soon as the gap value reaches a certain limit. By default this is 0.1 %, but this value can be adjusted in the Simulation ribbon in the groups Operational optimization and Structural optimization. The higher the limit, the less time the process takes to solve.

Message:

Solve info: — The time limit was exceeded. — The currently best solution is used. — Current gap value: . . .

Description:

When the time limit is reached, the optimization is aborted and the currently best solution is used.

The time limit for the termination can be adjusted in the Simulation ribbon in the groups Operational optimization and Structural optimization. It is one minute for operational optimization and ten minutes for structural optimization as standard.

Message:

Solve info: — “GurobiParameters.prm” was read.

Message:

The linear optimization problem is quite large due to the temporal coupling. . . . time steps are considered simultaneously.

Description:

Here you can see how many time steps are considered simultaneously in the linear optimization problem. The time coupling should be as small as possible so that the optimization problem can be solved within a reasonable time.

A temporal coupling always occurs when performing a structural optimization or when using a look-ahead time frame in optimization.

Message:

The linear optimization problem is too large. Please reduce the number of time steps or use a different MILP solver.

Description:

The linear optimization problem is too large due to the time step coupling. A temporal coupling always occurs when performing a structural optimization or when using a look-ahead time frame in optimization.

Solution proposal:

  • Reduce the time step coupling by reducing the time frame used or the time grid of the input time series.
  • Use Gurobi as solver.

Message:

The structural optimization results were stored. The following values were calculated: . . .

Description:

After each structural optimization, the results of the structure variables are displayed here. These are transferred to the form of the Simulation node.

Message:

The simulation time series is evenly split into … sections. For the subperiods the operational optimization is performed parallel.

Description:

The parallelization may allow for a reduction in computing time.

Message:

The transitions between the parallel calculated solutions are adjusted.

Description:

The transitions between the parallel calculated solutions are corrected.

Message:

One or several transitions could not be calculated successfully. Please deactivate the parallelization and restart the simulation.

Message:

The simulation contains a lot of time steps. This may have a negative impact on the computing time with parallelization enabled.

Description:

Reduce the number of time steps to shorten the computing time.

Message:

A valid Gurobi license was not found.

Description:

The message occurs if the solver Gurobi cannot be initialized for the linear optimization problem due to a missing license.

Solution proposal:

Message:

The linear optimization variable . . . does not correspond to the solution of the algebraic equation system . . .  in the component . . .  The deviation is: . . .  Please check the model for errors (e.g., series connection).

Description:

Check the model for errors (e.g., series connection).

Message:

The time step coupling … in the component … cannot completely be incorporated in the linear model. The time frame is too small.

Description:

The time frame used in the simulation is too small for a control component used in the model.

Solution proposal:

  • Increase the look-ahead time frame in the simulation ribbon.
  • Alternatively, you can also adjust the input in the control component used.

Message:

The structural optimization results could not completely be loaded. Please update the eSim node and restart the simulation.

Description:

An error occurred while loading the structural optimization results for the operational optimization.

Solution proposal:

  • Update the Simulation node and restart the simulation.

Message:

The structural optimization has failed.

Message:

The time series have been compressed for structural optimization to . . .

Description:

The time series are automatically compressed before structural optimization to reduce the number of coupled time steps in the linear optimization problem.

The compression level can be set in the in the Structural optimization group of the Simulation ribbon.

Message:

The input time series cannot be compressed for structural optimization.

Description:

The input time series are compressed for structural optimization using a clustering method. In order to use this procedure, the time axes of all input time series must match. This may not be the case if errors occurred in the simulation prior to optimization.

Solution proposal:

  • Check whether errors have already occurred in the simulation and eliminate them.
  • If this is not possible you can also disable automatic time series compression with the compression level None  in the Structural optimization group of the Simulation ribbon.

Message:

The csv-file containing the compressed time series was saved.

Description:

The compressed time series for structural optimization can be saved as CSV files in the user directory.

This functionality can be enabled with the function Save compressed time series as CSV file in the Simulation options menu (to be opened via Advanced settings on the Extras ribbon).

Back To Top