 F-14 Longitudinal Model - Maple Help F-14 Longitudinal Model

NOTE:  You will need to have an installed and functioning version of MATLAB® and Simulink® to run this example. Section Layout

 Import the System Simulate the System Import the Subsystem Initialization

$\mathrm{with}\left(\mathrm{BlockImporter}\right)$

 $\left[{\mathrm{BuildDE}}{,}{\mathrm{Import}}{,}{\mathrm{PrintSummary}}{,}{\mathrm{SimplifyModel}}\right]$ (1.1)

${}$ Import the System

We import the model with the following command.  We need to specify the name of the model to import, as well as a MATLAB® script that initializes the variable names.

$\mathrm{datadir}≔\mathrm{BlockImporter}:-\mathrm{DataDirectory}\left(\right):$

Using the Summary command, we can view the model that we have imported.

$\mathrm{PrintSummary}\left(\mathrm{model1}\right)$

 $\left[{{K}}_{{0}{,}{"Ka"}}{=}{0.677000000000000046}{,}{{K}}_{{0}{,}{"Kf"}}{=}{-}{1.74600000000000000}{,}{{K}}_{{0}{,}{"Ki"}}{=}{-}{3.86399999999999988}{,}{{K}}_{{0}{,}{"Kq"}}{=}{0.815599999999999992}{,}{{K}}_{{0}{,}{"Md"}}{=}{-}{6.88469999999999960}{,}{{K}}_{{0}{,}{"Mq"}}{=}{-}{0.657100000000000017}{,}{{K}}_{{0}{,}{"Mw"}}{=}{-}{0.00591999999999999992}{,}{{K}}_{{0}{,}{"Swg"}}{=}{3.}{,}{{K}}_{{0}{,}{"Ta"}}{=}{0.0500000000000000028}{,}{{K}}_{{0}{,}{"Tal"}}{=}{0.395899999999999974}{,}{{K}}_{{0}{,}{"Ts"}}{=}{0.100000000000000006}{,}{{K}}_{{0}{,}{"Uo"}}{=}{689.399999999999977}{,}{{K}}_{{0}{,}{"Vto"}}{=}{690.399999999999977}{,}{{K}}_{{0}{,}{"W1"}}{=}{2.97100000000000009}{,}{{K}}_{{0}{,}{"W2"}}{=}{4.14400000000000013}{,}{{K}}_{{0}{,}{"Zd"}}{=}{-}{63.9979000000000013}{,}{{K}}_{{0}{,}{"Zw"}}{=}{-}{0.638499999999999956}{,}{{K}}_{{0}{,}{"a"}}{=}{2.53480000000000016}{,}{{K}}_{{0}{,}{"b"}}{=}{64.1299999999999955}\right]$ (2.1)

We can now simplify the model to reduce the number of equations.

$\mathrm{PrintSummary}\left(\mathrm{smodel1}\right)$

 $\left[{{K}}_{{0}{,}{"Ka"}}{=}{0.677000000000000046}{,}{{K}}_{{0}{,}{"Kf"}}{=}{-}{1.74600000000000000}{,}{{K}}_{{0}{,}{"Ki"}}{=}{-}{3.86399999999999988}{,}{{K}}_{{0}{,}{"Kq"}}{=}{0.815599999999999992}{,}{{K}}_{{0}{,}{"Md"}}{=}{-}{6.88469999999999960}{,}{{K}}_{{0}{,}{"Mq"}}{=}{-}{0.657100000000000017}{,}{{K}}_{{0}{,}{"Mw"}}{=}{-}{0.00591999999999999992}{,}{{K}}_{{0}{,}{"Swg"}}{=}{3.}{,}{{K}}_{{0}{,}{"Ta"}}{=}{0.0500000000000000028}{,}{{K}}_{{0}{,}{"Tal"}}{=}{0.395899999999999974}{,}{{K}}_{{0}{,}{"Ts"}}{=}{0.100000000000000006}{,}{{K}}_{{0}{,}{"Uo"}}{=}{689.399999999999977}{,}{{K}}_{{0}{,}{"Vto"}}{=}{690.399999999999977}{,}{{K}}_{{0}{,}{"W1"}}{=}{2.97100000000000009}{,}{{K}}_{{0}{,}{"W2"}}{=}{4.14400000000000013}{,}{{K}}_{{0}{,}{"Zd"}}{=}{-}{63.9979000000000013}{,}{{K}}_{{0}{,}{"Zw"}}{=}{-}{0.638499999999999956}{,}{{K}}_{{0}{,}{"a"}}{=}{2.53480000000000016}{,}{{K}}_{{0}{,}{"b"}}{=}{64.1299999999999955}\right]$ (2.2) Simulate the System

