gpt4 book ai didi

arrays - 在矩阵中减去或添加向量

转载 作者:行者123 更新时间:2023-12-04 15:20:02 24 4
gpt4 key购买 nike

我正在尝试减去矩阵的向量。换句话说,假设我有矩阵 A有元素

x1    x2    x3    x4
y1 y2 y3 y4
z1 z2 z3 z4

我希望能够减去向量
x1  
y1
z1


x2
y2
z2

我怎么能做到这一点?我试着做
implict none
real, dimension(3,4) :: A
real,dimension(3) :: vector
vector(1)=A(1,1)-A(1,2)
vector(2)=A(2,1)-A(2,2)
vector(3)=A(3,1)-A(3,2)

然而,这是相当粗糙的。此外,如果我需要计算多个总和或残差,这种方法将不切实际,尤其是当矩阵非常大时。我希望能够更优雅地做到这一点。

有没有办法在矩阵内指定向量?或者是否有一种迂回的方式来做到这一点?

最佳答案

您可以通过 [start]:[end][:stride] 指定数组切片(Fortran 2008 标准,Cl. 6.5.3“数组元素和数组部分”:R621)。要选择沿指定维度的所有元素,请选择例如 A(:,1) .你的区别然后是:

implicit none
real, dimension(3,4) :: A
real,dimension(3) :: vector
vector(:)=A(:,1)-A(:,2)

甚至
vector=A(:,1)-A(:,2)

关于arrays - 在矩阵中减去或添加向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36232046/

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