# FunctionDT

Timestepper whose steps vary over time according to a user-defined fuction

## Description

The FunctionDT type of TimeStepper takes time steps that vary over time according to a user-defined function.

The time step is controlled by a piecewise linear function defined using the time_t and time_dt parameters. A vector of time steps is provided using the time_dt parameter. An accompanying vector of corresponding times is specified using the time_t parameter. These two vectors are used to form a time step vs. time function. The time step for a given step is computed by linearly interpolating between the pairs of values provided in the vectors.

The same procedure that is used with ConstantDT is used to reduce the time step from the user-specified value if a failed solution occurs.

## Example Input Syntax

[Executioner]
type = Transient

start_time = 0
num_steps = 10
[./TimeStepper]
type = FunctionDT
function = dts
min_dt = 0.1
[../]
[]

(test/tests/time_steppers/function_dt/function_dt_min.i)

## Input Parameters

• functionThe name of the time-dependent function that prescribes the time step size.

C++ Type:FunctionName

Options:

Description:The name of the time-dependent function that prescribes the time step size.

• reset_dtFalseUse when restarting a calculation to force a change in dt.

Default:False

C++ Type:bool

Options:

Description:Use when restarting a calculation to force a change in dt.

• min_dt0The minimal dt to take.

Default:0

C++ Type:double

Options:

Description:The minimal dt to take.

• interpolateTrueWhether or not to interpolate DT between times. This is true by default for historical reasons.

Default:True

C++ Type:bool

Options:

Description:Whether or not to interpolate DT between times. This is true by default for historical reasons.

• time_dtThe values of dt

C++ Type:std::vector

Options:

Description:The values of dt

• time_tThe values of t

C++ Type:std::vector

Options:

Description:The values of t

• growth_factor1.79769e+308Maximum ratio of new to previous timestep sizes following a step that required the time step to be cut due to a failed solve.

Default:1.79769e+308

C++ Type:double

Options:

Description:Maximum ratio of new to previous timestep sizes following a step that required the time step to be cut due to a failed solve.

### Optional Parameters

• control_tagsAdds user-defined labels for accessing object parameters via control logic.

C++ Type:std::vector

Options:

Description:Adds user-defined labels for accessing object parameters via control logic.

• enableTrueSet the enabled status of the MooseObject.

Default:True

C++ Type:bool

Options:

Description:Set the enabled status of the MooseObject.