.. _section-6.2:

Generalized Model
-----------------

The control system model was developed with the intent that a wide range
of plant control systems can be simulated. For this purpose, two
specific objectives were set. First, the model should be general enough
to permit the user to assemble any set of control equations and specify
how they interface to the plant solely through the input. And second,
the model should employ a numerical method which is reliable in all
foreseeable applications. Fulfilling these two goals led to the
identification of a general equation form capable of representing all
classes of plant control systems.

.. _section-6.2.1:

General Equations
~~~~~~~~~~~~~~~~~

The solution algorithms of the model are based on a general set of
equations for the control system state variables and outputs. These
equations are formulated under the assumption that the three components
of a control system, the sensor, the controller, and the actuator, can
all be modeled as ordinary differential equations. The general equation
form is easy to deduce.

Since the sensor and actuator behavior are governed by physical laws and
they are normally modeled in lumped parameter form, they are both
described by

.. math::
    :label: 6.2-1

	\frac{\text{d}}{\text{dt}} x \left( t \right) &= f \left( x \left( t \right), u  \left( t \right) \right) \\
	y \left( t \right) &= g \left( x \left( t \right), u  \left( t \right) \right)

where

:math:`x \left( t \right)` = n x 1 state vector;

:math:`u \left( t \right)` = r x 1 input vector; and

:math:`y \left( t \right)` = m x 1 output vector.

The controller also has the basic form of :eq:`6.2-1` as it consists of
integrating and function elements. But in addition a derivative element
is sometimes used in which case derivatives appear on the right hand
side of :eq:`6.2-1`. In practice the output signal from an integrator
will be differentiated at most once so that the controller equation is

.. math::
    :label: 6.2-2

	\frac{\text{d}}{\text{dt}} x \left( t \right) &= f \left( x \left( t \right), \frac{\text{d}}{\text{dt}} x, u  \left( t \right) \right) \\
	y \left( t \right) &= g \left( x \left( t \right), u  \left( t \right) \right)~.

The general equation form results when the equations for the three
components are coupled and the signals that link to the plant are
explicitly labeled

.. math::
    :label: 6.2-3

	\frac{\text{d}}{\text{dt}} x \left( t \right) &= f \left( x \left( t \right), \frac{\text{d}}{\text{dt}} x, u_{\text{mea}} \left( t \right), u_{\text{dmd}} \left( t \right) \right) \\
	y_{\text{ctl}} \left( t \right) &= g \left( x \left( t \right), u_{\text{mea}} \left( t \right), u_{\text{dmd}} \left( t \right) \right)~,

where

:math:`u_{\text{mea}}\left( t \right) = 1 \times n_{\text{mea}}` measured
input vector;

:math:`u_{\text{dmd}}\left( t \right) = 1 \times n_{\text{dmd}}` demand input
vector; and

:math:`y_{\text{ctl}}\left( t \right) = 1 \times n_{\text{ctl}}` control
system output vector.

To guide the choice of initial conditions and their calculation for the
above equations, we must consider the intended applications. Since the
code is ultimately to be used for analysis of plant wide transients, the
initial conditions must be compatible with the way in which these
transients begin. Generally the user prescribes the plant steady state
and therefore it should be reasonable to initialize the control system
so that at time zero it preserves this steady state. In this case
boundary conditions for the control system are taken from the plant, and
control system time derivatives are set to zero. Writing the control
equations explicitly in terms of the measured signals, control signals
and the demand signals, :eq:`6.2-3` becomes

.. math::
    :label: 6.2-4

	0 &= f \left( x \left( 0 \right), 0, {u^{*}}_{\text{mea}} \left( 0 \right), u_{\text{dmd}} \left( 0 \right) \right) \\
	0 &= g \left( x \left( 0 \right), {u^{*}}_{\text{mea}} \left( 0 \right), u_{\text{dmd}} \left( 0 \right) \right) - {y^{*}}_{\text{ctl}} \left( 0 \right)~,

where

:math:`{y^{*}}_{\text{ctl}}\left( 0 \right) = 1 \times n_{\text{ctl}}`
vector of plant values associated with
:math:`y_{\text{ctl}}\left( 0 \right)`; and

:math:`{u^{*}}_{\text{mea}}\left( 0 \right) = 1 \times n_{\text{mea}}`
vector of plant values associated with
:math:`u_{\text{mea}}\left( 0 \right)`.

The asterisk denotes steady state conditions in the plant. The initial
conditions then that place the control system in steady state
equilibrium with the plant are the values of :math:`u_{\text{dmd}}\left( 0 \right)` and :math:`x \left( 0 \right)`
that satisfy :eq:`6.2-4`.

.. _section-6.2.2:

Block Diagram Approach
~~~~~~~~~~~~~~~~~~~~~~

One might well ask what benefits can be obtained from a knowledge of
this general equation. The principal benefit is a flexible modeling
approach that permits the user to describe the plant control equations
in a block diagram manner. The key to achieving this capability is the
fact that the properties of the general equation form are well known and
can be brought to bear on the development of a reliable numerical
scheme.

The process by which the user describes their block diagram is analogous
to the process of programming an analog computer. Basically, four types
of information must be supplied. First, each mathematical block must be
defined and the interconnections among them specified. Presently there
are twenty-three blocks to choose from and these are shown in :numref:`table-A6.1-2`;
additional blocks can be added if required. Each block can accept up to
two signals at its input for processing and supply the result, termed a
block signal, for further processing by other blocks. Second, each
forcing function driving the collection of blocks must be defined. A
demand signal is available for this purpose and references a
user-supplied table of values that specifies the signal as a function of
time. Third, plant measured quantities input to the collection of blocks
must be defined. A measured signal is available for this purpose and
permits access to a number of plant variables including temperature,
flow, pressure and inventory in a number of reactor components. A
complete list is given in :numref:`table-A6.1-3`. Finally, those block signals
that are used to drive the plant must be defined. For that purpose,
control signals can be defined by the user to represent, among other
things, sources of external reactivity, feedwater mass flowrate and pump
motor torque. A complete list is given in :numref:`table-A6.1-3`.