First we take the system and build a set of differential equations, and assign the result to the variable sys.



$\mathrm{sys1}≔\mathrm{BuildDE}\left(\mathrm{smodel1}\right)$

 ${\mathrm{record}}{}\left({\mathrm{equations}}{,}{\mathrm{initialeqs}}{,}{\mathrm{known}}{,}{\mathrm{outputvars}}{,}{\mathrm{parameters}}{,}{\mathrm{sourceeqs}}\right)$ (3.1)

The following table illustrates the different components of the variable sys1.

Differential Equations

$\mathrm{sys1}:-\mathrm{equations}$

 $\left[\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{3}{,}{1}}{}\left({t}\right){=}\frac{{{K}}_{{0}{,}{"Kf"}}{}\left(\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{33}{,}{1}}{}\left({t}\right)\right){}{{K}}_{{0}{,}{"Ta"}}{+}{{x}}_{{33}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"Ki"}}{}{{K}}_{{0}{,}{"Ta"}}{-}{{x}}_{{3}{,}{1}}{}\left({t}\right)}{{{K}}_{{0}{,}{"Ta"}}}{,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{15}{,}{1}}{}\left({t}\right){=}\frac{{-}\sqrt{{3}}{}{{K}}_{{0}{,}{"Swg"}}{}{{K}}_{{0}{,}{"Ta"}}{}{{K}}_{{0}{,}{"Zw"}}{}{{K}}_{{0}{,}{"a"}}{}{{x}}_{{26}{,}{2}}{}\left({t}\right){+}{{K}}_{{0}{,}{"Uo"}}{}{{x}}_{{16}{,}{1}}{}\left({t}\right){}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{}{{K}}_{{0}{,}{"Ta"}}{+}{{K}}_{{0}{,}{"Zw"}}{}{{x}}_{{15}{,}{1}}{}\left({t}\right){}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{}{{K}}_{{0}{,}{"Ta"}}{-}{{K}}_{{0}{,}{"Swg"}}{}{{K}}_{{0}{,}{"Ta"}}{}{{K}}_{{0}{,}{"Zw"}}{}{{x}}_{{26}{,}{1}}{}\left({t}\right){+}{{K}}_{{0}{,}{"Zd"}}{}{{x}}_{{3}{,}{1}}{}\left({t}\right){}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}}{\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{}{{K}}_{{0}{,}{"Ta"}}}{,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{16}{,}{1}}{}\left({t}\right){=}\frac{{1}}{{16}}{}\frac{{16}{}{{K}}_{{0}{,}{"Mq"}}{}{{x}}_{{16}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"b"}}^{{2}}{}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{}{{K}}_{{0}{,}{"Ta"}}{+}{16}{}{{K}}_{{0}{,}{"Mw"}}{}{{x}}_{{15}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"b"}}^{{2}}{}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{}{{K}}_{{0}{,}{"Ta"}}{-}{4}{}\sqrt{{3}}{}{\mathrm{π}}{}{{K}}_{{0}{,}{"Mq"}}{}{{K}}_{{0}{,}{"Swg"}}{}{{K}}_{{0}{,}{"Ta"}}{}{{K}}_{{0}{,}{"a"}}{}{{K}}_{{0}{,}{"b"}}{}{{x}}_{{26}{,}{2}}{}\left({t}\right){+}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{}{{\mathrm{π}}}^{{2}}{}{{K}}_{{0}{,}{"Mq"}}{}{{K}}_{{0}{,}{"Ta"}}{}{{K}}_{{0}{,}{"Vto"}}{}{{x}}_{{25}{,}{1}}{}\left({t}\right){-}{4}{}{\mathrm{π}}{}{{K}}_{{0}{,}{"Mq"}}{}{{K}}_{{0}{,}{"Swg"}}{}{{K}}_{{0}{,}{"Ta"}}{}{{K}}_{{0}{,}{"b"}}{}{{x}}_{{26}{,}{1}}{}\left({t}\right){-}{16}{}\sqrt{{3}}{}{{K}}_{{0}{,}{"Mw"}}{}{{K}}_{{0}{,}{"Swg"}}{}{{K}}_{{0}{,}{"Ta"}}{}{{K}}_{{0}{,}{"a"}}{}{{K}}_{{0}{,}{"b"}}^{{2}}{}{{x}}_{{26}{,}{2}}{}\left({t}\right){-}{16}{}{{K}}_{{0}{,}{"Mw"}}{}{{K}}_{{0}{,}{"Swg"}}{}{{K}}_{{0}{,}{"Ta"}}{}{{K}}_{{0}{,}{"b"}}^{{2}}{}{{x}}_{{26}{,}{1}}{}\left({t}\right){+}{16}{}{{K}}_{{0}{,}{"Md"}}{}{{x}}_{{3}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"b"}}^{{2}}{}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}}{{{K}}_{{0}{,}{"b"}}^{{2}}{}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{}{{K}}_{{0}{,}{"Ta"}}}{,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{25}{,}{1}}{}\left({t}\right){=}{-}\frac{{1}}{{4}}{}\frac{{-}{4}{}{{x}}_{{26}{,}{2}}{}\left({t}\right){}\sqrt{{3}}{}{{K}}_{{0}{,}{"Swg"}}{}{{K}}_{{0}{,}{"a"}}{}{{K}}_{{0}{,}{"b"}}{+}{\mathrm{π}}{}{{K}}_{{0}{,}{"Vto"}}{}{{x}}_{{25}{,}{1}}{}\left({t}\right){}\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{-}{4}{}{{x}}_{{26}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"Swg"}}{}{{K}}_{{0}{,}{"b"}}}{\sqrt{{{K}}_{{0}{,}{"a"}}^{{3}}}{}{{K}}_{{0}{,}{"b"}}}{,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{26}{,}{1}}{}\left({t}\right){=}{{x}}_{{26}{,}{2}}{}\left({t}\right){,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{26}{,}{2}}{}\left({t}\right){=}\frac{{{u}}_{{1}{,}{1}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"a"}}^{{2}}{-}{2}{}{{x}}_{{26}{,}{2}}{}\left({t}\right){}{{K}}_{{0}{,}{"a"}}{-}{{x}}_{{26}{,}{1}}{}\left({t}\right)}{{{K}}_{{0}{,}{"a"}}^{{2}}}{,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{32}{,}{1}}{}\left({t}\right){=}{-}{{K}}_{{0}{,}{"W2"}}{}{{x}}_{{32}{,}{1}}{}\left({t}\right){+}{{x}}_{{16}{,}{1}}{}\left({t}\right){,}{{\mathrm{Sink}}}_{{\mathrm{Scope}}{,}{34}{,}{1}{,}{1}}{}\left({t}\right){=}\frac{{{x}}_{{15}{,}{1}}{}\left({t}\right)}{{{K}}_{{0}{,}{"Uo"}}}{,}{{\mathrm{Sink}}}_{{\mathrm{Scope}}{,}{34}{,}{2}{,}{1}}{}\left({t}\right){=}{{x}}_{{16}{,}{1}}{}\left({t}\right){,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{35}{,}{1}}{}\left({t}\right){=}\frac{{{x}}_{{15}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"Tal"}}{-}{{x}}_{{35}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"Uo"}}}{{{K}}_{{0}{,}{"Uo"}}{}{{K}}_{{0}{,}{"Tal"}}}{,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{37}{,}{1}}{}\left({t}\right){=}\frac{{{\mathrm{Source}}}_{{\mathrm{SigGen}}{,}{36}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"Ts"}}{-}{{x}}_{{37}{,}{1}}{}\left({t}\right)}{{{K}}_{{0}{,}{"Ts"}}}{,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{33}{,}{1}}{}\left({t}\right){=}{-}\frac{{{K}}_{{0}{,}{"Kq"}}{}{{K}}_{{0}{,}{"Tal"}}{}{{K}}_{{0}{,}{"Ts"}}{}{{K}}_{{0}{,}{"W1"}}{}{{x}}_{{32}{,}{1}}{}\left({t}\right){-}{{K}}_{{0}{,}{"Kq"}}{}{{K}}_{{0}{,}{"Tal"}}{}{{K}}_{{0}{,}{"Ts"}}{}{{K}}_{{0}{,}{"W2"}}{}{{x}}_{{32}{,}{1}}{}\left({t}\right){+}{{K}}_{{0}{,}{"Kq"}}{}{{K}}_{{0}{,}{"Tal"}}{}{{K}}_{{0}{,}{"Ts"}}{}{{x}}_{{16}{,}{1}}{}\left({t}\right){+}{{K}}_{{0}{,}{"Ka"}}{}{{x}}_{{35}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"Ts"}}{-}{{x}}_{{37}{,}{1}}{}\left({t}\right){}{{K}}_{{0}{,}{"Tal"}}}{{{K}}_{{0}{,}{"Ts"}}{}{{K}}_{{0}{,}{"Tal"}}}\right]$ (3.2)

