「関数 'Compute.eig' の入力または出力の数​または型が正しくあり​ません。」が表示され​る。

固有値を計算する際に、以下の箇所でエラーが発生しました。
関数 'Compute.eig' の入力または出力の数または型が正しくありません。
detzeta = eig(E); % 固有値問題を解く
代入の配列Eの型は以下となっております。
size(E)
ans = 64 64
class(E)
ans = 'double'
何か原因の可能性として考えられることがあれば、ご意見くださるでしょうか。
よろしくお願いいたします。

6 commentaires

Atsushi Ueno
Atsushi Ueno le 23 Mai 2023
ヒントください(どういう値を入力したらこのエラーが出るのですか?)
遼太朗
遼太朗 le 29 Mai 2023
連絡が遅くなり申し訳ありません。
Eの中身は添付画像のように複素数で構成された配列になっています。
よろしくお願いいたします。
Atsushi Ueno
Atsushi Ueno le 31 Mai 2023
ここで計算しても同じエラーが出ますか?
detzeta = eig(E); % Eを入力してここで実行する
遼太朗
遼太朗 le 1 Juin 2023
はい,おっしゃる通りそこで同じエラーが発生します.
Atsushi Ueno
Atsushi Ueno le 1 Juin 2023
エラーが出た直後に detzeta を一旦クリアしてから同じ計算をしてエラーが解消すれば、原因は出力側の変数です。
clear detzeta
detzeta = eig(E); % Eを入力してここで実行する
遼太朗
遼太朗 le 17 Juin 2023
ご連絡が遅くなり申し訳ございません。
ご指示されたようにdetzetaを一旦クリアした結果、エラーが解消したので出力側の変数が原因でした。
現在は問題なく固有値を出すことができています。
ご意見をくださって、ありがとうございました。

Connectez-vous pour commenter.

 Réponse acceptée

遼太朗
遼太朗 le 17 Juin 2023

1 vote

エラー原因は出力側の変数であったことが分かりました。
関数をmファイルの最下部に書く、あるいは関数化すると
エラーなく固有値を計算できております。
ありがとうございました。

Plus de réponses (0)

Catégories

En savoir plus sur 線形代数 dans Centre d'aide et File Exchange

Produits

Version

R2023a

Tags

Community Treasure Hunt

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

Start Hunting!