How to read elements from a computed matrix without define a new variable?
8 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Dear all,
I am having a question about matrix computation. For example, a matrix A is calculated by an expression,
. I am only interested in the element
. Simply I can do
and
. I am wondering whether there is a way to do this without defining A. This line of code is not legal in MATLAB but it shows my goal clearly,
.
. I am only interested in the element
and
. I am wondering whether there is a way to do this without defining A. This line of code is not legal in MATLAB but it shows my goal clearly,
. Thanks!
7 Commenti
gonzalo Mier
il 10 Mag 2019
Yize Wang, this is the easiest way and fastest to do it as I know. If you are concern about legibility, you can encapsulate this piece of code in a function called get_1_comp_system or some cool name (I'm not good at all naming).
Risposta accettata
Stephen23
il 10 Mag 2019
Modificato: Stephen23
il 10 Mag 2019
MATLAB does not allow indexing into the results of operations. You can either use a temporary variable (which is probably the most efficient solution), or you could call subsref directly:
>> B = rand(3);
>> C = rand(3);
>> D = rand(3);
>> a = subsref(expm(B*C+D),substruct('()',{1,1}))
a = 8.6593
>> A = expm(B*C+D) % for comparison:
A =
8.6593 7.3898 6.2134
13.1945 16.0237 11.6736
13.1316 13.8705 11.8273
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!