# Documentation

### This is machine translation

Translated by
Mouseover text to see original. Click the button below to return to the English verison of the page.

## Solve Parametric Equations in ReturnConditions Mode

This example shows you how to solve parameterized algebraic equations using the Symbolic Math Toolbox™.

To solve algebraic equations symbolically, use the `solve` function. The solve function can provide complete information about all solutions of an equation, even if there are infinitely many, by introducing a parameterization. It can also provide information under which conditions these solutions are valid. To obtain this information, set the option ReturnConditions to true.

Solve the equation `sin(C*x) = 1`. Specify `x` as the variable to solve for. The `solve` function handles `C` as a constant. Provide three output variables for the solution, the newly generated parameters in the solution, and the conditions on the solution.

```syms C x eq = sin(C*x) == 1; [solx, params, conds] = solve(eq, x, 'ReturnConditions', true)```
```solx = ```

`params =`

`conds =`

To verify the solution, substitute the solution into the equation using `subs`. To work on under the assumptions in `conds` for the rest of this example, use `assume`. Test the solution using `isAlways`. The `isAlways` function returns logical `1` (`true`) indicating that the solution always holds under the given assumptions.

`SolutionCorrect = subs(eq, x, solx)`
```SolutionCorrect = ```

```assume(conds) isAlways(SolutionCorrect)```
```ans =    1 ```

To obtain one solution out of the infinitely many solutions, find a value of the parameters `params` by solving the conditions `conds` for the parameters; do not specify the ReturnConditions option. Substitute this value of `k` into the solution using `subs` to obtain a solution out of the solution set.

`k0 = solve(conds, params)`
`k0 =`

`subs(solx, params, k0)`
```ans = ```

To obtain a parameter value that satisfies a certain condition, add the condition to the input to `solve`. Find a value of the parameter greater than `99/4` and substitute in to find the solution.

`k1 = solve([conds, params > 99/4], params)`
`k1 =`

`subs(solx, params, k1)`
```ans = ```

To find a solution in a specified interval, you can solve the original equation with the inequalities that specify the interval.

`[solx1, params1, conds1] = solve([eq, x > 2, x < 7], x, 'ReturnConditions', true)`
```solx1 = ```

`params1 =`

`conds1 =`

Alternatively, you can also use the existing solution, and restrict it with additional conditions. Note that while the condition changes, the solution remains the same. The `solve` function expresses `solx` and `solx1` with different parameterizations, although they are equivalent.

`[~, ~, conds2] = solve(x == solx, x < 7, x > 2, x, 'ReturnConditions', true)`
```conds2 = ```

Obtain those parameter values that satisfy the new condition, for a particular value of the constant C:

`conds3 = subs(conds2, C, 5)`
```conds3 = ```

`solve(conds3, params)`
```ans = ```