File detachment_controller.hxx#

Defines

detachment_controller_H#
struct DetachmentController : public Component#
#include <detachment_controller.hxx>

Public Functions

inline DetachmentController(std::string, Options &options, Solver*)#
virtual void transform(Options &state) override#

Modify the given simulation state All components must implement this function

inline virtual void outputVars(Options &state) override#

Add extra fields for output, or set attributes e.g docstrings.

inline virtual void restartVars(Options &state) override#

Add extra fields to restart files.

Private Members

BoutReal connection_length#
BoutReal detachment_front_setpoint#
BoutReal min_time_for_change#
BoutReal min_error_for_change#
std::string species_for_source_shape#
std::string neutral_species#
std::string actuator#
bool ignore_restart#
bool velocity_form#
bool reset_integral_on_first_crossing#
BoutReal response_sign#
BoutReal controller_gain#
BoutReal integral_time#
BoutReal derivative_time#
std::list<std::string> species_list#

Which species to apply the factor to.

std::list<std::string> scaling_factors_list#

Factor to apply.

Field3D source_shape#
std::string source_units#
BoutReal source_conversion#
bool diagnose#
BoutReal minval_for_source_multiplier#
BoutReal maxval_for_source_multiplier#
BoutReal control_offset#
BoutReal settling_time#
int debug#
int control_mode#
int control_power = {0}#
int control_particles = {1}#
Field3D detachment_source_feedback = {0.0}#
BoutReal detachment_front_location = {0.0}#
BoutReal control = {0.0}#
BoutReal change_in_error = {0.0}#
BoutReal change_in_time = {0.0}#
BoutReal proportional_term = {0.0}#
BoutReal integral_term = {0.0}#
BoutReal derivative_term = {0.0}#
BoutReal time = {0.0}#
BoutReal error = {0.0}#
BoutReal derivative = {0.0}#
BoutReal change_in_derivative = {0.0}#
BoutReal change_in_control = {0.0}#
BoutReal error_integral = {0.0}#
BoutReal previous_time = {0.0}#
BoutReal previous_error = {0.0}#
BoutReal previous_control = {0.0}#
BoutReal previous_derivative = {0.0}#
BoutReal time_normalisation#
bool initialise = {true}#
bool first_step = {true}#
BoutReal number_of_crossings = {0.0}#
std::size_t buffer_size = 0#
std::vector<BoutReal> time_buffer#
std::vector<BoutReal> error_buffer#