Calculating specific elements of a large symbolic matrix
3 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I have a big matrix with order of multiples of 3 e.g 150*150,300*300 etc. The matrix is in symbolic form. I want to calculate first three elements of first three rows of its inverse. I have tried; guasian elimination, block wise inversion, co factor approach and LU decomposition. All these algorithms work fine. The problem is that the matrix is in symbolic form and it is very large (300*300). So, it takes a lot of time. Is there any method which could save the time?
0 comentarios
Respuestas (1)
Stephen Jue
el 12 de Mayo de 2017
Hi,
One thing you can do to possibly speed up the computation is to only calculate the first three columns of the inverse (As in slide 2 of this presentation ). However, from what I have found, this tends to be slower than just calculating the inverse of the entire matrix.
If at all possible, consider replacing some of the symbolic values of your matrix with numbers to reduce the computation time using subs. You can also factor out any common terms.
If you do not need exact precision, but instead precision up to n digits, consider using variable precision arithmetic instead of symbolic. This will speed up the computation quite a bit.
0 comentarios
Ver también
Categorías
Más información sobre Symbolic Math Toolbox en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!