SGJanssens

Mr. Sebastiaan Janssens

55 Reputation

4 Badges

12 years, 265 days
Utrecht University
Netherlands

Social Networks and Content at Maplesoft.com

MaplePrimes Activity


These are replies submitted by SGJanssens

Combining a symmetric user indexing function with sparse storage seems to work well. I put some comments and results here.

Thank you very much for your comments.

 

@acer 

Sorry, it was me. Following up on the earlier suggestion by @vv I thought it could be interesting for others to see a more extensive discussion of efficiency, with a worksheet attached. I had preferred to do that in a post rather than a question.

If MaplePrimes does not want people to convert their questions into posts, then perhaps it is better if the edit box does not offer that option anymore.

 

 

In my (as usual, not sufficiently humble) opinion, it helps when you give this (and your other questions that you posted around the same time) more descriptive titles and also try more yourself, because you will learn more. It is fine to be stuck for a while: Finding a solution at the end is then even more fun and rewarding.

 

@Markiyan Hirnyk 

While I am not a power user, I like the TTY interface, because it helps in using a different editor. (Thank you, @Joe Riel, for your package for Emacs.)

Probably I would not really use the new image feature that is discussed in this post, but it is good to know that in general the TTY interface is not being neglected.

 

@acer 

Thank you! Now I finally understand why one could want to declare an Array with empty storage.

By the way, it looks like higher dimensional symmetric indexing works fine for tables. (As a consequence, it also works for the long obsolete (lowercase) array type, which I think was built on top of a table.) For rtables, the situation seems to be like I sketched in my initial post.

 

 

If I input your matrix and call it M, then

LinearAlgebra:-MatrixInverse(M);

returns its inverse. Did you try this?

(It is probably worthwhile to study the structure of M a bit closer, not just tell Maple to invert it. For instance, M is block diagonal with the lower block a diagonal matrix itself. The upper block also looks very regular.)

 

@vv Thank you, yes, I noticed that

B := Array(1..100, 1..100, 1..100, storage=sparse);

works, or at least does not return an error. (It also works with "sparse[upper]" or "sparse[lower]" instead of "sparse", so that looks promising as well.)

Your answer motivated me to pursue this. Once I have some reasonable test results, I will follow up.

 

Page 1 of 1