${}$

Parameter values

$\mathrm{sys1}:-\mathrm{parameters}$

 $\left[{{K}}_{{0}{,}{"Ka"}}{=}{0.677000000000000046}{,}{{K}}_{{0}{,}{"Kf"}}{=}{-}{1.74600000000000000}{,}{{K}}_{{0}{,}{"Ki"}}{=}{-}{3.86399999999999988}{,}{{K}}_{{0}{,}{"Kq"}}{=}{0.815599999999999992}{,}{{K}}_{{0}{,}{"Md"}}{=}{-}{6.88469999999999960}{,}{{K}}_{{0}{,}{"Mq"}}{=}{-}{0.657100000000000017}{,}{{K}}_{{0}{,}{"Mw"}}{=}{-}{0.00591999999999999992}{,}{{K}}_{{0}{,}{"Swg"}}{=}{3.}{,}{{K}}_{{0}{,}{"Ta"}}{=}{0.0500000000000000028}{,}{{K}}_{{0}{,}{"Tal"}}{=}{0.395899999999999974}{,}{{K}}_{{0}{,}{"Ts"}}{=}{0.100000000000000006}{,}{{K}}_{{0}{,}{"Uo"}}{=}{689.399999999999977}{,}{{K}}_{{0}{,}{"Vto"}}{=}{690.399999999999977}{,}{{K}}_{{0}{,}{"W1"}}{=}{2.97100000000000009}{,}{{K}}_{{0}{,}{"W2"}}{=}{4.14400000000000013}{,}{{K}}_{{0}{,}{"Zd"}}{=}{-}{63.9979000000000013}{,}{{K}}_{{0}{,}{"Zw"}}{=}{-}{0.638499999999999956}{,}{{K}}_{{0}{,}{"a"}}{=}{2.53480000000000016}{,}{{K}}_{{0}{,}{"b"}}{=}{64.1299999999999955}\right]$ (3.3)

