HIRES

class otp.hires.HIRESProblem

Bases: otp.Problem

An eight-variable high irradiance response model from plant physiology.

In [Sch75], the following chemical reactions were proposed to explain the high irradiance responses of photomorphogenesis on the basis of phytochrome:

\[\begin{split} \begin{array}{cccc} \xrightarrow{o_{k_s}} & \ce{P_{{r}}} & \xrightleftharpoons[k_2]{k_1} & \ce{P_{fr}} \\ & {\scriptsize k_6} ↑ & & ↓ {\scriptsize k_3} \\ & \ce{P_{{r}}X} & \xrightleftharpoons[k_2]{k_1} & \ce{P_{fr}X} \\ & {\scriptsize k_5} ↑ & & ↓ {\scriptsize k_4} \\ & \ce{P_{{r}}X'} & \xrightleftharpoons[k_2]{k_1} & \ce{P_{fr}X'} \\ \end{array} \end{split}\]

\[\begin{split} \begin{array}{ccccc} \ce{E + P_{{r}}X'} & \xleftarrow{k_2} & \ce{P_{fr}X'E} & \xrightleftharpoons[k_{-}]{k_{+}} & \ce{P_{fr}X' + E} \\ & & ↓ {\scriptsize k^*} \\ & & \ce{P_{fr}' + X' + E} \end{array} \end{split}\]

Reactants \(\ce{P_{{r}}}\) and \(\ce{P_{fr}}\) are the red and far-red absorbing form of phytochrome, respectively. These can be bound by receptors \(\ce{X}\) and \(\ce{X'}\), partially influenced by enzyme \(\ce{E}\). The system is modeled by the differential equations [Got77] [dSL98]

\[\begin{split} \frac{d}{dt} \ce{[P_{{r}}]} &= -k_1 \ce{[P_{{r}}]} + k_2 \ce{[P_{fr}]} + k_6 \ce{[P_{{r}}X]} + o_{k_s}, \\ \frac{d}{dt} \ce{[P_{fr}]} &= k_1 \ce{[P_{{r}}]} - (k_2 + k_3) \ce{[P_{fr}]}, \\ \frac{d}{dt} \ce{[P_{{r}}X]} &= -(k_1 + k_6) \ce{[P_{{r}}X]} + k_2 \ce{[P_{fr}X]} + k_5 \ce{[P_{fr}X']}, \\ \frac{d}{dt} \ce{[P_{fr}X]} &= k_3 \ce{[P_{fr}]} + k_1 \ce{[P_{{r}}X]} - (k_2 + k_4) \ce{[P_{fr}X]}, \\ \frac{d}{dt} \ce{[P_{{r}}X']} &= -(k_1 + k_5) \ce{[P_{{r}}X']} + k_2 \ce{[P_{fr}X']} + k_2 \ce{[P_{fr}X'E]}, \\ \frac{d}{dt} \ce{[P_{fr}X']} &= k_4 \ce{[P_{fr}X]} + k_1 \ce{[P_{{r}}X']} - k_2 \ce{[P_{fr}X']} + k_{-} \ce{[P_{fr}X'E]} - k_{+} \ce{[P_{fr}X']} \ce{[E]}, \\ \frac{d}{dt} \ce{[P_{fr}X'E]} &= -(k_2 + k_{-} + k^*) \ce{[P_{fr}X'E]} + k_{+} \ce{[P_{fr}X']} \ce{[E]}, \\ \frac{d}{dt} \ce{[E]} &= (k_2 + k_{-} + k^*) \ce{[P_{fr}X'E]} - k_{+} \ce{[P_{fr}X']} \ce{[E]}. \end{split}\]

Notes

Type

ODE

Number of Variables

8

Stiff

typically, depending on \(k_1, …, k_6\), \(k_{+}\), \(k_{-}\), and \(k^*\)

Example

>>> problem = otp.hires.presets.Canonical;
>>> sol = problem.solve('AbsTol', 1e-12);
>>> problem.plot(sol);
Constructor Summary
HIRESProblem(timeSpan, y0, parameters)

Create a HIRES problem object.

Parameters:
  • timeSpan (numeric(1, 2)) – The start and final time.

  • y0 (numeric(2, 1)) – The initial conditions.

  • parameters (otp.hires.HIRESParameters) – The parameters.

Parameters

class otp.hires.HIRESParameters

Bases: otp.Parameters

Parameters for the HIRES problem.

Constructor Summary
HIRESParameters(varargin)

Create a HIRES parameters object.

Parameters:

varargin – A variable number of name-value pairs. A name can be any property of this class, and the subsequent value initializes that property.

Property Summary
K1

The reaction rate \(k_1\).

K2

The reaction rate \(k_2\).

K3

The reaction rate \(k_3\).

K4

The reaction rate \(k_4\).

K5

The reaction rate \(k_5\).

K6

The reaction rate \(k_6\).

KPlus

The reaction rate \(k_{+}\).

KMinus

The reaction rate \(k_{-}\).

KStar

The reaction rate \(k^*\).

OKS

The source term \(o_{k_s}\).

Presets

class otp.hires.presets.Canonical

Bases: otp.hires.HIRESProblem

HIRES preset proposed in [HW96] (pp. 144-145) which uses time span \(t ∈ [0, 321.8122]\), initial conditions

\[ y(0) = [1, 0, 0, 0, 0, 0, 0, 0.0057]^T, \]

and parameters

\[\begin{split} k_1 &= 1.71, \quad & k_2 &= 0.43, \quad & k_3 &= 8.32, \quad & k_4 &= 0.69, \quad & k_5 &= 0.035, \\ k_6 &= 8.32, & k_{+} &= 280, & k_{-} &= 0.69, & k^* &= 0.69, & o_{k_s} &= 0.0007. \end{split}\]

Constructor Summary
Canonical(varargin)

Create the canonical HIRES problem object.

Parameters:

varargin

A variable number of name-value pairs. The accepted names are

  • K1 – Value of \(k_1\).

  • K2 – Value of \(k_2\).

  • K3 – Value of \(k_3\).

  • K4 – Value of \(k_4\).

  • K5 – Value of \(k_5\).

  • K6 – Value of \(k_6\).

  • KPlus – Value of \(k_{+}\).

  • KMinus – Value of \(k_{-}\).

  • KStar – Value of \(k^*\).

  • OKS – Value of \(o_{k_s}\).