How to create a special diagonal matrix with 2 vectors together?

3 ビュー (過去 30 日間)
CodeElinesa
CodeElinesa 2018 年 1 月 30 日
コメント済み: Walter Roberson 2018 年 1 月 30 日
my problem is those vectors are given,but you have to put them like image shown below I dont know how to change the dimension of B so that it can fit into the matrix A = linspace(1,6,6) B = linspace(11,16,6) P.S the question asked us to use diag...
  4 件のコメント
Stephen23
Stephen23 2018 年 1 月 30 日
CodeElinesa's "Answer" moved here:
Also, I want to know the way to use loop. So you could deal with both scalar and vector example for a and b...
Stephen23
Stephen23 2018 年 1 月 30 日
編集済み: Stephen23 2018 年 1 月 30 日
@CodeElinesa: it helps us if you post comments as comments, not answers.

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2018 年 1 月 30 日
hint 1:
diag(b(1:end-1), -1)
hint 2: you can add matrices together.
  5 件のコメント
CodeElinesa
CodeElinesa 2018 年 1 月 30 日
wait, its ok, I found the way. Thank you XD
Walter Roberson
Walter Roberson 2018 年 1 月 30 日
b(2:end)

サインインしてコメントする。

その他の回答 (1 件)

Andrei Bobrov
Andrei Bobrov 2018 年 1 月 30 日
編集済み: Andrei Bobrov 2018 年 1 月 30 日
full(gallery('tridiag',B(2:end),A,B(1:end-1)));
or
n = numel(A);
out = full(spdiags([B(:),A(:),B(:)],-1:1,n,n)');

カテゴリ

Help Center および File ExchangeCreating and Concatenating Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by