${}$

Initial conditions

$\mathrm{sys1}:-\mathrm{initialeqs}$

 $\left[{{x}}_{{3}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{15}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{16}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{25}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{26}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{26}{,}{2}}{}\left({0}\right){=}{0}{,}{{x}}_{{32}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{33}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{35}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{37}{,}{1}}{}\left({0}\right){=}{0}\right]$ (3.4)

${}$

Equations for the sources (inputs)

$\mathrm{sys1}:-\mathrm{sourceeqs}$

 $\left[{{u}}_{{1}{,}{1}{,}{1}}{}\left({t}\right){=}{0}{,}{{\mathrm{Source}}}_{{\mathrm{SigGen}}{,}{36}{,}{1}}{}\left({t}\right){=}{{}\begin{array}{cc}{-}{1}& {t}{-}{4.000000000}{}{\mathrm{π}}{}{\mathrm{trunc}}{}\left(\frac{{0.2500000000}{}{t}}{{\mathrm{π}}}\right){<}{2.000000000}{}{\mathrm{π}}\\ {1}& {\mathrm{otherwise}}\end{array}\right]$ (3.5)

${}$

List of sinks (outputs)

$\mathrm{sys1}:-\mathrm{outputvars}$

 $\left[{{\mathrm{Sink}}}_{{\mathrm{Scope}}{,}{34}{,}{1}{,}{1}}{}\left({t}\right){,}{{\mathrm{Sink}}}_{{\mathrm{Scope}}{,}{34}{,}{2}{,}{1}}{}\left({t}\right)\right]$ (3.6)

${}$



Using the information in the variable sys, we construct a simulation procedure.



 ${\mathbf{proc}}\left({\mathrm{x_rkf45_dae}}\right)\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{...}\phantom{\rule[-0.0ex]{0.5em}{0.0ex}}{\mathbf{end proc}}$ (3.7)



Then we plot the simulation results.   Import the Subsystem

First we want to close the Simulink model without saving it, so we can reload it with the subsystem.  We send the command close_system('m_f14', 0) through the link to MATLAB®.

$\mathrm{Matlab}:-\mathrm{evalM}\left("close_system \left(\text{'}m_f14\text{'},0\right)"\right)$

We can import a subsystem from the model.



The set of equations are simplified and the simplified set of equations is printed using the PrintSummary command.



$\mathrm{PrintSummary}\left(\mathrm{smodel2}\right):$

 $\left[{{K}}_{{0}{,}{"Md"}}{=}{-}{6.88469999999999960}{,}{{K}}_{{0}{,}{"Mq"}}{=}{-}{0.657100000000000017}{,}{{K}}_{{0}{,}{"Mw"}}{=}{-}{0.00591999999999999992}{,}{{K}}_{{0}{,}{"Uo"}}{=}{689.399999999999977}{,}{{K}}_{{0}{,}{"Zd"}}{=}{-}{63.9979000000000013}{,}{{K}}_{{0}{,}{"Zw"}}{=}{-}{0.638499999999999956}\right]$ (4.1)

The differential equations are created.

 ${\mathrm{record}}{}\left({\mathrm{equations}}{,}{\mathrm{initialeqs}}{,}{\mathrm{known}}{,}{\mathrm{outputvars}}{,}{\mathrm{parameters}}{,}{\mathrm{sourceeqs}}\right)$ (4.2)

The following table illustrates the different components of the variable sys2.

Differential Equations

$\mathrm{sys2}:-\mathrm{equations}$

 $\left[{{y}}_{{1}{,}{1}{,}{1}}{}\left({t}\right){=}\frac{{{x}}_{{12}{,}{1}}{}\left({t}\right)}{{{K}}_{{0}{,}{"Uo"}}}{,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{12}{,}{1}}{}\left({t}\right){=}{{K}}_{{0}{,}{"Uo"}}{}{{y}}_{{1}{,}{2}{,}{1}}{}\left({t}\right){+}{{K}}_{{0}{,}{"Zd"}}{}{{u}}_{{1}{,}{1}{,}{1}}{}\left({t}\right){+}{{K}}_{{0}{,}{"Zw"}}{}{{x}}_{{12}{,}{1}}{}\left({t}\right){-}{{u}}_{{1}{,}{2}{,}{1}}{}\left({t}\right){,}\frac{{ⅆ}}{{ⅆ}{t}}{}{{x}}_{{13}{,}{1}}{}\left({t}\right){=}{{K}}_{{0}{,}{"Md"}}{}{{u}}_{{1}{,}{1}{,}{1}}{}\left({t}\right){+}{{K}}_{{0}{,}{"Mq"}}{}{{x}}_{{13}{,}{1}}{}\left({t}\right){+}{{K}}_{{0}{,}{"Mw"}}{}{{x}}_{{12}{,}{1}}{}\left({t}\right){-}{{u}}_{{1}{,}{3}{,}{1}}{}\left({t}\right){,}{{y}}_{{1}{,}{2}{,}{1}}{}\left({t}\right){=}{{x}}_{{13}{,}{1}}{}\left({t}\right)\right]$ (4.3)

${}$

Parameter values

$\mathrm{sys2}:-\mathrm{parameters}$

 $\left[{{K}}_{{0}{,}{"Md"}}{=}{-}{6.88469999999999960}{,}{{K}}_{{0}{,}{"Mq"}}{=}{-}{0.657100000000000017}{,}{{K}}_{{0}{,}{"Mw"}}{=}{-}{0.00591999999999999992}{,}{{K}}_{{0}{,}{"Uo"}}{=}{689.399999999999977}{,}{{K}}_{{0}{,}{"Zd"}}{=}{-}{63.9979000000000013}{,}{{K}}_{{0}{,}{"Zw"}}{=}{-}{0.638499999999999956}\right]$ (4.4)

${}$

Initial conditions

$\mathrm{sys2}:-\mathrm{initialeqs}$

 $\left[{{x}}_{{12}{,}{1}}{}\left({0}\right){=}{0}{,}{{x}}_{{13}{,}{1}}{}\left({0}\right){=}{0}\right]$ (4.5)

${}$

Equations for the sources (inputs)

$\mathrm{sys2}:-\mathrm{sourceeqs}$

 $\left[{{u}}_{{1}{,}{1}{,}{1}}{}\left({t}\right){=}{0}{,}{{u}}_{{1}{,}{2}{,}{1}}{}\left({t}\right){=}{0}{,}{{u}}_{{1}{,}{3}{,}{1}}{}\left({t}\right){=}{0}\right]$ (4.6)

${}$

List of sinks (outputs)

$\mathrm{sys2}:-\mathrm{outputvars}$

 $\left[{{y}}_{{1}{,}{1}{,}{1}}{}\left({t}\right){,}{{y}}_{{1}{,}{2}{,}{1}}{}\left({t}\right)\right]$ (4.7)

${}$