File temperature_feedback.hxx#

Defines

temperature_feedback_H#
struct TemperatureFeedback : public Component#
#include <temperature_feedback.hxx>

Adds a time-varying temperature source, depending on the difference between the upstream temperature at y=0 and the specified value

Public Functions

inline TemperatureFeedback(std::string name, Options &alloptions, Solver*)#

Inputs

  • <name> (e.g. “d+”)

    • temperature_setpoint Desired temperature in eV

    • control_target_temperature Adjust the pressure source to match the upstream (if false) or target (if true) temperature

    • temperature_controller_p Feedback proportional to error

    • temperature_controller_i Feedback proportional to error integral

    • temperature_integral_positive Force integral term to be positive? (default: false)

    • temperature_source_positive Force temperature source to be positive? (default: true)

    • diagnose Output diagnostic information?

  • T<name> (e.g. “Td+”)

    • source_shape The initial source that is scaled by a time-varying factor

virtual void transform(Options &state) override#

Inputs

  • <name>

    • temperature

Outputs

  • <name>

    • temperature_source

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

std::string name#

The species name.

std::list<std::string> species_list#

Which species to apply the factor to.

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

Factor to apply.

BoutReal temperature_setpoint#

Normalised setpoint temperature.

BoutReal temperature_controller_p#
BoutReal temperature_controller_i#

PI controller parameters.

BoutReal error#
BoutReal temperature_error_integral = {0.0}#

Time integral of the error.

bool control_target_temperature#

Adjust the pressure source to match the upstream (if false) or target (if true) temperature.

bool temperature_integral_positive#

Force integral term to be positive?

bool temperature_source_positive#

Force source to be positive?

BoutReal temperature_error_lasttime = {-1.0}#
BoutReal temperature_error_last = {0.0}#
Field3D source_shape#

This shape source is scaled up and down.

BoutReal source_multiplier#

Factor to multiply source.

BoutReal proportional_term#
BoutReal integral_term#

Components of resulting source for diagnostics.

bool diagnose#

Output diagnostic information?