# Algebraic Constraint

Constrain input signal to zero

Math Operations

## Description

The Algebraic Constraint block constrains the input signal f(z) to zero and outputs an algebraic state z. The block outputs the value that produces a zero at the input. The output must affect the input through a direct feedback path, that is, the feedback path contains only blocks with direct feedthrough. For example, you can specify algebraic equations for index 1 differential-algebraic systems (DAEs).

## Algorithm

The Algebraic Constraint block uses a dogleg trust-region algorithm to solve algebraic loops [1], [2].

## Data Type Support

The Algebraic Constraint block accepts and outputs real values of type `double`.

## Parameters

Initial guess

An initial guess for the solution value. The default is `0`.

## Example

By default, the Initial guess parameter is zero. You can improve the efficiency of the algebraic-loop solver by providing an Initial guess for the algebraic state z that is close to the solution value.

For example, the following model solves these equations:

```z2 + z1 = 1 z2 - z1 = 1 ```

The solution is `z2 = 1`, `z1 = 0`, as the Display blocks show.

## Characteristics

 Data Types Double Sample Time Inherited from driving block Direct Feedthrough Yes Multidimensional Signals No Variable-Size Signals No Zero-Crossing Detection No Code Generation No

## References

[1] Garbow, B. S., K. E. Hillstrom, and J. J. Moré. User Guide for MINPACK-1. Argonne, IL: Argonne National Laboratory, 1980.

[2] Rabinowitz, P. H. Numerical Methods for Nonlinear Algebraic Equations. New York, NY: Gordon and Breach, 1970.