> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ntop.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Dependent Parameter

<CardGroup cols={2}>
  <Card title="Surrogate, Text, 5.43.0" href="#surrogate-text-5430" />

  <Card title="Text, Function Object, Parameter Group, 5.34.0" href="#text-function-object-parameter-group-5340" />
</CardGroup>

***

## About this Block

**What it does:** A **Dependent Parameter** defines a relationship between variables by calculating its value from other parameters (commonly Independent and/or Constant Parameters, but can also form chains with additional Dependent Parameters) using a custom function. In a parameter optimization study, a dependent parameter is typically used to define the optimization objective and constraints. Other available parameters include the **Independent Parameter**, and **Constant Parameter**

**Common uses:**

* Inverse Design Optimization using Parameter Optimization
* Defining a design variable that is a complex mathematical expression of other variables.
* Linking multiple input parameters together through a single parameter to maintain a specific relationship between them.

**Tips:**

* The easiest way to create a **Dependent Parameter** is by right clicking on a block that defines the function you want to use as part of your optimization, and then selecting Optimize > Create Dependent Parameter.
  ![Right Click Option](https://storage.googleapis.com/files-learn/static/ExtendedBlockDocs/dependent_parameter_1.png)
* You can connect dependent parameters to create a Chained Dependent Parameter by linking multiple dependent parameters.

| Dependent Parameter 1                                                                                              | Chained Parameter                                                                                                          |
| ------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- |
| ![Right Click Option](https://storage.googleapis.com/files-learn/static/ExtendedBlockDocs/dependent_parameter.png) | ![Right Click Option](https://storage.googleapis.com/files-learn/static/ExtendedBlockDocs/chained_dependent_parameter.png) |

## Example File

Download Example: [Parameter Optimization](https://storage.googleapis.com/files-learn/static/ExtendedBlockDocs/parameter_optimization.ntop)
![Parameter Optimization Setup](https://storage.googleapis.com/files-learn/static/ExtendedBlockDocs/parameter_optimization.png)

***

<h2 id="surrogate-text-5430">
  Surrogate, Text, 5.43.0
</h2>

Creates a Dependent Parameter whose value is computed from other Parameters using a specified Surrogate. The value updates automatically whenever its input Parameters are changed by an evaluator.

### Inputs

| Name      | Type                                               | Description                                          |
| --------- | -------------------------------------------------- | ---------------------------------------------------- |
| Surrogate | Surrogate(real,samples(real))                      | Surrogate model to evaluate.                         |
| Label     | [Text](../../../../block-documentation/types/text) | Optional unique identifier for the output Parameter. |

### Outputs

| Type                                                         |
| ------------------------------------------------------------ |
| [Parameter](../../../../block-documentation/types/parameter) |

***

<h2 id="text-function-object-parameter-group-5340">
  Text, Function Object, Parameter Group, 5.34.0
</h2>

Creates a Dependent Parameter whose value is computed from other Parameters using a specified Function. The value updates automatically whenever its input Parameters are changed by an evaluator.

### Inputs

| Name             | Type                                                                     | Description                                                                                                       |
| ---------------- | ------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
| Label            | [Text](../../../../block-documentation/types/text)                       | Unique identifier for the output Parameter.                                                                       |
| Function object  | [Function Object](../../../../block-documentation/types/function-object) | The Function Object evaluated to produce the output Parameter's value.                                            |
| Input parameters | [Parameter Group](../../../../block-documentation/types/parameter-group) | Parameters defining Function Object inputs. The group elements correspond to the Function Object inputs by index. |

### Outputs

| Type                                                         |
| ------------------------------------------------------------ |
| [Parameter](../../../../block-documentation/types/parameter) |
