Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations waross on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

need help wiht PTC mathcad there is not enough memory for this calculation error 1

Status
Not open for further replies.

Hana_Opt

Student
Oct 4, 2023
3
0
0
DZ
hello every one,
I am new to mathcad, and I need to calculate the inverse of a 16x16 matrix, I have the symbolic expression of every single element of the matrix but they are quite large, so I try to calculate the inverse matrix using a symbol for each element, and after having it, I am willing to replace its elements with their expressions and calculate them individually. The promblem is that in every time I get the messenge " there is not enough memory for this calculation,try to free up some memory by decreasing the matix size or by breaking up the file."
Is there any way to solve this problem?
if not and any one could help with any suggestions I will deaply appreciate it.
I will attach a picture of what I am trying to do for more explanation.
Thank you all in advance for your help.
16x16_inverse_matrix_r0oxhu.png
 
Replies continue below

Recommended for you

I suggest you experiment with a smaller matrix, so you can get an idea of what is going on, but roughly speaking the symbolic inverse of an NxN matrix is going to be of the order of NxNxN^N terms (I think) which for N=16 is a mere 5E21, 5 billion trillion symbols. The command in Matlab is here

if you have access to Matlab or possibly GNU/Octave

Alternatively you may have to code up a manual method and write each term out explicitly.



Cheers

Greg Locock


New here? Try reading these, they might help FAQ731-376
 
dear Greg Locock,
thank you very much for your help,I really appriciate it.
Actually, that is what I am trying to do, to write each term explicitly, but that is so hard regarding the large size of each single element of the matrix in addition to the use of the symbols, I already tried with a smaller matrix, but the thing is that I was avoiding doing it manually with a larger terms in fear of making mistakes, I am not familliar with matlab and I didn't know if it does calculate using symbols, I only need to calculate 4 raws of the inverse matrix, so I will give Matlab a shot and let you know.it might take some time since I have no clue about how to do it but I'm still trying though.
I repeat my sincere thanks.



cheers

Hana opt

 
Aye, good luck, let me know how you go, the more I think about this the harder it is. If you can find an integer logic solution for inverting a 16x16 matrix, then you could code each element as a unique prime number, and then substitute your actual problem back in. So for example inv([2,3;5,7]) would give you a solution you could substitute your equations into. Sorry, not a maths bloke, my terminology is shaky.

Cheers

Greg Locock


New here? Try reading these, they might help FAQ731-376
 
IRstuff, indeed I couldn't get a solution with that, so I had to replace some of the elements with real numbers, and after that I used the "solve," function to calculate each element separetely and it worked in the end.
thank you very much all along with Greg locock for trying to help me.
 
I think this is beyond MathCad. I think you need to explore methods that FEA uses to solve their matrices ... something like "wavefront decomposition" ?

"Hoffen wir mal, dass alles gut geht !"
General Paulus, Nov 1942, outside Stalingrad after the launch of Operation Uranus.
 
Status
Not open for further replies.
Back
Top