2.8.3. Higher-order perturbation

You can solve for higher-order perturbation if you are in one of the following cases:

  1. you are using symbolic derivatives and those derivatives have been precomputed while “rising” the model, through option max_deriv_order

  2. you are using automatic derivatives

  3. you are using numerical derivatives

  4. you are using matlab derivatives

And you are able to solve the generalized system of Sylvester equations.

Choosing the derivatives

To change the type of derivatives, use the option solve_derivatives_type. RISE implements the following 4 types of derivatives:

  • symbolic

  • numerical

  • automatic

  • matlab

Solving the system of generalized Sylvester equations

The complicated linear problem is solved using a solver that can be called using the syntax

[X,flag,relres,iter,resvec] = linsolver(A,b,...
TolFun,Maxiter,...
M1,M2,x0,vargs{:});

Where the input arguments are given by

  • A : either a square matrix of a function handle that return the result of the operation \(A\times x\) without explicitly forming and storing \(A\).

  • b : the right-hand side of the operation \(A\times x = b\).

  • TolFun : the tolerance criterion

  • Maxiter : the maximum number of iterations

  • M1 = [] : not set

  • M2 = [] : not set

  • x0 : initial guess for the solution

  • vargs : potential additional input arguments for the solver utilized.

And the output arguments are :

  • X : the final solution

  • flag : = 0 if the problem solves, =1 if the maximum number of iterations is reached, = some other number otherwise

  • relres : the relative residual norm(b-A*x)/norm(b)

  • iter : the iteration number iter at the final solution X was computed

  • resvec : a vector of the residual norm at each half iteration, including the first residual norm(b-A*x0)

Change the default setting using option solve_linsyst_user_algo.

These are some of the algorithms that can be used in Matlab.

  • ‘tfqmr’ (default)

  • ‘bicg’

  • ‘bicgstab’

  • ‘bicgstabl’

  • ‘cgs’

  • ‘gmres’