Janus 2.0.0
High-performance C++20 dual-mode numerical framework
Loading...
Searching...
No Matches
janus::SensitivityRecommendation Struct Reference

Result of Janus sensitivity regime selection. More...

#include <AutoDiff.hpp>

Public Member Functions

bool uses_forward_mode () const
bool uses_reverse_mode () const
bool uses_checkpointing () const
int casadi_direction_count () const
casadi::Dict integrator_options () const
 Convert the recommendation into SUNDIALS/CasADi integrator options.

Public Attributes

SensitivityRegime regime = SensitivityRegime::Forward
CheckpointInterpolation checkpoint_interpolation = CheckpointInterpolation::None
int parameter_count = 0
int output_count = 0
int horizon_length = 1
int steps_per_checkpoint = 0
bool stiff = false

Detailed Description

Result of Janus sensitivity regime selection.

Member Function Documentation

◆ casadi_direction_count()

int janus::SensitivityRecommendation::casadi_direction_count ( ) const
inline

◆ integrator_options()

casadi::Dict janus::SensitivityRecommendation::integrator_options ( ) const
inline

Convert the recommendation into SUNDIALS/CasADi integrator options.

This is intended for downstream integrator construction. It exposes the same regime choice through nfwd/nadj and, for long-horizon adjoints, checkpoint interpolation and spacing.

◆ uses_checkpointing()

bool janus::SensitivityRecommendation::uses_checkpointing ( ) const
inline

◆ uses_forward_mode()

bool janus::SensitivityRecommendation::uses_forward_mode ( ) const
inline

◆ uses_reverse_mode()

bool janus::SensitivityRecommendation::uses_reverse_mode ( ) const
inline

Member Data Documentation

◆ checkpoint_interpolation

CheckpointInterpolation janus::SensitivityRecommendation::checkpoint_interpolation = CheckpointInterpolation::None

◆ horizon_length

int janus::SensitivityRecommendation::horizon_length = 1

◆ output_count

int janus::SensitivityRecommendation::output_count = 0

◆ parameter_count

int janus::SensitivityRecommendation::parameter_count = 0

◆ regime

SensitivityRegime janus::SensitivityRecommendation::regime = SensitivityRegime::Forward

◆ steps_per_checkpoint

int janus::SensitivityRecommendation::steps_per_checkpoint = 0

◆ stiff

bool janus::SensitivityRecommendation::stiff = false

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