How to specify tolerance using linsolve ?

Hi,
I have a linear system that I want to solve with Matlab using linsolve. My problem is that the coefficients' range of the system is huge. The minimum coefficient start at e-20 while the max reach 10e25. When I use linsolve, I get a warning telling me "Warning: Rank deficient, rank = 15, tol = 5.2711e+005.". When I use rank on my system, I effectively observe that my system is not full rank. But when I use rank(sys, tol) with a small tol value (~e-15), I obtain a full rank system.
So I suppose that linsolve choose a tolerance that is to high for my system and my question is if there exists a way to specify a tolerance value to linsolve in ordre to solve system with a high range of coefficients.
Thanks

 Respuesta aceptada

pietro
pietro el 16 de Nov. de 2014

0 votos

It is strongly suggested to normalize your design variables, contraints and so on in order to have a similar variation of the gradient and lagragian functions. Please post your problem and I will help you

3 comentarios

Hugo
Hugo el 16 de Nov. de 2014
I try to solve a system in ordrer to compute the coefficients of the solution of a Laplace problem in a domain that looks like a superposition of annulus. The linear system to solve is described here (from page 8) : http://onlinewww.jpier.org/PIER/pier92/01.09032301.pdf
In summary, I put the coefficients of all equations given in this paper in a matrix representing my system. Having infinite sum and indices this system is theoretically of infinite size but I truncate it to a certain order. My code is pretty long but is nothing else than the coefficients expressions listed in this paper (eq (38)–(49), (52)–(54), (56)–(60), (62) and (64)). I can put it here if needed.
pietro
pietro el 16 de Nov. de 2014
well the design variables may be scaled in this way:
(x-lb)./(ub-lb)
where x is the array with the design variables, ub the array with upper bounds and lb is the array with lower bounds
Hugo
Hugo el 17 de Nov. de 2014
Thanks for your help, normalization indeed solve my problem.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Systems Of Linear Equations en Centro de ayuda y File Exchange.

Preguntada:

el 16 de Nov. de 2014

Comentada:

el 17 de Nov. de 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by