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}
int buffer_size = 0
std::vector<BoutReal> time_buffer
std::vector<BoutReal> error_buffer