How to read elements from a computed matrix without define a new variable?
2 次查看(过去 30 天)
显示 更早的评论
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, .
Thanks!
7 个评论
gonzalo Mier
2019-5-10
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).
采纳的回答
Stephen23
2019-5-10
编辑:Stephen23
2019-5-10
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 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!