# ExponentialFunction Class

> An interpolation between two output values as input values vary across a domain.

- Product: Adobe PDF Library 18
- Language: .NET
- Version: APDFL18.0.5PlusP2e
- HTML page: https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/ExponentialFunction
- Version index: https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/llms.txt

```csharp
class ExponentialFunction : Function
```

**Namespace:** `Datalogics::PDFL`

**Inherits from:** [`Function`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Function.md)

## Description

An interpolation between two output values as input values vary across a domain.

For an Exponential Function, the curve between the two values is determined by the exponent N.

**Referenced by:** [`ExponentialFunction`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/ExponentialFunction.md)

**Uses types:** [`ExponentialFunction`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/ExponentialFunction.md), [`Function`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Function.md)

## Constructors

### ExponentialFunction

```csharp
Datalogics.PDFL.ExponentialFunction.ExponentialFunction(System.Collections.Generic.IList< System.Double > domain, int nOutputs, System.Collections.Generic.IList< System.Double > C0, System.Collections.Generic.IList< System.Double > C1, double N)
```

*constructor*

**Parameters**

- `domain` (`System.Collections.Generic.IList< System.Double >`): the domain of the function. 2 elements.
- `nOutputs` (`int`): the number of outputs of the function
- `C0` (`System.Collections.Generic.IList< System.Double >`): the output value when the input value is 0
- `C1` (`System.Collections.Generic.IList< System.Double >`): the output value when the input value is 1
- `N` (`double`): the exponential factor, which alters the curve of output values as the input values vary across the domain.

Create an Exponential Function, which is the exponential interpolation between two output values as the input values vary across the domain.

## Properties

### C0

```csharp
System.Collections.Generic.IList<System.Double> Datalogics.PDFL.ExponentialFunction.C0 { get; set; }
```

### C1

```csharp
System.Collections.Generic.IList<System.Double> Datalogics.PDFL.ExponentialFunction.C1 { get; set; }
```

### Default

```csharp
static Function Datalogics.PDFL.Function.Default { get; }
```

*static*

A Function representing the Default named function.

### Domain

```csharp
System.Collections.Generic.IList<System.Double> Datalogics.PDFL.Function.Domain { get; set; }
```

### Identity

```csharp
static Function Datalogics.PDFL.Function.Identity { get; }
```

*static*

A Function representing the Identity named function, which returns its input values unchanged.

### N

```csharp
double Datalogics.PDFL.ExponentialFunction.N { get; set; }
```

### NInputs

```csharp
int Datalogics.PDFL.Function.NInputs { get; }
```

### NOutputs

```csharp
int Datalogics.PDFL.Function.NOutputs { get; }
```

### Range

```csharp
System.Collections.Generic.IList<System.Double> Datalogics.PDFL.Function.Range { get; set; }
```

## Methods

### Apply

```csharp
virtual System.Collections.Generic.IList< System.Double > Datalogics.PDFL.Function.Apply(System.Collections.Generic.IList< System.Double > args)
```

**Parameters**

- `args` (`System.Collections.Generic.IList< System.Double >`): input values for the function. The number of input values must agree with the number of inputs the function takes.

**Returns:** `System.Collections.Generic.IList< System.Double >`

a list of the result values from the function

Apply the function to supplied input values

### Dispose

```csharp
void Datalogics.PDFL.Function.Dispose()
```

**Returns:** `void`

### ToString

```csharp
override string Datalogics.PDFL.ExponentialFunction.ToString()
```

**Returns:** `override string`

A string representation of the ExponentialFunction, including the number of inputs and outputs, domain, range, N, C0, and C1 values.

A string value describing the function.

### operator!=

```csharp
static bool Datalogics.PDFL.Function.operator!=(Function a, Function b)
```

*static*

**Parameters**

- `a` ([`Function`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Function.md)): The first Function to compare.
- `b` ([`Function`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Function.md)): The second Function to compare.

**Returns:** `bool`

true if the two Functions are not equal; otherwise, false.

Tests two Function objects for inequality.

### operator==

```csharp
static bool Datalogics.PDFL.Function.operator==(Function a, Function b)
```

*static*

**Parameters**

- `a` ([`Function`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Function.md)): The first Function to compare.
- `b` ([`Function`](https://docs.datalogics.com/apdfl18/DotNet/APDFL18.0.5PlusP2e/class/Function.md)): The second Function to compare.

**Returns:** `bool`

true if the two Functions are equal; otherwise, false.

Tests two Function objects for equality.
