Hi,
Is it possible *somehow* in Mathcad to have more-than-2 dimension matrix ? I don't want to represent them (that would be really awkard), just to define and read the elements, do some math ... the usual.
The only thing I saw that came close was to use nested matrix, but that gets a bit messy in terms of reading. X[a,b,c looks a lot better than ((X[a)[b)[c ...
Thanks
Solved! Go to Solution.
We have complained about this for many years too. The very obvious indexing schemes such as you show only work on the rhs of an assignment operator, not on the lhs. It makes for some additional pain when using nested arrays!
We have been asking for multidimensional arrays for at least the last 15 years. Mathsoft never gave any indication that they listened to the numerous requests for this feature, and when PTC purchased Mathsoft they apparently purchased the deafness along with the product. So the only solution is a hack job using nested arrays.
Hi Adrien,
unfornately no! It is not possible. I hope that MC prime will some day introduce 3D matricees. Until then we'll have to cope with PTC's "messy" implementation of matrix definitions.
Raiko
Thanks a lot. Nested matrix it will be then. *sigh*
I guess the next question is : What am I doing wrong in declaring my nested matrix ? A general declaration with all indexes varying doesn't seem to work. I assume a loop would do it, but that's a bit of a pain.
(Assuming i,j,k,u, Vin,Vout,fsw and t are defined properly)
We have complained about this for many years too. The very obvious indexing schemes such as you show only work on the rhs of an assignment operator, not on the lhs. It makes for some additional pain when using nested arrays!
*deep sigh*
Thank you very much Richard.
One might argue that this kind of things is pushing the software to the limits, but it really seems some times that Mathcad's limits are easily reached...
Some days, I really resent the guy who got me to buy Mathcad because he wouldn't sell me Maple without Maplesim...
but it really seems some times that Mathcad's limits are easily reached...
Sometimes that is true. The really sad thing about this is that it did not have to be true. All of the things we have been asking for year after year could have been implemented if PTC had decided to put their resources into them. Instead they decided to create Prime, so instead of going forwards in capability we have gone backwards, just so that we can have (in their opinion) a better interface.
I don't think it is just the interface, although that's the most obvious. Sometimes, it is easier to tear a building down and build a new one with a proper architecture, rather than adding floors on the old one and just hope that everything is not going to collapse. If PTC is at least a little bit sensible (how naive of me to still think that ...), they must have taken it appart in order to have better foundations for future improvements.
Except that there is no way to know if the foundations are good enough to support a taller building, since the new one is smaller than the old one.
From what you guys say, it looks very much like we are currently under Prime 0.3 ...
It's mainly the interface, but I think they wanted to make changes to the API too. When they built the new foundation it would have been the ideal time to build in the capability for multidimensional arrays. I don't think they did that though, so we are as far away from that goal as we ever were. Further, in fact.
One exapmple of 3D-matrix and its interpolation
Out of curiosity how do you create a blank line (first row) in matrix 2 and 3?
FDS wrote:
Out of curiosity how do you create a blank line (first row) in matrix 2 and 3?
We must have a 2x3 or 2x4 matrix and inert (copy and paste) vectors and matrix.
Valery probably filled the positions with a variable named " ", using [CNTRL-SHIFT-K] [SPACE] [CNTRL-SHIFT-K]. The [CNTRL-SHIFT-K] press allows you to insert (almost) any character into a varaible.
Don't forget to assign a value to that variable " "...
First press [COLON]0 onto a blank part of the sheet, then move your cursor to the placeholder at the lhs of the assignment then press [CNTRL-SHIFT-K] [SPACE] [CNTRL-SHIFT-K] and finally move your cursor out of the assignment. The variable " " is defined, the definition looks like
:=0
Success!
Luc
Thank you Luc, now I understand it.