deal.II version GIT relicensing-6834-g5b78e6bcdf 2026-10-01 11:20:01+00:00
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
SUNDIALS::ARKode< VectorType >::AdditionalData Class Reference

#include <deal.II/sundials/arkode.h>

Detailed Description

template<typename VectorType = Vector<double>>
class SUNDIALS::ARKode< VectorType >::AdditionalData

Additional parameters that can be passed to the ARKode class.

Definition at line 153 of file arkode.h.

Public Member Functions

 AdditionalData (const double initial_time, const double final_time, const double initial_step_size, const double output_period, const double minimum_step_size, const unsigned int maximum_order=5, const unsigned int maximum_non_linear_iterations=10, const bool implicit_function_is_linear=false, const bool implicit_function_is_time_independent=false, const bool mass_is_time_independent=false, const int anderson_acceleration_subspace=3, const double absolute_tolerance=1e-6, const double relative_tolerance=1e-5)
 
 AdditionalData (const double initial_time=0.0, const double final_time=1.0, const double initial_step_size=1e-2, const double output_period=1e-1, const double minimum_step_size=1e-6, const double absolute_tolerance=1e-6, const double relative_tolerance=1e-5)
 
void add_parameters (ParameterHandler &prm)
 

Public Attributes

double initial_time
 
double final_time
 
double initial_step_size
 
double minimum_step_size
 
double absolute_tolerance
 
double relative_tolerance
 
unsigned int maximum_order
 
double output_period
 
unsigned int maximum_non_linear_iterations
 
bool implicit_function_is_linear
 
bool implicit_function_is_time_independent
 
bool mass_is_time_independent
 
int anderson_acceleration_subspace
 

Constructor & Destructor Documentation

◆ AdditionalData() [1/2]

template<typename VectorType >
SUNDIALS::ARKode< VectorType >::AdditionalData::AdditionalData ( const double  initial_time,
const double  final_time,
const double  initial_step_size,
const double  output_period,
const double  minimum_step_size,
const unsigned int  maximum_order = 5,
const unsigned int  maximum_non_linear_iterations = 10,
const bool  implicit_function_is_linear = false,
const bool  implicit_function_is_time_independent = false,
const bool  mass_is_time_independent = false,
const int  anderson_acceleration_subspace = 3,
const double  absolute_tolerance = 1e-6,
const double  relative_tolerance = 1e-5 
)

Initialization parameters for ARKode. Some parameters are provided for interface backward compatibility and have been effectively moved to the AKRStepper additional parameters.

Global parameters:

Parameters
initial_timeInitial time
final_timeFinal time
initial_step_sizeInitial step size
output_periodDesired time interval between each output

Run-control parameters:

Parameters
minimum_step_sizeMinimum step size
maximum_orderMaximum ARK order
maximum_non_linear_iterationsMaximum number of nonlinear iterations
implicit_function_is_linearSpecifies that the implicit portion of the problem is linear
implicit_function_is_time_independentSpecifies that the implicit portion of the problem is linear and time independent
mass_is_time_independentSpecifies that the mass pre-factor is independent of time
anderson_acceleration_subspaceThe number of vectors to use for Anderson acceleration within the packaged SUNDIALS solver.

Error parameters:

Parameters
absolute_toleranceAbsolute error tolerance
relative_toleranceRelative error tolerance

Definition at line 857 of file arkode.h.

◆ AdditionalData() [2/2]

template<typename VectorType >
SUNDIALS::ARKode< VectorType >::AdditionalData::AdditionalData ( const double  initial_time = 0.0,
const double  final_time = 1.0,
const double  initial_step_size = 1e-2,
const double  output_period = 1e-1,
const double  minimum_step_size = 1e-6,
const double  absolute_tolerance = 1e-6,
const double  relative_tolerance = 1e-5 
)

Initialization parameters for ARKode.

Global parameters:

Parameters
initial_timeInitial time
final_timeFinal time
initial_step_sizeInitial step size
output_periodDesired time interval between each output

Running parameters:

Parameters
minimum_step_sizeMinimum step size

Error parameters:

Parameters
absolute_toleranceAbsolute error tolerance
relative_toleranceRelative error tolerance

Definition at line 893 of file arkode.h.

Member Function Documentation

◆ add_parameters()

template<typename VectorType >
void SUNDIALS::ARKode< VectorType >::AdditionalData::add_parameters ( ParameterHandler &  prm)

