riccati matrix - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Mozilla Firefox.

Online Help

All Products    Maple    MapleSim


DEtools

  

matrix_riccati

  

solve a Matrix Riccati differential equation

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

matrix_riccati(A, K, Z0, t)

matrix_riccati(A, K, Z0, t=t0)

matrix_riccati(A, K, t)

matrix_riccati(A, K, t=t0)

Parameters

A, K

-

Matrix coefficients of the Riccati Matrix Equation

Z0

-

Matrix representing the initial conditions for t=t0

t

-

independent variable

t0

-

position of initial conditions

Description

• 

The Matrix Riccati differential equation is

Z⁢' ⁡t=Z⁡t·A⁡t·Z⁡t+Z⁡t·K⁡t+transpose⁡K⁡t·Z⁡t

  

with

Z⁡t0=Z0

  

where Z,A,K, and Z0 are n by n matrices. matrix_riccati returns the solution, Z.

• 

The command with(DEtools,matrix_riccati) allows the use of the abbreviated form of this command.

Examples

> 

with⁡DEtools:

The unknowns are x⁡t,y⁡t

> 

Z≔Matrix⁡x⁡t,y⁡t,y⁡t,−x⁡t

Z≔x⁡ty⁡ty⁡t−x⁡t

(1)

A simple example would be

> 

A≔Matrix⁡−t,1,1,t

A≔−t11t

(2)
> 

K≔Matrix⁡c,0,0,c

K≔c00c

(3)

The matrix with the initial values x⁡t0 and y⁡t0 is

> 

Z0≔Matrix⁡_C1,_C2,_C2,−_C1

Z0≔_C1_C2_C2−_C1

(4)

The system of equations represented by these matrices is thus

> 

sys≔map⁡diff,Z,t=Z·A·Z+Z·K+K%T·Z

sys≔ⅆⅆtx⁡tⅆⅆty⁡tⅆⅆty⁡t−ⅆⅆtx⁡t=−x⁡t⁢t+y⁡t⁢x⁡t+x⁡t+y⁡t⁢t⁢y⁡t+2⁢x⁡t⁢c−x⁡t⁢t+y⁡t⁢y⁡t−x⁡t+y⁡t⁢t⁢x⁡t+2⁢y⁡t⁢c−y⁡t⁢t−x⁡t⁢x⁡t+−x⁡t⁢t+y⁡t⁢y⁡t+2⁢y⁡t⁢c−y⁡t⁢t−x⁡t⁢y⁡t−−x⁡t⁢t+y⁡t⁢x⁡t−2⁢x⁡t⁢c

(5)

The two coupled odes are

> 

ode1≔lhs⁡sys1,1=rhs⁡sys1,1

ode1≔ⅆⅆtx⁡t=−x⁡t⁢t+y⁡t⁢x⁡t+x⁡t+y⁡t⁢t⁢y⁡t+2⁢x⁡t⁢c

(6)
> 

ode2≔lhs⁡sys1,2=rhs⁡sys1,2

ode2≔ⅆⅆty⁡t=−x⁡t⁢t+y⁡t⁢y⁡t−x⁡t+y⁡t⁢t⁢x⁡t+2⁢y⁡t⁢c

(7)

The matrix solution to this matrix system of equations with initial conditions Z0 at t0=0 is computed as:

> 

matrix_sol≔matrix_riccati⁡A,K,Z0,t=0:

Recalling the form of Z, the solution to the system of odes is constructed from matrix_sol as

> 

sol≔x⁡t=matrix_sol1,1,y⁡t=matrix_sol1,2

sol≔x⁡t=4⁢ⅇt⁢c2⁢c2⁢2⁢ⅇ2⁢t⁢c⁢_C12⁢c⁢t+2⁢ⅇ2⁢t⁢c⁢_C22⁢c⁢t−ⅇ2⁢t⁢c⁢_C12−ⅇ2⁢t⁢c⁢_C22+4⁢_C1⁢c2+_C12+_C224⁢ⅇ2⁢t⁢c2⁢_C12⁢c2⁢t2+4⁢ⅇ2⁢t⁢c2⁢_C22⁢c2⁢t2+4⁢ⅇ2⁢t⁢c2⁢_C12⁢c2−4⁢ⅇ2⁢t⁢c2⁢_C12⁢c⁢t+4⁢ⅇ2⁢t⁢c2⁢_C22⁢c2−4⁢ⅇ2⁢t⁢c2⁢_C22⁢c⁢t+16⁢ⅇ2⁢t⁢c⁢_C1⁢c3⁢t−8⁢ⅇ2⁢t⁢c⁢_C12⁢c2+4⁢ⅇ2⁢t⁢c⁢_C12⁢c⁢t−8⁢ⅇ2⁢t⁢c⁢_C22⁢c2+4⁢ⅇ2⁢t⁢c⁢_C22⁢c⁢t−16⁢ⅇ2⁢t⁢c⁢_C2⁢c3+ⅇ2⁢t⁢c2⁢_C12+ⅇ2⁢t⁢c2⁢_C22−8⁢ⅇ2⁢t⁢c⁢_C1⁢c2+4⁢_C12⁢c2+4⁢_C22⁢c2+16⁢_C2⁢c3+16⁢c4−2⁢ⅇ2⁢t⁢c⁢_C12−2⁢ⅇ2⁢t⁢c⁢_C22+8⁢_C1⁢c2+_C12+_C22,y⁡t=−8⁢ⅇt⁢c2⁢c3⁢ⅇ2⁢t⁢c⁢_C12+ⅇ2⁢t⁢c⁢_C22−_C12−_C22−2⁢_C2⁢c4⁢ⅇ2⁢t⁢c2⁢_C12⁢c2⁢t2+4⁢ⅇ2⁢t⁢c2⁢_C22⁢c2⁢t2+4⁢ⅇ2⁢t⁢c2⁢_C12⁢c2−4⁢ⅇ2⁢t⁢c2⁢_C12⁢c⁢t+4⁢ⅇ2⁢t⁢c2⁢_C22⁢c2−4⁢ⅇ2⁢t⁢c2⁢_C22⁢c⁢t+16⁢ⅇ2⁢t⁢c⁢_C1⁢c3⁢t−8⁢ⅇ2⁢t⁢c⁢_C12⁢c2+4⁢ⅇ2⁢t⁢c⁢_C12⁢c⁢t−8⁢ⅇ2⁢t⁢c⁢_C22⁢c2+4⁢ⅇ2⁢t⁢c⁢_C22⁢c⁢t−16⁢ⅇ2⁢t⁢c⁢_C2⁢c3+ⅇ2⁢t⁢c2⁢_C12+ⅇ2⁢t⁢c2⁢_C22−8⁢ⅇ2⁢t⁢c⁢_C1⁢c2+4⁢_C12⁢c2+4⁢_C22⁢c2+16⁢_C2⁢c3+16⁢c4−2⁢ⅇ2⁢t⁢c⁢_C12−2⁢ⅇ2⁢t⁢c⁢_C22+8⁢_C1⁢c2+_C12+_C22

(8)

This result can be verified with odetest

> 

odetest⁡sol,ode1,ode2

0,0

(9)

See Also

dsolve

odetest

riccati_system

riccatisol