How to decompose a 4th order tensor

조회 수: 23 (최근 30일)
Derek Cooper
Derek Cooper 2021년 2월 3일
편집: Derek Cooper 2021년 2월 4일
Hello
Is there any matlab function to decompose a 4th order tensor?

답변 (2개)

Christine Tobler
Christine Tobler 2021년 2월 3일
The value of K1111 is overwritten with the next value in every loop iteration - is this your intention, or did you maybe mean to add them up? That is, for example,
K1111 = K1111 + inv(J) * F(a,A) * F(b,B) * K(A,B,K,D) * F(K,K) * F(d,D);
I'm also getting the impression you're using the same variable name K for both the iterator in the for-loop and the tensor K you're operating on. The formula you wrote up was using F(c, C) instead of F(K, K) in the code.
  댓글 수: 2
Derek Cooper
Derek Cooper 2021년 2월 3일
Thanks for you answer.
The sought is components of matrix M and yes i want to add them upp. and K(A,B,C,D) is taken with respect of positions of K in an old M matrix. I hope you answerstand. The positions are the same as in M.
Christine Tobler
Christine Tobler 2021년 2월 3일
But your code is using K(A, B, K, D), not K(A, B, C, D). Can you confirm if this is correct? I don't think the code matches up with the definition you've written above, but I'm not sure which of the two fits what you want to compute.

댓글을 달려면 로그인하십시오.


Derek Cooper
Derek Cooper 2021년 2월 3일
편집: Derek Cooper 2021년 2월 3일
Sorry you are right, it should be K(A,B,C,D), and is components of D. so maybe its appropriate to write it as D(A,B,C,D).
  댓글 수: 2
Christine Tobler
Christine Tobler 2021년 2월 3일
Is D a scalar index from 1 to 3, or is it a 4-dimensional array? It seems to be used for both, maybe there should be a different variable name for one of them, too.
Derek Cooper
Derek Cooper 2021년 2월 3일
D is a 3x3 matrix, not a 4 dimentional array. The reason why ABCD is used is because if K1111 is sought, then the value of D(1,1) should be taken since K1111 belongs to the same position as D(1,1)

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by