How to build a growing square matrix with the following values?
조회 수: 1 (최근 30일)
이전 댓글 표시
I am working on some code to find the condition of a spring matrix. I know the matrix in question, but I am not sure how to create a for-loop to make a bigger matrix after every iteration. In general, the matrix looks something this:
Considering the simple case where k1=k2=kn=1.
How would I go about constructing this matrix, computing a condition, then constructing a bigger matrix, computing the condition, and so on?
댓글 수: 0
채택된 답변
Akira Agata
2017년 2월 17일
I think this code will generate the matrix.
n = 10;
k = ones(n+1,1);
for kk = 1:n
A = - diag(k(1:kk)) - diag(k(2:kk+1));
if kk>1
A = A + diag(k(2:kk),-1) + diag(k(2:kk),1);
end
% To display the matrix for each loop
A
end
The value k_1 ~ k_n in your picture corresponds to the array k in this script.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!