Add all AdditionalData() parameters to the given ParameterHandler object. When the parameters are parsed from a file, the internal parameters are automatically updated.

The options you pass at construction time are set as default values in the ParameterHandler object prm. You can later modify them by parsing a parameter file using prm. The values of the parameter will be updated whenever the content of prm is updated.

Make sure that this class lives longer than prm. Undefined behavior will occur if you destroy this class, and then parse a parameter file using prm.

Definition at line 923 of file arkode.h.

Member Data Documentation

◆ initial_time

template<typename VectorType = Vector<double>>
double SUNDIALS::ARKode< VectorType >::AdditionalData::initial_time

Initial time for the DAE.

Definition at line 260 of file arkode.h.

◆ final_time

template<typename VectorType = Vector<double>>
double SUNDIALS::ARKode< VectorType >::AdditionalData::final_time

Final time.

Definition at line 265 of file arkode.h.

◆ initial_step_size

template<typename VectorType = Vector<double>>
double SUNDIALS::ARKode< VectorType >::AdditionalData::initial_step_size

Initial step size.

Definition at line 270 of file arkode.h.

◆ minimum_step_size

template<typename VectorType = Vector<double>>
double SUNDIALS::ARKode< VectorType >::AdditionalData::minimum_step_size

Minimum step size.

Definition at line 275 of file arkode.h.

◆ absolute_tolerance

template<typename VectorType = Vector<double>>
double SUNDIALS::ARKode< VectorType >::AdditionalData::absolute_tolerance

Absolute error tolerance for adaptive time stepping.

Definition at line 280 of file arkode.h.

◆ relative_tolerance

template<typename VectorType = Vector<double>>
double SUNDIALS::ARKode< VectorType >::AdditionalData::relative_tolerance

Relative error tolerance for adaptive time stepping.

Definition at line 285 of file arkode.h.

◆ maximum_order

template<typename VectorType = Vector<double>>
unsigned int SUNDIALS::ARKode< VectorType >::AdditionalData::maximum_order

Maximum order of ARK.

Deprecated:
Provide ARKStepper::AdditionalData::order instead.

Definition at line 294 of file arkode.h.

◆ output_period

template<typename VectorType = Vector<double>>
double SUNDIALS::ARKode< VectorType >::AdditionalData::output_period

Desired time period between each output. The actual output time period may be adjusted by Arkode.

Definition at line 300 of file arkode.h.

◆ maximum_non_linear_iterations

template<typename VectorType = Vector<double>>
unsigned int SUNDIALS::ARKode< VectorType >::AdditionalData::maximum_non_linear_iterations

Maximum number of iterations for Newton or fixed point method during time advancement.

Deprecated:
Provide ARKStepper::AdditionalData::maximum_non_linear_iterations instead.

Definition at line 311 of file arkode.h.

◆ implicit_function_is_linear

template<typename VectorType = Vector<double>>
bool SUNDIALS::ARKode< VectorType >::AdditionalData::implicit_function_is_linear

Provide whether the implicit portion of the problem is linear.

Deprecated:
Provide ARKStepper::AdditionalData::implicit_function_is_linear instead.

Definition at line 321 of file arkode.h.

◆ implicit_function_is_time_independent

template<typename VectorType = Vector<double>>
bool SUNDIALS::ARKode< VectorType >::AdditionalData::implicit_function_is_time_independent

Provide whether the implicit portion of the problem is linear and time independent.

Deprecated:
Provide ARKStepper::AdditionalData::implicit_function_is_time_independent instead.

Definition at line 332 of file arkode.h.

◆ mass_is_time_independent

template<typename VectorType = Vector<double>>
bool SUNDIALS::ARKode< VectorType >::AdditionalData::mass_is_time_independent

Provide whether the mass pre-factor is time independent. Has no effect if no mass is specified.

Deprecated:
Provide ARKStepper::AdditionalData::mass_is_time_independent instead.

Definition at line 343 of file arkode.h.

◆ anderson_acceleration_subspace

template<typename VectorType = Vector<double>>
int SUNDIALS::ARKode< VectorType >::AdditionalData::anderson_acceleration_subspace

Number of subspace vectors to use for Anderson acceleration. Only meaningful if the packaged SUNDIALS fixed-point solver is used.

Deprecated:
Provide ARKStepper::AdditionalData::anderson_acceleration_subspace instead.

Definition at line 354 of file arkode.h.


The documentation for this class was generated from the following file: