gpt4 book ai didi

c++ - 在不循环的情况下写入 .oct 文件中的矩阵?

转载 作者:行者123 更新时间:2023-11-30 02:52:03 24 4
gpt4 key购买 nike

在 Octave .oct 文件中,可以这样提取子矩阵:

B = A.extract(a-1,c-1,b-1,d-1) ;

相当于 Octave 代码中的 B = A(a:b,c:d),但是否可以用类似的方式写入矩阵的子集,

A(a-1,c-1,b-1,d-1) = B ; // some other smaller matrix 

或者我是否必须遍历相关的行/列并逐个元素地写入?

最佳答案

假设A是类 Array ,您可以使用以下方法之一(参见 the documentation ):

Array<T> & insert (const Array<T> &a, octave_idx_type r, octave_idx_type c)
Array<T> & insert (const Array<T> &a, const Array<octave_idx_type> &idx)

您只需要知道左上角的下标索引(或 N 维的等价物)。下面将插入二维矩阵 B进入二维矩阵 A , 在坐标 (a, c)

A.insert (B, a, c);

对于更多维度,您需要创建一个 Array<octave_idx_type>以及该点的坐标。

关于c++ - 在不循环的情况下写入 .oct 文件中的矩阵?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19273053/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com